ZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2F1dG9jbWQudHh0IGIvcnVudGltZS9kb2MvYXV0b2NtZC50eHQKaW5kZXggNzgxMWNmZS4uYThiZmYwNyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvYXV0b2NtZC50eHQKKysrIGIvcnVudGltZS9kb2MvYXV0b2NtZC50eHQKQEAgLTEsNCArMSw0IEBACi0qYXV0b2NtZC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEZlYiAyMgorKmF1dG9jbWQudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBKdWwgMTAKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTM4NSw2ICszODUsMTAgQEAKIAkJCQlUaGlzIGRvZXMgTk9UIHdvcmsgZm9yICI6ciBmaWxlIi4gIE5vdCB1c2VkCiAJCQkJd2hlbiB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0LiAgQWxzbyB1c2VkIGFmdGVyCiAJCQkJc3VjY2Vzc2Z1bGx5IHJlY292ZXJpbmcgYSBmaWxlLgorCQkJCUFsc28gdHJpZ2dlcmVkIGZvciB0aGUgZmlsZXR5cGVkZXRlY3QgZ3JvdXAKKwkJCQl3aGVuIGV4ZWN1dGluZyAiOmZpbGV0eXBlIGRldGVjdCIgYW5kIHdoZW4KKwkJCQl3cml0aW5nIGFuIHVubmFtZWQgYnVmZmVyIGluIGEgd2F5IHRoYXQgdGhlCisJCQkJYnVmZmVyIGdldHMgYSBuYW1lLgogCQkJCQkJCSpCdWZSZWFkQ21kKgogQnVmUmVhZENtZAkJCUJlZm9yZSBzdGFydGluZyB0byBlZGl0IGEgbmV3IGJ1ZmZlci4gIFNob3VsZAogCQkJCXJlYWQgdGhlIGZpbGUgaW50byB0aGUgYnVmZmVyLiB8Q21kLWV2ZW50fApAQCAtNDc0LDYgKzQ3OCwxMSBAQAogCQkJCQkJCSpDb2xvclNjaGVtZSoKIENvbG9yU2NoZW1lCQkJQWZ0ZXIgbG9hZGluZyBhIGNvbG9yIHNjaGVtZS4gfDpjb2xvcnNjaGVtZXwKIAorCQkJCQkJCSpDb21wbGV0ZURvbmUqCitDb21wbGV0ZURvbmUJCQlBZnRlciBJbnNlcnQgbW9kZSBjb21wbGV0aW9uIGlzIGRvbmUuICBFaXRoZXIKKwkJCQl3aGVuIHNvbWV0aGluZyB3YXMgY29tcGxldGVkIG9yIGFiYW5kb25pbmcKKwkJCQljb21wbGV0aW9uLiB8aW5zLWNvbXBsZXRpb258CisKIAkJCQkJCQkqQ3Vyc29ySG9sZCoKIEN1cnNvckhvbGQJCQlXaGVuIHRoZSB1c2VyIGRvZXNuJ3QgcHJlc3MgYSBrZXkgZm9yIHRoZSB0aW1lCiAJCQkJc3BlY2lmaWVkIHdpdGggJ3VwZGF0ZXRpbWUnLiAgTm90IHJlLXRyaWdnZXJlZApAQCAtNzE3LDYgKzcyNiwxMiBAQAogCQkJCWl0IGlzIHJ1biBhZnRlciBlcnJvciBmaWxlIGlzIHJlYWQgYW5kIGJlZm9yZQogCQkJCW1vdmluZyB0byB0aGUgZmlyc3QgZXJyb3IuIAogCQkJCVNlZSB8UXVpY2tGaXhDbWRQb3N0LWV4YW1wbGV8LgorCQkJCQkJCSpRdWl0UHJlKgorUXVpdFByZQkJCQlXaGVuIHVzaW5nIGA6cXVpdGAsIGJlZm9yZSBkZWNpZGluZyB3aGV0aGVyIGl0CisJCQkJY2xvc2VzIHRoZSBjdXJyZW50IHdpbmRvdyBvciBxdWl0cyBWaW0uICBDYW4KKwkJCQliZSB1c2VkIHRvIGNsb3NlIGFueSBub24tZXNzZW50aWFsIHdpbmRvdyBpZgorCQkJCXRoZSBjdXJyZW50IHdpbmRvdyBpcyB0aGUgbGFzdCBvcmRpbmFyeQorCQkJCXdpbmRvdy4KIAkJCQkJCQkqUmVtb3RlUmVwbHkqCiBSZW1vdGVSZXBseQkJCVdoZW4gYSByZXBseSBmcm9tIGEgVmltIHRoYXQgZnVuY3Rpb25zIGFzCiAJCQkJc2VydmVyIHdhcyByZWNlaXZlZCB8c2VydmVyMmNsaWVudCgpfC4gIFRoZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvY2hhbmdlLnR4dCBiL3J1bnRpbWUvZG9jL2NoYW5nZS50eHQKaW5kZXggNTk3ZDFkYi4uN2U3NTNmNyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvY2hhbmdlLnR4dAorKysgYi9ydW50aW1lL2RvYy9jaGFuZ2UudHh0CkBAIC0xLDQgKzEsNCBAQAotKmNoYW5nZS50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBBcHIgMzAKKypjaGFuZ2UudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTIgSnVuIDEzCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0xNTAyLDYgKzE1MDIsNyBAQAogCQkJZmlyc3QgbGluZSBvZiBhIHBhcmFncmFwaAogCQlzZWNvbmQgbGluZSBvZiB0aGUgc2FtZSBwYXJhZ3JhcGgKIAkJdGhpcmQgbGluZS4KKzwJVGhpcyBhbHNvIHdvcmtzIGluc2lkZSBjb21tZW50cywgaWdub3JpbmcgdGhlIGNvbW1lbnQgbGVhZGVyLgogdglWaS1jb21wYXRpYmxlIGF1dG8td3JhcHBpbmcgaW4gaW5zZXJ0IG1vZGU6IE9ubHkgYnJlYWsgYSBsaW5lIGF0IGEKIAlibGFuayB0aGF0IHlvdSBoYXZlIGVudGVyZWQgZHVyaW5nIHRoZSBjdXJyZW50IGluc2VydCBjb21tYW5kLiAgKE5vdGU6CiAJdGhpcyBpcyBub3QgMTAwJSBWaSBjb21wYXRpYmxlLiAgVmkgaGFzIHNvbWUgInVuZXhwZWN0ZWQgZmVhdHVyZXMiIG9yCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9jbWRsaW5lLnR4dCBiL3J1bnRpbWUvZG9jL2NtZGxpbmUudHh0CmluZGV4IGE2NjgyNjUuLmE5ZThhY2YgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2NtZGxpbmUudHh0CisrKyBiL3J1bnRpbWUvZG9jL2NtZGxpbmUudHh0CkBAIC0xLDQgKzEsNCBAQAotKmNtZGxpbmUudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBGZWIgMDUKKypjbWRsaW5lLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTIgSnVuIDIwCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC04MjYsMTAgKzgyNiwxMSBAQAogCQl0aGUgaG9tZSBkaXJlY3RvcnkuICBJZiB0aGUgbmFtZSBpcyBhIGRpcmVjdG9yeSBhIHBhdGgKIAkJc2VwYXJhdG9yIGlzIGFkZGVkIGF0IHRoZSBlbmQuICBGb3IgYSBmaWxlIG5hbWUgdGhhdCBkb2VzIG5vdAogCQlleGlzdCBhbmQgZG9lcyBub3QgaGF2ZSBhbiBhYnNvbHV0ZSBwYXRoIHRoZSByZXN1bHQgaXMKLQkJdW5wcmVkaWN0YWJsZS4KKwkJdW5wcmVkaWN0YWJsZS4gIE9uIE1TLVdpbmRvd3MgYW4gOC4zIGZpbGVuYW1lIGlzIGV4cGFuZGVkIHRvCisJCXRoZSBsb25nIG5hbWUuCiAJOjgJQ29udmVydHMgdGhlIHBhdGggdG8gOC4zIHNob3J0IGZvcm1hdCAoY3VycmVudGx5IG9ubHkgb24KLQkJd2luMzIpLiAgV2lsbCBhY3Qgb24gYXMgbXVjaCBvZiBhIHBhdGggdGhhdCBpcyBhbiBleGlzdGluZwotCQlwYXRoLgorCQlNUy1XaW5kb3dzKS4gIFdpbGwgYWN0IG9uIGFzIG11Y2ggb2YgYSBwYXRoIHRoYXQgaXMgYW4KKwkJZXhpc3RpbmcgcGF0aC4KIAk6fglSZWR1Y2UgZmlsZSBuYW1lIHRvIGJlIHJlbGF0aXZlIHRvIHRoZSBob21lIGRpcmVjdG9yeSwgaWYKIAkJcG9zc2libGUuICBGaWxlIG5hbWUgaXMgdW5tb2RpZmllZCBpZiBpdCBpcyBub3QgYmVsb3cgdGhlIGhvbWUKIAkJZGlyZWN0b3J5LgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZWRpdGluZy50eHQgYi9ydW50aW1lL2RvYy9lZGl0aW5nLnR4dAppbmRleCA4MjhkZTE1Li5lNTk4ZjMxIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9lZGl0aW5nLnR4dAorKysgYi9ydW50aW1lL2RvYy9lZGl0aW5nLnR4dApAQCAtMSw0ICsxLDQgQEAKLSplZGl0aW5nLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTIgQXByIDAzCisqZWRpdGluZy50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEp1bCAxMAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMzc3LDggKzM3Nyw5IEBACiBlbWJlZGRlZCBzcGFjZXMgbXVzdCBiZSBlc2NhcGVkIHdpdGggYSBiYWNrc2xhc2guCiAKIAkJCQkJCSp3aWxkY2FyZCogKndpbGRjYXJkcyoKLVdpbGRjYXJkcyBpbiB7ZmlsZX0gYXJlIGV4cGFuZGVkLiAgV2hpY2ggd2lsZGNhcmRzIGFyZSBzdXBwb3J0ZWQgZGVwZW5kcyBvbgotdGhlIHN5c3RlbS4gIFRoZXNlIGFyZSB0aGUgY29tbW9uIG9uZXM6CitXaWxkY2FyZHMgaW4ge2ZpbGV9IGFyZSBleHBhbmRlZCwgYnV0IGFzIHdpdGggZmlsZSBjb21wbGV0aW9uLCAnd2lsZGlnbm9yZScKK2FuZCAnc3VmZml4ZXMnIGFwcGx5LiAgV2hpY2ggd2lsZGNhcmRzIGFyZSBzdXBwb3J0ZWQgZGVwZW5kcyBvbiB0aGUgc3lzdGVtLgorVGhlc2UgYXJlIHRoZSBjb21tb24gb25lczoKIAk/CW1hdGNoZXMgb25lIGNoYXJhY3RlcgogCSoJbWF0Y2hlcyBhbnl0aGluZywgaW5jbHVkaW5nIG5vdGhpbmcKIAkqKgltYXRjaGVzIGFueXRoaW5nLCBpbmNsdWRpbmcgbm90aGluZywgcmVjdXJzZXMgaW50byBkaXJlY3RvcmllcwpAQCAtNDIyLDkgKzQyMywxMSBAQAogZXh0ZXJuYWwgY29tbWFuZCwgYnkgdXNpbmcgdGhlIHN5bnRheCBgPXtleHByfWAgZS5nLjogPgogCTplIGA9dGVtcG5hbWUoKWAKIFRoZSBleHByZXNzaW9uIGNhbiBjb250YWluIGp1c3QgYWJvdXQgYW55dGhpbmcsIHRodXMgdGhpcyBjYW4gYWxzbyBiZSB1c2VkIHRvCi1hdm9pZCB0aGUgc3BlY2lhbCBtZWFuaW5nIG9mICciJywgJ3wnLCAnJScgYW5kICcjJy4gIE5hbWVzIGFyZSB0byBiZSBzZXBhcmF0ZWQKLXdpdGggbGluZSBicmVha3MuICBXaGVuIHRoZSByZXN1bHQgaXMgYSB8TGlzdHwgdGhlbiBlYWNoIGl0ZW0gaXMgdXNlZCBhcyBhCi1uYW1lLiAgTGluZSBicmVha3MgYWxzbyBzZXBhcmF0ZSBuYW1lcy4KK2F2b2lkIHRoZSBzcGVjaWFsIG1lYW5pbmcgb2YgJyInLCAnfCcsICclJyBhbmQgJyMnLiAgSG93ZXZlciwgJ3dpbGRpZ25vcmUnCitkb2VzIGFwcGx5IGxpa2UgdG8gb3RoZXIgd2lsZGNhcnMuCitJZiB0aGUgZXhwcmVzc2lvbiByZXR1cm5zIGEgc3RyaW5nIHRoZW4gbmFtZXMgYXJlIHRvIGJlIHNlcGFyYXRlZCB3aXRoIGxpbmUKK2JyZWFrcy4gIFdoZW4gdGhlIHJlc3VsdCBpcyBhIHxMaXN0fCB0aGVuIGVhY2ggaXRlbSBpcyB1c2VkIGFzIGEgbmFtZS4gIExpbmUKK2JyZWFrcyBhbHNvIHNlcGFyYXRlIG5hbWVzLgogCiAJCQkJCQkJKisrb3B0KiAqWysrb3B0XSoKIFRoZSBbKytvcHRdIGFyZ3VtZW50IGNhbiBiZSB1c2VkIHRvIGZvcmNlIHRoZSB2YWx1ZSBvZiAnZmlsZWZvcm1hdCcsCkBAIC0xMDY2LDYgKzEwNjksNyBAQAogCQkJSWYgdGhlcmUgYXJlIG90aGVyIHRhYiBwYWdlcyBhbmQgcXVpdHRpbmcgdGhlIGxhc3QKIAkJCXdpbmRvdyBpbiB0aGUgY3VycmVudCB0YWIgcGFnZSB0aGUgY3VycmVudCB0YWIgcGFnZSBpcwogCQkJY2xvc2VkIHx0YWItcGFnZXwuCisJCQlUcmlnZ2VycyB0aGUgfFF1aXRQcmV8IGF1dG9jb21tYW5kIGV2ZW50LgogCiA6Y29uZltpcm1dIHFbdWl0XQlRdWl0LCBidXQgZ2l2ZSBwcm9tcHQgd2hlbiBjaGFuZ2VzIGhhdmUgYmVlbiBtYWRlLCBvcgogCQkJdGhlIGxhc3QgZmlsZSBpbiB0aGUgYXJndW1lbnQgbGlzdCBoYXMgbm90IGJlZW4KQEAgLTEyMTUsMTMgKzEyMTksMTMgQEAKIHVubW9kaWZpZWQuCiAKIAkJCQkJCQkqYnJvd3NlZmlsdGVyKgotRm9yIE1TIFdpbmRvd3MsIHlvdSBjYW4gbW9kaWZ5IHRoZSBmaWx0ZXJzIHRoYXQgYXJlIHVzZWQgaW4gdGhlIGJyb3dzZSBkaWFsb2cuCi1CeSBzZXR0aW5nIHRoZSBnOmJyb3dzZWZpbHRlciBvciBiOmJyb3dzZWZpbHRlciB2YXJpYWJsZXMsIHlvdSBjYW4gY2hhbmdlIHRoZQotZmlsdGVycyBnbG9iYWxseSBvciBsb2NhbGx5IHRvIHRoZSBidWZmZXIuICBUaGUgdmFyaWFibGUgaXMgc2V0IHRvIGEgc3RyaW5nIGluCi10aGUgZm9ybWF0ICJ7ZmlsdGVyIGxhYmVsfVx0e3BhdHRlcm59O3twYXR0ZXJufVxuIiB3aGVyZSB7ZmlsdGVyIGxhYmVsfSBpcyB0aGUKLXRleHQgdGhhdCBhcHBlYXJzIGluIHRoZSAiRmlsZXMgb2YgVHlwZSIgY29tYm9Cb3gsIGFuZCB7cGF0dGVybn0gaXMgdGhlCi1wYXR0ZXJuIHdoaWNoIGZpbHRlcnMgdGhlIGZpbGVuYW1lcy4gIFNldmVyYWwgcGF0dGVybnMgY2FuIGJlIGdpdmVuLCBzZXBhcmF0ZWQKLWJ5ICc7Jy4KK0ZvciBNUyBXaW5kb3dzIGFuZCBHVEssIHlvdSBjYW4gbW9kaWZ5IHRoZSBmaWx0ZXJzIHRoYXQgYXJlIHVzZWQgaW4gdGhlIGJyb3dzZQorZGlhbG9nLiAgQnkgc2V0dGluZyB0aGUgZzpicm93c2VmaWx0ZXIgb3IgYjpicm93c2VmaWx0ZXIgdmFyaWFibGVzLCB5b3UgY2FuCitjaGFuZ2UgdGhlIGZpbHRlcnMgZ2xvYmFsbHkgb3IgbG9jYWxseSB0byB0aGUgYnVmZmVyLiAgVGhlIHZhcmlhYmxlIGlzIHNldCB0bworYSBzdHJpbmcgaW4gdGhlIGZvcm1hdCAie2ZpbHRlciBsYWJlbH1cdHtwYXR0ZXJufTt7cGF0dGVybn1cbiIgd2hlcmUge2ZpbHRlcgorbGFiZWx9IGlzIHRoZSB0ZXh0IHRoYXQgYXBwZWFycyBpbiB0aGUgIkZpbGVzIG9mIFR5cGUiIGNvbWJvQm94LCBhbmQge3BhdHRlcm59CitpcyB0aGUgcGF0dGVybiB3aGljaCBmaWx0ZXJzIHRoZSBmaWxlbmFtZXMuICBTZXZlcmFsIHBhdHRlcm5zIGNhbiBiZSBnaXZlbiwKK3NlcGFyYXRlZCBieSAnOycuCiAKIEZvciBNb3RpZiB0aGUgc2FtZSBmb3JtYXQgaXMgdXNlZCwgYnV0IG9ubHkgdGhlIHZlcnkgZmlyc3QgcGF0dGVybiBpcyBhY3R1YWxseQogdXNlZCAoTW90aWYgb25seSBvZmZlcnMgb25lIHBhdHRlcm4sIGJ1dCB5b3UgY2FuIGVkaXQgaXQpLgpAQCAtMTIyOSw3ICsxMjMzLDcgQEAKIEZvciBleGFtcGxlLCB0byBoYXZlIG9ubHkgVmltIGZpbGVzIGluIHRoZSBkaWFsb2csIHlvdSBjb3VsZCB1c2UgdGhlIGZvbGxvd2luZwogY29tbWFuZDogPgogCi0gICAgIGxldCBnOmJyb3dzZWZpbHRlcj0iVmltIFNjcmlwdHNcdCoudmltXG5WaW0gU3RhcnR1cCBGaWxlc1x0KnZpbXJjXG4iCisgICAgIGxldCBnOmJyb3dzZWZpbHRlciA9ICJWaW0gU2NyaXB0c1x0Ki52aW1cblZpbSBTdGFydHVwIEZpbGVzXHQqdmltcmNcbiIKIAogWW91IGNhbiBvdmVycmlkZSB0aGUgZmlsdGVyIHNldHRpbmcgb24gYSBwZXItYnVmZmVyIGJhc2lzIGJ5IHNldHRpbmcgdGhlCiBiOmJyb3dzZWZpbHRlciB2YXJpYWJsZS4gIFlvdSB3b3VsZCBtb3N0IGxpa2VseSBzZXQgYjpicm93c2VmaWx0ZXIgaW4gYQpAQCAtMTIzOSw2ICsxMjQzLDEzIEBACiBtYXkgd2FudCB0byBhZGQgIkFsbCBGaWxlc1x0Ki4qXG4iIGFzIHRoZSBmaW5hbCBmaWx0ZXIsIHNvIHRoYXQgdGhlIHVzZXIgY2FuCiBzdGlsbCBhY2Nlc3MgYW55IGRlc2lyZWQgZmlsZS4KIAorVG8gYXZvaWQgc2V0dGluZyBicm93c2VmaWx0ZXIgd2hlbiBWaW0gZG9lcyBub3QgYWN0dWFsbHkgc3VwcG9ydCBpdCwgeW91IGNhbgordXNlIGhhcygiYnJvd3NlZmlsdGVyIik6ID4KKworCWlmIGhhcygiYnJvd3NlZmlsdGVyIikKKwkgICBsZXQgZzpicm93c2VmaWx0ZXIgPSAid2hhdGV2ZXIiCisJZW5kaWYKKwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiA3LiBUaGUgY3VycmVudCBkaXJlY3RvcnkJCQkJKmN1cnJlbnQtZGlyZWN0b3J5KgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9ldmFsLnR4dCBiL3J1bnRpbWUvZG9jL2V2YWwudHh0CmluZGV4IDBkZjRiYTQuLjkxYWNhYzAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2V2YWwudHh0CisrKyBiL3J1bnRpbWUvZG9jL2V2YWwudHh0CkBAIC0xLDQgKzEsNCBAQAotKmV2YWwudHh0KglGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTIgTWF5IDE4CisqZXZhbC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBKdWwgMTAKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwJICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMTg4MCw2ICsxODgwLDggQEAKIHByZXZub25ibGFuaygge2xudW19KQkJTnVtYmVyCWxpbmUgbnIgb2Ygbm9uLWJsYW5rIGxpbmUgPD0ge2xudW19CiBwcmludGYoIHtmbXR9LCB7ZXhwcjF9Li4uKQlTdHJpbmcJZm9ybWF0IHRleHQKIHB1bXZpc2libGUoKQkJCU51bWJlcgl3aGV0aGVyIHBvcHVwIG1lbnUgaXMgdmlzaWJsZQorcHlldmFsKCB7ZXhwcn0pCQkJYW55CWV2YWx1YXRlIHxQeXRob258IGV4cHJlc3Npb24KK3B5M2V2YWwoIHtleHByfSkJCWFueQlldmFsdWF0ZSB8cHl0aG9uM3wgZXhwcmVzc2lvbgogcmFuZ2UoIHtleHByfSBbLCB7bWF4fSBbLCB7c3RyaWRlfV1dKQogCQkJCUxpc3QJaXRlbXMgZnJvbSB7ZXhwcn0gdG8ge21heH0KIHJlYWRmaWxlKCB7Zm5hbWV9IFssIHtiaW5hcnl9IFssIHttYXh9XV0pCkBAIC0zNTY1LDYgKzM1NjcsOSBAQAogCQkJInNlYXJjaCIgb3IgIi8iICAgc2VhcmNoIHBhdHRlcm4gaGlzdG9yeQogCQkJImV4cHIiCSBvciAiPSIgICB0eXBlZCBleHByZXNzaW9uIGhpc3RvcnkKIAkJCSJpbnB1dCIgIG9yICJAIgkgIGlucHV0IGxpbmUgaGlzdG9yeQorCQkJImRlYnVnIiAgb3IgIj4iICAgZGVidWcgY29tbWFuZCBoaXN0b3J5CisJCVRoZSB7aGlzdG9yeX0gc3RyaW5nIGRvZXMgbm90IG5lZWQgdG8gYmUgdGhlIHdob2xlIG5hbWUsIG9uZQorCQljaGFyYWN0ZXIgaXMgc3VmZmljaWVudC4KIAkJSWYge2l0ZW19IGRvZXMgYWxyZWFkeSBleGlzdCBpbiB0aGUgaGlzdG9yeSwgaXQgd2lsbCBiZQogCQlzaGlmdGVkIHRvIGJlY29tZSB0aGUgbmV3ZXN0IGVudHJ5LgogCQlUaGUgcmVzdWx0IGlzIGEgTnVtYmVyOiAxIGlmIHRoZSBvcGVyYXRpb24gd2FzIHN1Y2Nlc3NmdWwsCkBAIC00MDMzLDcgKzQwMzgsNyBAQAogCiAJCVRoZSBvcGVyYXRpb24gaXMgZG9uZSBpbi1wbGFjZS4gIElmIHlvdSB3YW50IGEgfExpc3R8IG9yCiAJCXxEaWN0aW9uYXJ5fCB0byByZW1haW4gdW5tb2RpZmllZCBtYWtlIGEgY29weSBmaXJzdDogPgotCQkJOmxldCB0bGlzdCA9IG1hcChjb3B5KG15bGlzdCksICcgJiAuICJcdCInKQorCQkJOmxldCB0bGlzdCA9IG1hcChjb3B5KG15bGlzdCksICcgdjp2YWwgLiAiXHQiJykKIAogPAkJUmV0dXJucyB7ZXhwcn0sIHRoZSB8TGlzdHwgb3IgfERpY3Rpb25hcnl8IHRoYXQgd2FzIGZpbHRlcmVkLgogCQlXaGVuIGFuIGVycm9yIGlzIGVuY291bnRlcmVkIHdoaWxlIGV2YWx1YXRpbmcge3N0cmluZ30gbm8KQEAgLTQ2MTAsNiArNDYxNSwyOSBAQAogCQlUaGlzIGNhbiBiZSB1c2VkIHRvIGF2b2lkIHNvbWUgdGhpbmdzIHRoYXQgd291bGQgcmVtb3ZlIHRoZQogCQlwb3B1cCBtZW51LgogCisJCQkJCQkJKkU4NjAqICpFODYxKgorcHkzZXZhbCh7ZXhwcn0pCQkJCQkJKnB5M2V2YWwoKSoKKwkJRXZhbHVhdGUgUHl0aG9uIGV4cHJlc3Npb24ge2V4cHJ9IGFuZCByZXR1cm4gaXRzIHJlc3VsdAorCQljb252ZXJ0ZWQgdG8gVmltIGRhdGEgc3RydWN0dXJlcy4KKwkJTnVtYmVycyBhbmQgc3RyaW5ncyBhcmUgcmV0dXJuZWQgYXMgdGhleSBhcmUgKHN0cmluZ3MgYXJlIAorCQljb3BpZWQgdGhvdWdoLCB1bmljb2RlIHN0cmluZ3MgYXJlIGFkZGl0aW9uYWxseSBjb252ZXJ0ZWQgdG8gCisJCSdlbmNvZGluZycpLgorCQlMaXN0cyBhcmUgcmVwcmVzZW50ZWQgYXMgVmltIHxMaXN0fCB0eXBlLgorCQlEaWN0aW9uYXJpZXMgYXJlIHJlcHJlc2VudGVkIGFzIFZpbSB8RGljdGlvbmFyeXwgdHlwZSB3aXRoIAorCQlrZXlzIGNvbnZlcnRlZCB0byBzdHJpbmdzLgorCQl7b25seSBhdmFpbGFibGUgd2hlbiBjb21waWxlZCB3aXRoIHRoZSB8K3B5dGhvbjN8IGZlYXR1cmV9CisKKwkJCQkJCQkqRTg1OCogKkU4NTkqCitweWV2YWwoe2V4cHJ9KQkJCQkJCSpweWV2YWwoKSoKKwkJRXZhbHVhdGUgUHl0aG9uIGV4cHJlc3Npb24ge2V4cHJ9IGFuZCByZXR1cm4gaXRzIHJlc3VsdAorCQljb252ZXJ0ZWQgdG8gVmltIGRhdGEgc3RydWN0dXJlcy4KKwkJTnVtYmVycyBhbmQgc3RyaW5ncyBhcmUgcmV0dXJuZWQgYXMgdGhleSBhcmUgKHN0cmluZ3MgYXJlIAorCQljb3BpZWQgdGhvdWdoKS4KKwkJTGlzdHMgYXJlIHJlcHJlc2VudGVkIGFzIFZpbSB8TGlzdHwgdHlwZS4KKwkJRGljdGlvbmFyaWVzIGFyZSByZXByZXNlbnRlZCBhcyBWaW0gfERpY3Rpb25hcnl8IHR5cGUgd2l0aCAKKwkJa2V5cyBjb252ZXJ0ZWQgdG8gc3RyaW5ncy4KKwkJe29ubHkgYXZhaWxhYmxlIHdoZW4gY29tcGlsZWQgd2l0aCB0aGUgfCtweXRob258IGZlYXR1cmV9CisKIAkJCQkJCQkqRTcyNiogKkU3MjcqCiByYW5nZSh7ZXhwcn0gWywge21heH0gWywge3N0cmlkZX1dXSkJCQkJKnJhbmdlKCkqCiAJCVJldHVybnMgYSB8TGlzdHwgd2l0aCBOdW1iZXJzOgpAQCAtNjIxOSw2ICs2MjQ3LDcgQEAKIGJlb3MJCQlCZU9TIHZlcnNpb24gb2YgVmltLgogYnJvd3NlCQkJQ29tcGlsZWQgd2l0aCB8OmJyb3dzZXwgc3VwcG9ydCwgYW5kIGJyb3dzZSgpIHdpbGwKIAkJCXdvcmsuCiticm93c2VmaWx0ZXIJCUNvbXBpbGVkIHdpdGggc3VwcG9ydCBmb3IgfGJyb3dzZWZpbHRlcnwuCiBidWlsdGluX3Rlcm1zCQlDb21waWxlZCB3aXRoIHNvbWUgYnVpbHRpbiB0ZXJtaW5hbHMuCiBieXRlX29mZnNldAkJQ29tcGlsZWQgd2l0aCBzdXBwb3J0IGZvciAnbycgaW4gJ3N0YXR1c2xpbmUnCiBjaW5kZW50CQkJQ29tcGlsZWQgd2l0aCAnY2luZGVudCcgc3VwcG9ydC4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2lmX2x1YS50eHQgYi9ydW50aW1lL2RvYy9pZl9sdWEudHh0CmluZGV4IDY2MjZlMzguLmY2ZjU2MDQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2lmX2x1YS50eHQKKysrIGIvcnVudGltZS9kb2MvaWZfbHVhLnR4dApAQCAtMSw0ICsxLDQgQEAKLSppZl9sdWEudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTIgSmFuIDE2CisqaWZfbHVhLnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEp1biAyOQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBMdWlzIENhcnZhbGhvCkBAIC0zMTMsNyArMzEzLDcgQEAKIDwKIAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci03LiBUaGUgbHVhZXZhbCBmdW5jdGlvbgkJCQkJKmx1YS1sdWFldmFsKgorNy4gVGhlIGx1YWV2YWwgZnVuY3Rpb24JCQkJCSpsdWEtbHVhZXZhbCogKmx1YS1ldmFsKgogCiBUaGUgKGR1YWwpIGVxdWl2YWxlbnQgb2YgInZpbS5ldmFsIiBmb3IgcGFzc2luZyBMdWEgdmFsdWVzIHRvIFZpbSBpcwogImx1YWV2YWwiLiAibHVhZXZhbCIgdGFrZXMgYW4gZXhwcmVzc2lvbiBzdHJpbmcgYW5kIGFuIG9wdGlvbmFsIGFyZ3VtZW50IGFuZApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvaWZfcHl0aC50eHQgYi9ydW50aW1lL2RvYy9pZl9weXRoLnR4dAppbmRleCBlNTQyYTA0Li4zMWEwZDA3IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9pZl9weXRoLnR4dAorKysgYi9ydW50aW1lL2RvYy9pZl9weXRoLnR4dApAQCAtNiwxMyArNiwxNCBAQAogCiBUaGUgUHl0aG9uIEludGVyZmFjZSB0byBWaW0JCQkJKnB5dGhvbiogKlB5dGhvbioKIAotMS4gQ29tbWFuZHMJCQl8cHl0aG9uLWNvbW1hbmRzfAotMi4gVGhlIHZpbSBtb2R1bGUJCXxweXRob24tdmltfAotMy4gQnVmZmVyIG9iamVjdHMJCXxweXRob24tYnVmZmVyfAotNC4gUmFuZ2Ugb2JqZWN0cwkJfHB5dGhvbi1yYW5nZXwKLTUuIFdpbmRvdyBvYmplY3RzCQl8cHl0aG9uLXdpbmRvd3wKLTYuIER5bmFtaWMgbG9hZGluZwkJfHB5dGhvbi1keW5hbWljfAotNy4gUHl0aG9uIDMJCQl8cHl0aG9uM3wKKzEuIENvbW1hbmRzCQkJCQl8cHl0aG9uLWNvbW1hbmRzfAorMi4gVGhlIHZpbSBtb2R1bGUJCQkJfHB5dGhvbi12aW18CiszLiBCdWZmZXIgb2JqZWN0cwkJCQl8cHl0aG9uLWJ1ZmZlcnwKKzQuIFJhbmdlIG9iamVjdHMJCQkJfHB5dGhvbi1yYW5nZXwKKzUuIFdpbmRvdyBvYmplY3RzCQkJCXxweXRob24td2luZG93fAorNi4gcHlldmFsKCksIHB5M2V2YWwoKSBWaW0gZnVuY3Rpb25zCQl8cHl0aG9uLXB5ZXZhbHwKKzcuIER5bmFtaWMgbG9hZGluZwkJCQl8cHl0aG9uLWR5bmFtaWN8Cis4LiBQeXRob24gMwkJCQkJfHB5dGhvbjN8CiAKIHtWaSBkb2VzIG5vdCBoYXZlIGFueSBvZiB0aGVzZSBjb21tYW5kc30KIApAQCAtMTUwLDYgKzE1MSwyMiBAQAogCVt7J2NtZCc6ICcvXmV2YWxfZXhwcihhcmcsIG5leHRjbWQpJC8nLCAnc3RhdGljJzogMCwgJ25hbWUnOgogCSdldmFsX2V4cHInLCAna2luZCc6ICdmJywgJ2ZpbGVuYW1lJzogJy4vc3JjL2V2YWwuYyd9XQogCit2aW0uYmluZGV2YWwoc3RyKQkJCQkJKnB5dGhvbi1iaW5kZXZhbCoKKwlMaWtlIHxweXRob24tZXZhbHwsIGJ1dAorCTEuIGlmIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIHxMaXN0fCBvciB8RGljdGlvbmFyeXwgaXQgaXMgcmV0dXJuZWQgYXMgCisJICAgdmltbGlzdCBvciB2aW1kaWN0aW9uYXJ5IHB5dGhvbiB0eXBlIHRoYXQgYXJlIGNvbm5lY3RlZCB0byBvcmlnaW5hbCAKKwkgICBsaXN0IG9yIGRpY3Rpb25hcnkuIFRodXMgbW9kaWZpY2F0aW9ucyB0byB0aGVzZSBvYmplY3RzIGltcGx5IAorCSAgIG1vZGlmaWNhdGlvbnMgb2YgdGhlIG9yaWdpbmFsLgorCTIuIGlmIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEgZnVuY3Rpb24gcmVmZXJlbmNlLCB0aGVuIGl0IHJldHVybnMgCisJICAgY2FsbGFibGUgdmltZnVuY3Rpb24gb2JqZWN0LiBVc2Ugc2VsZiBrZXl3b3JkIGFyZ3VtZW50IHRvIGFzc2lnbiAKKwkgICB8c2VsZnwgb2JqZWN0IGZvciBkaWN0aW9uYXJ5IGZ1bmN0aW9ucy4KKworCU5vdGU6IHRoaXMgZnVuY3Rpb24gaGFzIHRoZSBzYW1lIGJlaGF2aW9yIGFzIHxsdWEtZXZhbHwgKGV4Y2VwdCB0aGF0IAorCSAgICAgIGx1YSBkb2VzIG5vdCBzdXBwb3J0IHJ1bm5pbmcgdmltIGZ1bmN0aW9ucyksIHxweXRob24tZXZhbHwgaXMgCisJICAgICAga2VwdCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgaW4gb3JkZXIgbm90IHRvIG1ha2Ugc2NyaXB0cyAKKwkgICAgICByZWx5aW5nIG9uIG91dHB1dHMgb2YgdmltLmV2YWwoKSBiZWluZyBhIGNvcHkgb2Ygb3JpZ2luYWwgb3IgCisJICAgICAgdmltLmV2YWwoIjEiKSByZXR1cm5pbmcgYSBzdHJpbmcuCisKIAogCiBFcnJvciBvYmplY3Qgb2YgdGhlICJ2aW0iIG1vZHVsZQpAQCAtMzE5LDcgKzMzNiwxMyBAQAogVGhlIHdpZHRoIGF0dHJpYnV0ZSBpcyB3cml0YWJsZSBvbmx5IGlmIHRoZSBzY3JlZW4gaXMgc3BsaXQgdmVydGljYWxseS4KIAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci02LiBEeW5hbWljIGxvYWRpbmcJCQkJCSpweXRob24tZHluYW1pYyoKKzYuIHB5ZXZhbCgpIGFuZCBweTNldmFsKCkgVmltIGZ1bmN0aW9ucwkJCSpweXRob24tcHlldmFsKgorCitUbyBmYWNpbGl0YXRlIGJpLWRpcmVjdGlvbmFsIGludGVyZmFjZSwgeW91IGNhbiB1c2UgfHB5ZXZhbCgpfCBhbmQgfHB5M2V2YWwoKXwgCitmdW5jdGlvbnMgdG8gZXZhbHVhdGUgUHl0aG9uIGV4cHJlc3Npb25zIGFuZCBwYXNzIHRoZWlyIHZhbHVlcyB0byBWaW1MLgorCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKzcuIER5bmFtaWMgbG9hZGluZwkJCQkJKnB5dGhvbi1keW5hbWljKgogCiBPbiBNUy1XaW5kb3dzIHRoZSBQeXRob24gbGlicmFyeSBjYW4gYmUgbG9hZGVkIGR5bmFtaWNhbGx5LiAgVGhlIHw6dmVyc2lvbnwKIG91dHB1dCB0aGVuIGluY2x1ZGVzIHwrcHl0aG9uL2R5bnwuCkBAIC0zMzYsMTMgKzM1OSwxNCBAQAogc3VyZSBlZGl0ICJndmltLmV4ZSIgYW5kIHNlYXJjaCBmb3IgInB5dGhvblxkKi5kbGxcYyIuCiAKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotNy4gUHl0aG9uIDMJCQkJCQkqcHl0aG9uMyoKKzguIFB5dGhvbiAzCQkJCQkJKnB5dGhvbjMqCiAKIAkJCQkJCQkqOnB5MyogKjpweXRob24zKgogVGhlIHw6cHkzfCBhbmQgfDpweXRob24zfCBjb21tYW5kcyB3b3JrIHNpbWlsYXIgdG8gfDpweXRob258LgogCQkJCQkJCSo6cHkzZmlsZSoKIFRoZSB8OnB5M2ZpbGV8IGNvbW1hbmQgd29ya3Mgc2ltaWxhciB0byB8OnB5ZmlsZXwuCiAKKwogVmltIGNhbiBiZSBidWlsdCBpbiBmb3VyIHdheXMgKDp2ZXJzaW9uIG91dHB1dCk6CiAxLiBObyBQeXRob24gc3VwcG9ydAkgICAgKC1weXRob24sIC1weXRob24zKQogMi4gUHl0aG9uIDIgc3VwcG9ydCBvbmx5ICAgICgrcHl0aG9uIG9yICtweXRob24vZHluLCAtcHl0aG9uMykKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2luc2VydC50eHQgYi9ydW50aW1lL2RvYy9pbnNlcnQudHh0CmluZGV4IDQ2MjljMGYuLmJmMDIwZmQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2luc2VydC50eHQKKysrIGIvcnVudGltZS9kb2MvaW5zZXJ0LnR4dApAQCAtMSw0ICsxLDQgQEAKLSppbnNlcnQudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTIgTWF5IDE4CisqaW5zZXJ0LnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEp1bCAxMAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtNDkxLDcgKzQ5MSw3IEBACiAJCQkJCQkJKmlucy1zbWFydHRhYioKIFdoZW4gdGhlICdzbWFydHRhYicgb3B0aW9uIGlzIG9uLCBhIDxUYWI+IGluc2VydHMgJ3NoaWZ0d2lkdGgnIHBvc2l0aW9ucyBhdAogdGhlIGJlZ2lubmluZyBvZiBhIGxpbmUgYW5kICd0YWJzdG9wJyBwb3NpdGlvbnMgaW4gb3RoZXIgcGxhY2VzLiAgVGhpcyBtZWFucwotdGhhdCBvZnRlbiBzcGFjZXMgaW5zdGVhZCBvZiBhIDxUYWI+IGNoYXJhY3RlciBhcmUgaW5zZXJ0ZWQuICBXaGVuICdzbWFydHRhYgordGhhdCBvZnRlbiBzcGFjZXMgaW5zdGVhZCBvZiBhIDxUYWI+IGNoYXJhY3RlciBhcmUgaW5zZXJ0ZWQuICBXaGVuICdzbWFydHRhYicKIGlzIG9mZiwgYSA8VGFiPiBhbHdheXMgaW5zZXJ0cyAndGFic3RvcCcgcG9zaXRpb25zLCBhbmQgJ3NoaWZ0d2lkdGgnIGlzIG9ubHkKIHVzZWQgZm9yICI+PiIgYW5kIHRoZSBsaWtlLiAge25vdCBpbiBWaX0KIApAQCAtMTA0NCw2ICsxMDQ0LDggQEAKIAkJCWxlYWRpbmcgdGV4dCBpcyBjaGFuZ2VkLgogT3RoZXIgaXRlbXMgYXJlIGlnbm9yZWQuCiAKK0ZvciBhY3RpbmcgdXBvbiBlbmQgb2YgY29tcGxldGlvbiwgc2VlIHRoZSB8Q29tcGxldGVEb25lfCBhdXRvY29tbWFuZCBldmVudC4KKwogRm9yIGV4YW1wbGUsIHRoZSBmdW5jdGlvbiBjYW4gY29udGFpbiB0aGlzOiA+CiAJbGV0IG1hdGNoZXMgPSAuLi4gbGlzdCBvZiB3b3JkcyAuLi4KIAlyZXR1cm4geyd3b3Jkcyc6IG1hdGNoZXMsICdyZWZyZXNoJzogJ2Fsd2F5cyd9CmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9tYnl0ZS50eHQgYi9ydW50aW1lL2RvYy9tYnl0ZS50eHQKaW5kZXggYzRlYTRlOC4uOWEzN2I4NiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvbWJ5dGUudHh0CisrKyBiL3J1bnRpbWUvZG9jL21ieXRlLnR4dApAQCAtMSw0ICsxLDQgQEAKLSptYnl0ZS50eHQqICAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTIgRmViIDI5CisqbWJ5dGUudHh0KiAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEp1biAwNgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyIGV0IGFsLgpAQCAtNDc1LDcgKzQ3NSw3IEBACiAJfGNoYXJzZXR8IGNvbnZlcnRlci4gIFN1cHBvcnRlZCB8Y2hhcnNldHw6IElTTy0yMDIyLUNOLCBJU08tMjAyMi1KUCwKIAlJU08tMjAyMi1LUiwgRVVDLUNOLCBFVUMtSlAsIEVVQy1LUiwgRVVDLVRXLCBVVEYtNywgVVRGLTgsIElTTy04ODU5CiAJc2VyaWVzLCBTaGlmdF9KSVMsIEJpZzUgYW5kIEhaLiAgTHYgY2FuIGJlIGZvdW5kIGF0OgotCWh0dHA6Ly93d3cuZmYuaWlqNHUub3IuanAvfm5ydC9mcmVld2FyZS9sdjQ0OTUudGFyLmd6CisJaHR0cDovL3d3dy5mZi5paWo0dS5vci5qcC9+bnJ0L2x2L2luZGV4Lmh0bWwKIAogCiAJCQkJCQkJKm1ieXRlLWNvbnZlcnNpb24qCkBAIC02MTUsNyArNjE1LDcgQEAKIAkgICAgY2hhcnNldHMsIHN1Y2ggYXMgSklTIFggMDIwOCwgaWYgdGhpcyBmaWVsZCBpcyAwLCBjb2RlIHBvaW50cyBoYXMKIAkgICAgdGhlIHNhbWUgdmFsdWUgYXMgR0wsIGFuZCBHUiBpZiAxLgogCi1Gb3IgZXhhbXBsZSwgaW4gY2FzZSBvZiBhIDE0IGRvdHMgZm9udCBjb3JyZXNwb25kaW5nIHRvIEpJUyBYIDAyMDgsIGl0IGlzCitGb3IgZXhhbXBsZSwgaW4gY2FzZSBvZiBhIDE2IGRvdHMgZm9udCBjb3JyZXNwb25kaW5nIHRvIEpJUyBYIDAyMDgsIGl0IGlzCiB3cml0dGVuIGxpa2U6CiAgICAgLW1pc2MtZml4ZWQtbWVkaXVtLXItbm9ybWFsLS0xNi0xMTAtMTAwLTEwMC1jLTE2MC1qaXN4MDIwOC4xOTkwLTAKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvbW90aW9uLnR4dCBiL3J1bnRpbWUvZG9jL21vdGlvbi50eHQKaW5kZXggY2NmNjg5OC4uOWIwYWY4YyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvbW90aW9uLnR4dAorKysgYi9ydW50aW1lL2RvYy9tb3Rpb24udHh0CkBAIC0xLDQgKzEsNCBAQAotKm1vdGlvbi50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMSBKdWwgMTkKKyptb3Rpb24udHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTIgSnVsIDA2CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC03NTAsNiArNzUwLDEzIEBACiAJCQl0byBiZSBzaW11bGF0ZWQgYnkgbXVsdGlwbGUgY29tbWFuZHMuICAoZG9lcyBub3QgbW92ZQogCQkJdGhlIGN1cnNvciwgdGhpcyBpcyBub3QgYSBtb3Rpb24gY29tbWFuZCkuCiAKKwkJCQkJCSptPCogKm0+KgorbTwgIG9yICBtPgkJU2V0IHRoZSB8Jzx8IG9yIHwnPnwgbWFyay4gIFVzZWZ1bCB0byBjaGFuZ2Ugd2hhdCB0aGUKKwkJCWBndmAgY29tbWFuZCBzZWxlY3RzLiAgKGRvZXMgbm90IG1vdmUgdGhlIGN1cnNvciwgdGhpcworCQkJaXMgbm90IGEgbW90aW9uIGNvbW1hbmQpLgorCQkJTm90ZSB0aGF0IHRoZSBWaXN1YWwgbW9kZSBjYW5ub3QgYmUgc2V0LCBvbmx5IHRoZQorCQkJc3RhcnQgYW5kIGVuZCBwb3NpdGlvbi4KKwogCQkJCQkJKjptYSogKjptYXJrKiAqRTE5MSoKIDpbcmFuZ2VdbWFbcmtdIHthLXpBLVonfQogCQkJU2V0IG1hcmsge2EtekEtWid9IGF0IGxhc3QgbGluZSBudW1iZXIgaW4gW3JhbmdlXSwKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29wdGlvbnMudHh0IGIvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKaW5kZXggZjE5MjBiZi4uYTMxYWUzZCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKKysrIGIvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKQEAgLTEsNCArMSw0IEBACi0qb3B0aW9ucy50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBNYXkgMTYKKypvcHRpb25zLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEp1bCAxMAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0xMTA3LDggKzExMDcsOCBAQAogCVZpbSBkb2VzIG5vdCB0cnkgdG8gc2VuZCBhIG1lc3NhZ2UgdG8gYW4gZXh0ZXJuYWwgZGVidWdnZXIgKE5ldGJlYW5zCiAJb3IgU3VuIFdvcmtzaG9wKS4KIAotCVRoZSBleHByZXNzaW9uIG1heSBiZSBldmFsdWF0ZWQgaW4gdGhlIHxzYW5kYm94fCwgc2VlCi0JfHNhbmRib3gtb3B0aW9ufC4KKwlUaGUgZXhwcmVzc2lvbiB3aWxsIGJlIGV2YWx1YXRlZCBpbiB0aGUgfHNhbmRib3h8IHdoZW4gc2V0IGZyb20gYQorCW1vZGVsaW5lLCBzZWUgfHNhbmRib3gtb3B0aW9ufC4KIAogCUl0IGlzIG5vdCBhbGxvd2VkIHRvIGNoYW5nZSB0ZXh0IG9yIGp1bXAgdG8gYW5vdGhlciB3aW5kb3cgd2hpbGUKIAlldmFsdWF0aW5nICdiYWxsb29uZXhwcicgfHRleHRsb2NrfC4KQEAgLTE0NjIsNiArMTQ2Miw3IEBACiAJCQlleHBsaWNpdGx5IGFjY2Vzc2VkIHVzaW5nIHRoZSAiKiBub3RhdGlvbi4gIEFsc28gc2VlCiAJCQl8Z3VpLWNsaXBib2FyZHwuCiAKKwkJCQkJCSpjbGlwYm9hcmQtdW5uYW1lZHBsdXMqCiAJdW5uYW1lZHBsdXMJQSB2YXJpYW50IG9mICJ1bm5hbWVkIiBmbGFnIHdoaWNoIHVzZXMgdGhlIGNsaXBib2FyZAogCQkJcmVnaXN0ZXIgJysnICh8cXVvdGVwbHVzfCkgaW5zdGVhZCBvZiByZWdpc3RlciAnKicgZm9yCiAJCQlhbGwgb3BlcmF0aW9ucyBleGNlcHQgeWFuay4gIFlhbmsgc2hhbGwgY29weSB0aGUgdGV4dApAQCAtMTQ3MSw2ICsxNDcyLDcgQEAKIAkJCUF2YWlsYWJpbGl0eSBjYW4gYmUgY2hlY2tlZCB3aXRoOiA+CiAJCQkJaWYgaGFzKCd1bm5hbWVkcGx1cycpCiA8CisJCQkJCQkqY2xpcGJvYXJkLWF1dG9zZWxlY3QqCiAJYXV0b3NlbGVjdAlXb3JrcyBsaWtlIHRoZSAnYScgZmxhZyBpbiAnZ3Vpb3B0aW9ucyc6IElmIHByZXNlbnQsCiAJCQl0aGVuIHdoZW5ldmVyIFZpc3VhbCBtb2RlIGlzIHN0YXJ0ZWQsIG9yIHRoZSBWaXN1YWwKIAkJCWFyZWEgZXh0ZW5kZWQsIFZpbSB0cmllcyB0byBiZWNvbWUgdGhlIG93bmVyIG9mIHRoZQpAQCAtMzA0OSw4ICszMDUxLDggQEAKIAlUaGUgZXhwcmVzc2lvbiB1c2VkIGZvciB3aGVuICdmb2xkbWV0aG9kJyBpcyAiZXhwciIuICBJdCBpcyBldmFsdWF0ZWQKIAlmb3IgZWFjaCBsaW5lIHRvIG9idGFpbiBpdHMgZm9sZCBsZXZlbC4gIFNlZSB8Zm9sZC1leHByfC4KIAotCVRoZSBleHByZXNzaW9uIG1heSBiZSBldmFsdWF0ZWQgaW4gdGhlIHxzYW5kYm94fCwgc2VlCi0JfHNhbmRib3gtb3B0aW9ufC4KKwlUaGUgZXhwcmVzc2lvbiB3aWxsIGJlIGV2YWx1YXRlZCBpbiB0aGUgfHNhbmRib3h8IGlmIHNldCBmcm9tIGEKKwltb2RlbGluZSwgc2VlIHxzYW5kYm94LW9wdGlvbnwuCiAJVGhpcyBvcHRpb24gY2FuJ3QgYmUgc2V0IGZyb20gYSB8bW9kZWxpbmV8IHdoZW4gdGhlICdkaWZmJyBvcHRpb24gaXMKIAlvbi4KIApAQCAtMzE5Miw4ICszMTk0LDggQEAKIAlBbiBleHByZXNzaW9uIHdoaWNoIGlzIHVzZWQgdG8gc3BlY2lmeSB0aGUgdGV4dCBkaXNwbGF5ZWQgZm9yIGEgY2xvc2VkCiAJZm9sZC4gIFNlZSB8Zm9sZC1mb2xkdGV4dHwuCiAKLQlUaGUgZXhwcmVzc2lvbiBtYXkgYmUgZXZhbHVhdGVkIGluIHRoZSB8c2FuZGJveHwsIHNlZQotCXxzYW5kYm94LW9wdGlvbnwuCisJVGhlIGV4cHJlc3Npb24gd2lsbCBiZSBldmFsdWF0ZWQgaW4gdGhlIHxzYW5kYm94fCBpZiBzZXQgZnJvbSBhCisJbW9kZWxpbmUsIHNlZSB8c2FuZGJveC1vcHRpb258LgogCiAJSXQgaXMgbm90IGFsbG93ZWQgdG8gY2hhbmdlIHRleHQgb3IganVtcCB0byBhbm90aGVyIHdpbmRvdyB3aGlsZQogCWV2YWx1YXRpbmcgJ2ZvbGR0ZXh0JyB8dGV4dGxvY2t8LgpAQCAtMzIzOCw4ICszMjQwLDggQEAKIAlmb3JtYXQgZnVuY3Rpb24gd2lsbCBiZSB1c2VkIHxDLWluZGVudGluZ3wuCiAJRW52aXJvbm1lbnQgdmFyaWFibGVzIGFyZSBleHBhbmRlZCB8OnNldF9lbnZ8LiAgU2VlIHxvcHRpb24tYmFja3NsYXNofAogCWFib3V0IGluY2x1ZGluZyBzcGFjZXMgYW5kIGJhY2tzbGFzaGVzLgotCVRoZSBleHByZXNzaW9uIG1heSBiZSBldmFsdWF0ZWQgaW4gdGhlIHxzYW5kYm94fCwgc2VlCi0JfHNhbmRib3gtb3B0aW9ufC4KKwlUaGlzIG9wdGlvbiBjYW5ub3QgYmUgc2V0IGZyb20gYSB8bW9kZWxpbmV8IG9yIGluIHRoZSB8c2FuZGJveHwsIGZvcgorCXNlY3VyaXR5IHJlYXNvbnMuCiAKIAkJCQkJCSonZm9ybWF0ZXhwcicqIConZmV4JyoKICdmb3JtYXRleHByJyAnZmV4JwlzdHJpbmcgKGRlZmF1bHQgIiIpCkBAIC0zMjcyLDkgKzMyNzQsOSBAQAogCVdoZW4gdGhlIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIG5vbi16ZXJvIFZpbSB3aWxsIGZhbGwgYmFjayB0byB1c2luZwogCXRoZSBpbnRlcm5hbCBmb3JtYXQgbWVjaGFuaXNtLgogCi0JVGhlIGV4cHJlc3Npb24gbWF5IGJlIGV2YWx1YXRlZCBpbiB0aGUgfHNhbmRib3h8LCBzZWUKLQl8c2FuZGJveC1vcHRpb258LiAgVGhhdCBzdG9wcyB0aGUgb3B0aW9uIGZyb20gd29ya2luZywgc2luY2UgY2hhbmdpbmcKLQl0aGUgYnVmZmVyIHRleHQgaXMgbm90IGFsbG93ZWQuCisJVGhlIGV4cHJlc3Npb24gd2lsbCBiZSBldmFsdWF0ZWQgaW4gdGhlIHxzYW5kYm94fCB3aGVuIHNldCBmcm9tIGEKKwltb2RlbGluZSwgc2VlIHxzYW5kYm94LW9wdGlvbnwuICBUaGF0IHN0b3BzIHRoZSBvcHRpb24gZnJvbSB3b3JraW5nLAorCXNpbmNlIGNoYW5naW5nIHRoZSBidWZmZXIgdGV4dCBpcyBub3QgYWxsb3dlZC4KIAogCQkJCQkJKidmc3luYycqIConZnMnKgogJ2ZzeW5jJyAnZnMnCQlib29sZWFuCShkZWZhdWx0IG9uKQpAQCAtNDA5OCw4ICs0MTAwLDggQEAKIAlmb3VuZC4gIEFsbG93cyBkb2luZyAiZ2YiIG9uIHRoZSBuYW1lIGFmdGVyIGFuICdpbmNsdWRlJyBzdGF0ZW1lbnQuCiAJQWxzbyB1c2VkIGZvciB8PGNmaWxlPnwuCiAKLQlUaGUgZXhwcmVzc2lvbiBtYXkgYmUgZXZhbHVhdGVkIGluIHRoZSB8c2FuZGJveHwsIHNlZQotCXxzYW5kYm94LW9wdGlvbnwuCisJVGhlIGV4cHJlc3Npb24gd2lsbCBiZSBldmFsdWF0ZWQgaW4gdGhlIHxzYW5kYm94fCB3aGVuIHNldCBmcm9tIGEKKwltb2RlbGluZSwgc2VlIHxzYW5kYm94LW9wdGlvbnwuCiAKIAlJdCBpcyBub3QgYWxsb3dlZCB0byBjaGFuZ2UgdGV4dCBvciBqdW1wIHRvIGFub3RoZXIgd2luZG93IHdoaWxlCiAJZXZhbHVhdGluZyAnaW5jbHVkZWV4cHInIHx0ZXh0bG9ja3wuCkBAIC00MTYzLDggKzQxNjUsOCBAQAogCVNlZSB8aW5kZW50LWV4cHJlc3Npb258LgogCU5PVEU6IFRoaXMgb3B0aW9uIGlzIG1hZGUgZW1wdHkgd2hlbiAnY29tcGF0aWJsZScgaXMgc2V0LgogCi0JVGhlIGV4cHJlc3Npb24gbWF5IGJlIGV2YWx1YXRlZCBpbiB0aGUgfHNhbmRib3h8LCBzZWUKLQl8c2FuZGJveC1vcHRpb258LgorCVRoZSBleHByZXNzaW9uIHdpbGwgYmUgZXZhbHVhdGVkIGluIHRoZSB8c2FuZGJveHwgd2hlbiBzZXQgZnJvbSBhCisJbW9kZWxpbmUsIHNlZSB8c2FuZGJveC1vcHRpb258LgogCiAJSXQgaXMgbm90IGFsbG93ZWQgdG8gY2hhbmdlIHRleHQgb3IganVtcCB0byBhbm90aGVyIHdpbmRvdyB3aGlsZQogCWV2YWx1YXRpbmcgJ2luZGVudGV4cHInIHx0ZXh0bG9ja3wuCkBAIC00NTkzLDI0ICs0NTk1LDMxIEBACiAJCQl7bm90IGluIFZpfQogCVN0cmluZ3MgdG8gdXNlIGluICdsaXN0JyBtb2RlIGFuZCBmb3IgdGhlIHw6bGlzdHwgY29tbWFuZC4gIEl0IGlzIGEKIAljb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmcgc2V0dGluZ3MuCisJICAJCQkJCQkqbGNzLWVvbCoKIAkgIGVvbDpjCQlDaGFyYWN0ZXIgdG8gc2hvdyBhdCB0aGUgZW5kIG9mIGVhY2ggbGluZS4gIFdoZW4KIAkJCW9taXR0ZWQsIHRoZXJlIGlzIG5vIGV4dHJhIGNoYXJhY3RlciBhdCB0aGUgZW5kIG9mIHRoZQogCQkJbGluZS4KKwkgIAkJCQkJCSpsY3MtdGFiKgogCSAgdGFiOnh5CVR3byBjaGFyYWN0ZXJzIHRvIGJlIHVzZWQgdG8gc2hvdyBhIHRhYi4gIFRoZSBmaXJzdAogCQkJY2hhciBpcyB1c2VkIG9uY2UuICBUaGUgc2Vjb25kIGNoYXIgaXMgcmVwZWF0ZWQgdG8KIAkJCWZpbGwgdGhlIHNwYWNlIHRoYXQgdGhlIHRhYiBub3JtYWxseSBvY2N1cGllcy4KIAkJCSJ0YWI6Pi0iIHdpbGwgc2hvdyBhIHRhYiB0aGF0IHRha2VzIGZvdXIgc3BhY2VzIGFzCiAJCQkiPi0tLSIuICBXaGVuIG9taXR0ZWQsIGEgdGFiIGlzIHNob3cgYXMgXkkuCisJICAJCQkJCQkqbGNzLXRyYWlsKgogCSAgdHJhaWw6YwlDaGFyYWN0ZXIgdG8gc2hvdyBmb3IgdHJhaWxpbmcgc3BhY2VzLiAgV2hlbiBvbWl0dGVkLAogCQkJdHJhaWxpbmcgc3BhY2VzIGFyZSBibGFuay4KKwkgIAkJCQkJCSpsY3MtZXh0ZW5kcyoKIAkgIGV4dGVuZHM6YwlDaGFyYWN0ZXIgdG8gc2hvdyBpbiB0aGUgbGFzdCBjb2x1bW4sIHdoZW4gJ3dyYXAnIGlzCiAJCQlvZmYgYW5kIHRoZSBsaW5lIGNvbnRpbnVlcyBiZXlvbmQgdGhlIHJpZ2h0IG9mIHRoZQogCQkJc2NyZWVuLgorCSAgCQkJCQkJKmxjcy1wcmVjZWRlcyoKIAkgIHByZWNlZGVzOmMJQ2hhcmFjdGVyIHRvIHNob3cgaW4gdGhlIGZpcnN0IGNvbHVtbiwgd2hlbiAnd3JhcCcKIAkJCWlzIG9mZiBhbmQgdGhlcmUgaXMgdGV4dCBwcmVjZWRpbmcgdGhlIGNoYXJhY3RlcgogCQkJdmlzaWJsZSBpbiB0aGUgZmlyc3QgY29sdW1uLgorCSAgCQkJCQkJKmxjcy1jb25jZWFsKgogCSAgY29uY2VhbDpjCUNoYXJhY3RlciB0byBzaG93IGluIHBsYWNlIG9mIGNvbmNlYWxlZCB0ZXh0LCB3aGVuCiAJCQknY29uY2VhbGxldmVsJyBpcyBzZXQgdG8gMS4KKwkgIAkJCQkJCSpsY3MtbmJzcCoKIAkgIG5ic3A6YwlDaGFyYWN0ZXIgdG8gc2hvdyBmb3IgYSBub24tYnJlYWthYmxlIHNwYWNlIChjaGFyYWN0ZXIKIAkJCTB4QTAsIDE2MCkuICBMZWZ0IGJsYW5rIHdoZW4gb21pdHRlZC4KIApAQCAtNTEzMSw2ICs1MTQwLDggQEAKIAlpbnZva2VkIGFuZCB3aGF0IGl0IHNob3VsZCByZXR1cm4uCiAJVGhpcyBvcHRpb24gaXMgdXN1YWxseSBzZXQgYnkgYSBmaWxldHlwZSBwbHVnaW46CiAJfDpmaWxldHlwZS1wbHVnaW4tb258CisJVGhpcyBvcHRpb24gY2Fubm90IGJlIHNldCBmcm9tIGEgfG1vZGVsaW5lfCBvciBpbiB0aGUgfHNhbmRib3h8LCBmb3IKKwlzZWN1cml0eSByZWFzb25zLgogCiAKIAkJCSAgICAqJ29wZW5kZXZpY2UnKiAqJ29kZXYnKiAqJ25vb3BlbmRldmljZScqIConbm9vZGV2JyoKQEAgLTY2OTIsOCArNjcwMyw4IEBACiAJVGhlIHZhcmlhYmxlICJhY3R1YWxfY3VyYnVmIiBpcyBzZXQgdG8gdGhlICdidWZucigpJyBudW1iZXIgb2YgdGhlCiAJcmVhbCBjdXJyZW50IGJ1ZmZlci4KIAotCVRoZSAnc3RhdHVzbGluZScgb3B0aW9uIG1heSBiZSBldmFsdWF0ZWQgaW4gdGhlIHxzYW5kYm94fCwgc2VlCi0JfHNhbmRib3gtb3B0aW9ufC4KKwlUaGUgJ3N0YXR1c2xpbmUnIG9wdGlvbiB3aWxsIGJlIGV2YWx1YXRlZCBpbiB0aGUgfHNhbmRib3h8IGlmIHNldCBmcm9tCisJYSBtb2RlbGluZSwgc2VlIHxzYW5kYm94LW9wdGlvbnwuCiAKIAlJdCBpcyBub3QgYWxsb3dlZCB0byBjaGFuZ2UgdGV4dCBvciBqdW1wIHRvIGFub3RoZXIgd2luZG93IHdoaWxlCiAJZXZhbHVhdGluZyAnc3RhdHVzbGluZScgfHRleHRsb2NrfC4KQEAgLTc4NTMsOSArNzg2NCw5IEBACiAJCQl7bm90IGF2YWlsYWJsZSB3aGVuIGNvbXBpbGVkIHdpdGhvdXQgdGhlIHwrd2lsZGlnbm9yZXwKIAkJCWZlYXR1cmV9CiAJQSBsaXN0IG9mIGZpbGUgcGF0dGVybnMuICBBIGZpbGUgdGhhdCBtYXRjaGVzIHdpdGggb25lIG9mIHRoZXNlCi0JcGF0dGVybnMgaXMgaWdub3JlZCB3aGVuIGNvbXBsZXRpbmcgZmlsZSBvciBkaXJlY3RvcnkgbmFtZXMsIGFuZAotCWluZmx1ZW5jZXMgdGhlIHJlc3VsdCBvZiB8ZXhwYW5kKCl8LCB8Z2xvYigpfCBhbmQgfGdsb2JwYXRoKCl8IHVubGVzcwotCWEgZmxhZyBpcyBwYXNzZWQgdG8gZGlzYWJsZSB0aGlzLgorCXBhdHRlcm5zIGlzIGlnbm9yZWQgd2hlbiBleHBhbmRpbmcgfHdpbGRjYXJkc3wsIGNvbXBsZXRpbmcgZmlsZSBvcgorCWRpcmVjdG9yeSBuYW1lcywgYW5kIGluZmx1ZW5jZXMgdGhlIHJlc3VsdCBvZiB8ZXhwYW5kKCl8LCB8Z2xvYigpfCBhbmQKKwl8Z2xvYnBhdGgoKXwgdW5sZXNzIGEgZmxhZyBpcyBwYXNzZWQgdG8gZGlzYWJsZSB0aGlzLgogCVRoZSBwYXR0ZXJuIGlzIHVzZWQgbGlrZSB3aXRoIHw6YXV0b2NtZHwsIHNlZSB8YXV0b2NtZC1wYXR0ZXJuc3wuCiAJQWxzbyBzZWUgJ3N1ZmZpeGVzJy4KIAlFeGFtcGxlOiA+CmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9xdWlja2ZpeC50eHQgYi9ydW50aW1lL2RvYy9xdWlja2ZpeC50eHQKaW5kZXggMGIzODYwOS4uOWRkM2JhYSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvcXVpY2tmaXgudHh0CisrKyBiL3J1bnRpbWUvZG9jL3F1aWNrZml4LnR4dApAQCAtNTYxLDcgKzU2MSw5IEBACiAJCQkJCSo6dmltKiAqOnZpbWdyZXAqICpFNjgyKiAqRTY4MyoKIDp2aW1bZ3JlcF1bIV0gL3twYXR0ZXJufS9bZ11bal0ge2ZpbGV9IC4uLgogCQkJU2VhcmNoIGZvciB7cGF0dGVybn0gaW4gdGhlIGZpbGVzIHtmaWxlfSAuLi4gYW5kIHNldAotCQkJdGhlIGVycm9yIGxpc3QgdG8gdGhlIG1hdGNoZXMuCisJCQl0aGUgZXJyb3IgbGlzdCB0byB0aGUgbWF0Y2hlcy4gIEZpbGVzIG1hdGNoaW5nCisJCQknd2lsZGlnbm9yZScgYXJlIGlnbm9yZWQ7IGZpbGVzIGluICdzdWZmaXhlcycgYXJlCisJCQlzZWFyY2hlZCBsYXN0LgogCQkJV2l0aG91dCB0aGUgJ2cnIGZsYWcgZWFjaCBsaW5lIGlzIGFkZGVkIG9ubHkgb25jZS4KIAkJCVdpdGggJ2cnIGV2ZXJ5IG1hdGNoIGlzIGFkZGVkLgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9zaWduLnR4dCBiL3J1bnRpbWUvZG9jL3NpZ24udHh0CmluZGV4IGNlZGQ5NmUuLjY0ZmRlMDggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3NpZ24udHh0CisrKyBiL3J1bnRpbWUvZG9jL3NpZ24udHh0CkBAIC0xLDQgKzEsNCBAQAotKnNpZ24udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBKYW4gMDQKKypzaWduLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTIgSnVsIDEwCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEdvcmRvbiBQcmlldXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3N5bnRheC50eHQgYi9ydW50aW1lL2RvYy9zeW50YXgudHh0CmluZGV4IDIzZWVkN2UuLjRlNmY5MmQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3N5bnRheC50eHQKKysrIGIvcnVudGltZS9kb2Mvc3ludGF4LnR4dApAQCAtMSw0ICsxLDQgQEAKLSpzeW50YXgudHh0KglGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTIgQXByIDA2Cisqc3ludGF4LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEp1biAxMwogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC02NTAsNyArNjUwLDExIEBACiAJYXNtc3ludGF4PW5hc20KIFJlcGxhY2UgIm5hc20iIHdpdGggdGhlIG5hbWUgb2YgdGhlIHJlYWwgYXNzZW1ibHkgc3ludGF4LiAgVGhpcyBsaW5lIG11c3QgYmUKIG9uZSBvZiB0aGUgZmlyc3QgZml2ZSBsaW5lcyBpbiB0aGUgZmlsZS4gIE5vIG5vbi13aGl0ZSB0ZXh0IG11c3QgYmUKLWltbWVkaWF0ZWx5IGJlZm9yZSBvciBhZnRlciB0aGlzIHRleHQuCitpbW1lZGlhdGVseSBiZWZvcmUgb3IgYWZ0ZXIgdGhpcyB0ZXh0LiAgTm90ZSB0aGF0IHNwZWNpZnlpbmcgYXNtc3ludGF4PWZvbyBpcworZXF1aXZhbGVudCB0byBzZXR0aW5nIGZ0PWZvbyBpbiBhIHxtb2RlbGluZXwsIGFuZCB0aGF0IGluIGNhc2Ugb2YgYSBjb25mbGljdAorYmV0d2VlbiB0aGUgdHdvIHNldHRpbmdzIHRoZSBvbmUgZnJvbSB0aGUgbW9kZWxpbmUgd2lsbCB0YWtlIHByZWNlZGVuY2UgKGluCitwYXJ0aWN1bGFyLCBpZiB5b3UgaGF2ZSBmdD1hc20gaW4gdGhlIG1vZGVsaW5lLCB5b3Ugd2lsbCBnZXQgdGhlIEdOVSBzeW50YXgKK2hpZ2hsaWdodGluZyByZWdhcmRsZXNzIG9mIHdoYXQgaXMgc3BlY2lmaWVkIGFzIGFzbXN5bnRheCkuCiAKIFRoZSBzeW50YXggdHlwZSBjYW4gYWx3YXlzIGJlIG92ZXJydWxlZCBmb3IgYSBzcGVjaWZpYyBidWZmZXIgYnkgc2V0dGluZyB0aGUKIGI6YXNtc3ludGF4IHZhcmlhYmxlOiA+CkBAIC0yOTA5LDcgKzI5MTMsNyBAQAogICAgZzp2aW1zeW5fZm9sZGluZyA9fiAnUCcgOiBmb2xkIHB5dGhvbiAgIHNjcmlwdAogICAgZzp2aW1zeW5fZm9sZGluZyA9fiAncicgOiBmb2xkIHJ1YnkgICAgIHNjcmlwdAogICAgZzp2aW1zeW5fZm9sZGluZyA9fiAndCcgOiBmb2xkIHRjbCAgICAgIHNjcmlwdAotCis8CiAJCQkJCQkJKmc6dmltc3luX25vZXJyb3IqCiBOb3QgYWxsIGVycm9yIGhpZ2hsaWdodGluZyB0aGF0IHN5bnRheC92aW0udmltIGRvZXMgbWF5IGJlIGNvcnJlY3Q7IFZpbUwgaXMgYQogZGlmZmljdWx0IGxhbmd1YWdlIHRvIGhpZ2hsaWdodCBjb3JyZWN0bHkuICBBIHdheSB0byBzdXBwcmVzcyBlcnJvcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdGFncyBiL3J1bnRpbWUvZG9jL3RhZ3MKaW5kZXggODQ1N2FlYy4uMmU2ZGExZSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdGFncworKysgYi9ydW50aW1lL2RvYy90YWdzCkBAIC0yODEsNiArMjgxLDcgQEAKICdnby1GJwlvcHRpb25zLnR4dAkvKidnby1GJyoKICdnby1MJwlvcHRpb25zLnR4dAkvKidnby1MJyoKICdnby1NJwlvcHRpb25zLnR4dAkvKidnby1NJyoKKydnby1QJwlvcHRpb25zLnR4dAkvKidnby1QJyoKICdnby1SJwlvcHRpb25zLnR4dAkvKidnby1SJyoKICdnby1UJwlvcHRpb25zLnR4dAkvKidnby1UJyoKICdnby1hJwlvcHRpb25zLnR4dAkvKidnby1hJyoKQEAgLTM0MDgsNiArMzQwOSw3IEBACiBDb2xvclNjaGVtZQlhdXRvY21kLnR4dAkvKkNvbG9yU2NoZW1lKgogQ29tbWFuZC1saW5lCWNtZGxpbmUudHh0CS8qQ29tbWFuZC1saW5lKgogQ29tbWFuZC1saW5lLW1vZGUJY21kbGluZS50eHQJLypDb21tYW5kLWxpbmUtbW9kZSoKK0NvbXBsZXRlRG9uZQlhdXRvY21kLnR4dAkvKkNvbXBsZXRlRG9uZSoKIENvbnRlbnRzCXF1aWNrcmVmLnR4dAkvKkNvbnRlbnRzKgogQ3Njb3BlCWlmX2NzY29wLnR4dAkvKkNzY29wZSoKIEN1cnNvckhvbGQJYXV0b2NtZC50eHQJLypDdXJzb3JIb2xkKgpAQCAtNDI0Miw3ICs0MjQ0LDExIEBACiBFODUzCWV2YWwudHh0CS8qRTg1MyoKIEU4NTQJb3B0aW9ucy50eHQJLypFODU0KgogRTg1NQlhdXRvY21kLnR4dAkvKkU4NTUqCitFODU4CWV2YWwudHh0CS8qRTg1OCoKK0U4NTkJZXZhbC50eHQJLypFODU5KgogRTg2CXdpbmRvd3MudHh0CS8qRTg2KgorRTg2MAlldmFsLnR4dAkvKkU4NjAqCitFODYxCWV2YWwudHh0CS8qRTg2MSoKIEU4Nwl3aW5kb3dzLnR4dAkvKkU4NyoKIEU4OAl3aW5kb3dzLnR4dAkvKkU4OCoKIEU4OQltZXNzYWdlLnR4dAkvKkU4OSoKQEAgLTQ0MjUsNiArNDQzMSw3IEBACiBRdWlja0ZpeENtZFBvc3QtZXhhbXBsZQlxdWlja2ZpeC50eHQJLypRdWlja0ZpeENtZFBvc3QtZXhhbXBsZSoKIFF1aWNrRml4Q21kUHJlCWF1dG9jbWQudHh0CS8qUXVpY2tGaXhDbWRQcmUqCiBRdWlja2ZpeAlxdWlja2ZpeC50eHQJLypRdWlja2ZpeCoKK1F1aXRQcmUJYXV0b2NtZC50eHQJLypRdWl0UHJlKgogUgljaGFuZ2UudHh0CS8qUioKIFJJU0MtT1MJb3NfcmlzYy50eHQJLypSSVNDLU9TKgogUklTQ09TCW9zX3Jpc2MudHh0CS8qUklTQ09TKgpAQCAtNTAxMSw2ICs1MDE4LDEzIEBACiBjbGllbnQtc2VydmVyCXJlbW90ZS50eHQJLypjbGllbnQtc2VydmVyKgogY2xpZW50c2VydmVyCXJlbW90ZS50eHQJLypjbGllbnRzZXJ2ZXIqCiBjbGlwYm9hcmQJZ3VpLnR4dAkvKmNsaXBib2FyZCoKK2NsaXBib2FyZC1hdXRvc2VsZWN0CW9wdGlvbnMudHh0CS8qY2xpcGJvYXJkLWF1dG9zZWxlY3QqCitjbGlwYm9hcmQtYXV0b3NlbGVjdG1sCW9wdGlvbnMudHh0CS8qY2xpcGJvYXJkLWF1dG9zZWxlY3RtbCoKK2NsaXBib2FyZC1hdXRvc2VsZWN0cGx1cwlvcHRpb25zLnR4dAkvKmNsaXBib2FyZC1hdXRvc2VsZWN0cGx1cyoKK2NsaXBib2FyZC1leGNsdWRlCW9wdGlvbnMudHh0CS8qY2xpcGJvYXJkLWV4Y2x1ZGUqCitjbGlwYm9hcmQtaHRtbAlvcHRpb25zLnR4dAkvKmNsaXBib2FyZC1odG1sKgorY2xpcGJvYXJkLXVubmFtZWQJb3B0aW9ucy50eHQJLypjbGlwYm9hcmQtdW5uYW1lZCoKK2NsaXBib2FyZC11bm5hbWVkcGx1cwlvcHRpb25zLnR4dAkvKmNsaXBib2FyZC11bm5hbWVkcGx1cyoKIGNtZGFyZy12YXJpYWJsZQlldmFsLnR4dAkvKmNtZGFyZy12YXJpYWJsZSoKIGNtZGJhbmctdmFyaWFibGUJZXZhbC50eHQJLypjbWRiYW5nLXZhcmlhYmxlKgogY21kbGluZS1hcmd1bWVudHMJdmlfZGlmZi50eHQJLypjbWRsaW5lLWFyZ3VtZW50cyoKQEAgLTY1MTMsNiArNjUyNywxMyBAQAogbGFzdC1wb3NpdGlvbi1qdW1wCWV2YWwudHh0CS8qbGFzdC1wb3NpdGlvbi1qdW1wKgogbGFzdF9idWZmZXJfbnIoKQlldmFsLnR4dAkvKmxhc3RfYnVmZmVyX25yKCkqCiBsY190aW1lLXZhcmlhYmxlCWV2YWwudHh0CS8qbGNfdGltZS12YXJpYWJsZSoKK2xjcy1jb25jZWFsCW9wdGlvbnMudHh0CS8qbGNzLWNvbmNlYWwqCitsY3MtZW9sCW9wdGlvbnMudHh0CS8qbGNzLWVvbCoKK2xjcy1leHRlbmRzCW9wdGlvbnMudHh0CS8qbGNzLWV4dGVuZHMqCitsY3MtbmJzcAlvcHRpb25zLnR4dAkvKmxjcy1uYnNwKgorbGNzLXByZWNlZGVzCW9wdGlvbnMudHh0CS8qbGNzLXByZWNlZGVzKgorbGNzLXRhYglvcHRpb25zLnR4dAkvKmxjcy10YWIqCitsY3MtdHJhaWwJb3B0aW9ucy50eHQJLypsY3MtdHJhaWwqCiBsZWZ0LXJpZ2h0LW1vdGlvbnMJbW90aW9uLnR4dAkvKmxlZnQtcmlnaHQtbW90aW9ucyoKIGxlbigpCWV2YWwudHh0CS8qbGVuKCkqCiBsZXNzCXZhcmlvdXMudHh0CS8qbGVzcyoKQEAgLTY1NjQsNiArNjU4NSw3IEBACiBsdWEtYnVmZmVyCWlmX2x1YS50eHQJLypsdWEtYnVmZmVyKgogbHVhLWNvbW1hbmRzCWlmX2x1YS50eHQJLypsdWEtY29tbWFuZHMqCiBsdWEtZGljdAlpZl9sdWEudHh0CS8qbHVhLWRpY3QqCitsdWEtZXZhbAlpZl9sdWEudHh0CS8qbHVhLWV2YWwqCiBsdWEtbGlzdAlpZl9sdWEudHh0CS8qbHVhLWxpc3QqCiBsdWEtbHVhZXZhbAlpZl9sdWEudHh0CS8qbHVhLWx1YWV2YWwqCiBsdWEtdmltCWlmX2x1YS50eHQJLypsdWEtdmltKgpAQCAtNjU3Miw2ICs2NTk0LDggQEAKIGx1YWV2YWwoKQlldmFsLnR4dAkvKmx1YWV2YWwoKSoKIG0JbW90aW9uLnR4dAkvKm0qCiBtJwltb3Rpb24udHh0CS8qbScqCittPAltb3Rpb24udHh0CS8qbTwqCittPgltb3Rpb24udHh0CS8qbT4qCiBtWwltb3Rpb24udHh0CS8qbVsqCiBtXQltb3Rpb24udHh0CS8qbV0qCiBtYAltb3Rpb24udHh0CS8qbWAqCkBAIC03MjMxLDcgKzcyNTUsMTAgQEAKIHB1bXZpc2libGUoKQlldmFsLnR4dAkvKnB1bXZpc2libGUoKSoKIHB1dAljaGFuZ2UudHh0CS8qcHV0KgogcHV0LVZpc3VhbC1tb2RlCWNoYW5nZS50eHQJLypwdXQtVmlzdWFsLW1vZGUqCitweTNldmFsKCkJZXZhbC50eHQJLypweTNldmFsKCkqCitweWV2YWwoKQlldmFsLnR4dAkvKnB5ZXZhbCgpKgogcHl0aG9uCWlmX3B5dGgudHh0CS8qcHl0aG9uKgorcHl0aG9uLWJpbmRldmFsCWlmX3B5dGgudHh0CS8qcHl0aG9uLWJpbmRldmFsKgogcHl0aG9uLWJ1ZmZlcglpZl9weXRoLnR4dAkvKnB5dGhvbi1idWZmZXIqCiBweXRob24tYnVmZmVycwlpZl9weXRoLnR4dAkvKnB5dGhvbi1idWZmZXJzKgogcHl0aG9uLWNvbW1hbmQJaWZfcHl0aC50eHQJLypweXRob24tY29tbWFuZCoKQEAgLTcyNDMsNiArNzI3MCw3IEBACiBweXRob24tZXhhbXBsZXMJaWZfcHl0aC50eHQJLypweXRob24tZXhhbXBsZXMqCiBweXRob24taW5wdXQJaWZfcHl0aC50eHQJLypweXRob24taW5wdXQqCiBweXRob24tb3V0cHV0CWlmX3B5dGgudHh0CS8qcHl0aG9uLW91dHB1dCoKK3B5dGhvbi1weWV2YWwJaWZfcHl0aC50eHQJLypweXRob24tcHlldmFsKgogcHl0aG9uLXJhbmdlCWlmX3B5dGgudHh0CS8qcHl0aG9uLXJhbmdlKgogcHl0aG9uLXZpbQlpZl9weXRoLnR4dAkvKnB5dGhvbi12aW0qCiBweXRob24td2luZG93CWlmX3B5dGgudHh0CS8qcHl0aG9uLXdpbmRvdyoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3RvZG8udHh0IGIvcnVudGltZS9kb2MvdG9kby50eHQKaW5kZXggYTBiNmIwNy4uZmQxOTY4MyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdG9kby50eHQKKysrIGIvcnVudGltZS9kb2MvdG9kby50eHQKQEAgLTEsNCArMSw0IEBACi0qdG9kby50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEp1biAwMQorKnRvZG8udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBKdWwgMTEKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwJICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtNDEsMjQgKzQxLDQxIEBACiBHVEs6IHByb2JsZW0gd2l0aCAnTCcgaW4gJ2d1aW9wdGlvbnMnIGNoYW5naW5nIHRoZSB3aW5kb3cgd2lkdGguCiAoQWFyb24gQ29ybmVsaXVzLCAyMDEyIEZlYiA2KQogCi1QYXRjaDogaG9tZV9yZXBsYWNlKCkgZG9lcyBub3Qgd29yayB3aHRuIDguMyBmaWxlbmFtZS4gKFlhc3VoaXJvCi1NYXRzdW1vdG8sIDIwMTIgQXByIDE4KSAgQXNrZWQgZm9yIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgcGF0Y2guCi1BZ2FpbiBNYXkgMTguICBVcGRhdGUgTWF5IDI5IG9uIGdpdGh1Yi4gIERvZXMgbm90IGhhbmRsZSBtdWx0aS1ieXRlIGNoYXJzLgorQ2hlY2tpbmcgcnVudGltZSBzY3JpcHRzOiBUaGlsbyBTaXgsIDIwMTIgSnVuIDYuCisKK0xpc3Qgb2YgYnJva2VuIG1pcnJvcnMuIChDaHJpcyBQZW50YWdvLCAyMDEyIEp1biAxNSkKKy90bXAvYnJva2VuLW1pcnJvcnMuY3N2CiAKIEphdmFzY3JpcHQgZmlsZSB3aGVyZSBpbmRlbnQgZ2V0cyBzdHVjayBvbjogR2FsYXh5TWFzdGVyLCAyMDEyIE1heSAzLgogCitQYXRjaCB0byBmaXggYmxhY2sgb24gYmxhY2sgZm9yIHRlcm1pbmFsIHdpdGggOCBjb2xvcnMuCisoSmFtZXMgTWNDb3ksIDIwMTIgSnVsIDEwKQorCitQYXRjaCB0byBtYWtlIHdpbnJlc3R2aWV3KCkgd29yayBiZXR0ZXIuIChMZWNoIExvcmVucywgMjAxMiBKdWwgMTApCisKK1RoZSBDb21wbGV0ZURvbmUgYXV0b2NvbW1hbmQgbmVlZHMgc29tZSBpbmZvIHBhc3NlZCB0byBpdDoKKy0gVGhlIHdvcmQgdGhhdCB3YXMgc2VsZWN0ZWQgKGVtcHR5IGlmIGFiYW5kb25lZCBjb21wbGV0ZSkKKy0gVHlwZSBvZiBjb21wbGV0aW9uOiB0YWcsIG9tbmlmdW5jLCB1c2VyIGZ1bmMuCisKK0NvbXBsZXRlZnVuYyBnZXRzIG51bWJlciBwYXNzZWQgaW5zdGVhZCBvZiBzdHJpbmcuCitQYXRjaCBmcm9tIFlha3VoaXJvIE1hdHN1bW90bywgMjAxMiBKdWwgMTAKKworVXNlciBjb21tYW5kIGNvbXBsZXRlIGNhbid0IGhhbmRsZSBzcGFjZXMuICBQYXRjaCBieSBZYXN1aGlybyBNYXRzdW1vdG8sIDIwMTIKK0p1bCAxMS4KKwogV2luMzI6IFdoZW4gYSBkaXJlY3RvcnkgbmFtZSBjb250YWlucyBhbiBleGNsYW1hdGlvbiBtYXJrLCBjb21wbGV0aW9uIGRvZXNuJ3QKIGNvbXBsZXRlIHRoZSBjb250ZW50cyBvZiB0aGUgZGlyZWN0b3J5LiAgTm8gZXNjYXBpbmcgZm9yIHRoZSAiISI/IChKYW4KIFN0b2NrZXIsIDIwMTIgSmFuIDUpCiAKLVBhdGNoIGZvciB0aGlzIHJlcXVlc3Q6IChMZWNoIExvcmVucywgMjAxMiBNYXkgMjYpCi03ICAgQWRkICdqJyBmbGFnIHRvICdmb3JtYXRvcHRpb25zJzogUmVtb3ZlIGNvbW1lbnQgbGVhZGVyIHdoZW4gam9pbmluZyBsaW5lcy4KK0hlbHAgZm9yIHYvViBpcyBub3QgcXVpdGUgcmlnaHQuIChCZW4gRnJpdHosIDIwMTIgSnVuIDQpCitDaGFuZ2UgW2NvdW50XXYgdG8gc2VsZWN0IGxhc3QgdmlzdWFsIGFyZWEgW2NvdW50XSB0aW1lcz8KIAogSXNzdWUgNTQ6IGRvY3VtZW50IGJlaGF2aW9yIG9mIC1jb21wbGV0ZSwgYWxzbyBleHBhbmRzIGFyZy4KIAotQ3Vyc29yIG9uIHdyb25nIGxpbmUgYWZ0ZXIgIjpjb3BlbiIuIChKb2huIEJlY2tldHQsIDIwMTIgQXByIDMwKQotRml4IGJ5IENocmlzdGlhbiBCcmFiYW5kdCwgMjAxMiBNYXkgMi4gIEJ1dCBjYWxsaW5nIGNoYW5nZWRfd2luZG93X3NldHRpbmcoKQotd291bGQgYmUgYSBzaW1wbGVyIHNvbHV0aW9uLgorSXNzdWUgNzI6ICdhdXRvY2hkaXInIGNhdXNlcyBwcm9ibGVtcyBmb3IgOnZpbWdyZXAuCisKK01TLVdpbmRvd3M6IENyYXNoIG9wZW5pbmcgdmVyeSBsb25nIGZpbGUgbmFtZSBzdGFydGluZyB3aXRoICJcXCIuCisoQ2hyaXN0aWFuIEJyb2NrLCAyMDEyIEp1biAyOSkKIAogU3ludGF4IHVwZGF0ZSBwcm9ibGVtIGluIG9uZSBidWZmZXIgb3BlbmVkIGluIHR3byB3aW5kb3dzLCBib3R0b20gd2luZG93IGlzCiBub3QgY29ycmVjdGx5IHVwZGF0ZWQuIChQYXVsIEhhcnJpcywgMjAxMiBGZWIgMjcpCkBAIC02Niw0NiArODMsMzMgQEAKIFBhdGNoIHRvIGFkZCBnZXRzaWQoKS4gKFR5cnUsIDIwMTEgT2N0IDIpICBEbyB3ZSB3YW50IHRoaXM/ICBVcGRhdGUgT2N0IDQuCiBPciB1c2UgZXhwYW5kKCc8c2lkPicpPwogCi1XaW4zMjogV2hlbiB0aGUgdGFza2JhciBpcyBhdCB0aGUgdG9wIG9mIHRoZSBzY3JlZW4gY3JlYXRpbmcgdGhlIHRhYmJhciBjYXVzZXMKLXRoZSB3aW5kb3cgdG8gbW92ZSB1bm5lY2Vzc2FyaWx5LiAoV2lsbGlhbSBFLiBTa2VpdGggSUlJLCAyMDEyIEphbiAxMikKLVBhdGNoOiAyMDEyIEphbiAxMyAgTmVlZHMgbW9yZSB3b3JrICgyMDEyIEZlYiAyKQorTVMtV2luZG93cyByZXNpemluZyBwcm9ibGVtczoKKy0gV2luZG93cyB3aW5kb3cgb24gc2NyZWVuIHBvc2l0aW9uaW5nOiBQYXRjaCBieSBZdWtpaGlybyBOYWthZGFpcmEsIDIwMTIgSnVuCisgIDIwLiAgVXNlcyBnZXRXaW5kb3dSZWN0KCkgaW5zdGVhZCBvZiBHZXRXaW5kb3dQbGFjZW1lbnQoKQorLSBXaW4zMjogV2hlbiB0aGUgdGFza2JhciBpcyBhdCB0aGUgdG9wIG9mIHRoZSBzY3JlZW4gY3JlYXRpbmcgdGhlIHRhYmJhcgorICBjYXVzZXMgdGhlIHdpbmRvdyB0byBtb3ZlIHVubmVjZXNzYXJpbHkuIChXaWxsaWFtIEUuIFNrZWl0aCBJSUksIDIwMTIgSmFuCisgIDEyKSBQYXRjaDogMjAxMiBKYW4gMTMgIE5lZWRzIG1vcmUgd29yayAoMjAxMiBGZWIgMikKIAotbWxfZ2V0IGVycm9yIHdoZW4gdXNpbmcgc3ludGFzdGljIHBsdWdpbi4gKEFsZXggRWZyb3MsIDIwMTIgTWF5IDI0KQotUHJvYmFibHkgY2F1c2VkIGJ5IHJlY3Vyc2l2ZSB1c2Ugb2YgOmxjbG9zZS4KLU1heSBhbHNvIGNyYXNoIFZpbSAoTWF5IDI1KQotUGF0Y2ggYnkgQ2hyaXN0aWFuIEJyYWJhbmR0LCBNYXkgMjYuICBJcyB0aGlzIHJpZ2h0PworJ2ltaW5zZXJ0JyBnbG9iYWwgdmFsdWUgc2V0IHdoZW4gdXNpbmcgIjpzZXRsb2NhbCBpbWluc2VydCI/IChXdSwgMjAxMiBKdW4gMjMpCiAKIEhlbHAgZm9yIGI6dW5kb19pbmRlbnQnLiAoVGhpbG8gU2l4LCAyMDEyIE1heSAyOCkKIEFsc28gcXVlc3Rpb24gaWYgZXhhbXBsZXMgYXJlIGNvcnJlY3QuCiAKLURvY3MgcGF0Y2ggZm9yIEJ1ZlJlYWQvQnVmUmVhZFBvc3QuIChHYXJ5IEpvaG5zb24sIDIwMTIgTWF5IDI4KQorVGhlIGlucHV0IG1hcCBmb3IgQ1RSTC1PIGluIG1zd2luLnZpbSBjYXVzZXMgcHJvYmxlbXMgYWZ0ZXIgQ1RSTC1YIENUUkwtTy4KK1N1Z2dlc3Rpb24gZm9yIGFub3RoZXIgbWFwLiAoUGhpbGlwIE1hdCwgMjAxMiBKdW4gMTgpCitCdXQgdXNlICJnaSIgaW5zdGVhZCBvZiAiYSIuICBPciB1c2UgQ1RSTC1cIENUUkwtTy4KIAogVVJYVlQ6CiAtIHdpbGwgZ2V0IHN0dWNrIGlmIGJ5dGUgc2VxdWVuY2UgZG9lcyBub3QgY29udGFpbmUgZXhwZWN0ZWQgc2VtaWNvbG9uLgogLSBVc2UgdXJ4dnQgbW91c2Ugc3VwcG9ydCBhbHNvIGluIHh0ZXJtLiAgRXhwbGFuYXRpb25zOgogICBodHRwOi8vd3d3Lm1pZG5pZ2h0LWNvbW1hbmRlci5vcmcvdGlja2V0LzI2NjIKIAotUGF0Y2ggZm9yIElCTSB6L09TIG1ha2VmaWxlLiAoU3RlcGhlbiBCb3Z5LCAyMDEyIEFwciAyNikKLVBhdGNoIGZvciBjb25maWd1cmUgKFN0ZXBoZW4gQm92eSwgMjAxMiBBcHIgMjgpCi1VcGRhdGVzIGxhdGVyLiBDb250ZXh0IGRpZmYgTWF5IDcuCi0KLVBhdGNoIHRvIHN1cHBvcnQgYnJvd3NlcmZpbHRlciBmb3IgR1RLLiAoQ2hyaXN0aWFuIEJyYWJhbmR0LCAyMDEyIE1heSAyMikKK1BhdGNoIHRvIGFkZCB0ZXN0cyBmb3IgaWZfeGNtZHNydi5jLiwgSnVsIDgsIG5lZWQgc29tZSBtb3JlIHdvcmsuIChCcmlhbiBCdXJucykKIAogV2hlbiBydW5uaW5nIFZpbSBpbiBzaWxlbnQgZXggbW9kZSwgYW4gZXhpc3Rpbmcgc3dhcGZpbGUgY2F1c2VzIFZpbSB0byB3YWl0CiBmb3IgYSB1c2VyIGFjdGlvbiB3aXRob3V0IGEgcHJvbXB0LiAoTWFhcnRlbiBCaWxsZW1vbnQsIDIwMTIgRmViIDMpCiBEbyBnaXZlIHRoZSBwcm9tcHQ/IFF1aXQgd2l0aCBhbiBlcnJvcj8KIAotUGF0Y2ggZm9yOiAoQ2hyaXN0aWFuIEJyYWJhbmR0LCAyMDExIEF1ZyAyNCwgdXBkYXRlZCBwYXRjaCkKLTggICAiOnNpZ24gdW5wbGFjZSAqIGZpbGU9e2ZpbGVuYW1lfSIgc2hvdWxkIHdvcmsuICBBbHNvOiAiOnNpZ24gdW5wbGFjZSAqCi0gICAgYnVmZmVyPXtidWZucn0iLiAgU28gb25lIGNhbiByZW1vdmUgYWxsIHNpZ25zIGZvciBvbmUgZmlsZS9idWZmZXIuCi0KLVBhdGNoIGZvciBhdXRvIGNvcHkgc2VsZWN0aW5nIHRvICsgcmVnaXN0ZXIuIChieSBDaHJpc3RpYW4gQnJhYmFudCwgaW4gZW1haWwKLWZyb20gU2VyZ2V5IFZha3VsZW5rbywgMjAxMiBBcHIgMjcpCi0KLVBhdGNoIHRvIGFkZCAib25zZWxlY3RlZCIgY2FsbGJhY2sgZm9yIGNvbXBsZXRpb24uIChUYXJvIE11cmFva2EsIDIwMTEgU2VwIDI0KQotQW5vdGhlciBmb3IgQ29tcGxldGVGdW5jT2suIChGbG9yaWFuIEtsZWluLCAyMDEyIEphbiAzMSkKLU5hbWUgaXQgIkNvbXBsZXRlRnVuY0RvbmUiLgotCiBQYXRjaCBmb3IgTWFrZV9tdmMubWFrIGFuZCBNYWtlX21pbmcubWFrIGZvciBSdWJ5IHN1cHBvcnQuIChZYXN1aGlybwogTWF0c3Vtb3RvLCAyMDEyIEphbiAzMCkKIApAQCAtMTIyLDggKzEyNiwxNyBAQAogUGF0Y2ggZm9yIGhhcygndW5uYW1lZHBsdXMnKSBkb2NzLiAoVG9ueSBNZWNoZWx5bmNrLCAyMDExIFNlcCAyNykKIEFuZCBvbmUgZm9yIGd1aV94MTEudHh0LgogCi1QYXRjaCBmb3IgUHl0aG9uOiBhZGQgcHlldmFsKCkgYW5kIHZpbS5iaW5kZXZhbCgpICh6eXgsIDIwMTIgQXByIDE1LCB1cGRhdGUKLUFwciAxNikgQWxzbyBjaGFuZ2VzIGZvciBMdWEuICBVcGRhdGUgQXByIDE5LiAgVXBkYXRlIEFwciAyMi4KKy0gICBQYXRjaCBmb3IgJ2JyZWFraW5kZW50JyBvcHRpb246IHJlcGVhdCBpbmRlbnQgZm9yIHdyYXBwZWQgbGluZS4gKFZhY2xhdgorICAgIFNtaWxhdWVyLCAyMDA0IFNlcCAxMywgZml4IE9jdCAzMSwgdXBkYXRlIDIwMDcgTWF5IDMwKQorICAgIFZlcnNpb24gZm9yIGxhdGVzdCBNYWNWaW06IFRvYmlhIENvbmZvcnRvLCAyMDA5IE5vdiAyMworICAgIE1vcmUgcmVjZW50IHZlcnNpb246IGh0dHBzOi8vcmV0cmFjaWxlLm5ldC93aWtpL1ZpbUJyZWFrSW5kZW50CisgICAgUG9zdGVkIHRvIHZpbS1kZXYgYnkgVGF5bG9yIEhlZGJlcmcsIDIwMTEgTm92IDI1CisKK1Byb2JsZW0gd2l0aCBzdGFydGluZyBWaXN1YWwgYmxvY2sgbW9kZSB3aXRoIDpub3JtIHdoZW4gJ3ZpcnR1YWxlZGl0JyBpcyBzZXQuCisoRGF2aWQgZ2x0cywgMjAxMiBKdW4gNSkKKworV2hlbiAnZ3Vpb3B0aW9ucycgY29udGFpbnMgJ2MnICh1c2UgY29uc29sZSBkaWFsb2cpIHRoZW4gaW5wdXRkaWFsb2coKSByZXR1cm5zCithIGRpZmZlcmVudCB2YWx1ZSB3aGVuIHRoZSBkaWFsb2cgaXMgY2FuY2VsbGVkLiAoRGF2aWQgRmlzaGJ1cm4sIDIwMTIgSnVsIDEwKQogCiAiOmNkIiBkb2Vzbid0IHdvcmsgd2hlbiBjdXJyZW50IGRpcmVjdG9yeSBwYXRoIGNvbnRhaW5zICIqKiIuCiBmaW5kZGlyKCkgaGFzIHRoZSBzYW1lIHByb2JsZW0uICAoWXVraWhpcm8gTmFrYWRhaXJhLCAyMDEyIEphbiAxMCkKQEAgLTEzMSw4ICsxNDQsMTMgQEAKIAogUHJvYmxlbSB3aXRoIGw6IGRpY3Rpb25hcnkgYmVpbmcgbG9ja2VkIGluIGEgZnVuY3Rpb24uIChaeVgsIDIwMTEgSnVsIDIxKQogCitTaG91bGQgdXNlIGhhcygiYnJvd3NlZmlsdGVyIikgaW4gZnRwbHVnaW5zLiAgUmVxdWlyZXMgcGF0Y2ggNy4zLjU5My4KKwogSXNzdWUgNDg6IGZvbGRvcGVuIGVycm9yIGNhbid0IGJlIGNhdWdodCBieSB0cnkvY2F0Y2gKIAorImRnXyIgZGVsZXRlcyBpbmNsdWRpbmcgdGhlIGxhc3QgY2hhcmFjdGVyLCAiZDpub3JtYWwhIGdfIiBkb2Vzbid0LgorKE5vbWVuIE5lc2NpbywgMjAxMiBKdW4gMjcpCisKIFBhdGNoIHRvIHNvcnQgZnVuY3Rpb25zIHN0YXJ0aW5nIHdpdGggJzwnIGFmdGVyIG90aGVycy4gIE9taXQgZGljdCBmdW5jdGlvbnMsCiB0aGV5IGNhbid0IGJlIGNhbGxlZC4gKFlhc3VoaXJvIE1hdHN1bW90bywgMjAxMSBPY3QgMTEpCiAKQEAgLTE0Miw2ICsxNjAsNyBAQAogTm92IDIwKQogCiBQYXRjaCB0byBpbXByb3ZlIEdVSSBmaW5kL3JlcGxhY2UgZGlhbG9nLiAoQ2hyaXN0aWFuIEJyYWJhbmR0LCAyMDEyIE1heSAyNikKK1VwZGF0ZSBKdW4gMi4KIAogUGF0Y2ggdG8gYWRkICI6cHkzZG8iLiAoTGlseWRqd2csIDIwMTIgQXByIDcpCiAKQEAgLTE2OSw2ICsxODgsOSBAQAogCiBJc3N1ZSA2NDogd2hlbiAnaW5jc2VhcmNoJyBpcyBvbiBjYW4ndCBwYXN0ZSBMRiBvbiBjb21tYW5kIGxpbmUuCiAKK09uIE1TLVdpbmRvd3MgYSB0ZW1wIGRpciB3aXRoIGEgJiBpbml0IGNhdXNlcyBzeXN0ZW0oKSB0byBmYWlsLiAoQmVuIEZyaXR6LAorMjAxMiBKdW4gMTkpCisKICdjdXJzb3JsaW5lJyBpcyBkaXNwbGF5ZWQgdG9vIHNob3J0IHdoZW4gdGhlcmUgYXJlIGNvbmNlYWxlZCBjaGFyYWN0ZXJzIGFuZAogJ2xpc3QnIGlzIHNldC4gIChEZW5uaXMgUHJlaXNlcikKIFBhdGNoIDcuMy4xMTYgd2FzIHRoZSB3cm9uZyBzb2x1dGlvbi4KQEAgLTE2MjUsMTEgKzE2NDcsNiBAQAogNyAgIENvbXBsZXRpb24gb2YgbmV0d29yayBzaGFyZXMsIHBhdGNoIGJ5IFlhc3VoaXJvIE1hdHN1bW90by4KICAgICBVcGRhdGUgMjAwNCBTZXAgNi4KICAgICBIb3cgZG9lcyB0aGlzIHdvcms/ICBNaXNzaW5nIGNvbW1lbnRzLgotLSAgIFBhdGNoIGZvciAnYnJlYWtpbmRlbnQnIG9wdGlvbjogcmVwZWF0IGluZGVudCBmb3Igd3JhcHBlZCBsaW5lLiAoVmFjbGF2Ci0gICAgU21pbGF1ZXIsIDIwMDQgU2VwIDEzLCBmaXggT2N0IDMxLCB1cGRhdGUgMjAwNyBNYXkgMzApCi0gICAgVmVyc2lvbiBmb3IgbGF0ZXN0IE1hY1ZpbTogVG9iaWEgQ29uZm9ydG8sIDIwMDkgTm92IDIzCi0gICAgTW9yZSByZWNlbnQgdmVyc2lvbjogaHR0cHM6Ly9yZXRyYWNpbGUubmV0L3dpa2kvVmltQnJlYWtJbmRlbnQKLSAgICBQb3N0ZWQgdG8gdmltLWRldiBieSBUYXlsb3IgSGVkYmVyZywgMjAxMSBOb3YgMjUKIDggICBBZGQgYSBmZXcgbW9yZSBjb21tYW5kIG5hbWVzIHRvIHRoZSBtZW51cy4gIFBhdGNoIGZyb20gSmlyaSBCcmV6aW5hCiAgICAgKDI4IGZlYiAyMDAyKS4gIFdpbGwgbWVzcyB0aGUgdHJhbnNsYXRpb25zLi4uCiA3ICAgQVRURU5USU9OIGRpYWxvZyBjaG9pY2VzIGFyZSBtb3JlIGxvZ2ljYWwgd2hlbiAiRGVsZXRlIGl0JyBhcHBlYXJzCkBAIC0yNjQ3LDggKzI2NjQsNiBAQAogICAgIGZvbnQsIGV0Yy4pCiA4ICAgTWFrZSBHVUkgbWVudSBpbiB0YWIgcGFnZXMgbGluZSBjb25maWd1cmFibGUuICBMaWtlIHRoZSBwb3B1cCBtZW51LgogOCAgIGJhbGxvb25zIGZvciB0aGUgdGFiIHBhZ2UgbGFiZWxzIHRoYXQgYXJlIHNob3J0ZW5lZCB0byBzaG93IHRoZSBmdWxsIHBhdGguCi04ICAgOnRhYm1vdmUgK04JIG1vdmUgdGFiIHBhZ2UgTiBwYWdlcyBmb3J3YXJkCi04ICAgOnRhYm1vdmUgLU4JIG1vdmUgdGFiIHBhZ2UgTiBwYWdlcyBiYWNrd2FyZAogNyAgIDp0YWJkdXAJIGR1cGxpY2F0ZSB0aGUgdGFiIHdpdGggYWxsIGl0cyB3aW5kb3dzLgogNyAgIE9wdGlvbiB0byBwdXQgdGFiIGxpbmUgYXQgdGhlIGxlZnQgb3IgcmlnaHQ/ICBOZWVkIGFuIG9wdGlvbiB0byBzcGVjaWZ5CiAgICAgaXRzIHdpZHRoLiAgSXQncyBsaWtlIGEgc2VwYXJhdGUgd2luZG93IHdpdGggIjp0YWJzIiBvdXRwdXQuCkBAIC0yOTUwLDYgKzI5NjUsOCBAQAogICAgIHRoaXMgaXNuJ3QgcmVzZXQuICBBZGQgYSBzcGVjaWFsIGtleXdvcmQgZGVmaW5pdGlvbiBmb3IgdGhlIHN5bnRheCBydWxlcz8KICAgICBXaGVuIHRoaXMgaXMgZG9uZSwgdXNlIHZpbS52aW0gc3ludGF4IGhpZ2hsaWdodGluZyBmb3IgaGVscCBmaWxlIGV4YW1wbGVzLAogICAgIGJ1dCB3aXRob3V0ICI6IiBpbiAnaXNrZXl3b3JkJyBmb3Igc3ludGF4LgorICAgIEFsc28gbmVlZCBhIHNlcGFyYXRlICdpc2tleXdvcmQnIGZvciB0aGUgY29tbWFuZCBsaW5lLCBlLmcuLCBpbiBhIGhlbHAKKyAgICB3aW5kb3cgIjplIC9hc2RmL2FzZGYvIiBDVFJMLVcgd29ya3MgZGlmZmVyZW50LgogOCAgIEFkZCBzcGVjaWZpYyBzeW50YXggaXRlbSB0byBtYXRjaCB3aXRoIHBhcmVucy9icmFjZXMgdGhhdCBkb24ndCBoYXZlIGEKICAgICAiJSIgbWF0Y2guICA6c3ludGF4IG5vbWF0Y2ggY01hdGNoRXJyb3IgKCx7LFssKSx9LF0gW2NvbnRhaW5lZF0KIDggICBIaWdobGlnaHQgdGhlIHRleHQgYmV0d2VlbiB0d28gbWF0Y2hpbmcgcGFyZW5zIChlLmcuLCB3aXRoIGEgZ3JleQpAQCAtNDkwNiw2ICs0OTIzLDcgQEAKIC0gICBNYWtlIGl0IHBvc3NpYmxlIGZvciB0aGUgJ3Nob3dicmVhaycgdG8gYmUgZGlzcGxheWVkIGF0IHRoZSBlbmQgb2YgdGhlCiAgICAgbGluZS4gIFVzZSBhIGNvbW1hIHRvIHNlcGFyYXRlIHRoZSBwYXJ0IGF0IHRoZSBlbmQgYW5kIHRoZSBzdGFydCBvZiB0aGUKICAgICBsaW5lPyAgSGlnaGxpZ2h0IHRoZSBsaW5lYnJlYWsgY2hhcmFjdGVycywgYWRkIGZsYWcgaW4gJ2hpZ2hsaWdodCcuCisgICAgTWFrZSAnc2hvd2JyZWFrJyBsb2NhbCB0byBhIHdpbmRvdy4KIC0gICBTb21lIHN0cmluZyBvcHRpb25zIHNob3VsZCBiZSBleHBhbmRlZCBpZiB0aGV5IGhhdmUgd2lsZGNhcmRzLCBlLmcuCiAgICAgJ2RpY3Rpb25hcnknIHdoZW4gaXQgaXMgIiouaCIuCiAtICAgVXNlIGEgc3BlY2lmaWMgdHlwZSBmb3IgbnVtYmVyIGFuZCBib29sZWFuIG9wdGlvbnMsIG1ha2luZyBpdCBwb3NzaWJsZSB0bwpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdmltLWRlLjEgYi9ydW50aW1lL2RvYy92aW0tZGUuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYmE0OTM4Ci0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9kb2MvdmltLWRlLjEKQEAgLTAsMCArMSw0NzggQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiIFRyYW5zbGF0ZWQgYnkgYncxICgyMDA4KSBhbmQgRmxvcmlhbiBSZWhuaXNjaCA8Zm0tckBnbXguZGU+ICgyMDEyKQorLlwiIEt1ZG9zIHRvIHRoZSBmb2xrcyBvbiB2aW0tZGV2IGFuZCBkZWJpYW4tbDEwbi1nZXJtYW4KKy5USCBWSU0gMSAiMjAwNiBBcHIgMTEiICAKKy5TSCBCRVpFSUNITlVORwordmltIFwtIFZpIElNcHJvdmVkLCBlaW4gVGV4dFwtRWRpdG9yIGb8ciBQcm9ncmFtbWllcmVyCisuU0gg3EJFUlNJQ0hUCisuYnIKK1xmQnZpbVxmUCBbT3B0aW9uZW5dIFtEYXRlaSAuLi5dCisuYnIKK1xmQnZpbVxmUCBbT3B0aW9uZW5dIFwtCisuYnIKK1xmQnZpbVxmUCBbT3B0aW9uZW5dIFwtdCBUYWcKKy5icgorXGZCdmltXGZQIFtPcHRpb25lbl0gXC1xIFtGZWhsZXJkYXRlaV0KKy5QUAorLmJyCitcZkJleFxmUAorLmJyCitcZkJ2aWV3XGZQCisuYnIKK1xmQmd2aW1cZlAgXGZCZ3ZpZXdcZlAgXGZCZXZpbVxmUCBcZkJldmlld1xmUAorLmJyCitcZkJydmltXGZQIFxmQnJ2aWV3XGZQIFxmQnJndmltXGZQIFxmQnJndmlld1xmUAorLlNIIEJFU0NIUkVJQlVORworXGZCVmltXGZQIGlzdCBlaW4gVGV4dFwtRWRpdG9yLCBkZXIgYXVmd+RydHNrb21wYXRpYmVsIHp1IFZpIGlzdC4gRXIga2FubgordmVyd2VuZGV0IHdlcmRlbiwgdW0gYWxsZSBBcnRlbiB2b24gS2xhcnRleHQgenUgYmVhcmJlaXRlbi4gRXIgaXN0IGJlc29uZGVycworbvx0emxpY2gsIHVtIFByb2dyYW1tZSB6dSBiZWFyYmVpdGVuLgorLlBQCitWaW0gaGF0IGVpbmlnZSBFcndlaXRlcnVuZ2VuIGdlZ2Vu/GJlciBWaSwgei5CLjogUvxja2fkbmdpZ21hY2hlbiBpbgorbWVocmVyZW4gU2Nocml0dGVuLCBtZWhyZXJlIEZlbnN0ZXIgdW5kIFB1ZmZlciwgU3ludGF4XC1IZXJ2b3JoZWJ1bmcsCitCZWFyYmVpdGVuIGRlciBCZWZlaGxzemVpbGUsIERhdGVpbmFtZW5lcmfkbnp1bmcsIGVpbmdlYmF1dGUgSGlsZmUsIHZpc3VlbGxlCitBdXN3YWhsLCB1c3cuIC4uLiBTaWVoZSC7OmhlbHAgdmlfZGlmZi50eHSrIGb8ciBlaW5lINxiZXJzaWNodCBkZXIKK1VudGVyc2NoaWVkZSB6d2lzY2hlbiBcZkJWaW1cZlAgdW5kIFZpLgorLlBQCitJbSBsYXVmZW5kZW4gXGZCVmltXGZQIGthbm4gbWl0IGRlbSBCZWZlaGwguzpoZWxwqyB2aWVsIEhpbGZlIGR1cmNoIGRhcworZWluZ2ViYXV0ZSBIaWxmZXN5c3RlbSBlcmxhbmd0IHdlcmRlbi4gU2llaGUgZGVuIEFic2Nobml0dCBFSU5HRUJBVVRFIEhJTEZFCit3ZWl0ZXIgdW50ZW4uCisuUFAKK01laXN0ZW5zIHdpcmQgXGZCVmltXGZQIHp1bSBFZGl0aWVyZW4gZWluZXIgZWluemlnZW4gRGF0ZWkgbWl0IGRlbSBmb2xnZW5kZQorQmVmZWhsIGdlc3RhcnRldDoKKy5QUAorICB2aW0gRGF0ZWkKKy5QUAorQWxsZ2VtZWluZXIgYmV0cmFjaHRldCwgd2lyZCBcZkJWaW1cZlAgZm9sZ2VuZGVybWHfZW4gZ2VzdGFydGV0OgorLlBQCisgIHZpbSBbT3B0aW9uZW5dIFtEYXRlaWxpc3RlXQorLlBQCitCZWkgZWluZXIgZmVobGVuZGVuIERhdGVpbGlzdGUgc3RhcnRldCBkZXIgRWRpdG9yIG1pdCBlaW5lbSBsZWVyZW4KK1B1ZmZlci4gQW5kZXJuZmFsbHMgd2VyZGVuIG5hY2ggZGVuIGZvbGdlbmRlbiB2aWVyIE32Z2xpY2hrZWl0ZW4gZWluZSBvZGVyCittZWhyZXJlIERhdGVpZW4gYmVhcmJlaXRldDoKKy5UUCAgMTIKK0RhdGVpIC4uLgorRWluZSBMaXN0ZSB2b24gRGF0ZWluYW1lbi4gRGllIGVyc3RlIERhdGVpIHdpcmQgaW4gZGVuIFB1ZmZlciBnZWxhZGVuIHVuZAorenVyIGFrdHVlbGxlbi4gRGVyIEN1cnNvciB3aXJkIGF1ZiBkZXIgZXJzdGVuIFplaWxlIGRlcyBQdWZmZXJzCitwbGF0emllcnQuIFp1IGRlbiBhbmRlcmVuIERhdGVpZW4ga2FubiBtaXQgZGVtIEJlZmVobCC7Om5leHSrIGdlbGFuZ3QKK3dlcmRlbi4gRmFsbHMgZWluZXIgZGVyIERhdGVpbmFtZW4gbWl0IGVpbmVtIEJpbmRlc3RyaWNoIGJlZ2lubnQsIHN0ZWxsZW4KK1NpZSBkZXIgRGF0ZWlsaXN0ZSC7XC1cLasgdm9yYW4uCisuVFAgCitcLQorRGllIHp1IGJlYXJiZWl0ZW5kZSBEYXRlaSB3aXJkIHZvbiBkZXIgU3RhbmRhcmRlaW5nYWJlIGdlbGVzZW4uIEJlZmVobGUKK3dlcmRlbiB2b24gZGVyIFN0YW5kYXJkZmVobGVyYXVzZ2FiZSBnZWxlc2VuLCBkaWUgZWluIFRleHRcLVRlcm1pbmFsIHNlaW4KK3NvbGx0ZS4KKy5UUCAKK1wtdCB7VGFnfQorRGllIHp1IGVkaXRpZXJlbmRlIERhdGVpIHVuZCBkaWUgYW5m5G5nbGljaGUgQ3Vyc29yXC1Qb3NpdGlvbiBo5G5nZW4gdm9uCitlaW5lbSC7VGFnqyBhYiwgZWluZXIgQXJ0IFNwcnVuZ21hcmtlLiB7VGFnfSB3aXJkIGluIGRlciBUYWdcLURhdGVpCituYWNoZ2VzY2hsYWdlbiwgZGllIHp1Z2Vo9nJpZ2UgRGF0ZWkgd2lyZCB6dXIgYWt0dWVsbGVuIHVuZCBkZXIgenVnZWj2cmlnZQorQmVmZWhsIHdpcmQgYXVzZ2Vm/GhydC4gRGllcyB3aXJkIG1laXN0ZW5zIGb8ciBQcm9ncmFtbWUgaW4gZGVyIFNwcmFjaGUgu0OrCitiZW51dHp0LCB3b2JlaSB7VGFnfSBlaW4gRnVua3Rpb25zbmFtZSBzZWluIGv2bm50ZS4gRGllIFdpcmt1bmcgZGllc2VzCitCZWZlaGxzIGlzdCwgZGFzcyBkaWUgRGF0ZWksIGRpZSBkaWUgRnVua3Rpb24gZW50aORsdCwgYWxzIGFrdHVlbGxlIGltCitFZGl0b3IgZ2X2ZmZuZXQgdW5kIGFuZ2V6ZWlndCB3aXJkIHVuZCBkZXIgQ3Vyc29yIGF1ZiBkZW0gQmVnaW5uIGRlcgorRnVua3Rpb24gcG9zaXRpb25pZXJ0IHdpcmQuIFNpZWhlILs6aGVscCB0YWdcLWNvbW1hbmRzqy4KKy5UUCAKK1wtcSBbRmVobGVyZGF0ZWldCitTdGFydGV0IGltIFF1aWNrRml4XC1Nb2R1cy4gRGllIERhdGVpIFtGZWhsZXJkYXRlaV0gd2lyZCBnZWxlc2VuIHVuZCBkZXIKK2Vyc3RlIEZlaGxlciB3aXJkIGFuZ2V6ZWlndC4gRmFsbHMgW0ZlaGxlcmRhdGVpXSBhdXNnZWxhc3NlbiB3aXJkLCB3aXJkIGRlcgorRGF0ZWluYW1lIGF1cyBkZXIgT3B0aW9uICdlcnJvcmZpbGUnIHZlcndlbmRldCAoYmVpIEFtaWdhT1MgaXN0IGRpZXMKK3ZvcmdhYmVt5N9pZyC7QXp0ZWNDLkVycqssIHNvd2llICJlcnJvcnMuZXJyqyBiZWkgYW5kZXJlbikuIFdlaXRlcmUgRmVobGVyCitr9m5uZW4gbWl0IGRlbSC7OmNuq1wtQmVmZWhsIGFuZ2VzcHJ1bmdlbiB3ZXJkZW4uIFNpZWhlICI6aGVscCBxdWlja2ZpeKsuCisuUFAKK1xmQlZpbVxmUCByZWFnaWVydCB1bnRlcnNjaGllZGxpY2ggYXVmIGRlbiBOYW1lbiwgZGVyIHZlcndlbmRldCB3aXJkLCB1bSBWaW0genUKK3N0YXJ0ZW4gKGRpZSBhdXNm/GhyYmFyZSBEYXRlaSBrYW5uIGRpZXNlbGJlIHNlaW4pLgorLlRQICAxMAordmltCitkZXIgu25vcm1hbGWrIFdlZywgYWxsZXMgaXN0IHN0YW5kYXJkbeTfaWcKKy5UUCAKK2V4CitTdGFydGV0IGltIEV4XC1Nb2R1cy4gTWl0IGRlbSBCZWZlaGwguzp2aasgZ2VsYW5ndCBtYW4gaW4gZGVuIG5vcm1hbGVuCitNb2R1cy4gRnVua3Rpb25pZXJ0IGF1Y2ggbWl0IGRlbSBBcmd1bWVudCC7XC1lqy4KKy5UUCAKK3ZpZXcKK1N0YXJ0ZXQgaW0gTnVyXC1MZXNlblwtTW9kdXMuIERpZSBEYXRlaSB3aXJkIHZvciBkZW0g3GJlcnNjaHJlaWJlbgorZ2VzY2j8dHp0LiBEYXNzZWxiZSB3aXJkIG1pdCBkZW0gUGFyYW1ldGVyILtcLVKrIGVycmVpY2h0LgorLlRQIAorZ3ZpbSBndmlldworRGllIGdyYWZpc2NoZSBWZXJzaW9uOiDWZmZuZXQgZWluIG5ldWVzIEZlbnN0ZXIuIERhc3NlbGJlIHdpcmQgbWl0IGRlbQorUGFyYW1ldGVyILtcLWerIGVycmVpY2h0LgorLlRQIAorZXZpbSBldmlldworRGllIGdyYWZpc2NoZSBWZXJzaW9uIGltIGVpbmZhY2hlbiBNb2R1czog1mZmbmV0IGVpbiBuZXVlcyBGZW5zdGVyLiBEYXNzZWxiZQord2lyZCBtaXQgZGVtIFBhcmFtZXRlciC7XC15qyBlcnJlaWNodC4KKy5UUCAKK3J2aW0gcnZpZXcgcmd2aW0gcmd2aWV3CitXaWUgZGllIG9iaWdlbiwgYWJlciBtaXQgQmVzY2hy5G5rdW5nZW46IEVzIGlzdCBuaWNodCBt9mdsaWNoLCBTaGVsbFwtQmVmZWhsZQorYXVmenVydWZlbiBvZGVyIG1pdCBVbnRlcmJyZWNodW5nIGluIGVpbmUgU2hlbGwgenVy/GNrenVzcHJpbmdlbi4gRGFzc2VsYmUKK3dpcmQgbWl0IGRlbSBQYXJhbWV0ZXIgu1wtWqsgZXJyZWljaHQuCisuU0ggT1BUSU9ORU4KK0RpZSBPcHRpb25lbiBr9m5uZW4gaW4gYmVsaWViaWdlciBSZWloZW5mb2xnZSB2b3Igb2RlciBuYWNoIGRlbiBEYXRlaW5hbWVuCithbmdlZ2ViZW4gd2VyZGVuLiBPcHRpb25lbiBvaG5lIFBhcmFtZXRlciBr9m5uZW4gaGludGVyIGVpbmVtIGVpbnppZ2VuCitCaW5kZXN0cmljaCBncnVwcGllcnQgd2VyZGVuLgorLlRQICAxMgorK1tOdW1tZXJdCitJbiBkZXIgZXJzdGVuIERhdGVpIHdpcmQgZGVyIEN1cnNvciBhdWYgZGllIFplaWxlIFtOdW1tZXJdIGdlc2V0enQuIEZhbGxzCitbTnVtbWVyXSBuaWNodCBhbmdlZ2ViZW4gd2lyZCwgd2lyZCBkZXIgQ3Vyc29yIGluIGRpZSBsZXR6dGUgWmVpbGUgZGVyIERhdGVpCitnZXNldHp0LgorLlRQIAorKy97U3VjaG11c3Rlcn0KK0luIGRlciBlcnN0ZW4gRGF0ZWkgd2lyZCBkZXIgQ3Vyc29yIGF1ZiBkYXMgZXJzdGUgQXVmdHJldGVuIHZvbiB7U3VjaG11c3Rlcn0KK2dlc2V0enQuIFNpZWhlILs6aGVscCBzZWFyY2hcLXBhdHRlcm6rLgorLlRQIAorK3tCZWZlaGx9CisuVFAgCitcLWMge0JlZmVobH0KK3tCZWZlaGx9IHdpcmQgbmFjaCBkZW0gTGVzZW4gZGVyIGVyc3RlbiBEYXRlaSBhdXNnZWb8aHJ0LiBBbHMge0JlZmVobH0gd2lyZAorZWluIEV4XC1CZWZlaGwgZXJ3YXJ0ZXQuIFNpbmQgaW4ge0JlZmVobH0gTGVlcnplaWNoZW4gdm9yaGFuZGVuLCBtdXNzIGFsbGVzCitpbiBBbmb8aHJ1bmdzemVpY2hlbiBnZXNldHp0IHdlcmRlbiAoaORuZ3Qgdm9uIGRlciB2ZXJ3ZW5kZXRlbiBTaGVsbAorYWIpLiBCZWlzcGllbDogdmltICIrc2V0IHNpIiBtYWluLmMKKy5icgorQW5tZXJrdW5nOiBTaWUga/ZubmVuIGJpcyB6dSAxMCC7K6tcLSBvZGVyICJcLWOrXC1CZWZlaGxlIHZlcndlbmRlbi4KKy5UUCAKK1wtUyB7RGF0ZWl9Cit7RGF0ZWl9IHdpcmQgbmFjaCBkZW0gTGVzZW4gZGVyIGVyc3RlbiBEYXRlaSBhdXNnZWb8aHJ0LiBEaWVzIGVudHNwcmljaHQgu1wtYworInNvdXJjZSB7RGF0ZWl9IqsuIHtEYXRlaX0gZGFyZiBuaWNodCBtaXQgZWluZW0gQmluZGVzdHJpY2ggKFwtKQorYW5mYW5nZW4uIFdlbm4ga2VpbiBEYXRlaW5hbWUgYW5nZWdlYmVuIHdpcmQsIHdpcmQgu1Nlc3Npb24udmltqyB2ZXJ3ZW5kZXQKKyhGdW5rdGlvbmllcnQgbnVyLCB3ZW5uILtcLVOrIGFscyBsZXR6dGVyIFBhcmFtZXRlciBzdGVodCkuCisuVFAgCitcLVwtY21kIHtCZWZlaGx9CitXaWUgu1wtY6ssIGFiZXIgZGllc2VyIEJlZmVobCB3aXJkIHZvciBhbGxlbiBWaW1SQ1wtRGF0ZWllbiBhdXNnZWb8aHJ0LiBTaWUKK2v2bm5lbiB1bmFiaORuZ2lnIHZvbiBkZW4gu1wtY6tcLUJlZmVobGVuIGJpcyB6dSAxMCBkaWVzZXIgQmVmZWhsZSB2ZXJ3ZW5kZW4uCisuVFAgCitcLUEKK0ZhbGxzIFxmQlZpbVxmUCBtaXQgVW50ZXJzdPx0enVuZyBm/HIgZGFzIFNjaHJlaWJlbiB2b24gcmVjaHRzIG5hY2ggbGlua3MgdW5kCithcmFiaXNjaGVyIFRhc3RhdHVyYmVsZWd1bmcgY29tcGlsaWVydCB3dXJkZSAoQVJBQklDKSwgc3RhcnRldCBkaWVzZXIKK1BhcmFtZXRlciBkZW4gTW9kdXMgZvxycyBBcmFiaXNjaGUgKDpzZXQgYXJhYmljKS4gQW5kZXJlbmZhbGxzIGJlZW5kZXQgc2ljaAorXGZCVmltXGZQIG1pdCBlaW5lciBGZWhsZXJtZWxkdW5nLgorLlRQIAorYgorQmlu5HJlciBNb2R1czogRXMgd2VyZGVuIGVpbmlnZSBWYXJpYWJsZW4gZ2VzZXR6dCwgc29kYXNzIGVzIG32Z2xpY2ggaXN0LAorZWluZSBiaW7kcmUgb2RlciBhdXNm/GhyYmFyZSBEYXRlaSB6dSBiZWFyYmVpdGVuLgorLlRQIAorXC1DCitLb21wYXRpYmVsOiBTZXR6dCBkaWUgT3B0aW9uICdjb21wYXRpYmxlJy4gRGFzIG1hY2h0IFxmQlZpbVxmUCBpbSBWZXJoYWx0ZW4KK3NlaHIg5GhubGljaCB6dSBWaSwgc2VsYnN0IHdlbm4gZWluZSBWaW1SQ1wtRGF0ZWkgZXhpc3RpZXJ0LgorLlRQIAorXC1kCitTdGFydGV0IGltIGRpZmZcLU1vZHVzLiBFcyBzb2xsdGVuIHp3ZWksIGRyZWkgb2RlciB2aWVyIERhdGVpbmFtZW4gYWxzCitQYXJhbWV0ZXIg/GJlcmdlYmVuIHdlcmRlbi4gXGZCVmltXGZQIPZmZm5ldCBzaWUgYWxsZSB1bmQgemVpZ3QgZGllCitVbnRlcnNjaGllZGUgYW4uIEFyYmVpdGV0IHdpZSB2aW1kaWZmKDEpLgorLlRQIAorXC1kIHtHZXLkdH0KK9ZmZm5ldCBkYXMge0dlcuR0fSwgdW0gZXMgYWxzIFRlcm1pbmFsIHp1IG51dHplbi4gTnVyIGb8ciBBbWlnYU9TLiBCZWlzcGllbDoKKyJcLWQgY29uOjIwLzMwLzYwMC8xNTAiLgorLlRQIAorRAorRGVidWdcLU1vZHVzOiBcZkJWaW1cZlAgZ2VodCBpbiBkZW4gRGVidWdcLU1vZHVzLCB3ZW5uIGRlciBlcnN0ZSBCZWZlaGwgaW4gZWluZW0KK1NrcmlwdCBhdXNnZWb8aHJ0IHdpcmQuCisuVFAgCitcLWUKK1N0YXJ0ZXQgXGZCVmltXGZQIGltIEV4XC1Nb2R1cywgYWxzIHf8cmRlIGFscyBhdXNm/GhyYmFyZSBEYXRlaSC7ZXirIGF1ZmdlcnVmZW4uCisuVFAgCitcLUUKK1N0YXJ0ZXQgXGZCVmltXGZQIGltIGVyd2VpdGVydGVuIEV4XC1Nb2R1cywgYWxzIHf8cmRlIGRpZSBhdXNm/GhyYmFyZSBEYXRlaSBhbHMKK7tleGltqyBhdWZnZXJ1ZmVuLgorLlRQIAorXC1mCitWb3JkZXJncnVuZDogQmVpIGRlciBHVUlcLVZlcnNpb24gZXJ6ZXVndCBcZkJWaW1cZlAga2VpbmVuIG5ldWVuIFByb3plc3MgdW5kCits9nN0IHNpY2ggbmljaHQgdm9uIGRlciBTaGVsbCwgaW4gZGVyIGVyIGF1ZmdlcnVmZW4gd3VyZGUuIEJlaSBBbWlnYU9TIHdpcmQKK2tlaW4gbmV1ZXMgRmVuc3RlciBnZfZmZm5ldC4gRGllc2VyIFBhcmFtZXRlciB3aXJkIGJlbnV0enQsIGRhbWl0IGRhcworYXVmcnVmZW5kZSBQcm9ncmFtbSBhdWYgZGFzIEJlZW5kZW4gZGVzIEJlYXJiZWl0dW5nc3NpdHp1bmcgd2FydGV0ICh6LkIuOgorbWFpbCkuIEJlaSBBbWlnYU9TIGZ1bmt0aW9uaWVyZW4gZGllIEJlZmVobGUguzpzaKsgdW5kICI6IasgbmljaHQuCisuVFAgCitcLVwtbm9mb3JrCitWb3JkZXJncnVuZDogQmVpIGRlciBHVUlcLVZlcnNpb24gZXJ6ZXVndCBcZkJWaW1cZlAga2VpbmVuIG5ldWVuIFByb3plc3MgdW5kCits9nN0IHNpY2ggbmljaHQgdm9uIGRlciBTaGVsbCwgaW4gZGVyIGVyIGF1ZmdlcnVmZW4gd3VyZGUuCisuVFAgCitcLUYKK1dlbm4gXGZCVmltXGZQIG1pdCBGS01BUFwtVW50ZXJzdPx0enVuZyBm/HIgZGFzIFNjaHJlaWJlbiB2b24gcmVjaHRzIG5hY2ggbGlua3MKK3VuZCBGYXJzaVwtVGFzdGF0dXJcLUJlbGVndW5nIGtvbXBpbGllcnQgd3VyZGUsIHN0YXJ0ZXQgVmltIGltIEZhcnNpXC1Nb2R1cywKK2QuaC4gZGllIE9wdGlvbmVuICdma21hcCcgdW5kICdyaWdodGxlZnQnIHdlcmRlbiBnZXNldHp0LiBBbmRlcm5mYWxscyBicmljaHQKK1xmQlZpbVxmUCBtaXQgZWluZXIgRmVobGVybWVsZHVuZyBhYi4KKy5UUCAKK1wtZworRmFsbHMgXGZCVmltXGZQIG1pdCBHVUlcLVVudGVyc3T8dHp1bmcga29tcGlsaWVydCB3dXJkZSwgd2lyZCBkaWUgR1VJCitha3RpdmllcnQuIEZhbGxzIGtlaW5lIEdVSVwtVW50ZXJzdPx0enVuZyBlaW5rb21waWxpZXJ0IHd1cmRlLCB3aXJkIG1pdCBlaW5lcgorRmVobGVybWVsZHVuZyBhYmdlYnJvY2hlbi4KKy5UUCAKK1wtaAorR2lidCBlaW5lIGtsZWluZSBIaWxmZSBm/HIgZGllIEJlZmVobHN6ZWlsZW5wYXJhbWV0ZXIgYXVzLiBEYW5hY2ggYmVlbmRldAorc2ljaCBcZkJWaW0uXGZQCisuVFAgCitcLUgKK0hlYnLkaXNjaFwtTW9kdXMsIGZhbGxzIFxmQlZpbVxmUCBtaXQgUklHSFRMRUZUXC1VbnRlcnN0/HR6dW5nIGb8ciBkYXMgU2NocmVpYmVuCit2b24gcmVjaHRzIG5hY2ggbGlua3MgdW5kIGhlYnLkaXNjaGVyIFRhc3RhdHVyYmVsZWd1bmcga29tcGlsaWVydCB3dXJkZSwKK3dlcmRlbiBkaWUgT3B0aW9uZW4gJ2hrbWFwJyB1bmQgJ3JpZ2h0bGVmdCcgZ2VzZXR6dC4gQW5kZXJuZmFsbHMgYmVlbmRldAorc2ljaCBcZkJWaW1cZlAgbWl0IGVpbmVyIEZlaGxlcm1lbGR1bmcuCisuVFAgCitcLWkge1ZpbUluZm99CitXZW5uIGVpbmUgVmltSW5mb1wtRGF0ZWkgdmVyd2VuZGV0IHdpcmQ6IFZlcndlbmRldCBzdGF0dCC7fi8udmltaW5mb6sgZGllCithbmdlZ2ViZW5lIERhdGVpLiBFcyBpc3QgYXVjaCBt9mdsaWNoIGRpZSBWZXJ3ZW5kdW5nIGVpbmVyIFZpbUluZm9cLURhdGVpCitkdXJjaCBBbmdhYmUgZGVzIERhdGVpbmFtZW4gu05PTkWrIHp1IHZlcmhpbmRlcm4sCisuVFAgCitcLUwKK2Rhc3NlbGJlIHdpZSC7XC1yqworLlRQIAorXC1sCitMaXNwXC1Nb2R1cy4gQWt0aXZpZXJ0IGRpZSBPcHRpb25lbiAnbGlzcCcgdW5kICdzaG93bWF0Y2gnLgorLlRQIAorXC1tCitEZWFrdGl2aWVydCBkYXMgVmVy5G5kZXJuIHZvbiBEYXRlaWVuLCBpbmRlbSBkaWUgT3B0aW9uICd3cml0ZScgZ2Vs9nNjaHQKK3dpcmQuIERlciBQdWZmZXIga2FubiB2ZXLkbmRlcnQgd2VyZGVuLCBudXIgZGFzIFNjaHJlaWJlbiBlaW5lciBEYXRlaSBpc3QKK25pY2h0IG32Z2xpY2guCisuVFAgCitcLU0KK0tlaW5lIFZlcuRuZGVydW5nZW4gZXJsYXVidDogRGllIE9wdGlvbmVuICdtb2RpZmlhYmxlJyB1bmQgJ3dyaXRlJyB3ZXJkZW4KK2dlbPZzY2h0LCBzbyBkYXNzIMRuZGVydW5nZW4gbmljaHQgZXJsYXVidCBzaW5kIHVuZCBEYXRlaWVuIG5pY2h0CitnZXNjaHJpZWJlbiB3ZXJkZW4ga/ZubmVuLiBNYW4gYmVhY2h0ZSwgZGFzcyBkaWVzZSBPcHRpb25lbiAoJ21vZGlmaWFibGUnLAorXCYnd3JpdGUnKSBkZW5ubm9jaCBuYWNodHLkZ2xpY2ggenVtIEVybGF1YmVuIHZvbiDEbmRlcnVuZ2VuIGdlc2V0enQgd2VyZGVuCitr9m5uZW4uCisuVFAgCitcLU4KK05pY2h0XC1rb21wYXRpYmxlciBNb2R1czogTPZzY2h0IGRpZSBPcHRpb24gJ2NvbXBhdGlibGUnLiBEaWVzIHZlcmFubGFzc3QKK1xmQlZpbVxmUCwgc2ljaCBlaW4gd2VuaWcgYmVzc2VyLCBhYmVyIHdlbmlnZXIgVmlcLWtvbXBhdGliZWwgenUgdmVyaGFsdGVuLAorc2VsYnN0IHdlbm4gZXMga2VpbmUgVmltUkNcLURhdGVpIGdpYnQuCisuVFAgCitcLW4KK1ZlcndlbmRldCBrZWluZSBBdXNsYWdlcnVuZ3NkYXRlaTogRWluZSBXaWVkZXJoZXJzdGVsbHVuZyBuYWNoIGVpbmVtIEFic3R1cnoKK2lzdCBuaWNodCBt9mdsaWNoLiBBdWYgZWluZW0gbGFuZ3NhbWVuIE1lZGl1bSAoRGlza2V0dGUpIGthbm4gZGllc2UKK0VpbnN0ZWxsdW5nIG78dHpsaWNoIHNlaW4uIEthbm4gYXVjaCBtaXQgu3NldCB1Yz0wqyBlcnJlaWNodCB3ZXJkZW47IGthbm4KK21pdCC7c2V0IHVjPTIwMKsgYXVmZ2Vob2JlbiB3ZXJkZW4uCisuVFAgCitcLW5iCitcZkJWaW1cZlAgZnVuZ2llcnQgYWxzIFNlcnZlciBm/HIgTmV0QmVhbnMuIERldGFpbHMgc2llaGUgRG9rdW1lbnRhdGlvbi4KKy5UUCAKK1wtb1tOXQor1mZmbmV0IFtOXSBGZW5zdGVyIPxiZXJlaW5hbmRlci4gV2VubiBrZWluZSBaYWhsIGFuZ2VnZWJlbiB3aXJkLCD2ZmZuZSBlaW4KK0ZlbnN0ZXIgcHJvIERhdGVpLgorLlRQIAorXC1PW05dCivWZmZuZXQgW05dIEZlbnN0ZXIgbmViZW5laW5hbmRlci4gV2VubiBrZWluZSBaYWhsIGFuZ2VnZWJlbiB3aXJkLCD2ZmZuZSBlaW4KK0ZlbnN0ZXIgcHJvIERhdGVpLgorLlRQIAorXC1wW05dCivWZmZuZXQgW05dIFJlaXRlcnNlaXRlbi4gV2VubiBrZWluZSBaYWhsIGFuZ2VnZWJlbiB3aXJkLCD2ZmZuZSBlaW5lCitSZWl0ZXJzZWl0ZSBwcm8gRGF0ZWkuCisuVFAgCitcLVIKK051clwtTGVzZW5cLU1vZHVzOiBEaWUgT3B0aW9uICdyZWFkb25seScgd2lyZCBnZXNldHp0LiBEZXIgUHVmZmVyIGthbm4gbm9jaAorYmVhcmJlaXRldCB3ZXJkZW4sIGFiZXIgZXMgd2lyZCB2ZXJoaW5kZXJ0LCBlaW5lIERhdGVpIGF1cyBWZXJzZWhlbiB6dQor/GJlcnNjaHJlaWJlbi4gV2VubiBTaWUgd2lya2xpY2ggZWluZSBEYXRlaSD8YmVyc2NocmVpYmVuIHdvbGxlbiwgZvxnZW4gU2llCitkZW0gRXhcLUJlZmVobCBlaW4gQXVzcnVmZXplaWNoZW4gaGluenUgKHdpZSBpbiC7OnchqykuIERpZSBPcHRpb24gIlwtUqsKK2JlZGluZ3QgZGllIE9wdGlvbiC7XC1uqyAoc2llaGUgb2JlbikuIERpZSBPcHRpb24gJ3JlYWRvbmx5JyBrYW5uIGR1cmNoICI6c2V0Citub3JvqyBnZWz2c2NodCB3ZXJkZW4uIFNpZWhlILs6aGVscCAncmVhZG9ubHknqy4KKy5UUCAKK1wtcgorTGlzdGV0IGRpZSBBdXNsYWdlcnVuZ3NkYXRlaWVuIHVuZCBnaWJ0IEluZm9ybWF0aW9uZW4genUgaWhyZXIKK1ZlcndlbmRiYXJrZWl0IHp1ciBXaWVkZXJoZXJzdGVsbHVuZy4KKy5UUCAKK1wtciB7RGF0ZWl9CitXaWVkZXJoZXJzdGVsbHVuZ3Ntb2R1czogRGllIEF1c2xhZ2VydW5nc2RhdGVpIHdpcmQgenVyIFdpZWRlcmhlcnN0ZWxsdW5nCit2ZXJ3ZW5kZXQgdW5kIGhhdCBkZW5zZWxiZW4gRGF0ZWluYW1lbiB3aWUgZGllIFRleHRcLURhdGVpICsguy5zd3CrLiBTaWVoZQorIjpoZWxwIHJlY292ZXJ5qy4KKy5UUCAKK1wtcworRGVyIHN0aWxsZSBNb2R1czogTnVyIHdlbm4gZGllIGF1c2b8aHJiYXJlIERhdGVpIGFscyC7ZXirIGF1ZmdlcnVmZW4gd2lyZAorb2RlciB2b3Igu1wtc6sgZGllIE9wdGlvbiAiXC1lqyBnZWdlYmVuIHdpcmQuCisuVFAgCitcLXMge0VpbmdhYmVza3JpcHR9CitEaWUgRGF0ZWkge0VpbmdhYmVza3JpcHR9IHdpcmQgZ2VsZXNlbiB1bmQgYXVzZ2Vm/GhydCwgYWxzIHf8cmRlbiBTaWUgZGllCitaZWljaGVuIGluIGlociB0aXBwZW4uIERhc3NlbGJlIGthbm4gbWl0IGRlbSBCZWZlaGwguzpzb3VyY2UhCit7RWluZ2FiZXNrcmlwdH2rIGVycmVpY2h0IHdlcmRlbi4gV2lyZCBkYXMgRW5kZSBkZXIgRGF0ZWkgdm9yIGRlbSBCZWVuZGVuCitkZXMgRWRpdG9ycyBlcnJlaWNodCwgd2VyZGVuIHdlaXRlcmUgWmVpY2hlbiB2b24gZGVyIFRhc3RhdHVyIGdlbGVzZW4uCisuVFAgCitcLVQge1Rlcm1pbmFsfQorU2V0enQgZGVuIE5hbWVuIGRlcyBiZW51dHp0ZW4gVGVybWluYWxzLiBOdXIgZXJmb3JkZXJsaWNoLCB3ZW5uIGRpZQorQXV0b21hdGlrIG5pY2h0IGZ1bmt0aW9uaWVydC4gU29sbHRlIGVpbiBcZkJWaW1cZlAgYmVrYW5udGVzIFRlcm1pbmFsIHNlaW46CisoYnVpbHRpbikgb2RlciBpbiBlaW5lciB0ZXJtY2FwXC0gb2RlciB0ZXJtaW5mb1wtRGF0ZWkgZGVmaW5pZXJ0LgorLlRQIAorXC11IHtWaW1SQ30KK1ZlcndlbmRldCB6dXIgSW5pdGlhbGlzaWVydW5nIGRpZSBCZWZlaGxlIGluIGRlciBEYXRlaSB7VmltUkN9LiBBbGxlIGFuZGVyZW4KK0luaXRpYWxpc2llcnVuZ2VuIHdlcmRlbiD8YmVyc3BydW5nZW4uIEJlbnV0emVuIFNpZSBkaWVzLCB1bSBlaW5lIGJlc29uZGVyZQorQXJ0IHZvbiBEYXRlaWVuIHp1IGJlYXJiZWl0ZW4uIERpZXMga2FubiBhdWNoIGJlbnV0enQgd2VyZGVuLCB1bSBhbGxlCitJbml0aWFsaXNpZXJ1bmdlbiB6dSD8YmVyc3ByaW5nZW4sIGluZGVtIGRlciBOYW1lILtOT05FqyBhbmdlZ2ViZW4gd2lyZC4gRvxyCit3ZWl0ZXJlIEVpbnplbGhlaXRlbiBzaWVoZSC7OmhlbHAgaW5pdGlhbGlzYXRpb26rIGlubmVyaGFsYiB2b24gVmltLgorLlRQIAorXC1VIHtHdmltUkN9CitCZW51dHp0IGRpZSBCZWZlaGxlIGluIGRlciBEYXRlaSB7R3ZpbVJDfSBm/HIgZGllIEluaXRpYWxpc2llcnVuZyBkZXIKK2dyYWZpc2NoZW4gT2JlcmZs5GNoZS4gQWxsZSBhbmRlcmVuIEluaXRpYWxpc2llcnVuZ2VuIHdlcmRlbgor/GJlcnNwcnVuZ2VuLiBEaWVzIGthbm4gZWJlbmZhbGxzIGJlbnV0enQgd2VyZGVuLCB1bSBhbGxlCitHVUlcLUluaXRpYWxpc2llcnVuZ2VuIHp1IPxiZXJzcHJpbmdlbiwgaW5kZW0gZGVyIE5hbWUgu05PTkWrIGFuZ2VnZWJlbgord2lyZC4gU2llaGUguzpoZWxwIGd1aVwtaW5pdKsgaW5uZXJoYWxiIHZvbiBWaW0gZvxyIHdlaXRlcmUgRWluemVsaGVpdGVuLgorLlRQIAorXC1WW05dCitBdXNm/GhybGljaCAodmVyYm9zZSk6IEdpYnQgTWVsZHVuZ2VuIGRhcvxiZXIsIHdlbGNoZSBCZWZlaGxzZGF0ZWllbgorZWluZ2VsZXNlbiB3ZXJkZW4sIHVuZCD8YmVyIGRhcyBMZXNlbiB1bmQgU2NocmVpYmVuIGVpbmVyIFZpbUluZm9cLURhdGVpLiBEaWUKK29wdGlvbmFsZSBaYWhsIE4gaXN0IGRlciBXZXJ0IGb8ciAndmVyYm9zZScuIFZvcmdhYmUgaXN0IDEwLgorLlRQIAorXC12CitTdGFydGV0IFxmQlZpbVxmUCBpbSBWaVwtTW9kdXMsIHNvIGFscyB3/HJkZSBkaWUgYXVzZvxocmJhcmUgRGF0ZWkgbWl0ILt2aasKK2F1ZmdlcnVmZW4uIERpZXMgd2lya3Qgc2ljaCBudXIgYXVzLCB3ZW5uIGRpZSBhdXNm/GhyYmFyZSBEYXRlaSBhbHMgu2V4qworYXVmZ2VydWZlbiB3aXJkLgorLlRQIAorXC13IHtBdXNnYWJlc2tyaXB0fQorQWxsZSBaZWljaGVuLCBkaWUgZWluZ2V0aXBwdCB3ZXJkZW4sIHdlcmRlbiBpbiBkZXIgRGF0ZWkge0F1c2dhYmVza3JpcHR9CithdWZnZXplaWNobmV0LCBzb2xhbmdlIGJpcyBTaWUgXGZCVmltXGZQIGJlZW5kZW4uIERpZXMgaXN0IG78dHpsaWNoLCBmYWxscyBTaWUKK2VpbmUgU2tyaXB0XC1EYXRlaSB6dW0gQmVudXR6ZW4gbWl0ILt2aW0gXC1zqyBvZGVyICI6c291cmNlIasgZXJ6ZXVnZW4KK3dvbGxlbi4gRmFsbHMgZGllIERhdGVpIHtBdXNnYWJlc2tyaXB0fSB2b3JoYW5kZW4gaXN0LCB3ZXJkZW4gZGllIFplaWNoZW4KK2FuZ2Vo5G5ndC4KKy5UUCAKK1wtVyB7QXVzZ2FiZXNrcmlwdH0KK1dpZSBcLXcsIGFiZXIgZWluZSBiZXJlaXRzIHZvcmhhbmRlbmUgRGF0ZWkgd2lyZCD8YmVyc2NocmllYmVuLgorLlRQIAorXC14CitCZW51dHp0IGJlaW0gU2NocmVpYmVuIHZvbiBEYXRlaWVuIGVpbmUgVmVyc2NobPxzc2VsdW5nLiBGcmFndCBuYWNoIGRlbQorU2NobPxzc2VsLgorLlRQIAorXC1YCitG/GhydCBrZWluZSBWZXJiaW5kdW5nIHp1bSBYXC1TZXJ2ZXIgZHVyY2guIERhZHVyY2ggdmVya/xyenQgc2ljaCBkaWUKK1N0YXJ0emVpdCwgYWJlciBkZXIgRmVuc3RlcnRpdGVsIHVuZCBkaWUgWndpc2NoZW5hYmxhZ2Ugd2VyZGVuIG5pY2h0Cit2ZXJ3ZW5kZXQuCisuVFAgCitcLXkKK1N0YXJ0ZXQgXGZCVmltXGZQIGltIGVpbmZhY2hlbiBNb2R1cywgYWxzIHf8cmRlIGRpZSBhdXNm/GhyYmFyZSBEYXRlaSBtaXQKK7tldmltqyBvZGVyILtldmlld6sgYXVmZ2VydWZlbi4gXGZCVmltXGZQIHZlcmjkbHQgc2ljaCBkYW5uIHdpZSBlaW4gRWRpdG9yIHp1bQorS2xpY2tlbiB1bmQgVGlwcGVuLgorLlRQIAorXC1aCitFaW5nZXNjaHLkbmt0ZXIgTW9kdXM6IEZ1bmt0aW9uaWVydCwgYWxzIHf8cmRlIGRlciBOYW1lIGRlciBhdXNm/GhyYmFyZW4KK0RhdGVpIG1pdCC7cqsgYmVnaW5uZW4uCisuVFAgCitcLVwtCitNYXJraWVydCBkYXMgRW5kZSBkZXIgT3B0aW9uZW4uIEFyZ3VtZW50ZSwgZGllIGZvbGdlbiwgd2VyZGVuIGFscyBEYXRlaW5hbWVuCitiZWhhbmRlbHQuIERpZXMga2FubiBiZW51dHp0IHdlcmRlbiwgdW0gZWluZW4gRGF0ZWluYW1lbiBtaXQgu1wtqyBhbSBBbmZhbmcKK3p1IHZlcndlbmRlbi4KKy5UUCAKK1wtXC1lY2hvXC13aWQKK051ciBHVEtcLUdVSTogU2NocmVpYmUgZGllIEZlbnN0ZXJcLUlEIGF1ZiBkaWUgU3RhbmRhcmRhdXNnYWJlLgorLlRQIAorXC1cLWhlbHAKK0dpYnQgZWluZSBIaWxmZVwtTmFjaHJpY2h0IGF1cyB1bmQgYmVlbmRldCwgd2llILtcLWirLgorLlRQIAorXC1cLWxpdGVyYWwKK05pbW10IGRpZSBEYXRlaW5hbWVuIHNvIHdpZSBzaWUgc2luZCB1bmQgdmVydm9sbHN05G5kaWd0IHNpZSBuaWNodCBuYWNoCitNZXRhemVpY2hlbiAoKiw/KS4gRGllcyB3aXJrdCBzaWNoIG5pY2h0IHVudGVyIFVuaXggYXVzLCB3byBkaWUgU2hlbGwgZGllCitNZXRhemVpY2hlbiBleHBhbmRpZXJ0LgorLlRQIAorXC1cLW5vcGx1Z2luCitMYWRlIGtlaW5lIFBsdWdpbnMuIEltcGxpemllcnQgZHVyY2ggu1wtdSBOT05Fqy4KKy5UUCAKK1wtXC1yZW1vdGUKK1ZlcmJpbmRldCBtaXQgZWluZW0gVmltXC1TZXJ2ZXIgdW5kIGzkc3N0IGlobiBkaWUgaW4gZGVuIHJlc3RsaWNoZW4KK0FyZ3VtZW50ZW4gYW5nZWdlYmVuIERhdGVpZW4gZWRpdGllcmVuLiBXZW5uIGtlaW4gU2VydmVyIGdlZnVuZGVuIHdpcmQsCitm/GhydCBkaWVzIHp1IGVpbmVyIFdhcm5tZWxkdW5nIHVuZCBkaWUgRGF0ZWllbiB3ZXJkZW4gaW0gZ2VnZW535HJ0aWdlbiBWaW0KK3p1bSBCZWFyYmVpdGVuIGdl9mZmbmV0LgorLlRQIAorXC1cLXJlbW90ZVwtZXhwciB7QXVzZHJ1Y2t9CitWZXJiaW5kZXQgbWl0IGVpbmVtIFZpbVwtU2VydmVyLCBm/GhydCB7QXVzZHJ1Y2t9IGF1cyB1bmQgemVpZ3QgZGFzIEVyZ2VibmlzCithdWYgZGVyIFN0YW5kYXJkYXVzZ2FiZSBhbi4KKy5UUCAKK1wtXC1yZW1vdGVcLXNlbmQge1plaWNoZW59CitWZXJiaW5kZXQgbWl0IGVpbmVtIFZpbVwtU2VydmVyIHVuZCBzZW5kZXQgaWhtIHtaZWljaGVufS4KKy5UUCAKK1wtXC1yZW1vdGVcLXNpbGVudAorV2llILtcLVwtcmVtb3RlqywgYWJlciBvaG5lIFdhcm51bmcsIHdlbm4ga2VpbiBTZXJ2ZXIgZ2VmdW5kZW4gd2lyZC4KKy5UUCAKK1wtXC1yZW1vdGVcLXdhaXQKK1dpZSC7XC1cLXJlbW90ZassIGFiZXIgVmltIGJlZW5kZXQgc2ljaCBuaWNodCwgYmlzIGRpZSBEYXRlaWVuIGJlYXJiZWl0ZXQKK3d1cmRlbi4KKy5UUCAKK1wtXC1yZW1vdGVcLXdhaXRcLXNpbGVudAorV2llILtcLVwtcmVtb3RlXC13YWl0qywgYWJlciBvaG5lIFdhcm51bmcsIHdlbm4ga2VpbiBTZXJ2ZXIgZ2VmdW5kZW4gd2lyZC4KKy5UUCAKK1wtXC1zZXJ2ZXJsaXN0CitMaXN0ZXQgZGllIE5hbWVuIGFsbGVyIGdlZnVuZGVuZW4gVmltXC1TZXJ2ZXIgYXVmLgorLlRQIAorXC1cLXNlcnZlcm5hbWUge05hbWV9CitCZW51dHp0IHtOYW1lfSBhbHMgU2VydmVyXC1OYW1lbi4gV2lyZCBm/HIgZGVuIGdlZ2Vud+RydGlnZW4gVmltIGJlbnV0enQsCithdd9lciBlcyB3aXJkIG1pdCBkZW0gQXJndW1lbnQgu1wtXC1yZW1vdGWrIGJlbnV0enQsIGRhbm4gaXN0IGVzIGRlciBOYW1lIGRlcworenUga29udGFrdGllcmVuZGVuIFNlcnZlcnMuCisuVFAgCitcLVwtc29ja2V0aWQge2lkfQorTnVyIEdUS1wtR1VJOiBCZW51dHp0IGRlbiBHdGtQbHVnXC1NZWNoYW5pc211cywgdW0gR1ZpbSBpbiBlaW5lbSBhbmRlcmVuCitGZW5zdGVyIGxhdWZlbiB6dSBsYXNzZW4uCisuVFAgCitcLVwtdmVyc2lvbgorVmVyc2lvbnNpbmZvcm1hdGlvbiBhbnplaWdlbiB1bmQgYmVlbmRlbgorLlNIICJFSU5HRUJBVVRFIEhJTEZFIgorVGlwcGVuIFNpZSBpbiBcZkJWaW1cZlAguzpoZWxwqywgdW0genUgYmVnaW5uZW4uIEdlYmVuIFNpZSAiOmhlbHAgYmVncmlmZqsgZWluLAordW0gSGlsZmUg/GJlciBlaW4gYmVzdGltbXRlcyBUaGVtYSB6dSBiZWtvbW1lbi4gWnVtIEJlaXNwaWVsILs6aGVscCBaWqsgZvxyCitIaWxmZSD8YmVyIGRlbiBCZWZlaGwgu1paqy4gQmVudXR6ZW4gU2llIDxUYWI+IHVuZCBDVFJMXC1ELCB1bQorQmVncmlmZmUgenUgdmVydm9sbHN05G5kaWdlbiAouzpoZWxwIGNtZGxpbmVcLWNvbXBsZXRpb26rKS4gVGFncyBzaW5kCit2b3JoYW5kZW4sIHVtIHZvbiBlaW5lbSBPcnQgenVtIGFuZGVyZW4genUgc3ByaW5nZW4gKGVpbmUgQXJ0CitIeXBlcnRleHRcLVZlcmtu/HBmdW5nZW4sIHNpZWhlILs6aGVscKspLiBBdWYgZGllc2UgV2Vpc2Uga/ZubmVuIGFsbGUKK0Rva3VtZW50YXRpb25zXC1EYXRlaWVuIGF1ZmdlcnVmZW4gd2VyZGVuLCB6dW0gQmVpc3BpZWwguzpoZWxwIHN5bnRheC50eHSrLgorLlNIIERBVEVJRU4KKy5UUCAgMTUKKy91c3IvbG9jYWwvbGliL3ZpbS9kb2MvKi50eHQKK0Rva3VtZW50YXRpb25zXC1EYXRlaWVuIGb8ciBcZkJWaW1cZlAuIFZlcndlbmRlbiBTaWUguzpoZWxwIGRvY1wtZmlsZVwtbGlzdKssIHVtCitkaWUgZ2VzYW10ZSBMaXN0ZSB6dSBiZWtvbW1lbi4KKy5UUCAKKy91c3IvbG9jYWwvbGliL3ZpbS9kb2MvdGFncworRGllILtUYWerXC1EYXRlaSwgZGllIHZlcndlbmRldCB3aXJkLCB1bSBJbmZvcm1hdGlvbmVuIGluIGRlciBEb2t1bWVudGF0aW9uCit6dSBmaW5kZW4uCisuVFAgCisvdXNyL2xvY2FsL2xpYi92aW0vc3ludGF4L3N5bnRheC52aW0KK0RpZSBzeXN0ZW13ZWl0ZSBFaW5yaWNodHVuZyBkZXIgU3ludGF4aGVydm9yaGVidW5nLgorLlRQIAorL3Vzci9sb2NhbC9saWIvdmltL3N5bnRheC8qLnZpbQorU3ludGF4ZGF0ZWllbiBm/HIgZGllIHZlcnNjaGllZGVuZW4gU3ByYWNoZW4uCisuVFAgCisvdXNyL2xvY2FsL2xpYi92aW0vdmltcmMKK1N5c3RlbXdlaXRlIEVpbnN0ZWxsdW5nc2RhdGVpIGb8ciBcZkJWaW1cZlAKKy5UUCAKK34vLnZpbXJjCitQZXJz9m5saWNoZSBFaW5zdGVsbHVuZ3NkYXRlaSBm/HIgXGZCVmltXGZQCisuVFAgCisvdXNyL2xvY2FsL2xpYi92aW0vZ3ZpbXJjCitTeXN0ZW13ZWl0ZSBFaW5zdGVsbHVuZ3NkYXRlaSBm/HIgR1ZpbQorLlRQIAorfi8uZ3ZpbXJjCitQZXJz9m5saWNoZSBFaW5zdGVsbHVuZ3NkYXRlaSBm/HIgR1ZpbQorLlRQIAorL3Vzci9sb2NhbC9saWIvdmltL29wdHdpbi52aW0KK0RhcyBTY3JpcHQsIGRhcyB2b24gZGVtIEJlZmVobCC7Om9wdGlvbnOrIHZlcndlbmRldCB3aXJkLCBlaW5lIHNjaPZuZQorTfZnbGljaGtlaXQsIHVtIE9wdGlvbmVuIHp1IGJldHJhY2h0ZW4gdW5kIHp1IHNldHplbi4KKy5UUCAKKy91c3IvbG9jYWwvbGliL3ZpbS9tZW51LnZpbQorU3lzdGVtd2VpdGUgRWluc3RlbGx1bmdzZGF0ZWkgZvxyIGRhcyBNZW78IHZvbiBHVmltCisuVFAgCisvdXNyL2xvY2FsL2xpYi92aW0vYnVncmVwb3J0LnZpbQorRGFzIFNjcmlwdCB6dW0gR2VuZXJpZXJlbiBlaW5lcyBGZWhsZXJiZXJpY2h0cy4gU2llaGUguzpoZWxwIGJ1Z3OrLgorLlRQIAorL3Vzci9sb2NhbC9saWIvdmltL2ZpbGV0eXBlLnZpbQorTWl0IGRpZXNlbSBTY3JpcHQgZXJrZW5udCBWaW0gZGVuIFR5cCBlaW5lciBEYXRlaSBhbmhhbmQgaWhyZXMKK0RhdGVpbmFtZW5zLiBTaWVoZSC7OmhlbHAgJ2ZpbGV0eXBlJ6suCisuVFAgCisvdXNyL2xvY2FsL2xpYi92aW0vc2NyaXB0cy52aW0KK01pdCBkaWVzZW0gU2NyaXB0IGVya2VubnQgVmltIGRlbiBUeXAgZWluZXIgRGF0ZWkgYW5oYW5kIGlocmVzCitJbmhhbHRlcy4gU2llaGUguzpoZWxwICdmaWxldHlwZSerLgorLlRQIAorL3Vzci9sb2NhbC9saWIvdmltL3ByaW50LyoucHMKK0RpZXNlIERhdGVpZW4gd2VyZGVuIHp1bSBEcnVja2VuIHZvbiBQb3N0U2NyaXB0IHZlcndlbmRldC4KKy5QUAorRvxyIGRpZSBuZXVlc3RlbiBJbmZvcm1hdGlvbmVuIGxlc2VuIFNpZSBkaWUgVmltXC1Ib21lcGFnZToKKy5icgorPFVSTDpodHRwOi8vd3d3LnZpbS5vcmcvPgorLlNIICJTSUVIRSBBVUNIIgordmltdHV0b3IoMSkKKy5TSCBBVVRPUgorXGZCVmltXGZQIHd1cmRlIGdy9t90ZW50ZWlscyB2b24gQnJhbSBNb29sZW5hYXIgZXJzdGVsbHQsIG1pdCB2aWVsIEhpbGZlIHZvbgorYW5kZXJlbiBMZXV0ZW4uIFNpZWhlILs6aGVscCBjcmVkaXRzqyBpbiBcZkJWaW0uXGZQCisuYnIKK1xmQlZpbVxmUCBiYXNpZXJ0IGF1ZiBTdGV2aWUsIGRlciB2b24gVGltIFRob21wc29uLCBUb255IEFuZHJld3MgdW5kCitHLlIuIChGcmVkKSBXYWx0ZXIgZ2VzY2hyaWViZW4gd3VyZGUuIEVzIGlzdCBqZWRvY2gga2F1bSBldHdhcyB2b20KK3Vyc3By/G5nbGljaGVuIENvZGUg/GJyaWcgZ2VibGllYmVuLgorLlNIIEZFSExFUgorRGllIHNpbmQgbfZnbGljaC4gU2llaGUguzpoZWxwIHRvZG+rIGb8ciBlaW5lIExpc3RlIGJla2FubnRlciBQcm9ibGVtZS4KKy5QUAorQmVhY2h0ZW4gU2llLCBkYXNzIGdld2lzc2UgRGluZ2UsIGRpZSBtYW5jaGUgTGV1dGUgYWxzIEZlaGxlciBiZXRyYWNodGVuCitt9mdlbiwgaW4gV2lya2xpY2hrZWl0IGR1cmNoIHp1IGdldHJldWUgTmFjaGJpbGR1bmcgZGVzIFZpXC1WZXJoYWx0ZW5zCit2ZXJ1cnNhY2h0IHdlcmRlbi4gVW5kIGZhbGxzIFNpZSBkZW5rZW4sIGRhc3MgYW5kZXJlIERpbmdlIEZlaGxlciBzaW5kLAoru3dlaWwgVmkgZXMgYW5kZXJzIHR1dKssIHNvbGx0ZW4gU2llIGVpbmVuIGdlbmF1ZXJlbiBCbGljayBhdWYgZGllIERhdGVpCit2aV9kaWZmLnR4dCB3ZXJmZW4gKG9kZXIgaW4gVmltILs6aGVscCB2aV9kaWZmLnR4dKsgdGlwcGVuKS4gU2VoZW4gU2llIHNpY2gKK2F1Y2ggZGllIE9wdGlvbmVuICdjb21wYXRpYmxlJyB1bmQgJ2Nwb3B0aW9ucycgYW4uCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy92aW0tZGUuVVRGLTguMSBiL3J1bnRpbWUvZG9jL3ZpbS1kZS5VVEYtOC4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY3OWU2MjIKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL2RvYy92aW0tZGUuVVRGLTguMQpAQCAtMCwwICsxLDQ3OCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIgVHJhbnNsYXRlZCBieSBidzEgKDIwMDgpIGFuZCBGbG9yaWFuIFJlaG5pc2NoIDxmbS1yQGdteC5kZT4gKDIwMTIpCisuXCIgS3Vkb3MgdG8gdGhlIGZvbGtzIG9uIHZpbS1kZXYgYW5kIGRlYmlhbi1sMTBuLWdlcm1hbgorLlRIIFZJTSAxICIyMDA2IEFwciAxMSIgIAorLlNIIEJFWkVJQ0hOVU5HCit2aW0gXC0gVmkgSU1wcm92ZWQsIGVpbiBUZXh0XC1FZGl0b3IgZsO8ciBQcm9ncmFtbWllcmVyCisuU0ggw5xCRVJTSUNIVAorLmJyCitcZkJ2aW1cZlAgW09wdGlvbmVuXSBbRGF0ZWkg4oCmXQorLmJyCitcZkJ2aW1cZlAgW09wdGlvbmVuXSBcLQorLmJyCitcZkJ2aW1cZlAgW09wdGlvbmVuXSBcLXQgVGFnCisuYnIKK1xmQnZpbVxmUCBbT3B0aW9uZW5dIFwtcSBbRmVobGVyZGF0ZWldCisuUFAKKy5icgorXGZCZXhcZlAKKy5icgorXGZCdmlld1xmUAorLmJyCitcZkJndmltXGZQIFxmQmd2aWV3XGZQIFxmQmV2aW1cZlAgXGZCZXZpZXdcZlAKKy5icgorXGZCcnZpbVxmUCBcZkJydmlld1xmUCBcZkJyZ3ZpbVxmUCBcZkJyZ3ZpZXdcZlAKKy5TSCBCRVNDSFJFSUJVTkcKK1xmQlZpbVxmUCBpc3QgZWluIFRleHRcLUVkaXRvciwgZGVyIGF1ZnfDpHJ0c2tvbXBhdGliZWwgenUgVmkgaXN0LiBFciBrYW5uCit2ZXJ3ZW5kZXQgd2VyZGVuLCB1bSBhbGxlIEFydGVuIHZvbiBLbGFydGV4dCB6dSBiZWFyYmVpdGVuLiBFciBpc3QgYmVzb25kZXJzCituw7x0emxpY2gsIHVtIFByb2dyYW1tZSB6dSBiZWFyYmVpdGVuLgorLlBQCitWaW0gaGF0IGVpbmlnZSBFcndlaXRlcnVuZ2VuIGdlZ2Vuw7xiZXIgVmksIHouQi46IFLDvGNrZ8OkbmdpZ21hY2hlbiBpbgorbWVocmVyZW4gU2Nocml0dGVuLCBtZWhyZXJlIEZlbnN0ZXIgdW5kIFB1ZmZlciwgU3ludGF4XC1IZXJ2b3JoZWJ1bmcsCitCZWFyYmVpdGVuIGRlciBCZWZlaGxzemVpbGUsIERhdGVpbmFtZW5lcmfDpG56dW5nLCBlaW5nZWJhdXRlIEhpbGZlLCB2aXN1ZWxsZQorQXVzd2FobCwgdXN3LiDigKYgU2llaGUgwrs6aGVscCB2aV9kaWZmLnR4dMKrIGbDvHIgZWluZSDDnGJlcnNpY2h0IGRlcgorVW50ZXJzY2hpZWRlIHp3aXNjaGVuIFxmQlZpbVxmUCB1bmQgVmkuCisuUFAKK0ltIGxhdWZlbmRlbiBcZkJWaW1cZlAga2FubiBtaXQgZGVtIEJlZmVobCDCuzpoZWxwwqsgdmllbCBIaWxmZSBkdXJjaCBkYXMKK2VpbmdlYmF1dGUgSGlsZmVzeXN0ZW0gZXJsYW5ndCB3ZXJkZW4uIFNpZWhlIGRlbiBBYnNjaG5pdHQgRUlOR0VCQVVURSBISUxGRQord2VpdGVyIHVudGVuLgorLlBQCitNZWlzdGVucyB3aXJkIFxmQlZpbVxmUCB6dW0gRWRpdGllcmVuIGVpbmVyIGVpbnppZ2VuIERhdGVpIG1pdCBkZW0gZm9sZ2VuZGUKK0JlZmVobCBnZXN0YXJ0ZXQ6CisuUFAKKyAgdmltIERhdGVpCisuUFAKK0FsbGdlbWVpbmVyIGJldHJhY2h0ZXQsIHdpcmQgXGZCVmltXGZQIGZvbGdlbmRlcm1hw59lbiBnZXN0YXJ0ZXQ6CisuUFAKKyAgdmltIFtPcHRpb25lbl0gW0RhdGVpbGlzdGVdCisuUFAKK0JlaSBlaW5lciBmZWhsZW5kZW4gRGF0ZWlsaXN0ZSBzdGFydGV0IGRlciBFZGl0b3IgbWl0IGVpbmVtIGxlZXJlbgorUHVmZmVyLiBBbmRlcm5mYWxscyB3ZXJkZW4gbmFjaCBkZW4gZm9sZ2VuZGVuIHZpZXIgTcO2Z2xpY2hrZWl0ZW4gZWluZSBvZGVyCittZWhyZXJlIERhdGVpZW4gYmVhcmJlaXRldDoKKy5UUCAgMTIKK0RhdGVpIOKApgorRWluZSBMaXN0ZSB2b24gRGF0ZWluYW1lbi4gRGllIGVyc3RlIERhdGVpIHdpcmQgaW4gZGVuIFB1ZmZlciBnZWxhZGVuIHVuZAorenVyIGFrdHVlbGxlbi4gRGVyIEN1cnNvciB3aXJkIGF1ZiBkZXIgZXJzdGVuIFplaWxlIGRlcyBQdWZmZXJzCitwbGF0emllcnQuIFp1IGRlbiBhbmRlcmVuIERhdGVpZW4ga2FubiBtaXQgZGVtIEJlZmVobCDCuzpuZXh0wqsgZ2VsYW5ndAord2VyZGVuLiBGYWxscyBlaW5lciBkZXIgRGF0ZWluYW1lbiBtaXQgZWluZW0gQmluZGVzdHJpY2ggYmVnaW5udCwgc3RlbGxlbgorU2llIGRlciBEYXRlaWxpc3RlIMK7XC1cLcKrIHZvcmFuLgorLlRQIAorXC0KK0RpZSB6dSBiZWFyYmVpdGVuZGUgRGF0ZWkgd2lyZCB2b24gZGVyIFN0YW5kYXJkZWluZ2FiZSBnZWxlc2VuLiBCZWZlaGxlCit3ZXJkZW4gdm9uIGRlciBTdGFuZGFyZGZlaGxlcmF1c2dhYmUgZ2VsZXNlbiwgZGllIGVpbiBUZXh0XC1UZXJtaW5hbCBzZWluCitzb2xsdGUuCisuVFAgCitcLXQge1RhZ30KK0RpZSB6dSBlZGl0aWVyZW5kZSBEYXRlaSB1bmQgZGllIGFuZsOkbmdsaWNoZSBDdXJzb3JcLVBvc2l0aW9uIGjDpG5nZW4gdm9uCitlaW5lbSDCu1RhZ8KrIGFiLCBlaW5lciBBcnQgU3BydW5nbWFya2UuIHtUYWd9IHdpcmQgaW4gZGVyIFRhZ1wtRGF0ZWkKK25hY2hnZXNjaGxhZ2VuLCBkaWUgenVnZWjDtnJpZ2UgRGF0ZWkgd2lyZCB6dXIgYWt0dWVsbGVuIHVuZCBkZXIgenVnZWjDtnJpZ2UKK0JlZmVobCB3aXJkIGF1c2dlZsO8aHJ0LiBEaWVzIHdpcmQgbWVpc3RlbnMgZsO8ciBQcm9ncmFtbWUgaW4gZGVyIFNwcmFjaGUgwrtDwqsKK2JlbnV0enQsIHdvYmVpIHtUYWd9IGVpbiBGdW5rdGlvbnNuYW1lIHNlaW4ga8O2bm50ZS4gRGllIFdpcmt1bmcgZGllc2VzCitCZWZlaGxzIGlzdCwgZGFzcyBkaWUgRGF0ZWksIGRpZSBkaWUgRnVua3Rpb24gZW50aMOkbHQsIGFscyBha3R1ZWxsZSBpbQorRWRpdG9yIGdlw7ZmZm5ldCB1bmQgYW5nZXplaWd0IHdpcmQgdW5kIGRlciBDdXJzb3IgYXVmIGRlbSBCZWdpbm4gZGVyCitGdW5rdGlvbiBwb3NpdGlvbmllcnQgd2lyZC4gU2llaGUgwrs6aGVscCB0YWdcLWNvbW1hbmRzwqsuCisuVFAgCitcLXEgW0ZlaGxlcmRhdGVpXQorU3RhcnRldCBpbSBRdWlja0ZpeFwtTW9kdXMuIERpZSBEYXRlaSBbRmVobGVyZGF0ZWldIHdpcmQgZ2VsZXNlbiB1bmQgZGVyCitlcnN0ZSBGZWhsZXIgd2lyZCBhbmdlemVpZ3QuIEZhbGxzIFtGZWhsZXJkYXRlaV0gYXVzZ2VsYXNzZW4gd2lyZCwgd2lyZCBkZXIKK0RhdGVpbmFtZSBhdXMgZGVyIE9wdGlvbiAnZXJyb3JmaWxlJyB2ZXJ3ZW5kZXQgKGJlaSBBbWlnYU9TIGlzdCBkaWVzCit2b3JnYWJlbcOkw59pZyDCu0F6dGVjQy5FcnLCqywgc293aWUg4oCeZXJyb3JzLmVycsKrIGJlaSBhbmRlcmVuKS4gV2VpdGVyZSBGZWhsZXIKK2vDtm5uZW4gbWl0IGRlbSDCuzpjbsKrXC1CZWZlaGwgYW5nZXNwcnVuZ2VuIHdlcmRlbi4gU2llaGUg4oCeOmhlbHAgcXVpY2tmaXjCqy4KKy5QUAorXGZCVmltXGZQIHJlYWdpZXJ0IHVudGVyc2NoaWVkbGljaCBhdWYgZGVuIE5hbWVuLCBkZXIgdmVyd2VuZGV0IHdpcmQsIHVtIFZpbSB6dQorc3RhcnRlbiAoZGllIGF1c2bDvGhyYmFyZSBEYXRlaSBrYW5uIGRpZXNlbGJlIHNlaW4pLgorLlRQICAxMAordmltCitkZXIgwrtub3JtYWxlwqsgV2VnLCBhbGxlcyBpc3Qgc3RhbmRhcmRtw6TDn2lnCisuVFAgCitleAorU3RhcnRldCBpbSBFeFwtTW9kdXMuIE1pdCBkZW0gQmVmZWhsIMK7OnZpwqsgZ2VsYW5ndCBtYW4gaW4gZGVuIG5vcm1hbGVuCitNb2R1cy4gRnVua3Rpb25pZXJ0IGF1Y2ggbWl0IGRlbSBBcmd1bWVudCDCu1wtZcKrLgorLlRQIAordmlldworU3RhcnRldCBpbSBOdXJcLUxlc2VuXC1Nb2R1cy4gRGllIERhdGVpIHdpcmQgdm9yIGRlbSDDnGJlcnNjaHJlaWJlbgorZ2VzY2jDvHR6dC4gRGFzc2VsYmUgd2lyZCBtaXQgZGVtIFBhcmFtZXRlciDCu1wtUsKrIGVycmVpY2h0LgorLlRQIAorZ3ZpbSBndmlldworRGllIGdyYWZpc2NoZSBWZXJzaW9uOiDDlmZmbmV0IGVpbiBuZXVlcyBGZW5zdGVyLiBEYXNzZWxiZSB3aXJkIG1pdCBkZW0KK1BhcmFtZXRlciDCu1wtZ8KrIGVycmVpY2h0LgorLlRQIAorZXZpbSBldmlldworRGllIGdyYWZpc2NoZSBWZXJzaW9uIGltIGVpbmZhY2hlbiBNb2R1czogw5ZmZm5ldCBlaW4gbmV1ZXMgRmVuc3Rlci4gRGFzc2VsYmUKK3dpcmQgbWl0IGRlbSBQYXJhbWV0ZXIgwrtcLXnCqyBlcnJlaWNodC4KKy5UUCAKK3J2aW0gcnZpZXcgcmd2aW0gcmd2aWV3CitXaWUgZGllIG9iaWdlbiwgYWJlciBtaXQgQmVzY2hyw6Rua3VuZ2VuOiBFcyBpc3QgbmljaHQgbcO2Z2xpY2gsIFNoZWxsXC1CZWZlaGxlCithdWZ6dXJ1ZmVuIG9kZXIgbWl0IFVudGVyYnJlY2h1bmcgaW4gZWluZSBTaGVsbCB6dXLDvGNrenVzcHJpbmdlbi4gRGFzc2VsYmUKK3dpcmQgbWl0IGRlbSBQYXJhbWV0ZXIgwrtcLVrCqyBlcnJlaWNodC4KKy5TSCBPUFRJT05FTgorRGllIE9wdGlvbmVuIGvDtm5uZW4gaW4gYmVsaWViaWdlciBSZWloZW5mb2xnZSB2b3Igb2RlciBuYWNoIGRlbiBEYXRlaW5hbWVuCithbmdlZ2ViZW4gd2VyZGVuLiBPcHRpb25lbiBvaG5lIFBhcmFtZXRlciBrw7ZubmVuIGhpbnRlciBlaW5lbSBlaW56aWdlbgorQmluZGVzdHJpY2ggZ3J1cHBpZXJ0IHdlcmRlbi4KKy5UUCAgMTIKKytbTnVtbWVyXQorSW4gZGVyIGVyc3RlbiBEYXRlaSB3aXJkIGRlciBDdXJzb3IgYXVmIGRpZSBaZWlsZSBbTnVtbWVyXSBnZXNldHp0LiBGYWxscworW051bW1lcl0gbmljaHQgYW5nZWdlYmVuIHdpcmQsIHdpcmQgZGVyIEN1cnNvciBpbiBkaWUgbGV0enRlIFplaWxlIGRlciBEYXRlaQorZ2VzZXR6dC4KKy5UUCAKKysve1N1Y2htdXN0ZXJ9CitJbiBkZXIgZXJzdGVuIERhdGVpIHdpcmQgZGVyIEN1cnNvciBhdWYgZGFzIGVyc3RlIEF1ZnRyZXRlbiB2b24ge1N1Y2htdXN0ZXJ9CitnZXNldHp0LiBTaWVoZSDCuzpoZWxwIHNlYXJjaFwtcGF0dGVybsKrLgorLlRQIAorK3tCZWZlaGx9CisuVFAgCitcLWMge0JlZmVobH0KK3tCZWZlaGx9IHdpcmQgbmFjaCBkZW0gTGVzZW4gZGVyIGVyc3RlbiBEYXRlaSBhdXNnZWbDvGhydC4gQWxzIHtCZWZlaGx9IHdpcmQKK2VpbiBFeFwtQmVmZWhsIGVyd2FydGV0LiBTaW5kIGluIHtCZWZlaGx9IExlZXJ6ZWljaGVuIHZvcmhhbmRlbiwgbXVzcyBhbGxlcworaW4gQW5mw7xocnVuZ3N6ZWljaGVuIGdlc2V0enQgd2VyZGVuIChow6RuZ3Qgdm9uIGRlciB2ZXJ3ZW5kZXRlbiBTaGVsbAorYWIpLiBCZWlzcGllbDogdmltICIrc2V0IHNpIiBtYWluLmMKKy5icgorQW5tZXJrdW5nOiBTaWUga8O2bm5lbiBiaXMgenUgMTAgwrsrwqtcLSBvZGVyIOKAnlwtY8KrXC1CZWZlaGxlIHZlcndlbmRlbi4KKy5UUCAKK1wtUyB7RGF0ZWl9Cit7RGF0ZWl9IHdpcmQgbmFjaCBkZW0gTGVzZW4gZGVyIGVyc3RlbiBEYXRlaSBhdXNnZWbDvGhydC4gRGllcyBlbnRzcHJpY2h0IMK7XC1jCisic291cmNlIHtEYXRlaX0iwqsuIHtEYXRlaX0gZGFyZiBuaWNodCBtaXQgZWluZW0gQmluZGVzdHJpY2ggKFwtKQorYW5mYW5nZW4uIFdlbm4ga2VpbiBEYXRlaW5hbWUgYW5nZWdlYmVuIHdpcmQsIHdpcmQgwrtTZXNzaW9uLnZpbcKrIHZlcndlbmRldAorKEZ1bmt0aW9uaWVydCBudXIsIHdlbm4gwrtcLVPCqyBhbHMgbGV0enRlciBQYXJhbWV0ZXIgc3RlaHQpLgorLlRQIAorXC1cLWNtZCB7QmVmZWhsfQorV2llIMK7XC1jwqssIGFiZXIgZGllc2VyIEJlZmVobCB3aXJkIHZvciBhbGxlbiBWaW1SQ1wtRGF0ZWllbiBhdXNnZWbDvGhydC4gU2llCitrw7ZubmVuIHVuYWJow6RuZ2lnIHZvbiBkZW4gwrtcLWPCq1wtQmVmZWhsZW4gYmlzIHp1IDEwIGRpZXNlciBCZWZlaGxlIHZlcndlbmRlbi4KKy5UUCAKK1wtQQorRmFsbHMgXGZCVmltXGZQIG1pdCBVbnRlcnN0w7x0enVuZyBmw7xyIGRhcyBTY2hyZWliZW4gdm9uIHJlY2h0cyBuYWNoIGxpbmtzIHVuZAorYXJhYmlzY2hlciBUYXN0YXR1cmJlbGVndW5nIGNvbXBpbGllcnQgd3VyZGUgKEFSQUJJQyksIHN0YXJ0ZXQgZGllc2VyCitQYXJhbWV0ZXIgZGVuIE1vZHVzIGbDvHJzIEFyYWJpc2NoZSAoOnNldCBhcmFiaWMpLiBBbmRlcmVuZmFsbHMgYmVlbmRldCBzaWNoCitcZkJWaW1cZlAgbWl0IGVpbmVyIEZlaGxlcm1lbGR1bmcuCisuVFAgCitiCitCaW7DpHJlciBNb2R1czogRXMgd2VyZGVuIGVpbmlnZSBWYXJpYWJsZW4gZ2VzZXR6dCwgc29kYXNzIGVzIG3DtmdsaWNoIGlzdCwKK2VpbmUgYmluw6RyZSBvZGVyIGF1c2bDvGhyYmFyZSBEYXRlaSB6dSBiZWFyYmVpdGVuLgorLlRQIAorXC1DCitLb21wYXRpYmVsOiBTZXR6dCBkaWUgT3B0aW9uICdjb21wYXRpYmxlJy4gRGFzIG1hY2h0IFxmQlZpbVxmUCBpbSBWZXJoYWx0ZW4KK3NlaHIgw6RobmxpY2ggenUgVmksIHNlbGJzdCB3ZW5uIGVpbmUgVmltUkNcLURhdGVpIGV4aXN0aWVydC4KKy5UUCAKK1wtZAorU3RhcnRldCBpbSBkaWZmXC1Nb2R1cy4gRXMgc29sbHRlbiB6d2VpLCBkcmVpIG9kZXIgdmllciBEYXRlaW5hbWVuIGFscworUGFyYW1ldGVyIMO8YmVyZ2ViZW4gd2VyZGVuLiBcZkJWaW1cZlAgw7ZmZm5ldCBzaWUgYWxsZSB1bmQgemVpZ3QgZGllCitVbnRlcnNjaGllZGUgYW4uIEFyYmVpdGV0IHdpZSB2aW1kaWZmKDEpLgorLlRQIAorXC1kIHtHZXLDpHR9CivDlmZmbmV0IGRhcyB7R2Vyw6R0fSwgdW0gZXMgYWxzIFRlcm1pbmFsIHp1IG51dHplbi4gTnVyIGbDvHIgQW1pZ2FPUy4gQmVpc3BpZWw6CisiXC1kIGNvbjoyMC8zMC82MDAvMTUwIi4KKy5UUCAKK0QKK0RlYnVnXC1Nb2R1czogXGZCVmltXGZQIGdlaHQgaW4gZGVuIERlYnVnXC1Nb2R1cywgd2VubiBkZXIgZXJzdGUgQmVmZWhsIGluIGVpbmVtCitTa3JpcHQgYXVzZ2Vmw7xocnQgd2lyZC4KKy5UUCAKK1wtZQorU3RhcnRldCBcZkJWaW1cZlAgaW0gRXhcLU1vZHVzLCBhbHMgd8O8cmRlIGFscyBhdXNmw7xocmJhcmUgRGF0ZWkgwrtleMKrIGF1ZmdlcnVmZW4uCisuVFAgCitcLUUKK1N0YXJ0ZXQgXGZCVmltXGZQIGltIGVyd2VpdGVydGVuIEV4XC1Nb2R1cywgYWxzIHfDvHJkZSBkaWUgYXVzZsO8aHJiYXJlIERhdGVpIGFscworwrtleGltwqsgYXVmZ2VydWZlbi4KKy5UUCAKK1wtZgorVm9yZGVyZ3J1bmQ6IEJlaSBkZXIgR1VJXC1WZXJzaW9uIGVyemV1Z3QgXGZCVmltXGZQIGtlaW5lbiBuZXVlbiBQcm96ZXNzIHVuZAorbMO2c3Qgc2ljaCBuaWNodCB2b24gZGVyIFNoZWxsLCBpbiBkZXIgZXIgYXVmZ2VydWZlbiB3dXJkZS4gQmVpIEFtaWdhT1Mgd2lyZAora2VpbiBuZXVlcyBGZW5zdGVyIGdlw7ZmZm5ldC4gRGllc2VyIFBhcmFtZXRlciB3aXJkIGJlbnV0enQsIGRhbWl0IGRhcworYXVmcnVmZW5kZSBQcm9ncmFtbSBhdWYgZGFzIEJlZW5kZW4gZGVzIEJlYXJiZWl0dW5nc3NpdHp1bmcgd2FydGV0ICh6LkIuOgorbWFpbCkuIEJlaSBBbWlnYU9TIGZ1bmt0aW9uaWVyZW4gZGllIEJlZmVobGUgwrs6c2jCqyB1bmQg4oCeOiHCqyBuaWNodC4KKy5UUCAKK1wtXC1ub2ZvcmsKK1ZvcmRlcmdydW5kOiBCZWkgZGVyIEdVSVwtVmVyc2lvbiBlcnpldWd0IFxmQlZpbVxmUCBrZWluZW4gbmV1ZW4gUHJvemVzcyB1bmQKK2zDtnN0IHNpY2ggbmljaHQgdm9uIGRlciBTaGVsbCwgaW4gZGVyIGVyIGF1ZmdlcnVmZW4gd3VyZGUuCisuVFAgCitcLUYKK1dlbm4gXGZCVmltXGZQIG1pdCBGS01BUFwtVW50ZXJzdMO8dHp1bmcgZsO8ciBkYXMgU2NocmVpYmVuIHZvbiByZWNodHMgbmFjaCBsaW5rcwordW5kIEZhcnNpXC1UYXN0YXR1clwtQmVsZWd1bmcga29tcGlsaWVydCB3dXJkZSwgc3RhcnRldCBWaW0gaW0gRmFyc2lcLU1vZHVzLAorZC5oLiBkaWUgT3B0aW9uZW4gJ2ZrbWFwJyB1bmQgJ3JpZ2h0bGVmdCcgd2VyZGVuIGdlc2V0enQuIEFuZGVybmZhbGxzIGJyaWNodAorXGZCVmltXGZQIG1pdCBlaW5lciBGZWhsZXJtZWxkdW5nIGFiLgorLlRQIAorXC1nCitGYWxscyBcZkJWaW1cZlAgbWl0IEdVSVwtVW50ZXJzdMO8dHp1bmcga29tcGlsaWVydCB3dXJkZSwgd2lyZCBkaWUgR1VJCitha3RpdmllcnQuIEZhbGxzIGtlaW5lIEdVSVwtVW50ZXJzdMO8dHp1bmcgZWlua29tcGlsaWVydCB3dXJkZSwgd2lyZCBtaXQgZWluZXIKK0ZlaGxlcm1lbGR1bmcgYWJnZWJyb2NoZW4uCisuVFAgCitcLWgKK0dpYnQgZWluZSBrbGVpbmUgSGlsZmUgZsO8ciBkaWUgQmVmZWhsc3plaWxlbnBhcmFtZXRlciBhdXMuIERhbmFjaCBiZWVuZGV0CitzaWNoIFxmQlZpbS5cZlAKKy5UUCAKK1wtSAorSGVicsOkaXNjaFwtTW9kdXMsIGZhbGxzIFxmQlZpbVxmUCBtaXQgUklHSFRMRUZUXC1VbnRlcnN0w7x0enVuZyBmw7xyIGRhcyBTY2hyZWliZW4KK3ZvbiByZWNodHMgbmFjaCBsaW5rcyB1bmQgaGVicsOkaXNjaGVyIFRhc3RhdHVyYmVsZWd1bmcga29tcGlsaWVydCB3dXJkZSwKK3dlcmRlbiBkaWUgT3B0aW9uZW4gJ2hrbWFwJyB1bmQgJ3JpZ2h0bGVmdCcgZ2VzZXR6dC4gQW5kZXJuZmFsbHMgYmVlbmRldAorc2ljaCBcZkJWaW1cZlAgbWl0IGVpbmVyIEZlaGxlcm1lbGR1bmcuCisuVFAgCitcLWkge1ZpbUluZm99CitXZW5uIGVpbmUgVmltSW5mb1wtRGF0ZWkgdmVyd2VuZGV0IHdpcmQ6IFZlcndlbmRldCBzdGF0dCDCu34vLnZpbWluZm/CqyBkaWUKK2FuZ2VnZWJlbmUgRGF0ZWkuIEVzIGlzdCBhdWNoIG3DtmdsaWNoIGRpZSBWZXJ3ZW5kdW5nIGVpbmVyIFZpbUluZm9cLURhdGVpCitkdXJjaCBBbmdhYmUgZGVzIERhdGVpbmFtZW4gwrtOT05FwqsgenUgdmVyaGluZGVybiwKKy5UUCAKK1wtTAorZGFzc2VsYmUgd2llIMK7XC1ywqsKKy5UUCAKK1wtbAorTGlzcFwtTW9kdXMuIEFrdGl2aWVydCBkaWUgT3B0aW9uZW4gJ2xpc3AnIHVuZCAnc2hvd21hdGNoJy4KKy5UUCAKK1wtbQorRGVha3RpdmllcnQgZGFzIFZlcsOkbmRlcm4gdm9uIERhdGVpZW4sIGluZGVtIGRpZSBPcHRpb24gJ3dyaXRlJyBnZWzDtnNjaHQKK3dpcmQuIERlciBQdWZmZXIga2FubiB2ZXLDpG5kZXJ0IHdlcmRlbiwgbnVyIGRhcyBTY2hyZWliZW4gZWluZXIgRGF0ZWkgaXN0CituaWNodCBtw7ZnbGljaC4KKy5UUCAKK1wtTQorS2VpbmUgVmVyw6RuZGVydW5nZW4gZXJsYXVidDogRGllIE9wdGlvbmVuICdtb2RpZmlhYmxlJyB1bmQgJ3dyaXRlJyB3ZXJkZW4KK2dlbMO2c2NodCwgc28gZGFzcyDDhG5kZXJ1bmdlbiBuaWNodCBlcmxhdWJ0IHNpbmQgdW5kIERhdGVpZW4gbmljaHQKK2dlc2NocmllYmVuIHdlcmRlbiBrw7ZubmVuLiBNYW4gYmVhY2h0ZSwgZGFzcyBkaWVzZSBPcHRpb25lbiAoJ21vZGlmaWFibGUnLAorXCYnd3JpdGUnKSBkZW5ubm9jaCBuYWNodHLDpGdsaWNoIHp1bSBFcmxhdWJlbiB2b24gw4RuZGVydW5nZW4gZ2VzZXR6dCB3ZXJkZW4KK2vDtm5uZW4uCisuVFAgCitcLU4KK05pY2h0XC1rb21wYXRpYmxlciBNb2R1czogTMO2c2NodCBkaWUgT3B0aW9uICdjb21wYXRpYmxlJy4gRGllcyB2ZXJhbmxhc3N0CitcZkJWaW1cZlAsIHNpY2ggZWluIHdlbmlnIGJlc3NlciwgYWJlciB3ZW5pZ2VyIFZpXC1rb21wYXRpYmVsIHp1IHZlcmhhbHRlbiwKK3NlbGJzdCB3ZW5uIGVzIGtlaW5lIFZpbVJDXC1EYXRlaSBnaWJ0LgorLlRQIAorXC1uCitWZXJ3ZW5kZXQga2VpbmUgQXVzbGFnZXJ1bmdzZGF0ZWk6IEVpbmUgV2llZGVyaGVyc3RlbGx1bmcgbmFjaCBlaW5lbSBBYnN0dXJ6Citpc3QgbmljaHQgbcO2Z2xpY2guIEF1ZiBlaW5lbSBsYW5nc2FtZW4gTWVkaXVtIChEaXNrZXR0ZSkga2FubiBkaWVzZQorRWluc3RlbGx1bmcgbsO8dHpsaWNoIHNlaW4uIEthbm4gYXVjaCBtaXQgwrtzZXQgdWM9MMKrIGVycmVpY2h0IHdlcmRlbjsga2FubgorbWl0IMK7c2V0IHVjPTIwMMKrIGF1ZmdlaG9iZW4gd2VyZGVuLgorLlRQIAorXC1uYgorXGZCVmltXGZQIGZ1bmdpZXJ0IGFscyBTZXJ2ZXIgZsO8ciBOZXRCZWFucy4gRGV0YWlscyBzaWVoZSBEb2t1bWVudGF0aW9uLgorLlRQIAorXC1vW05dCivDlmZmbmV0IFtOXSBGZW5zdGVyIMO8YmVyZWluYW5kZXIuIFdlbm4ga2VpbmUgWmFobCBhbmdlZ2ViZW4gd2lyZCwgw7ZmZm5lIGVpbgorRmVuc3RlciBwcm8gRGF0ZWkuCisuVFAgCitcLU9bTl0KK8OWZmZuZXQgW05dIEZlbnN0ZXIgbmViZW5laW5hbmRlci4gV2VubiBrZWluZSBaYWhsIGFuZ2VnZWJlbiB3aXJkLCDDtmZmbmUgZWluCitGZW5zdGVyIHBybyBEYXRlaS4KKy5UUCAKK1wtcFtOXQorw5ZmZm5ldCBbTl0gUmVpdGVyc2VpdGVuLiBXZW5uIGtlaW5lIFphaGwgYW5nZWdlYmVuIHdpcmQsIMO2ZmZuZSBlaW5lCitSZWl0ZXJzZWl0ZSBwcm8gRGF0ZWkuCisuVFAgCitcLVIKK051clwtTGVzZW5cLU1vZHVzOiBEaWUgT3B0aW9uICdyZWFkb25seScgd2lyZCBnZXNldHp0LiBEZXIgUHVmZmVyIGthbm4gbm9jaAorYmVhcmJlaXRldCB3ZXJkZW4sIGFiZXIgZXMgd2lyZCB2ZXJoaW5kZXJ0LCBlaW5lIERhdGVpIGF1cyBWZXJzZWhlbiB6dQorw7xiZXJzY2hyZWliZW4uIFdlbm4gU2llIHdpcmtsaWNoIGVpbmUgRGF0ZWkgw7xiZXJzY2hyZWliZW4gd29sbGVuLCBmw7xnZW4gU2llCitkZW0gRXhcLUJlZmVobCBlaW4gQXVzcnVmZXplaWNoZW4gaGluenUgKHdpZSBpbiDCuzp3IcKrKS4gRGllIE9wdGlvbiDigJ5cLVLCqworYmVkaW5ndCBkaWUgT3B0aW9uIMK7XC1uwqsgKHNpZWhlIG9iZW4pLiBEaWUgT3B0aW9uICdyZWFkb25seScga2FubiBkdXJjaCDigJ46c2V0Citub3JvwqsgZ2Vsw7ZzY2h0IHdlcmRlbi4gU2llaGUgwrs6aGVscCAncmVhZG9ubHknwqsuCisuVFAgCitcLXIKK0xpc3RldCBkaWUgQXVzbGFnZXJ1bmdzZGF0ZWllbiB1bmQgZ2lidCBJbmZvcm1hdGlvbmVuIHp1IGlocmVyCitWZXJ3ZW5kYmFya2VpdCB6dXIgV2llZGVyaGVyc3RlbGx1bmcuCisuVFAgCitcLXIge0RhdGVpfQorV2llZGVyaGVyc3RlbGx1bmdzbW9kdXM6IERpZSBBdXNsYWdlcnVuZ3NkYXRlaSB3aXJkIHp1ciBXaWVkZXJoZXJzdGVsbHVuZwordmVyd2VuZGV0IHVuZCBoYXQgZGVuc2VsYmVuIERhdGVpbmFtZW4gd2llIGRpZSBUZXh0XC1EYXRlaSArIMK7LnN3cMKrLiBTaWVoZQor4oCeOmhlbHAgcmVjb3ZlcnnCqy4KKy5UUCAKK1wtcworRGVyIHN0aWxsZSBNb2R1czogTnVyIHdlbm4gZGllIGF1c2bDvGhyYmFyZSBEYXRlaSBhbHMgwrtleMKrIGF1ZmdlcnVmZW4gd2lyZAorb2RlciB2b3IgwrtcLXPCqyBkaWUgT3B0aW9uIOKAnlwtZcKrIGdlZ2ViZW4gd2lyZC4KKy5UUCAKK1wtcyB7RWluZ2FiZXNrcmlwdH0KK0RpZSBEYXRlaSB7RWluZ2FiZXNrcmlwdH0gd2lyZCBnZWxlc2VuIHVuZCBhdXNnZWbDvGhydCwgYWxzIHfDvHJkZW4gU2llIGRpZQorWmVpY2hlbiBpbiBpaHIgdGlwcGVuLiBEYXNzZWxiZSBrYW5uIG1pdCBkZW0gQmVmZWhsIMK7OnNvdXJjZSEKK3tFaW5nYWJlc2tyaXB0fcKrIGVycmVpY2h0IHdlcmRlbi4gV2lyZCBkYXMgRW5kZSBkZXIgRGF0ZWkgdm9yIGRlbSBCZWVuZGVuCitkZXMgRWRpdG9ycyBlcnJlaWNodCwgd2VyZGVuIHdlaXRlcmUgWmVpY2hlbiB2b24gZGVyIFRhc3RhdHVyIGdlbGVzZW4uCisuVFAgCitcLVQge1Rlcm1pbmFsfQorU2V0enQgZGVuIE5hbWVuIGRlcyBiZW51dHp0ZW4gVGVybWluYWxzLiBOdXIgZXJmb3JkZXJsaWNoLCB3ZW5uIGRpZQorQXV0b21hdGlrIG5pY2h0IGZ1bmt0aW9uaWVydC4gU29sbHRlIGVpbiBcZkJWaW1cZlAgYmVrYW5udGVzIFRlcm1pbmFsIHNlaW46CisoYnVpbHRpbikgb2RlciBpbiBlaW5lciB0ZXJtY2FwXC0gb2RlciB0ZXJtaW5mb1wtRGF0ZWkgZGVmaW5pZXJ0LgorLlRQIAorXC11IHtWaW1SQ30KK1ZlcndlbmRldCB6dXIgSW5pdGlhbGlzaWVydW5nIGRpZSBCZWZlaGxlIGluIGRlciBEYXRlaSB7VmltUkN9LiBBbGxlIGFuZGVyZW4KK0luaXRpYWxpc2llcnVuZ2VuIHdlcmRlbiDDvGJlcnNwcnVuZ2VuLiBCZW51dHplbiBTaWUgZGllcywgdW0gZWluZSBiZXNvbmRlcmUKK0FydCB2b24gRGF0ZWllbiB6dSBiZWFyYmVpdGVuLiBEaWVzIGthbm4gYXVjaCBiZW51dHp0IHdlcmRlbiwgdW0gYWxsZQorSW5pdGlhbGlzaWVydW5nZW4genUgw7xiZXJzcHJpbmdlbiwgaW5kZW0gZGVyIE5hbWUgwrtOT05FwqsgYW5nZWdlYmVuIHdpcmQuIEbDvHIKK3dlaXRlcmUgRWluemVsaGVpdGVuIHNpZWhlIMK7OmhlbHAgaW5pdGlhbGlzYXRpb27CqyBpbm5lcmhhbGIgdm9uIFZpbS4KKy5UUCAKK1wtVSB7R3ZpbVJDfQorQmVudXR6dCBkaWUgQmVmZWhsZSBpbiBkZXIgRGF0ZWkge0d2aW1SQ30gZsO8ciBkaWUgSW5pdGlhbGlzaWVydW5nIGRlcgorZ3JhZmlzY2hlbiBPYmVyZmzDpGNoZS4gQWxsZSBhbmRlcmVuIEluaXRpYWxpc2llcnVuZ2VuIHdlcmRlbgorw7xiZXJzcHJ1bmdlbi4gRGllcyBrYW5uIGViZW5mYWxscyBiZW51dHp0IHdlcmRlbiwgdW0gYWxsZQorR1VJXC1Jbml0aWFsaXNpZXJ1bmdlbiB6dSDDvGJlcnNwcmluZ2VuLCBpbmRlbSBkZXIgTmFtZSDCu05PTkXCqyBhbmdlZ2ViZW4KK3dpcmQuIFNpZWhlIMK7OmhlbHAgZ3VpXC1pbml0wqsgaW5uZXJoYWxiIHZvbiBWaW0gZsO8ciB3ZWl0ZXJlIEVpbnplbGhlaXRlbi4KKy5UUCAKK1wtVltOXQorQXVzZsO8aHJsaWNoICh2ZXJib3NlKTogR2lidCBNZWxkdW5nZW4gZGFyw7xiZXIsIHdlbGNoZSBCZWZlaGxzZGF0ZWllbgorZWluZ2VsZXNlbiB3ZXJkZW4sIHVuZCDDvGJlciBkYXMgTGVzZW4gdW5kIFNjaHJlaWJlbiBlaW5lciBWaW1JbmZvXC1EYXRlaS4gRGllCitvcHRpb25hbGUgWmFobCBOIGlzdCBkZXIgV2VydCBmw7xyICd2ZXJib3NlJy4gVm9yZ2FiZSBpc3QgMTAuCisuVFAgCitcLXYKK1N0YXJ0ZXQgXGZCVmltXGZQIGltIFZpXC1Nb2R1cywgc28gYWxzIHfDvHJkZSBkaWUgYXVzZsO8aHJiYXJlIERhdGVpIG1pdCDCu3ZpwqsKK2F1ZmdlcnVmZW4uIERpZXMgd2lya3Qgc2ljaCBudXIgYXVzLCB3ZW5uIGRpZSBhdXNmw7xocmJhcmUgRGF0ZWkgYWxzIMK7ZXjCqworYXVmZ2VydWZlbiB3aXJkLgorLlRQIAorXC13IHtBdXNnYWJlc2tyaXB0fQorQWxsZSBaZWljaGVuLCBkaWUgZWluZ2V0aXBwdCB3ZXJkZW4sIHdlcmRlbiBpbiBkZXIgRGF0ZWkge0F1c2dhYmVza3JpcHR9CithdWZnZXplaWNobmV0LCBzb2xhbmdlIGJpcyBTaWUgXGZCVmltXGZQIGJlZW5kZW4uIERpZXMgaXN0IG7DvHR6bGljaCwgZmFsbHMgU2llCitlaW5lIFNrcmlwdFwtRGF0ZWkgenVtIEJlbnV0emVuIG1pdCDCu3ZpbSBcLXPCqyBvZGVyIOKAnjpzb3VyY2UhwqsgZXJ6ZXVnZW4KK3dvbGxlbi4gRmFsbHMgZGllIERhdGVpIHtBdXNnYWJlc2tyaXB0fSB2b3JoYW5kZW4gaXN0LCB3ZXJkZW4gZGllIFplaWNoZW4KK2FuZ2Vow6RuZ3QuCisuVFAgCitcLVcge0F1c2dhYmVza3JpcHR9CitXaWUgXC13LCBhYmVyIGVpbmUgYmVyZWl0cyB2b3JoYW5kZW5lIERhdGVpIHdpcmQgw7xiZXJzY2hyaWViZW4uCisuVFAgCitcLXgKK0JlbnV0enQgYmVpbSBTY2hyZWliZW4gdm9uIERhdGVpZW4gZWluZSBWZXJzY2hsw7xzc2VsdW5nLiBGcmFndCBuYWNoIGRlbQorU2NobMO8c3NlbC4KKy5UUCAKK1wtWAorRsO8aHJ0IGtlaW5lIFZlcmJpbmR1bmcgenVtIFhcLVNlcnZlciBkdXJjaC4gRGFkdXJjaCB2ZXJrw7xyenQgc2ljaCBkaWUKK1N0YXJ0emVpdCwgYWJlciBkZXIgRmVuc3RlcnRpdGVsIHVuZCBkaWUgWndpc2NoZW5hYmxhZ2Ugd2VyZGVuIG5pY2h0Cit2ZXJ3ZW5kZXQuCisuVFAgCitcLXkKK1N0YXJ0ZXQgXGZCVmltXGZQIGltIGVpbmZhY2hlbiBNb2R1cywgYWxzIHfDvHJkZSBkaWUgYXVzZsO8aHJiYXJlIERhdGVpIG1pdAorwrtldmltwqsgb2RlciDCu2V2aWV3wqsgYXVmZ2VydWZlbi4gXGZCVmltXGZQIHZlcmjDpGx0IHNpY2ggZGFubiB3aWUgZWluIEVkaXRvciB6dW0KK0tsaWNrZW4gdW5kIFRpcHBlbi4KKy5UUCAKK1wtWgorRWluZ2VzY2hyw6Rua3RlciBNb2R1czogRnVua3Rpb25pZXJ0LCBhbHMgd8O8cmRlIGRlciBOYW1lIGRlciBhdXNmw7xocmJhcmVuCitEYXRlaSBtaXQgwrtywqsgYmVnaW5uZW4uCisuVFAgCitcLVwtCitNYXJraWVydCBkYXMgRW5kZSBkZXIgT3B0aW9uZW4uIEFyZ3VtZW50ZSwgZGllIGZvbGdlbiwgd2VyZGVuIGFscyBEYXRlaW5hbWVuCitiZWhhbmRlbHQuIERpZXMga2FubiBiZW51dHp0IHdlcmRlbiwgdW0gZWluZW4gRGF0ZWluYW1lbiBtaXQgwrtcLcKrIGFtIEFuZmFuZworenUgdmVyd2VuZGVuLgorLlRQIAorXC1cLWVjaG9cLXdpZAorTnVyIEdUS1wtR1VJOiBTY2hyZWliZSBkaWUgRmVuc3RlclwtSUQgYXVmIGRpZSBTdGFuZGFyZGF1c2dhYmUuCisuVFAgCitcLVwtaGVscAorR2lidCBlaW5lIEhpbGZlXC1OYWNocmljaHQgYXVzIHVuZCBiZWVuZGV0LCB3aWUgwrtcLWjCqy4KKy5UUCAKK1wtXC1saXRlcmFsCitOaW1tdCBkaWUgRGF0ZWluYW1lbiBzbyB3aWUgc2llIHNpbmQgdW5kIHZlcnZvbGxzdMOkbmRpZ3Qgc2llIG5pY2h0IG5hY2gKK01ldGF6ZWljaGVuICgqLD8pLiBEaWVzIHdpcmt0IHNpY2ggbmljaHQgdW50ZXIgVW5peCBhdXMsIHdvIGRpZSBTaGVsbCBkaWUKK01ldGF6ZWljaGVuIGV4cGFuZGllcnQuCisuVFAgCitcLVwtbm9wbHVnaW4KK0xhZGUga2VpbmUgUGx1Z2lucy4gSW1wbGl6aWVydCBkdXJjaCDCu1wtdSBOT05FwqsuCisuVFAgCitcLVwtcmVtb3RlCitWZXJiaW5kZXQgbWl0IGVpbmVtIFZpbVwtU2VydmVyIHVuZCBsw6Rzc3QgaWhuIGRpZSBpbiBkZW4gcmVzdGxpY2hlbgorQXJndW1lbnRlbiBhbmdlZ2ViZW4gRGF0ZWllbiBlZGl0aWVyZW4uIFdlbm4ga2VpbiBTZXJ2ZXIgZ2VmdW5kZW4gd2lyZCwKK2bDvGhydCBkaWVzIHp1IGVpbmVyIFdhcm5tZWxkdW5nIHVuZCBkaWUgRGF0ZWllbiB3ZXJkZW4gaW0gZ2VnZW53w6RydGlnZW4gVmltCit6dW0gQmVhcmJlaXRlbiBnZcO2ZmZuZXQuCisuVFAgCitcLVwtcmVtb3RlXC1leHByIHtBdXNkcnVja30KK1ZlcmJpbmRldCBtaXQgZWluZW0gVmltXC1TZXJ2ZXIsIGbDvGhydCB7QXVzZHJ1Y2t9IGF1cyB1bmQgemVpZ3QgZGFzIEVyZ2VibmlzCithdWYgZGVyIFN0YW5kYXJkYXVzZ2FiZSBhbi4KKy5UUCAKK1wtXC1yZW1vdGVcLXNlbmQge1plaWNoZW59CitWZXJiaW5kZXQgbWl0IGVpbmVtIFZpbVwtU2VydmVyIHVuZCBzZW5kZXQgaWhtIHtaZWljaGVufS4KKy5UUCAKK1wtXC1yZW1vdGVcLXNpbGVudAorV2llIMK7XC1cLXJlbW90ZcKrLCBhYmVyIG9obmUgV2FybnVuZywgd2VubiBrZWluIFNlcnZlciBnZWZ1bmRlbiB3aXJkLgorLlRQIAorXC1cLXJlbW90ZVwtd2FpdAorV2llIMK7XC1cLXJlbW90ZcKrLCBhYmVyIFZpbSBiZWVuZGV0IHNpY2ggbmljaHQsIGJpcyBkaWUgRGF0ZWllbiBiZWFyYmVpdGV0Cit3dXJkZW4uCisuVFAgCitcLVwtcmVtb3RlXC13YWl0XC1zaWxlbnQKK1dpZSDCu1wtXC1yZW1vdGVcLXdhaXTCqywgYWJlciBvaG5lIFdhcm51bmcsIHdlbm4ga2VpbiBTZXJ2ZXIgZ2VmdW5kZW4gd2lyZC4KKy5UUCAKK1wtXC1zZXJ2ZXJsaXN0CitMaXN0ZXQgZGllIE5hbWVuIGFsbGVyIGdlZnVuZGVuZW4gVmltXC1TZXJ2ZXIgYXVmLgorLlRQIAorXC1cLXNlcnZlcm5hbWUge05hbWV9CitCZW51dHp0IHtOYW1lfSBhbHMgU2VydmVyXC1OYW1lbi4gV2lyZCBmw7xyIGRlbiBnZWdlbnfDpHJ0aWdlbiBWaW0gYmVudXR6dCwKK2F1w59lciBlcyB3aXJkIG1pdCBkZW0gQXJndW1lbnQgwrtcLVwtcmVtb3RlwqsgYmVudXR6dCwgZGFubiBpc3QgZXMgZGVyIE5hbWUgZGVzCit6dSBrb250YWt0aWVyZW5kZW4gU2VydmVycy4KKy5UUCAKK1wtXC1zb2NrZXRpZCB7aWR9CitOdXIgR1RLXC1HVUk6IEJlbnV0enQgZGVuIEd0a1BsdWdcLU1lY2hhbmlzbXVzLCB1bSBHVmltIGluIGVpbmVtIGFuZGVyZW4KK0ZlbnN0ZXIgbGF1ZmVuIHp1IGxhc3Nlbi4KKy5UUCAKK1wtXC12ZXJzaW9uCitWZXJzaW9uc2luZm9ybWF0aW9uIGFuemVpZ2VuIHVuZCBiZWVuZGVuCisuU0ggIkVJTkdFQkFVVEUgSElMRkUiCitUaXBwZW4gU2llIGluIFxmQlZpbVxmUCDCuzpoZWxwwqssIHVtIHp1IGJlZ2lubmVuLiBHZWJlbiBTaWUg4oCeOmhlbHAgYmVncmlmZsKrIGVpbiwKK3VtIEhpbGZlIMO8YmVyIGVpbiBiZXN0aW1tdGVzIFRoZW1hIHp1IGJla29tbWVuLiBadW0gQmVpc3BpZWwgwrs6aGVscCBaWsKrIGbDvHIKK0hpbGZlIMO8YmVyIGRlbiBCZWZlaGwgwrtaWsKrLiBCZW51dHplbiBTaWUgPFRhYj4gdW5kIENUUkxcLUQsIHVtCitCZWdyaWZmZSB6dSB2ZXJ2b2xsc3TDpG5kaWdlbiAowrs6aGVscCBjbWRsaW5lXC1jb21wbGV0aW9uwqspLiBUYWdzIHNpbmQKK3ZvcmhhbmRlbiwgdW0gdm9uIGVpbmVtIE9ydCB6dW0gYW5kZXJlbiB6dSBzcHJpbmdlbiAoZWluZSBBcnQKK0h5cGVydGV4dFwtVmVya27DvHBmdW5nZW4sIHNpZWhlIMK7OmhlbHDCqykuIEF1ZiBkaWVzZSBXZWlzZSBrw7ZubmVuIGFsbGUKK0Rva3VtZW50YXRpb25zXC1EYXRlaWVuIGF1ZmdlcnVmZW4gd2VyZGVuLCB6dW0gQmVpc3BpZWwgwrs6aGVscCBzeW50YXgudHh0wqsuCisuU0ggREFURUlFTgorLlRQICAxNQorL3Vzci9sb2NhbC9saWIvdmltL2RvYy8qLnR4dAorRG9rdW1lbnRhdGlvbnNcLURhdGVpZW4gZsO8ciBcZkJWaW1cZlAuIFZlcndlbmRlbiBTaWUgwrs6aGVscCBkb2NcLWZpbGVcLWxpc3TCqywgdW0KK2RpZSBnZXNhbXRlIExpc3RlIHp1IGJla29tbWVuLgorLlRQIAorL3Vzci9sb2NhbC9saWIvdmltL2RvYy90YWdzCitEaWUgwrtUYWfCq1wtRGF0ZWksIGRpZSB2ZXJ3ZW5kZXQgd2lyZCwgdW0gSW5mb3JtYXRpb25lbiBpbiBkZXIgRG9rdW1lbnRhdGlvbgorenUgZmluZGVuLgorLlRQIAorL3Vzci9sb2NhbC9saWIvdmltL3N5bnRheC9zeW50YXgudmltCitEaWUgc3lzdGVtd2VpdGUgRWlucmljaHR1bmcgZGVyIFN5bnRheGhlcnZvcmhlYnVuZy4KKy5UUCAKKy91c3IvbG9jYWwvbGliL3ZpbS9zeW50YXgvKi52aW0KK1N5bnRheGRhdGVpZW4gZsO8ciBkaWUgdmVyc2NoaWVkZW5lbiBTcHJhY2hlbi4KKy5UUCAKKy91c3IvbG9jYWwvbGliL3ZpbS92aW1yYworU3lzdGVtd2VpdGUgRWluc3RlbGx1bmdzZGF0ZWkgZsO8ciBcZkJWaW1cZlAKKy5UUCAKK34vLnZpbXJjCitQZXJzw7ZubGljaGUgRWluc3RlbGx1bmdzZGF0ZWkgZsO8ciBcZkJWaW1cZlAKKy5UUCAKKy91c3IvbG9jYWwvbGliL3ZpbS9ndmltcmMKK1N5c3RlbXdlaXRlIEVpbnN0ZWxsdW5nc2RhdGVpIGbDvHIgR1ZpbQorLlRQIAorfi8uZ3ZpbXJjCitQZXJzw7ZubGljaGUgRWluc3RlbGx1bmdzZGF0ZWkgZsO8ciBHVmltCisuVFAgCisvdXNyL2xvY2FsL2xpYi92aW0vb3B0d2luLnZpbQorRGFzIFNjcmlwdCwgZGFzIHZvbiBkZW0gQmVmZWhsIMK7Om9wdGlvbnPCqyB2ZXJ3ZW5kZXQgd2lyZCwgZWluZSBzY2jDtm5lCitNw7ZnbGljaGtlaXQsIHVtIE9wdGlvbmVuIHp1IGJldHJhY2h0ZW4gdW5kIHp1IHNldHplbi4KKy5UUCAKKy91c3IvbG9jYWwvbGliL3ZpbS9tZW51LnZpbQorU3lzdGVtd2VpdGUgRWluc3RlbGx1bmdzZGF0ZWkgZsO8ciBkYXMgTWVuw7wgdm9uIEdWaW0KKy5UUCAKKy91c3IvbG9jYWwvbGliL3ZpbS9idWdyZXBvcnQudmltCitEYXMgU2NyaXB0IHp1bSBHZW5lcmllcmVuIGVpbmVzIEZlaGxlcmJlcmljaHRzLiBTaWVoZSDCuzpoZWxwIGJ1Z3PCqy4KKy5UUCAKKy91c3IvbG9jYWwvbGliL3ZpbS9maWxldHlwZS52aW0KK01pdCBkaWVzZW0gU2NyaXB0IGVya2VubnQgVmltIGRlbiBUeXAgZWluZXIgRGF0ZWkgYW5oYW5kIGlocmVzCitEYXRlaW5hbWVucy4gU2llaGUgwrs6aGVscCAnZmlsZXR5cGUnwqsuCisuVFAgCisvdXNyL2xvY2FsL2xpYi92aW0vc2NyaXB0cy52aW0KK01pdCBkaWVzZW0gU2NyaXB0IGVya2VubnQgVmltIGRlbiBUeXAgZWluZXIgRGF0ZWkgYW5oYW5kIGlocmVzCitJbmhhbHRlcy4gU2llaGUgwrs6aGVscCAnZmlsZXR5cGUnwqsuCisuVFAgCisvdXNyL2xvY2FsL2xpYi92aW0vcHJpbnQvKi5wcworRGllc2UgRGF0ZWllbiB3ZXJkZW4genVtIERydWNrZW4gdm9uIFBvc3RTY3JpcHQgdmVyd2VuZGV0LgorLlBQCitGw7xyIGRpZSBuZXVlc3RlbiBJbmZvcm1hdGlvbmVuIGxlc2VuIFNpZSBkaWUgVmltXC1Ib21lcGFnZToKKy5icgorPFVSTDpodHRwOi8vd3d3LnZpbS5vcmcvPgorLlNIICJTSUVIRSBBVUNIIgordmltdHV0b3IoMSkKKy5TSCBBVVRPUgorXGZCVmltXGZQIHd1cmRlIGdyw7bDn3RlbnRlaWxzIHZvbiBCcmFtIE1vb2xlbmFhciBlcnN0ZWxsdCwgbWl0IHZpZWwgSGlsZmUgdm9uCithbmRlcmVuIExldXRlbi4gU2llaGUgwrs6aGVscCBjcmVkaXRzwqsgaW4gXGZCVmltLlxmUAorLmJyCitcZkJWaW1cZlAgYmFzaWVydCBhdWYgU3RldmllLCBkZXIgdm9uIFRpbSBUaG9tcHNvbiwgVG9ueSBBbmRyZXdzIHVuZAorRy5SLiAoRnJlZCkgV2FsdGVyIGdlc2NocmllYmVuIHd1cmRlLiBFcyBpc3QgamVkb2NoIGthdW0gZXR3YXMgdm9tCit1cnNwcsO8bmdsaWNoZW4gQ29kZSDDvGJyaWcgZ2VibGllYmVuLgorLlNIIEZFSExFUgorRGllIHNpbmQgbcO2Z2xpY2guIFNpZWhlIMK7OmhlbHAgdG9kb8KrIGbDvHIgZWluZSBMaXN0ZSBiZWthbm50ZXIgUHJvYmxlbWUuCisuUFAKK0JlYWNodGVuIFNpZSwgZGFzcyBnZXdpc3NlIERpbmdlLCBkaWUgbWFuY2hlIExldXRlIGFscyBGZWhsZXIgYmV0cmFjaHRlbgorbcO2Z2VuLCBpbiBXaXJrbGljaGtlaXQgZHVyY2ggenUgZ2V0cmV1ZSBOYWNoYmlsZHVuZyBkZXMgVmlcLVZlcmhhbHRlbnMKK3ZlcnVyc2FjaHQgd2VyZGVuLiBVbmQgZmFsbHMgU2llIGRlbmtlbiwgZGFzcyBhbmRlcmUgRGluZ2UgRmVobGVyIHNpbmQsCivCu3dlaWwgVmkgZXMgYW5kZXJzIHR1dMKrLCBzb2xsdGVuIFNpZSBlaW5lbiBnZW5hdWVyZW4gQmxpY2sgYXVmIGRpZSBEYXRlaQordmlfZGlmZi50eHQgd2VyZmVuIChvZGVyIGluIFZpbSDCuzpoZWxwIHZpX2RpZmYudHh0wqsgdGlwcGVuKS4gU2VoZW4gU2llIHNpY2gKK2F1Y2ggZGllIE9wdGlvbmVuICdjb21wYXRpYmxlJyB1bmQgJ2Nwb3B0aW9ucycgYW4uCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy92aXN1YWwudHh0IGIvcnVudGltZS9kb2MvdmlzdWFsLnR4dAppbmRleCBmNTczODQ1Li40NDU3YWViIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy92aXN1YWwudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Zpc3VhbC50eHQKQEAgLTEsNCArMSw0IEBACi0qdmlzdWFsLnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIE1heSAyNQorKnZpc3VhbC50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBKdW4gMTQKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTI3NCw3ICsyNzQsMTAgQEAKIEFub3RoZXIgd2F5IHRvIG9wZXJhdGUgb24gdGhlIFZpc3VhbCBhcmVhIGlzIHVzaW5nIHRoZSB8L1wlVnwgaXRlbSBpbiBhCiBwYXR0ZXJuLiAgRm9yIGV4YW1wbGUsIHRvIHJlcGxhY2UgYWxsICcoJyBpbiB0aGUgVmlzdWFsIGFyZWEgd2l0aCAnIyc6ID4KIAotCTolcy9cJVYoL1gvZworCTonPCwnPnMvXCVWKC8jL2cKKworTm90ZSB0aGF0IHRoZSAiJzwsJz4iIHdpbGwgYXBwZWFyIGF1dG9tYXRpY2FsbHkgd2hlbiB5b3UgcHJlc3MgIjoiIGluIFZpc3VhbAorbW9kZS4KIAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiA1LiBCbG9ja3dpc2Ugb3BlcmF0b3JzCQkJCQkqYmxvY2t3aXNlLW9wZXJhdG9ycyoK