ZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvTWFrZWZpbGUgYi9ydW50aW1lL3R1dG9yL01ha2VmaWxlCmluZGV4IDQ1ZjQ2OGYuLjdmNGRmNzUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvdHV0b3IvTWFrZWZpbGUKKysrIGIvcnVudGltZS90dXRvci9NYWtlZmlsZQpAQCAtNiw5ICs2LDExIEBACiAjIFNpbWlsYXJseSBmb3IgUnVzc2lhbiBhbmQgS29yZWFuCiAKIGFsbDogdHV0b3IudXRmLTggXAorCXR1dG9yLmJqIFwKIAl0dXRvci5jYS51dGYtOCBcCiAJdHV0b3IuZGUudXRmLTggXAogCXR1dG9yLmVsIHR1dG9yLmVsLmNwNzM3IFwKKwl0dXRvci5lbyBcCiAJdHV0b3IuZXMudXRmLTggXAogCXR1dG9yLmZyLnV0Zi04IFwKIAl0dXRvci5ociB0dXRvci5oci5jcDEyNTAgXApAQCAtMTcsNiArMTksOCBAQAogCXR1dG9yLmphLnNqaXMgdHV0b3IuamEuZXVjIFwKIAl0dXRvci5rby5ldWMgXAogCXR1dG9yLm5vLnV0Zi04IFwKKwl0dXRvci5uYiBcCisJdHV0b3IubmIudXRmLTggXAogCXR1dG9yLnJ1IHR1dG9yLnJ1LmNwMTI1MSBcCiAJdHV0b3Iuc3YudXRmLTggXAogCXR1dG9yLnpoLnV0Zi04CkBAIC0yNCw5ICsyOCwxNSBAQAogdHV0b3IudXRmLTg6IHR1dG9yCiAJaWNvbnYgLWYgSVNPLTg4NTktMSAtdCBVVEYtOCB0dXRvciA+IHR1dG9yLnV0Zi04CiAKK3R1dG9yLmJqOiB0dXRvci5iai51dGYtOAorCWljb252IC1mIFVURi04IC10IElTTy04ODU5LTEgdHV0b3IuYmoudXRmLTggPiB0dXRvci5iagorCiB0dXRvci5jYS51dGYtODogdHV0b3IuY2EKIAlpY29udiAtZiBJU08tODg1OS0xIC10IFVURi04IHR1dG9yLmNhID4gdHV0b3IuY2EudXRmLTgKIAordHV0b3IuZW86IHR1dG9yLmVvLnV0Zi04CisJaWNvbnYgLWYgVVRGLTggLXQgSVNPLTg4NTktMyB0dXRvci5lby51dGYtOCA+IHR1dG9yLmVvCisKIHR1dG9yLmRlLnV0Zi04OiB0dXRvci5kZQogCWljb252IC1mIElTTy04ODU5LTEgLXQgVVRGLTggdHV0b3IuZGUgPiB0dXRvci5kZS51dGYtOAogCkBAIC02Niw2ICs3NiwxMyBAQAogdHV0b3Iubm8udXRmLTg6IHR1dG9yLm5vCiAJaWNvbnYgLWYgSVNPLTg4NTktMSAtdCBVVEYtOCB0dXRvci5ubyA+IHR1dG9yLm5vLnV0Zi04CiAKKyMgbmIgaXMgYW4gYWxpYXMgZm9yIG5vCit0dXRvci5uYjogdHV0b3Iubm8KKwljcCB0dXRvci5ubyB0dXRvci5uYgorCit0dXRvci5uYi51dGYtODogdHV0b3Iubm8udXRmLTgKKwljcCB0dXRvci5uby51dGYtOCB0dXRvci5uYi51dGYtOAorCiB0dXRvci5ydTogdHV0b3IucnUudXRmLTgKIAlpY29udiAtZiBVVEYtOCAtdCBLT0k4LVIgdHV0b3IucnUudXRmLTggPiB0dXRvci5ydQogCmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLmJqIGIvcnVudGltZS90dXRvci90dXRvci5iagpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NDJhOGYzCi0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS90dXRvci90dXRvci5iagpAQCAtMCwwICsxLDk4NyBAQAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorPSAgICBHIG8gdCBpIGsgYSBtICAgaSBuICAgbiAgIFcgSSBNIE0gLSBTIGMgaCBhIGkgbiBlIHIgICAtICAgRmFzc3VuZyAxLjdEICAgPQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisgICBEeXIgV2ltbSBpc3QgYXluIGdybyBt5GNodGlncyBCbGF0LCBk9nMgd2FzIG1pdCBheW5uIFf2c24gQmVmZWxoIGF1ZndhcnR0OyB6CisgICB2aWwsICBk5N8gbXluIHMgYWxsc2FuZCAgaW4gYXlubiBTY2hhaW5lciAgd2llIGT2bm4gZGFhZGVyICB1bnRlcmJy5G5nLiAgRGVyCisgICBTY2hhaW5lciBpc3QgeXNvIGF1ZmJhdXQsICBk5N8geXIgaGFsdCBuZXR0eSBkaWUgQmVmZWxoIGFsbHNhbmQgYnJpbmd0LCB3b3N0CisgICBicmF1Y2hzdCwgZOTfc3QgbWl0IGllbSBm/HIgcyBFZXJzdGUgd2lya2xpY2gg9mJicyBhbmZhbmdlbiBrYW5zdC4KKyAgIER1cmNoaGluYXJlY2h0biBrYW5zdCBkaSwgd2VubnN0IHdpbGxzdCwgaW4gYXluZXIgaGFsYmV0biBTdHVuZDsgZPZzIGhhaXNzdCwKKyAgIHdlbm5zdCBkaSBuaXQgZ3Jvb98gbWl0IG4gUHL2YmxuIHVuZCBU/GZ0bG4gYXVmaGFsdHN0LgorCisgICBPQkFDSFQ6CisgICBEaWUgRmF1ZHVuZ2VuLCAgd29zdCBkYWFkZXIgZmluZGRzdCwgIGdhYW5kIGlzdGlnICBzIEd3b3J0IPZuZGVybi4gIET2c3N39mduCisgICBtYWNoc3QgZXluIG4gQvZzdG4gZ2xlaSAgYXluIEFhbXVtIHZvbiBkZXJlciBEYXV0dGljaHQgZGFhZGVyLiAgSGFhc3QgYWxzbmFuCisgICBk9nMgR3dvcnQgZGFhZGVyICBtaXQgbiBCZWZlbGggInZpbXR1dG9yIGJqIiAgYXVzaGVybGFhc3NuLCAgaXN0IHMgZWUgc2Nob29uCisgICBheW4gQWFtdW0uCisgICBNaXIga2FuIHMgIG5pdCBvZnQgZ251ZWcgIHNhZ24sICBk5N8gIGRlciBTY2hhaW5lciBkYWFkZXIgIGlzdGlnICBnYW4gbiDcZWJuCisgICBnaG9lcnQuICBBbHNvIG11ZXNzdCBzY2hvb24gYWF1IGRpZSBCZWZlbGggYXVzZvxlcm4sICB3ZW5uc3QgeXMgZ3NjaGVpZCBsZXItCisgICBuZW4gd2lsbHN0LiBNaXQgbiBM9nNuIHlsbGFpbiBpc3QgcyArbml0IHRhYW4hCisKKyAgIElldHogc2NoYXVzdCBncmFkIG5vbiwgZOTfIGRlaW4gRvZzdHN09mxsdGFzdG4gbml0IGRydWNrdCBpc3Q7IHVuZCBhZnQgZ2Vlc3QKKyAgIGdsZWkgYXlubWFhbCBtaXQgZHlyIGotVGFzdG4gYWJ35HJ0cyAoeXNvIGxhYXVmZnQgZPZzIG72bWxpY2gpLCAgaGluc3QgZOTfc3QKKyAgIGRlIGdhbnR6ZSBMZXR6biAxLjEgYXVmIG4gQmlsZHNjaGlybSBoYWFzdC4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICBMZXR6biAxLjE6IE1JVCBOIE3WUktMIFVNQVlOQU5ERkFSTgorCisqKiAgRHlybWl0c3QgbWl0IG4gTfZya2wgdW1heW5hbmRraW1tc3QsIGRydWNrIGgsIGosIGsgdW5kIGwgd2llIHVudCB6YWlndC4gICoqCisgICAgICAgICAgICBeICAgICAgICAgICAgQXluINZzbHNicnVnZzoKKyAgICAgICAgICAgIGsgICAgICAgICAgICBEZSBUYXN0biAgaCAgaXN0IHdpbnN0ZXIgdW5kICtnZWV0IGFhdSBnYW4gd2luc3Rlci4KKyAgIDwgaCAgICAgICAgICAgICBsID4gICBTICBsICBsZWl0IHplc20gdW5kIHJpY2h0dCBzaSBnYW4gemVzbS4KKyAgICAgICAgICAgIGogICAgICAgICAgICBTICBqICBrYW4gbXluIHdpZSBheW5uIFBmZWlsIGdhbiB1bnQgc2VnaG4uCisgICAgICAgICAgICB2ICAgICAgICAgICAgTWl0IG4gIGsgIGtpbW1zdCBnYW4gbiBLT1BGLiAgICAgICAgICAgIAorICAxLiBJZXR6IHJ1ZWRlcnRzdCBhaW5mYWNoIG1pdCBuIE32cmtsIGF1ZiBuIEJpbGRzY2hpcm0gdW1heW5hbmQsICBoaW5zdCBk5N9zdAorICAgICBkaSBzaWNoZXIgZvxlbHN0LgorICAyLiBIYWx0ICBkIEFiaGluLVRhc3RuIChqKSAgZHJ1Y2t0OyAgYWZ0IHJ1bXBsdCBzICBhaW5mYWNoIHdlaXRlci4gIE5ldHR5IHlzbworICAgICBraW1tc3QgZ2FuIGR5ciBuYWVoc3RuIExldHpuLgorICAgICAKKyAgMy4gV2llIGdzYWl0LCBpZXR6IGJld/Znc3QgZGkgYWxzbyBtaXQgZGVyZXIgVGFzdG4gZ2FuIGR5ciBMZXR6biAxLjIuCisKK05vbiD2YmJzOiBBbGx3ZWlsLCB3ZW5uIGR5ciBuaWVtZXIgZ2FueiB3b2wgaXN0LCB3YXNzdCD2YmJlbm4gZHJ1Y2t0IGhhYXN0LCBhZnQKKyAgICAgICAgICB6aXBmc3QgIDxFU0M+OyAgbmFhY2hlcmQgYmlzdCB3aWRlciBnYW56IGd3b24gaW4gZHlyIEJlZmVsaHMtQXJ0d2Vpcy4KKworICAgICAgCisgICAgICAgICAgTvZibmJlaSBnc2FpdCBraW1tc3QgZ3dvbmVyd2VpbCBhYXUgbWl0IGRlIFBmZWlsdGFzdG5lbiB3ZWl0ZXIuICBBYmVyCisgICAgICAgICAgaGprbCAgc2VpbmQgeiBoYWlzc24gcyBXaW1tLVVyZ3N0YWluOyAgdW5kIGRlICJI9nJ0biIgc2VpbmQgZ2FueiBkeXItCisgICAgICAgICAgZvxyLCBk5N8gbXluIGJlaSArZGVuZSBibGVpYnQuIFBy9mJsdCBzIGFpbmZhY2ggYXVzIQorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gMS4yOiDWTk4gV0lNTSBBVVNTQ0hBTFRUTgorCisKKyAgQUxTTywgRUUgV0VOTlNUINZCQlMgVk9OIERBQSBVTlQgQVVTRtxFUlNULCAgTElTIExJRUJFUiBaRUVSU1QgREUgR0FOVFpFIExFVC0KKyAgWk4hCisKKyAgMS4gRHJ1Y2sgZCA8RVNDPi1UYXN0biwgZHlybWl0c3QgYWF1IGd3ad8gaW4gZHlyIEJlZmVsaHMtQXJ0d2VpcyBiaXN0LgorICAKKyAgMi4gRGVtbWx0ICA6cSEgPEVJTj4uCisgICAgIERhYSBkeXJtaXQgIGJlbmRkc3QgeXMgQmxhdCAgdW5kIHZlcndpcmZmc3QgIGFsbHNzLCAgd2Fzc3Qg9mJiZW5uICBn9m5kZXJ0CisgICAgIGhhYXN0LgorCisgIDMuIEJhbHN0IPZubiBFaW5naWIgc2VnaHN0LCBnaWIgZPYgRmF1ZHVuZyBlaW4sICB3byBkaSB6byBk9m5uIFNjaGFpbmVyIGJydW4tCisgICAgIGdlbiBoYWF0LCBhbHNvICAgIHZpbXR1dG9yIGJqIDxFSU4+LgorCisgIDQuIEFsc28sIHdlbm4gaWV0eiBhbGxzc2Ugc2l0enQsIG5hYWNoZXJkIGb8ZXJzdCBkIFNjaHJpdHQgMSBoaW5zdCAzIGF1cywgbWl0CisgICAgIHdhc3N0IHlzIEJsYXQgdmVybGFhc3N0IHVuZCBhZnQgd2lkZXIgZWluaGlua2ltbXN0LgorCitBbm32cmt1bmc6IE1pdCAgOnEhIDxFSU4+IHZlcndpcmZmc3QgYWxsc3MsIHdhc3N0IGf2bmRlcnQgb2xkZXIgZW50aGVyIGdzY2hyaWJuCisgICAgICAgICAgIGhhYXN0LiBJbiBheW5uINZ0dGx5Y2ggTGV0em5lbiBsZXJuc3QgYWNodCwgd2llc3QgZPZzIGFsbHNzIGluIGF5bmVyCisgICAgICAgICAgIERhdXR0aWNodCBzcGVpY2hlcnRzdC4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICBMZXR6biAxLjM6IEdXT1JUIEJBUkVDSFROIC0gTNZTQ0hOIAorCisgICAgICAgICAKKyAgICAgICAgICoqIERydWNrICB4ICAsIGR5cm1pdHN0IGT2cyBaYWljaGVuIHVudGVyIG4gTfZya2wgbPZzY2hzdC4gKioKKworICAxLiBCZXf2ZyBkaSBtaXQgbiBN9nJrbCBhdWYgZGUgbWl0ICAtLS0+IGFuZ232cmt0ZSBaZWlsIHVudC4KKworICAyLiBabyBuIEZhZWxlciBWZXJi9nNzZXJuICBmYXJzdCBtaXQgbiBN9nJrbCAgbmV0dHkgIGF1ZiBk9nMgWmFpY2hlbiwgIGT2cyB3bworICAgICBnbPZzY2h0IGdob2VydC4KKworICAzLiBEcnVjayBkZSBUYXN0biAgeCAgLCBk5N9zdCBk9nMg/GJlcmZs/HNzaWdlIFphaWNoZW4gbPZzY2hzdC4KKworICA0LiBJZXR6IHR1ZXN0IHNvIGxhbmcgd2VpdGVyIG1pdCAyIGhpbnN0IDQsIGhpbnN0IGTk3yBkeXIgU2F6IHN0aW1tdC4KKworLS0tPiBEZSBLa3V1ZSBzcHJhbmdnIPxiYmVyIG5uIE1hYW5hZC4KKworICA1LiBXZW5uIGlldHogZGUgWmVpbCB2ZXJi9nNzZXJ0IGlzdCwgZ2Vlc3QgZ2FuIGR5ciBMZXR6biAxLjQuIHdlaXRlci4KKworVW5kIGdhbnogd2ljaHRpZzogIER5cndlaWxzdCBk9m5uIFNjaGFpbmVyIGR1cmNoYXJlY2h0c3QsICB2ZXJzdWVjaCBuaXQg9mJiZW5uLAorICAgICAgICAgICAgICAgICAgIGFsbHNzIGF1c3dlbmRpZyB6IGxlcm5lbjsgIG7kbiwgbGVybiBhaW5mYWNoIG1pdCBuIEFud2VuZGRuIQorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICBMZXR6biAxLjQ6IEdXT1JUIEJBUkVDSFROIC0gRUlORtxFR04KKworCisgICAgICAgICAgICAgICAgICAqKiAgRHJ1Y2sgIGkgICwgZHlybWl0c3Qg9mJicyBlaW5m/GVnc3QuICoqCisKKyAgMS4gQmV39mcg9m5uIE32cmtsIHpvIGR5ciBlZXJzdG4gdW50aWduZW4gWmVpbCwgd28gbWl0IC0tLT4gYW5nZWV0LgorCisgIDIuIER5cm1pdHN0ICBkZSBlZXJzdGUgWmVpbCAgd2llIGRlIHp3YWl0dGUgbWFjaHN0LCAgYmV39mcg9m5uIE32cmtsICBhdWYgZPZzCisgICAgIGVlcnN0ZSBaYWljaGVuIE5BQUNIIGRlcmVyIFN09mxsLCBkYWEgd28gcyBHd29ydCBlaW5nZvxlZ3Qgd2VyZG4gc29sbHQuCisKKyAgMy4gRHJ1Y2sgIGkgIHVuZCBnaWIgZPZzIGVpbiwgd2FzIGFiZ2VldC4KKworICA0LiBXZW5uIGlld2VpbHMgYXluIEZhZWxlciB2ZXJ3ZWl0ZXJ0IGlzdCwgYWZ0IGRydWNrIDxFU0M+OyB1bmQgZHlybWl0IGtpbW1zdAorICAgICBnYW4gZHlyIEJlZmVsaHNhcnR3ZWlzIHpydWdnLgorICAgICBTbywgdW5kIGlldHogdHVlc3QgYWluZmFjaCB5c28gd2VpdGVyLCBoaW5zdCBk5N8gZHlyIFNheiBzdGltbXQuCisKKy0tLT4gRGFhZGVyIGd0IGRkIPZiYnMgYi4KKy0tLT4gRGFhZGVyIGdlZXQgZGllbmQg9mJicyBhYi4KKworICA1LiBCYWxzdCBtYWluc3QsICBk5N9zdCB5cyBHd29ydC1FaW5m/GVnbiBrYW5zdCwgYWZ0IGdlZXN0IGdhbiBkeXIgTGV0em4gMS41LgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICBMZXR6biAxLjU6IEdXT1JUIEJBUkVDSFROIC0gQU5G3EVHTgorCisKKyAgICAgICAgICAgICAgICAgICAgICAqKiBEcnVjayAgQSAgZ2FuIG4gR3dvcnQgQW5m/GVnbi4gKioKKworICAxLiBHZWUgbWl0IG4gTfZya2wgZ2FuIGR5ciBlZXJzdG4gdW50aWduZW4gWmVpbCwgd28gYXluIC0tLT4gZHlydm9yIGhhYXQuCisgICAgIERhYSBpc3QgcyBnbGVpY2gsIHdvIGduYXVuIGR5ciBN9nJrbCBpbiBkZXJlciBaZWlsIHN0ZWV0LiAgCisKKyAgMi4gRGVtbWx0ICBBICB1bmQgZ2liIGRlIGVudHNwcvZjaGV0biBFcmf2bnR6dW5nZW4gZWluLgorCisgIDMuIFdlbm5zdCAgbWl0IG4gQW5m/GVnbiBm9nJ0aWcgYmlzdCwgIGFmdCBkcnVja3N0IDxFU0M+LCAgZOTfc3Qgd2lkZXIgZXluIGRlCisgICAgIEJlZmVsaHNhcnR3ZWlzIHpydWdna2ltbXN0LgorCisgIDQuIFNvLCAgdW5kIGlldHogZ2Vlc3QgYWZ0IG5vbiBnYW4gZHlyIHp3YWl0dG4gIG1pdCAtLS0+IGFuZ232cmt0biBaZWlsOyAgdW5kCisgICAgIGRhYWRsIG1hY2hzdCB5cyBuZXR0eSB5c28uCisKKy0tLT4gSW4gZGVyZXIgWmVpbCBnZWUgIAorICAgICBJbiBkZXJlciBaZWlsIGdlZXQgYXluIFdlZW5nIGF5biBHd29ydCBhYi4KKy0tLT4gQWF1IGRhYWRlciBzdGVlCisgICAgIEFhdSBkYWFkZXIgc3RlZXQg9mJicyBVbnZvbGxzdPZuZGlncy4gCisKKyAgNS4gV2VubnN0IHMgQW5m/GVnbiB2b24gR3dvcnQgZHJhdWYgaGFhc3QsIG5hYWNoZXJkIGdlZSBnYW4gZHlyIExldHpuIDEuNi4gIAorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICBMZXR6biAxLjY6IEFZTiBEQVVUVElDSFQgQkFSRUNIVE4KKworCisgICAgICoqIE1pdCAgOndxICBzcGVpY2hlcnRzdCBheW4gRGF1dHRpY2h0IHVuZCB2ZXJsYWFzc3Qg9m5uIFdpbW0gZ2Fuei4gKioKKworICAhISBPQkFDSFQ6ICBFZSB3ZW5uc3QgbWl0IGT2bm4gYWxsbiBkYWEgdW50IHdlaXRlcnR1ZXN0LCBsaXMgemVlcnN0IGRlIGdhbnR6ZQorICAgICBMZXR6biBkdXJjaCEhCisKKyAgMS4gVmVybGFh3yBhbHNvIHMgQmxhdCwgd2llIHMgaW4gZHlyIExldHpuIDEuMi4gaGFpc3N0LCBtaXQgIDpxISAgIQorCisgIDIuIEdpYiBk9iBGYXVkdW5nIGV5biBuIEVpbmdpYiBlaW46ICB2aW0gU2NoYWluZXIgPEVJTj4gLiAndmltJyBydWVmZnQgcyBCbGF0CisgICAgIGF1ZiwgIHVuZCAnU2NoYWluZXInICBoYWlzc3QgZGUgRGF1dHRpY2h0LCAgd29zdCBiYXJlY2h0biAgd2lsbHN0LiAgRHlybWl0CisgICAgIGhhYXN0IGFsc28gYXluIERhdXR0aWNodCwgZPYgd29zdCBiYXJlY2h0biBrYW5zdC4KKworICAzLiBJZXR6ICBm/GVnc3Qg9mJicyBlaW4gb2xkZXIgbPZzY2hzdCD2YmJzLCAgd2llc3QgeXMgaW4gZGUgdm9yaWduZW4gTGV0em5lbgorICAgICBnbGVybnQgaGFhc3QuCisKKyAgNC4gU3BlaWNoZXJ0IGRlIGf2bmRlcnRlIERhdXR0aWNodCB1bmQgdmVybGFh3yD2bm4gV2ltbSBtaXQgIDp3cSAgPEVJTj4gIC4KKworICA1LiBTY2htZWnfIPZubiBXaW1tc2NoYWluZXIgbmV1IGFuIHVuZCBnZWUgZ2FuIGR5ciBmb2xnZXRuIFphbW1lbmZhc3N1bmcuCisKKyAgNi4gQWZ0IGTk33N0ICBkZSBvYmlnbmVuIFNjaHJpdHQgZ2z2c24gdW5kIGvkcHB0IGhhYXN0LCAga2Fuc3QgeXMgZHVyY2hm/GVybi4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICBaQU1NRU5GQVNTVU5HIFZPTiBEWVIgTEVUWk4gMQorCisKKyAgMS4gRHlyIE32cmtsIHdlcmQgbWl0IGRlIFRhc3RuZW4gaGprbCBvbGRlciBhYXUgbWl0IGRlIFBmZWlsdGFzdG5lbiBnc3RldWVydC4KKyAgICAgICAgICAgICAgaCAod2luc3QpICAgICBqIChhYikgICAgICAgIGsgKGF1ZikgICAgICAgbCAoemVzKQorCisgIDIuIFVtIPZubiBXaW1tIHVtYmIgbiBFaW5naWIgYXVzIHogZ2lubmVuLCBkZW1tbHQ6IHZpbSBEQVVUVElDSFQgPEVJTj4gLgorCisgIDMuIFdpbGxzdCD2bm4gV2ltbSB2ZXJsYWFzc24gdW5kIGFhdSBhbGxzcyB2ZXJ3ZXJmZmVuLCBhZnQgZ2lic3QgZWluOgorICAgICAgICAgICAgICAgIDxFU0M+ICA6cSEgIDxFSU4+IC4KKyAgICAgR2FuIG4gVmVybGFhc3NuIHVuZCBTcGVpY2hlcm4gYWJlciB6aXBmc3QgPEVTQz4gIDp3cSAgPEVJTj4uCisKKyAgNC4gV2lsbHN0IGT2cyBaYWljaGVuIGz2c2NobiwgZGFhIHdvIGR5ciBN9nJrbCBkcmF1ZiBpc3QsIGRlbW1sdHN0ICB4ICAuCisKKyAgNS4gV2lsbHN0IPZiYnMgdm9yIG4gTfZya2wgZWluZ/ZibiwgemlwZnN0ICBpICB1bmQgZHJhZnRlciAgPEVTQz4gIC4KKyAgICAgTWVjaHN0IHlzIGFiZXIgZXluIHMgWmVpbG5lbmQgYW5oaW5o9m5nZW4sIGJlbnV0enQgeXMgICBBICAuCisgICAgIFVuZCBhaW5mYWNoIG5hYWNoIG4gTfZya2wgZvxlZ3N0IHlzIG1pdCAgYSAgZWluICAuCisKK0FubfZya3VuZzogIERydWNrc3QgPEVTQz4sIGtpbW1zdCBleW4gZGUgQmVmZWxoc2FydHdlaXMgenJ1Z2cgb2xkZXIgYnJpY2hzdCBheW4KKyAgICAgICAgICAgIEZhdWR1bmcgYWIsIGT2IHdvIGR5ciBzY2hpZWZnYW5nZW4gaXN0LgorCisgICAgIElldHogdHVlIG1pdCBkeXIgTGV0em4gMiB3ZWl0ZXIuCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgICBMZXR6biAyLjEuOiBM1lNIRkFVRFVOR0VOCisKKworICAgICAgICAgICAgICAgICAqKiBEZW1tbHQgIGR3ICAsIGR5cm1pdHN0IGF5biBXb3J0IGz2c2Noc3QgKioKKworICAxLiBEcnVjayAgPEVTQz4sIGR5cm1pdCBzIGFhdSBnd2nfIGlzdCwgZOTfc3QgaW4gZHlyIEJlZmVsaHNhcnR3ZWlzIGJpc3QuCisKKyAgMi4gQmV39mcg9m5uIE32cmtsIHpvIGR5ciBtaXQgLS0tPiBhbmdt9nJrdG4gWmVpbCB1bnQuCisKKyAgMy4gVW5kIGRhYSBnZWVzdCBpZXR6IGF1ZiBuIEFuZmFuZyB2b24gYXlubiBXb3J0LCBk9nMgd28gZ2z2c2NodCBnaG9lcnQuCisKKyAgNC4gWmlwZiAgZHcgICwgZOTfc3QgZPZzIGdhbnR6ZSBXb3J0IGz2c2Noc3QuCisKKyAgTvZibmJlaTogIER5ciBCdWVjaHN0YWJuICBkICBlcnNjaGVpbnQgYXVmIGR5ciBs9nNzdG4gWmVpbCAgdm9uIG4gQmlsZHNjaGlybSwKKyAgICAgICAgICAgIHNvYmFsZHN0IG4gZWluZ2lic3QuIER5ciBXaW1tIHdhcnR0IGlldHogZHJhdWYsIGTk3yD2YmJzIGtpbW10LCBhbC0KKyAgICAgICAgICAgIHNvICBkYWFkZXIgYXluICB3ICAuICBTZWdoc3QgIGZyZWlsaWNoICD2YmJzIEFuZGVydHMgIHdpZSBheW4gIGQgICwKKyAgICAgICAgICAgIG5hYWNoZXJkIGhhYXN0ICD2YmJzIEZhbHNjaHMgIGRlbW1sdC4gIERydWNrIGFmdCAgPEVTQz4gIHVuZCBwcvZibHQKKyAgICAgICAgICAgIHMgbm9uIGF5bm1hYWwuCistLS0+IEF5biDWdHRseWNoIFf2cnRlciBsdXN0aWcgZ2hvZXJuZCBuaXQgRmlzcGVyIGV5biBk9m5uIFNheiBlaW5oaW4uCisKKyAgNS4gxGZlcnQgIGQgU2Nocml0dCAgMyB1bmQgNCwgIGhpbnN0IGTk3yAgZHlyIFNheiBw5HNzdCwgIHVuZCBnZWUgYWZ0IGdhbiBkeXIKKyAgICAgTGV0em4gMi4yLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgIExldHpuIDIuMi46IE5PTiBNRUVSRVIgTNZTSEZBVURVTkdFTgorCisKKyAgICAgICAgICAgICoqIEdpYiAgZCQgIGVpbiwgZOTfc3QgaGluc3QgZXluIHMgWmVpbG5lbmQgbPZzY2hzdC4gKioKKworICAxLiBEcnVjayA8RVNDPiAsIGR5cm1pdHN0IGFhdSBnd2nfIGluIGR5ciBCZWZlbGhzYXJ0d2VpcyBiaXN0LgorCisgIDIuIEJld/ZnIPZubiBN9nJrbCBoaW5zdCBleW4gZGUgbWl0IC0tLT4gYW5nbfZya3RlIFplaWwgdW50bi4KKworICAzLiBHZWUgbWl0IG4gTfZya2wgYXVmIHMgRW5kIHZvbiBkeXIgZmFlbGVyZnJlaWVuIFplaWwsIE5BQUNIIG4gZWVyc3RuICAuICAgLgorCisgIDQuIFppcGYgIGQkICAsIGTk33N0IGhpbnN0IGV5biBzIEVuZCB2b24gZHlyIFplaWwgbPZzY2hzdC4KKyAgCistLS0+INZiYmVyIGhhYXQgcyBFbmQgdm9uIGR5ciBaZWlsIGRvcGx0IGVpbmf2Ym4uIGRvcGx0IGVpbmf2Ym4uCisKKworICA1LiBHZWUgd2VpdGVyICBnYW4gZHlyIExldHpuIDIuMywgIGR5cm1pdHN0IHZlcnN0ZWVzdCwgIHdhcyBkYWFkZXIgYWJsYWF1ZmZ0LgorCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgIExldHpuIDIuMzogUEZFTUVSRVIgVU5EIFdPTEVOREVSCisKKworICBWaWwgRmF1ZHVuZ2VuLCAgIHdvIHMgR3dvcnQg9m5kZXJuZCwgc/Z0em5kIHNpIGF1cyBheW5uIFBmZW1lcmVyIHVuZCBheW5uIFdvLQorICBsZW5kIHphbW0uIEJhbCBpIGFsc28g9mJicyBs9nNjaG4gd2lsbCwgc2NocmVpYiBpIGFpbnN0aW5nICBkICB1bmQgYWZ0IHMgIldvLQorICBsZW5kIiwgZPZzIGhhaXNzdCBhbHNvLCAid29sZW5kIiwgIndvaGluIiBk5N8gaSB3aWxsIC0gb2xkZXIgd2FzIGkgaGFsdCBnbmF1bgorICBs9nNjaG4gd2lsbC4KKworCisKKworCisKKyAgRGFhZGVyIGFsc28sIHdhcyBpIHdpZSBs9nNjaG4ga2FuOgorICAgIHcgLSBoaW5zdCBleW4gbiBBbmZhbmcgdm9uIG4gbmFlaHN0biBXb3J0IEFBTkUgZPZubiBzZWluIGVlcnN0cyBaYWljaGVuLgorICAgIGUgLSBnYW4gbiBFbmQgdm9uIG4gaWV0enVuZG4gV29ydCBNSVQgZPZubiBzZWlubiBs9nNzdG4gWmFpY2hlbi4KKyAgICAkIC0gem8gbiBFbmQgdm9uIGR5ciBaZWlsIE1JVCBkZXJlciBpcm4gbPZzc3RuIFphaWNoZW4uCisKKyAgQWxzbyBs9nNjaHQgZGUgVGFzdG5mb2xnICBkZSAgdW1iYiBuIE32cmtsIGhpbnN0IGV5biBzIFdvcnRlbmQuCitBbm32cmt1bmc6ICAgR2liIGkgZ3JhZCAgZPZzIHp3YWl0dGUgWmFpY2hlbiAgeWxsYWluIGVpbiwgIHJ1Y2t0IGhhbHQgZHlyIE32cmtsCisgICAgICAgICAgICAgZW50c3By9mNoZXQgd2VpdGVyLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgTGV0em4gMi40OiBNSVQgQVlOTiBa1kxFUiBEIFdPTEVOREVSIMRGRVJOCisKKworICAgICAgKiogR2liIGkgYXluIFphbCB2b3IgYXlubiBXb2xlbmQgZWluLCB3ZXJkIGT2cyBTZWwgaGFsdCB3aWRlcmhvbHQuICoqCisKKyAgMS4gQmV39mcg9m5uIE32cmtsIGdhbiBuIEFuZmFuZyB2b24gZHlyIFplaWwgbWl0IC0tLT4gZHlydm9yIHVudC4KKworICAyLiBaaXBmICAydyAgLCBk5N9zdCBtaXQgbiBN9nJrbCB6d2FpIFf2cnRlciB3ZWl0ZXJnZWVzdC4KKworICAzLiBaaXBmICAzZSAgLCBk5N9zdCBtaXQgbiBN9nJrbCBhdWYgcyBFbmQgdm9uIG4gZHJpdHRuIFdvcnQga2ltbXN0LgorCisgIDQuIFppcGYgIDAgIChheW5uIE51bGxlciksIGTk33N0IGV5biBuIEFuZmFuZyB2b24gZHlyIFplaWwgaGlua2ltbXN0LgorCisgIDUuIFdpZGVyaG9sIGQgU2Nocml0dCAyIHVuZCAzIG1pdCB2ZXJzY2hhaWRuZSBa9mxlci4KKworICAtLS0+IET2cyBpc3QgaWV0eiBncmFkIGF5biBaZWlsIHpvIG4gZHJpbm4gVW1heW5hbmRlcnJ1ZWRlcm4uCisKKyAgNi4gR2VlIHdlaXRlciBnYW4gZHlyIExldHpuIDIuNS4KKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICBMZXR6biAyLjU6IERVUkNIIEFZTk4gWtZMRVIgR0xFSSBNRUVSRVIgTNZTQ0hOCisKKworICAgICAgICAgICAgICAqKiBBeW4gWmFsIHZvciBheW5uIFBmZW1lcmVyIORmZXJ0IGT2bm4gdW0gc2VsbiBXZXJkLiAqKgorCisgIEFsc28sIGkgbWVjaHQgbPZzY2huLCAgdW5kIHp3YWFyIPZiYnMgQmVzdGltbXRzLCAgdW5kIGT2cyBzbyB1bmQgc28gb2Z0OiAgRGFhCisgIGR5cnp1ZSBiZW51dHogaSBheW5uIFr2bGVyOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZCAgWvZsZXIgIFdvbGVuZCAoYWxzbyD2bm4gQmV39md1bmdzc2Nocml0KQorCisgIDEuIEJld/ZnIPZubiBN9nJrbCAgZ2FuIG4gZWVyc3RuIFdvcnQgaW4gR1JPT1NTQlVFQ0hTVEFCTiBpbiBkeXIgbWl0IC0tLT4gYW4tCisgICAgIGdt9nJrdG4gWmVpbC4KKworICAyLiBEZW1tbHQgIGQydyAgLCBkeXJtaXRzdCBkZSBnYW56IGdyb2/fZ3NjaHJpYm5lbiBX9nJ0ZXIgbPZzY2hzdC4KKworICAzLiDEZmVydCAgZCBTY2hyaXR0IDEgdW5kIDIgIG1pdCBk9m5uIGVudHNwcvZjaGV0biBa9mxlciwgIGR5cm1pdHN0IGRlIGRyYXVmLQorICAgICBmb2xnZXRuICBnYW56IGdyb99nc2NocmlibmVuIFf2cnRlciAgbWl0IGF5bmVyIGFpbnppZ25lbiBGYXVkdW5nICBs9nNjaHN0OgorCisKKy0tLT4gIET2IEFCQyBERSBaZWlsIEZHSEkgSksgTE1OIE9QIG1pdCBX9nJ0ZXIgaXN0IFEgUlMgVFVWIGlldHogYmVyaWNodGlndC4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gMi42OiBBUkVDSFROIEFVRiBaRUlMTgorCisKKyAgICAgICAgICAgICAgICoqIFppcGYgIGRkICAsIHVtIGF5biBnYW50emUgWmVpbCB6IGz2c2Nobi4gKioKKworICBXZWlsIHMgZ3JvIG9mdCB2/HJraW1tdCwgIGTk3yBteW4gZ2FudHplIFplaWxuIGz2c2NodCwgIGthYW1lbmQgc2Nob29uIGQgRW50LQorICB3aWNrbGVyIHZvbiBuIFVyd2ltbSBkYWEgZHJhdWYsICBk5N8gbXluIGFpbmZhY2ggIGRkICBnYW4gZPZubiBad/ZrIHNjaHJlaWJ0LgorCisKKyAgMS4gQmV39mcg9m5uIE32cmtsIGdhbiBkeXIgendhaXR0biBaZWlsIGluIG4gdW50aWduZW4gIkdlZGljaHQiLgorICAyLiBaaXBmICBkZCAgLCAgdW0gZPYgWmVpbCB6IGz2c2Nobi4KKyAgMy4gSWV0eiBiZXf2Z3N0IGRpIGdhbiBkeXIgdmllcnRuIFplaWwuCisgIDQuIFppcGYgIDJkZCAgLCB1bSB6d28gWmVpbG4gem8gbiBM9nNjaG4uCisKKy0tLT4gIDEpICBSb29zbiBzZWluZCByb290OworLS0tPiAgMikgIERydW50ZXIgaXN0IHMgS29vdC4KKy0tLT4gIDMpICBWZWlnZXJsbiBzZWluZCBibGF1LgorLS0tPiAgNCkgIFVtZ3JhYm4gdHVldCBzIGQgU2F1LgorLS0tPiAgNSkgIEQgVXIgc2FpdCBkZSBaZWl0LAorLS0tPiAgNikgIFNhaXQsIGTk3yBzIG1pIGZyZXV0LAorLS0tPiAgNykgIERpcm5kbCwgZGVpbiBHc2NoYXUuCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgIExldHpuIDIuNzogUlVHR0fWTkdJRyBNQUNIRU4gKFJVR0dMTikgCisKKworICAgICAgICAgICAgICoqIFppcGYgIHUgICwgZHlybWl0c3QgZGUgbPZzc3RuIEZhdWR1bmdlbiBydWdnbHRzdCAqKgorICAgICAgICAgICAgICAqKiBvbGRlciAgVSAgLCB1bSBheW4gZ2FudHplIFplaWwgd2lkZXJoZXJ6c3T2bGxuLiAqKgorCisgIDEuIEJld/ZnIPZubiBN9nJrbCAgZ2FuIGR5ciBtaXQgLS0tPiBhbmdt9nJrdG4gWmVpbCB1bnQgIHVuZCBnZWUgZHlybWl0IGF1ZiBuCisgICAgIGVlcnN0biBGYWVsZXIuCisgIDIuIFppcGYgIHggICwgZOTfc3QgZPZzIGVlcnN0ZSB6IHZpbGUgWmFpY2hlbiBs9nNjaHN0LgorICAzLiBJZXR6IGRlbW1sdCAgdSAgLCBkeXJtaXRzdCBkZSBs9nNzdGUgRmF1ZHVuZyBydWdnbHRzdC4KKyAgNC4gSWV0eiBiZWj2YiAgYWxsc2FuZCBGYWVsZXIgIGF1ZiBkeXIgWmVpbCAgbWl0IGR5ciBIaWxmICB2b24gbiBCZWZlbGggIHggIC4KKyAgNS4gQWZ0IGdpYnN0IGF5biAgVSAgKGdyb2/fKSBlaW4sICBk5N9zdCBkZSBaZWlsIHdpZGVyIHlzbyBoaW5icmluZ3N0LCAgd2llIHMKKyAgICAgZ3f2c24gaXN0LgorICA2LiBTbywgIHVuZCBpZXR6ICBkZW1tbHRzdCAgc28gb2Z0ICB1ICAsIGhpbnN0IGTk33N0IHMgIFUgIHVuZCBkZSBhbmRlcm4gRmF1LQorICAgICBkdW5nZW4gcnVnZ2f2bmdpZyBnbWFjaHQgaGFhc3QuCisgIDcuIFVuZCBpZXR6ZXQgd2lkZXJ1bSAgc2NocmVpYnN0ICBzbyBvZnQgIDxTVFJHPnIgICwgaGluc3QgZOTfc3QgIGFsbHNhbmQgQmUtCisgICAgIGZlbGggd2lkZXJoZXJnc3T2bGx0LCB6IGhhaXNzbiBhbGxzc2UgcnVnZy1ncnVnZ2x0IGhhYXN0ICAoYWxzbyBkIFJ1Z2dn9m4tCisgICAgIGdpZ21hY2h1bmdlbiBydWdnZ/ZuZ2lnIGdtYWNodCkuCistLS0+IEJlZXJpY2h0aWcgZCBGYWVsbGVyIHZvb24gZGVocmVyIFplaWlsICB1bmQgc3R09mxsIHMgbWl0dCBuIFJ1Z2dydWdnbG4gd2ktCisgICAgIGRlciBoZXIuCisgIDguIERpZSBGYXVkdW5nZW4gc2VpbmQgZ3JvIHdpY2h0aWc7IHP2IGhlbGZmZW5kIGFpbm4gbuRycmlzY2ggd2VpdGVyLgorICAgICBJZXR6IGdlZSB3ZWl0ZXIgZ2FuIGR5ciBaYW1tZW5mYXNzdW5nIHZvbiBkeXIgTGV0em4gMi4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICBaQU1NRU5GQVNTVU5HIFZPTiBEWVIgTEVUWk4gMgorCisKKyAgMS4gVW0gdm9uIG4gTfZya2wgYXVzIGhpbnN0IGV5biBzIG5hZWhzdGUgV29ydCB6byBuIEz2c2NobiwgemlwZjogIGR3CisgIDIuIFVtIHVtYmIgbiBN9nJrbCBoaW5zdCBleW4gcyBFbmQgdm9uIGR5ciBaZWlsIHpvIG4gTPZzY2huLCBkZW1tbHQgIGQkCisgIDMuIER5cm1pdHN0IGF5biBnYW50emUgWmVpbCBs9nNjaHN0LCBnaWIgZWluOiAgZGQKKyAgNC4gTWVjaHN0IGF5biBCZXf2Z3VuZywgYXluICJXb2xlbmQiLCD2ZnRlcnMsICBzdPZsbCBkZSBlbnRzcHL2Y2hldGUgWmFsIGR5ci0KKyAgICAgdm9yOiAgM2R3ICBvbGRlciBhYXU6ICBkM3cKKyAgNS4gRHlyIFBmdWVnIGb8ciBheW4g1m5kZXJ1bmdzZmF1ZHVuZyBsYXV0dCB5c286CisgICAgICAgICAgICAgICBQZmVtZXJlciAgIFtaYWxdICAgQmV39md1bmdzc2Nocml0IChXb2xlbmQpCisgICAgIFVuZCBk9nMgaGFpc3N0OgorICAgICAgRHlyIFBGRU1FUkVSIGdpYnQgYW4sIFdBUyB0YWFuIGdob2VydCwg9mJiZW5uICAgZCAgID0gIGz2c2NobiAou2RlbGV0ZaspLgorICAgICAgW1pBTF0gLSBBeW4gWmFsIEtBTiBteW4gYW5n9mJuLCB3ZW5uIG15biBoYWx0IGF5biBXb2xlbmQg9mZ0ZXIgaGFibiB3aWxsLgorICAgICAgUyBXT0xFTkQsICBhbHNvIGR5ciBTY2hyaXQgV09ISU4sIGJlc2FndCwgIGF1ZiB3YXMgaSBhdXNoaW4gd2lsbCwgIPZiYmVubgorICAgICAgYXVmIGF5biBXb3J0ICggIHcgICksIHMgRW5kIHZvbiBkeXIgWmVpbCAoICAkICApIHVuZCBzbyB3ZWl0ZXIuCisKKyAgNi4gROTfc3QgZXluIG4gQW5mYW5nIHZvbiBkeXIgWmVpbCBoaW5raW1tc3QsIHNjaHJlaWIgYXlubiBOdWxsZXI6ICAwCisKKyAgNy4gVW0g9mJicyBWb3JpZ3Mgd2lkZXIgeiBydWdnbG4sIGdpYiBlaW46ICAgICAgICAgICAgICAgIHUgKGtsYWluIGFsc28pCisgICAgIFVtIGFsbHNhbmQg1m5kZXJ1bmdlbiBpbiBheW5lciBaZWlsIHogcnVnZ2xuLCBoYWFzdDogICBVIChhbHNvIGdyb2/fKQorICAgICBVbSAicnVnZy16LXJ1Z2dsbiIsIGFsc28gYWxsc3Mgd2lkZXIgaGVyenN09mxsbiwgemlwZjogPFNUUkc+ciAgIAorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgICBMZXR6biAzLjE6IEFORtxFR04gKLtwdXSrKSAKKworCisgICAgICoqIFppcGYgIHAgICwgZHlybWl0c3Qg9mJicyBnbmV0dHkgR2z2c2NodHMgbmFhY2ggbiBN9nJrbCBhbmb8ZWdzdC4gKioKKworICAxLiBCZXf2ZyD2bm4gTfZya2wgZ2FuIGR5ciBlZXJzdG4gdW50aWduZW4gWmVpbCBtaXQgICAtLS0+ICAgZHlydm9yLgorCisgIDIuIFppcGYgIGRkICAsIHVtIHNlbGUgWmVpbCB6IGz2c2NobiAgdW5kIGR5cm1pdCAgaW4gYXlubiBXaW1tLSJSb3N0ZXIiICB6byBuCisgICAgIHNwZWljaGVybi4KKworICAzLiBCZXf2ZyD2bm4gTfZya2wgZ2FuIGR5ciBaZWlsIGMpLCAg3EJFUiBkZXJlciwgZGFhIHdvIGRlIGds9nNjaHRlIFplaWwgZWluLQorICAgICBoaW5rZW1tZW4gc29sbHQuCisKKyAgNC4gU28sICB1bmQgaWV0eiBnaWJzdCBhaW5mYWNoICBwICBlaW4sICB1bmQgc2Nob29uIGhhYXN0IGT2IFplaWwgdW50ZXIgZGVyZXIKKyAgICAgbWl0IG4gTfZya2wgZHJpbm4uCisgIDUuIMRmZXJ0ICBkIFNjaHJpdHQgMiBoaW5zdCA0LCAgaGluc3QgZOTfc3QgIGFsbHNhbmQgWmVpbG4gIHlzbyBuYWFjaHluYXluYW5kCisgICAgIGhhYXN0LCB3aWUgcyBoaW5naG9lcm5kLgorCistLS0+IGQpIEthbnN0IGR1IGT2cyBhYXU/CistLS0+IGIpIFZlaWdlcmxuIHNlaW5kIGJsYXUuCistLS0+IGMpIEJlZGFjaHRuIGthbiBteW4gbGVybmVuLgorLS0tPiBhKSBSb29zbiBzZWluZCByb290Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgIExldHpuIDMuMjogRVJT1lRaTiAou3JlcGxhY2WrKQorCisKKyAgICAgICoqIFppcGYgIHJ4ICAsIHVtIGT2cyBaYWljaGVuIHVudGVyIG4gTfZya2wgZHVyY2ggIHggIHogZXJz9nR6bi4gKioKKworICAxLiBCZXf2ZyD2bm4gTfZya2wgem8gZHlyIGVlcnN0biB1bnRpZ25lbiBaZWlsIG1pdCAgIC0tLT4gICBkeXJ2b3IuCisKKyAgMi4gQmV39mcg9m5uIE32cmtsLCBoaW5zdCBk5N8geXIgYXVmIG4gZWVyc3RuIEZhZWxlciBzdGVldC4KKworICAzLiBaaXBmICByICB1bmQgZHJhZnRlciBk9nMgWmFpY2hlbiwgd28gZHlyZvxyIGRhYSBoaW5naG9lcnQuCisKKyAgNC4gV2lkZXJob2wgZCBTY2hyaXR0IDIgdW5kIDMsICBoaW5zdCBk5N9zdCBkZSBlZXJzdGUgWmVpbCAgZ21hZd8gZHlyIHp3YWl0dG4KKyAgICAgYmVyaWNodGlndCBoYWFzdDoKKy0tLT4gIFdpZSBk9iBaZWl0IGVpbmdvYm4gd3VyZCwgd3VyZG5kIGFpbmlrZSBmYWxzY2hlIFphc3RuZW4gemlwZnQhCistLS0+ICBXaWUgZPYgWmVpbCBlaW5n9mJuIHd1cmQsIHd1cmRuZCBhaW5pZ2UgZmFsc2NoZSBUYXN0bmVuIHppcGZ0IQorCisgIDUuIElldHogdHVlIG1pdCBkeXIgTGV0em4gMy4zIHdlaXRlci4KKworQW5t9nJrdW5nOiBWZXJnad8gbml0IGRyYXVmLCBk5N9zdCBtaXQgbiBBbndlbmRkbiBsZXJuZW4gc29sbHRzdCB1bmQgbml0IPZiYmVubgorICAgICAgICAgICBtaXQgbiBBdXN3ZW5kaWdsZXJuZW4hCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgICBMZXR6biAzLjM6INZOREVSTiAou2NoYW5nZaspCisKKworICAgICAgICAgICAgICAqKiBVbSBoaW5zdCBleW4gcyBXb3J0ZW5kIHog9m5kZXJuLCB6aXBmICBjZSAgLiAqKgorCisgIDEuIEdlZSBtaXQgbiBN9nJrbCBhdWYgZGUgZWVyc3RlIG1pdCAtLS0+IGFuZ232cmt0ZSBaZWlsLgorCisgIDIuIElldHogZmFyc3QgbmV0dHkgYXVmIHMgICJzIiAgdm9uIFdzdHdyIGhpbi4KKworICAzLiBaaXBmICBjZSAgZWluIHVuZCBhZnQgZCBXb3J0YmVyaWNodGlndW5nLCBkYWFkZXIgYWxzbyAg9nJ0ZXIgIC4KKworICA0LiBEcnVjayA8RVNDPiB1bmQgYmV39mcg9m5uIE32cmtsIGdhbiBuIG5hZWhzdG4gWmFpY2hlbiwgIHdvIGf2bmRlcnQgZ2hvZXJ0LgorCisgIDUuIMRmZXJ0ICBkIFNjaHJpdHQgMyB1bmQgNCwgIGhpbnN0IGTk3yAgZHlyIGVlcnN0ZSBTYXogIHdpZSBkeXIgendhaXR0ZSBpc3QuCisKKy0tLT4gQWluaWdlIFdzdHdyIHZvbiBkZXJlciBabHd3IGdoaG5uZCBtaXQgbiDWbmRlcm4tUGZlbWVyZXIgZ2FhdXUuCistLS0+IEFpbmlnZSBX9nJ0ZXIgdm9uIGRlcmVyIFplaWwgZ2hvZXJuZCBtaXQgbiDWbmRlcm4tUGZlbWVyZXIgZ/ZuZGVydC4KKworY2UgIGz2c2NodCBhbHNvIHMgV29ydCB1bmQgc2NobGFhdWZmdCBkaSBleW4gZCBFaW5nYWFiLUFydHdlaXMuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICBMZXR6biAzLjQuOiBOT04gTUVFUkVSINZOREVSVU5HRU4gUEZFTEZTICBjCisKKworICAgKiogRCBM9nNoZmF1ZHVuZyAgYyAgYXJlY2h0dCBtaXQgZGUgbvZtbGljaG5lbiBXb2xlbmRlciB3aWUgZPYgbWl0ICBkICAqKgorCisgIDEuIER5ciDWbmRlci1QZmVtZXJlciBhcmVjaHR0IGFubGVpY2ggd2llIGQgTPZzaGZhdWR1bmcgbWl0ICAgZCAgLCAgdW5kIHp3YWFyCisgICAgIHlzbzoKKyAgICAgICAgIGMgICAgW1phbF0gICBCZXf2Z3VuZ3NzY2hyaXR0IChXb2xlbmQpCisKKyAgMi4gRCBXb2xlbmRlciAgc2VpbmQgIGRlIGdsZWljaG4sICD2YmJlbm4gIHcgIGb8ciBXb3J0IHVuZCAgJCBm/HIgcyBaZWlsbmVuZC4KKworCisgIDMuIEJld/ZnIGRpIHpvIGR5ciBlZXJzdG4gdW50aWduZW4gWmVpbCBtaXQgLS0tPiAuCisKKyAgNC4gSWV0eiBnZWVzdCBhdWYgZPZubiBlZXJzdG4gRmFlbGVyLgorCisgIDUuIFppcGYgIGMkICAsIGdpYiD2bm4gUmVzdCB2b24gZHlyIFplaWwgd2llIGluIGR5ciB6d2FpdHRuIGVpbiB1bmQgZHJ1Y2sgYWZ0CisgICAgIDxFU0M+LgorLS0tPiBTIEVuZCB2b24gZGVyZXIgWmVpbCBzb2xsdCBhbiBkZSB6d2FpdHRlIGRhYWRlciBhbmdsaWNoZW4gd2VyZG4uCistLS0+IFMgRW5kIHZvbiBkZXJlciBaZWlsIHNvbGx0IG1pdCBuIEJlZmVsaCAgYyQgIGJlcmljaHRpZ3Qgd2VyZG4uCisKK0RlbmsgYWxsd2VpbCBkcmFuLCAgZOTfc3QgaWVkZXJ6ZWl0ICBtaXQgZHlyIFJ1Z2d0YXN0biBGYWVsZXIgYXVzYvZzc2VybiBrYW5zdC4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICBaQU1NRU5GQVNTVU5HIFZPTiBEWVIgTEVUWk4gMworCisKKyAgMS4gVW0gYXluICB2b3JoZXIgZ2z2c2NodHMgR3dvcnQgIGFuemb8ZWduLCAgemlwZiAgcCAgLiAgRGFhIGR5cm1pdCAgd2VyZCBk9nMKKyAgICAgZ2FudHplIEd3b3J0ICBOQUFDSCBuIE32cmtsICBhbmdm/GVndC4gIFdlbm4gcyBheW4gZ2FudHplIFplaWwgIGd39nNuIGlzdCwKKyAgICAgd2VyZCBk9iBzZWwgYWxzIGRlIFplaWwgdW50ZXJoYWxiIG4gTfZya2wgZWluZ2b8ZWd0LgorCisgIDIuIFVtIGT2cyBaYWljaGVuICB1bnRlciBuIE32cmtsLCAgYWxzbyB3byBkeXIgTfZya2wgaXN0LCAgeiBlcnP2dHpuLCB6aXBmICByCisgICAgIHVuZCBhZnQgZPZzIFphaWNoZW4sIHdvc3QgZGFhZGwgaGFibiB3aWxsc3QuCisKKyAgMy4gRHlyINZuZGVydW5nc3BmZW1lcmVyICggYyA9ILtjaGFuZ2WrKSBsYWFzc3QgYWlubiB1bWJiIG4gTfZya2wgaGluc3QgZXluIHMKKyAgICAgRW5kIHZvbiBuIFdvbGVuZCD2bmRlcm4uIFppcGYgIGNlICAsIGR5cm1pdHN0IHVtYmIgbiBN9nJrbCBoaW5zdCBleW4gcyBFbmQKKyAgICAgdm9uIG4gV29ydCD2bmRlcnRzdCwgdW5kICBjJCAgaGluc3QgZXluIHMgRW5kIHZvbiBkeXIgWmVpbC4KKworICA0LiBG/HIgZCDWbmRlcnVuZyBsYXV0dCBkeXIgUGZ1ZWc6CisKKyAgICAgYyAgIFtaYWxdICAgV29sZW5kCisKK0lldHogdHVlIG1pdCBkeXIgbmFlaHN0biBMZXR6biB3ZWl0ZXIuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgIExldHpuIDQuMTogTdZSS0xTVNZMTFVORyBVTkQgREFVVFRJQ0hUREFSU1RBTkQKKworKiogRGVtbWx0IDxTVFJHPmcsIGTk33N0IPZubiBCZWZhbmQgdW5kIERhcnN0YW5kIHZvbiBkeXIgRGF1dHRpY2h0IGFuemFpZ3N0LiAqKgorICAqKiBaaXBmICBHICAsIGR5cm1pdHN0IGF1ZiBheW4gYmVzdGltbXRlIFplaWwgaW4gZHlyIERhdXR0aWNodCBoaW5raW1tc3QuICoqCisKK0FubfZya3VuZzogTGlzIGT2IGdhbnR6ZSBMZXR6biBkYWFkZXIgZHVyY2gsIGVlIHdlbm5zdCBpZXdpZ24g9mJicyB1bnRlcm5pbW1zdCEKKworICAxLiBEcnVjayAgPFNUUkc+ZyAgLiAgQXVmIGT2cyBoaW4gZXJzY2hlaW50IGF1ZiBkZXJlciBTZWl0dCBnYW56IHVudCBheW4gRGFyLQorICAgICBzdGFuZHNtZWxkdW5nICBtaXQgbiBEYXV0dGljaHRuYW0gIHVuZCBuIEJlZmFuZCAgaW5uZXJoYWxiICBkeXIgRGF1dHRpY2h0LgorICAgICBN9nJrIGR5ciBkZSBaZWlsbm51bW1lciBm/HIgbiBTY2hyaXQgMy4KKworQW5t9nJrdW5nOiAgTfxnbGljaGVyd2VpcyAgc2VnaHN0IGFhdSD2bm4gTfZya2xiZWZhbmQgIGluIG4gemVzbWVuIHVudGVybiBCaWxkLQorICAgICAgICAgICAgc2NoaXJt9mdnLiBBZnQgaXN0IHMgIkxpbmRsIiAou3J1bGVyqykgZWluZ3N09mxsdDsgc2NoYXUgZHlyenVlIG1pdAorICAgICAgICAgICAgbiBCZWZlbGggICA6aGVscCAncnVsZXInICAgbmFhY2guCisgIDIuIERydWNrICBHICAsIHVtIGFuIHMgRW5kIHZvbiBkeXIgRGF1dHRpY2h0IHoga2VtbWVuLgorICAgICBnZyAgZ2lic3QgZWluLCBk5N9zdCBnYW4gbiBBbmZhbmcgdm9uIGR5ciBEYXV0dGljaHQgYXVmaGlua2ltbXN0LgorCisgIDMuIEdpYiBkIE51bW1lciB2b24gZGVyZXIgWmVpbCBlaW4sIGRhYSB3b3N0IHZvcmhlciB3YXJzdCwgIHVuZCBhZnQgbm9uICBHICAuCisgICAgIET2cyBicmluZ3QgZGkgenJ1Z2cgZ2FuIHNlbGVyIFplaWwsICBkYWEgd29zdCBzdHVlbmRkc3QsICB3aWVzdCBk9nMgZWVyc3RlCisgICAgIE1hYWwgPFNUUkc+ZyBnYWRydWNrc3QuCisKKyAgNC4gV2VubnN0IGRpIHNpY2hlciBnbnVlZyBm/GVsc3QsIGFmdCBm/GVyIGQgU2Nocml0dCAxIGhpbnN0IDMgYXVzLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICBMZXR6biA0LjI6IERZUiBCRUZFTEggWk8gTiBTVUVDSEVOIAorICAgICAgICAgICAgICAgCisKKyAgKiogWmlwZiAgLyAgdW5kIGR5cm5hYWNoIGF5bm4gQXVzZHJ1aywgdW0gc2VsYmlnbmVuIHpvIG4gU3VlY2hlbi4gKioKKworICAxLiBEdSBnaWJzdCBhbHNvIGluIGR5ciBCZWZlbGhzYXJ0d2VpcyBzIFphaWNoZW4gIC8gIGVpbi4gRPZzIHNlbCB3aWUgYWF1IGR5cgorICAgICBN9nJrbCBlcnNjaGVpbmVuZCBkcmF1ZiB1bnQgYXVmIG4gU2NoaXJtLCBuZXR0eSB3aWUgYmVpIGR5ciBGYXVkdW5nICA6ICAuCisKKyAgMi4gSWV0eiB6aXBmICdGYWVlbGVyJyA8RUlOPi4gTmV0dHkgdW0gZPZzICdGYWVlbGVyJyB3aWxsc3QgaWV0eiBzdWVjaGVuLgorCisgIDMuIFdpbGxzdCB1bSBnbmF1biBk9m5uIEF1c2RydWsgd2VpdGVyc3VlY2hlbiwgemlwZiBhaW5mYWNoICBuICAod2llILtuZXh0qykuCisgICAgIFdpbGxzdCBoaW56cnVnZyBzdWVjaGVuLCBhZnQgZ2lic3QgIE4gIGVpbi4KKworICA0LiBVbSB2b24gSGF1cyBhdXMgenJ1Z2dhdXMgeiBzdWVjaGVuLCBuaW1tICA/ICBzdGF0dCAgLyAgaGVyLgorCisgIDUuIER5cm1pdHN0IHdpZGVyIGRhYSBoaW5raW1tc3QsIHdvc3QgaGVya2VtbWVuIGJpc3QsIGRydWNrIDxTVFJHPm8sICB1bmQgZPZzCisgICAgIPZmdGVyLCAgd2VubnN0IHdlaXRlciB6cnVnZyB3aWxsc3QuICBNaXQgPFNUUkc+aSB3aWRlcnVtICBraW1tc3Qgdm9yd+RydHMuCisKKy0tLT4gIEF5bm4gRmFlbGVyIHNjaHJlaWJ0IG15biBuaXQgIkZhZWVsZXIiOyBGYWVlbGVyIGlzdCBheW4gRmFlbGVyCisKK0FubfZya3VuZzogIFdlbm4gZCBTdWVjaCBzIERhdXR0aWNodGVuZCBkeXJyYWljaHQgaGFhdCwgZ2VldCBzIGV5biBuIEFuZmFuZyB3aS0KKyAgICAgICAgICAgIGRlciB3ZWl0ZXIgZHlybWl0LCAgbWVuIFNhY2ggIGR5ciBTY2hhbHR0ZXIgJ3dyYXBzY2FuJyB35HIgYXVmIGF1cy4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gNC4zOiBERSBH1kdOS0xBTU1FUk4gRklOREROCisKKworICAgKiogWmlwZiAgJSAgLCB1bSBkZSBlbnRzcHL2Y2hldGUgS2xhbW1lciAgKSAgLCAgXSAgb2xkZXIgIH0gIHogZmluZGRuLiAqKgorCisgIDEuIFP2dHog9m5uIE32cmtsICBhdWYgaWV3aWduIGFpbmUgIHZvbiBkZW5lIGRyZWkgS2xhbW1lcm4gICggICwgIFsgIG9sZGVyICB7CisgICAgIGluIGR5ciB1bnRpZ25lbiBaZWlsLCB3byBtaXQgLS0tPiBhbmdt9nJrdCBpc3QuCisKKyAgMi4gSWV0emV0IHppcGYgcyBaYWljaGVuICAlICAuCisKKyAgMy4gRHlyIE32cmtsIGdlZXQgaWV0eiBhdWYgZGUgcORzc2V0ZSBzY2hsaWVzc2V0ZSBLbGFtbWVyLgorCisgIDQuIElldHogZGVtbWx0ICAlICAsIHVuZCBkeXJtaXQga2ltbXN0IGdhbiBkeXIg9mZmbmVyZXRuIEtsYW1tZXIgenJ1Z2cuCisKKyAgNS4gU/Z0eiD2bm4gTfZya2wgYXVmIGF5biBhbmRlcm5lIEtsYW1tZXIgdm9uICAgKHtbXX0pICAgdW5kIHBy9mJsdCAgICUgIGF1cy4KKworLS0tPiBE9nMgKCBpc3QgIGJsb2/fIGF5biBQb2NoemVpbCAoIG1pdCBbIHZlcnNjaGFpZG5lIF0geyBLbGFtbWVybiB9IGRyaW5uLiApKQorCitBbm32cmt1bmc6ICBVbSBk9iBN/GdsaWNoa2VpdCBnYWFzdCBic3VuZGVycyBmcm9vIHNlaW4sICB3ZW5uc3QgYXlubWFhbCBpbiBheW5uCisgICAgICAgICAgICBTcGFpY2hnd29ydCB2ZXJ6d2VpZmx0IGF5biBmYWVsZXRlIEf2Z25rbGFtbWVyIHN1ZWNoc3QhCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICBMZXR6biA0LjQ6IEQgRVJT1lRaVU5HU0ZBVURVTkcgKLtzdWJzdGl0dXRlqykKKworCisgICAgICAgICoqIFppcGYgIDpzL2FsdC9uZXUvZyAgLCB1bSAnYWx0JyBkdXJjaCAnbmV1JyB6byBuIEVyc/Z0em4uICoqCisKKyAgMS4gR2VlIG1pdCBuIE32cmtsIHpvIGR5ciB1bnQgc3RlZWhldG4gbWl0IC0tLT4gYW5nbfZya3RuIFplaWwuCisKKyAgMi4gWmlwZiAgOnMvZGVlL2RlIDxFSU4+ICAuIERlciBCZWZlbGggZXJz9nR6dCBhbHNuYW4gZ3JhZCBk9nMgK2VlcnN0ZSAiZGVlIiwKKyAgICAgd28gdvxya2ltbXQuCisKKyAgMy4gSWV0eiBwcvZibHQgcyBtaXQgIDpzL2RlZS9kZS9nICAuIET2cyB6dWVz9nR6bGljaGUgIGcgICgiUGZsb2siICBuZW5udCBteW4KKyAgICAg9mJicyBT9mxjaGVycykgYmV3aXJrdCwgZOTfIGFsbHNzLCB3YXMgZHlybWl0IGtlbm56YWljaG5ldCBpc3QsICBpbm5lcmhhbGIKKyAgICAgdm9uIGR5ciBhaW5uIFplaWwgZXJz9nR6dCB3ZXJkLgorCistLS0+IERlZSBzY2hvZW5zdGUgWmVpdCwgZOTfIG15biBkZWUgQmz8ZW1sbiBhbnNjaGF1dCwgaXN0IGRlZSBzY2hvZW5lIExhbi0KKyAgICAgZ2Vzc3plaXQuCisgIDQuIFVtIGlldHogIGFsbHNhbmQgU3VlY2hiZWdyaWZmICBpbm5lcmhhbGIgdm9uIHp3byBaZWlsbiAgem8gbiDWbmRlcm4sICB6aXBmCisgICAgIDojLCNzL2FsdC9uZXUvZyAgLCAgd29iZWkgIyBpZXdlaWxzIGb8ciBkZSBlZXJzdGUgdW5kIGz2c3N0ZSBaZWlsIHZvbiBk9m5uCisgICAgIFBmcmFpY2ggc3RlZXQuCisgICAgIDolcy9hbHQvbmV1L2cgIHppcGZzdCwgZOTfc3QgZCBW/HJrZW1tZW4gaW4gZHlyIGdhbnR6biBEYXV0dGljaHQg9m5kZXJ0c3QuCisgICAgICAgIE1pdCAgOiVzL2FsdC9uZXUvZ2MgIGZpbmRkc3QgYWxsc2FuZCBW/HJrZW1tZW4gaW4gZHlyIGdzYW10biBEYXV0dGljaHQ7CisgICAgIGRhYSB3ZXJzdCBhYmVyIHplZXJzdCBub24gZ2ZyYWFndCwgb2JzdCB5cyBlcnP2dHpuIHdpbGxzdCBvbGRlciBuaXR5Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgIFpBTU1FTkZBU1NVTkcgVk9OIERZUiBMRVRaTiA0CisgICAgICAgICAgICAgICAgICAgICAgICAKKyAgMS4gPFNUUkc+ZyAgIHphaWd0IGT2bm4gaWV0enVuZG4gRGF1dHRpY2h0YmVmYW5kICB1bmQg9m5uIERhcnN0YW5kIGR5cnZvbiBhbi4KKyAgICAgICAgICAgRyAgYnJpbmd0IGRpIGFuIHMgRW5kIHZvbiBkeXIgRGF1dHRpY2h0LgorICAgICA8WmFsPiBHICBicmluZ3QgZGkgZ2FuIGR5ciBlbnRzcHL2Y2hldG4gWmVpbG5udW1tZXIuCisgICAgICAgICAgZ2cgIGJyaW5ndCBkaSB6byBkeXIgZWVyc3RuIFplaWwuCisgICAgICAgICAgCisgIDIuIEQgRWluZ2FhYiB2b24gIC8gIG1pdCBheW5uIEF1c2RydWsgc3VlY2h0IFbcUlNITElORyB1bSBk9m5uIEF1c2RydWsuCisgICAgIEdpYnN0ICA/ICB1bmQgYXlubiBTdWVjaGJlZ3JpZiBlaW4sIHN1ZWNodCBzIHVtIGT2bm4gxFJTSExJTkcuCisgICAgIFppcGYgbmFhY2ggYXluZXIgU3VlY2ggIG4gIDsgIG5hYWNoZXJkIHdlcmQgaW4gZGUgZ2xlaWNoZSBSaWNodHVuZyB3ZWl0ZXItCisgICAgIGdzdWVjaHQuIE1pdCAgTiBnZWV0IHMgdW1rZWVydGVyIHdlaXRlci4KKyAgICAgPFNUUkc+byBicmluZ3QgZGkgem8g9mx0ZXJuZSBCZWbkbmRkIHpydWdnLCA8U1RSRz5pIHpvIG5ldWVybmUuCisKKyAgMy4gRCBFaW5nYWFiIHZvbiAgJSAsIHdlbm4gZHlyIE32cmtsIGF1ZiBhaW5lciB2b24gZGVuZSBLbGFtbWVybiBzdGVldDogICAoe1sKKyAgICAgKV19ICAsIGJyaW5ndCBkaSB6byBkeXIgR/ZnbmtsYW1tZXIuCisKKyAgNC4gVW0gZPZzIGVlcnN0ZSBW/HJrZW1tZW4gIHZvbiAiYWx0IiAgaW4gYXluZXIgWmVpbCAgZHVyY2ggIm5ldSIgIHogZXJz9nR6biwKKyAgICAgemlwZiAgIDpzL2FsdC9uZXUgICAuCisgICAgIFVtIGFsbHNhbmQgaW4gYXluZXIgWmVpbCB6IGVyc/Z0em4sIHppcGYgICA6cy9hbHQvbmV1L2cgICAuCisgICAgIE1lY2hzdCBhbGxzcyBpbiB6d28gWmVpbG4gZXJz9nR6biwgZGVtbWx0IHpvIG4gQmVpc3BpbCAgOjUsNnMvYWx0L25ldS9nICAuCisgICAgIE1lY2hzdCBhbGxzcyBpbiBkeXIgZ2FudHpuIERhdXR0aWNodCBlcnP2dHpuLCBnaWIgZWluOiAgIDolcy9hbHQvbmV1L2cgICAuCisgICAgIFdpbGxzdCBheW4gaWVkcyBNYWFsIGJzdGFldGxuLCBo9m5nICdjJyB3aWUgu2NvbmZpcm2rIGhpbnQgYW5oaW4uCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICBMZXR6biA1LjE6IFpXSVNDSE5EUklOTiBBWU5OIEFVU1NFUklHTkVOIEJFRkVMSCBBVVNG3EVSTiAKKyAgICAgICAgICAgIAorCisgICoqIFdpbGxzdCBheW4gR2bk32ZhdWR1bmcgYXVzZvxlcm4sIGdpYiBhaW5mYWNoIGT2IHNlbCBuYWFjaCAgIDohICAgZWluLiAqKgorIAorICAxLiBaaXBmICBk9m5uIGJla2FubnRuIEJlZmVsaCAgIDogICwgIGR5cm1pdHN0ICBtaXQgbiBN9nJrbCAgYXVmIG4gQmlsZHNjaGlybQorICAgICBnYW56IGFiaGluIGtpbW1zdC4gRHJhdWZoaW4ga2Fuc3QgYXlubiBnd29uZW4gR2bk32JlZmVsaCBlaW5n9mJuLgorCisgIDIuIFplZXJzdCAga2ltbXQgYWJlciBub24gYXluIFJ1ZWZ6YWljaGVuICAgISAgIC4gIFVuZCBpZXR6IGhhYXN0IGRlIE38Z2xpY2gtCisgICAgIGtlaXQsIGF5biBiZWxpZWJpZ2UgYXVzc2VyaWdlIEdm5N9mYXVkdW5nIGF1c3pm/GVybi4KKworICAzLiBBbHMgQmVpc3BpbCB6aXBmICAgOiFscyA8RUlOPiAgOyB1bmQgc2Nob29uIGhhYXN0IGF5biBBdWZsaXN0dW5nIHZvbiBkZWlubgorICAgICBWZXJ6YWljaG5pc3MsICBuZXR0eSAgd2llIHdlbm5zdCAgZ2FueiBnd29uICBpbiBuIEVpbmdpYiB35HJzdC4gIEdlZXQgICBscworICAgICBhdXMgaWV3aWduIGF5bm4gR3J1bmQgbml0LCBhZnQgcHL2Ymx0IHMgbWl0ICA6IWRpciA8RUlOPiAgLgorCitBbHNvIG5vbiBheW5tYWFsOiBNaXQgZPZubiBBbmdhbmcga2FuIGF5biBpZWRlIGJlbGllYmlnZSBhdXNzZXJpZ2UgRmF1ZHVuZyBhdXMtCisgICAgICAgICAgICAgICAgICBnZvxlcnQgd2VyZG4sIGFhdSBtaXQgQXVlcndlcmRkLgorCitVbmQgd29sZ232cmt0OiAgICBBbGxzYW5kIEJlZmVsaCwgd28gbWl0ICA6ICBhbmdlZW5kLCAgbfxlc3NlbmQgbWl0IDxFSU4+IGJzdPYtCisgICAgICAgICAgICAgICAgICB0aWd0IHdlcmRuLiBE9nMgZHlyc2FnbiBteXIgdvxyYmHfIG5pZW1lci4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgIExldHpuIDUuMjogTk9OIE1FRVJFUiBEUtxCRVIsIFdJRSBNWU4gREFVVFRJQ0hUTiBTQ0hSRUlCVAorCisKKyAgICAgICoqIFVtIPZiYnMgR/ZuZGVydHMgbmV1IHogc3BlaWNoZXJuLCB6aXBmIDp3IE5FVUVSX0RBVVRUSUNIVE5BTS4gKioKKworICAxLiBaaXBmICA6IWRpciAgIG9sZGVyICA6IWxzICAsICBk5N9zdCBkeXIgYXluIEF1Zmxpc3R1bmcgdm9uIGRlaW5uIFZlcnphaWNoLQorICAgICBuaXNzIGF1c2hlcmxhYXNzdC4gIETk33N0IGR5cm5hYWNoIDxFSU4+IGVpbmf2Ym4gbXVlc3N0LCB3YWlzc3QgZWUgc2Nob29uLgorCisgIDIuIFN1ZWNoIGR5ciBheW5uIERhdXR0aWNodG5hbSBhdXMsIGT2bm4gd28gcyBub24gbml0IGdlaXQsIPZiYmVubiBQT0NILgorCisgIDMuIElldHogZGVtbWx0OiAgOncgUE9DSCAgIChhbHNvIG1pdCBQT0NIIGFscyBk9m5uIG5ldWVuIERhdXR0aWNodG5hbSkuCisKKyAgNC4gRPZzIHNwZWljaGVydCBpZXR6IGRlIGdhbnR6ZSBEYXV0dGljaHQsIGFsc28g9m5uIFdpbW1zY2hhaW5lciwgIHVudGVyIGT2bm4KKyAgICAgTmFtIFBPQ0guIET2cyBrYW5zdCBsZWljaHQg/GJlcnBy/GVmZmVuLCBpbmRlbSBk5N9zdCBhaW5mYWNoICA6IWxzICAgb2xkZXIKKyAgICAgOiFkaXIgIHppcGZzdCB1bmQgZHlybWl0IGRlaW5uIFZlcnphaWNobmlzc2luaGFsdCBzZWdoc3QuCisKK0FubfZya3VuZzogIFN0aWdzdCBpZXR6IGF1cyBuIFdpbW0gYXVzIHVuZCBn5G5uc3QgbiBhZnQgd2lkZXIgbWl0ICAgdmltIFBPQ0ggICwKKyAgICAgICAgICAgIG5hYWNoZXJkIHfkciBk9iBEYXV0dGljaHQgYXluIGduYXVuZSBBYW11bSB2b24gbiBTY2hhaW5lciBkeXJzZWxibiwKKyAgICAgICAgICAgIHdpZXN0IG4gZ3NwZWljaGVydCBoYWFzdC4KKworICA1LiBJZXR6IHZlcndlaXRlcnQgZPYgRGF1dHRpY2h0IC0gZmFsbHNzdCBzIEZlbnN0bCBoYWFzdCAtICwgbWl0ICAgOiFkZWwgUE9DSAorICAgICBiZXppZWh1bmdzd2VpcyBiZWkgYXlubiBBaW5zbGdlYuR1IG1pdCAgIDohcm0gUE9DSCAgIC4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgIExldHpuIDUuMzogQVlOTiBUQUlMIFZPTiBOIEdXT1JUIFpPIE4gU1BFSUNIRVJOIEFVU1dBTE4KKworKiogVW0gYXlubiBUYWlsIHZvbiBkeXIgRGF1dHRpY2h0IHogc3BlaWNoZXJuLCB6aXBmICB2IFtXb2xlbmRdIDp3IERBVVRUSUNIVCAqKgorCisgIDEuIFJ1Y2sg9m5uIE32cmtsIGF1ZiBuZXR0eSBk9iBaZWlsIGRhYWRlci4KKworICAyLiBEZW1tbHQgIHYgIHVuZCBnZWUgbWl0IG4gTfZya2wgIGF1ZiBk9m5uIGb8bWZ0biBBdWZsaXN0dW5nc3B1bnQgdW50ZXQuICBEdQorICAgICBzZWdoc3QgZ2xlaSwgZOTfIHMgR3dvcnQgdvxyaGVyZ2j2YnQgZXJzY2hlaW50LgorCisgIDMuIERydWNrIHMgWmFpY2hlbiAgOiAgLiBHYW56IHVudCBhdWYgbiBCaWxkc2NoaXJtIGVyc2NoZWludCAgOic8LCc+ICAuCisKKyAgNC4gWmlwZiAgdyBQT0NIICAsIHdvYmVpIHMgZPZubiBEYXV0dGljaHRuYW0gUE9DSCAgbm9uIG5pdCBnZWl0LiAgVmVyZ3dp3yBkaSwKKyAgICAgZOTfc3QgZPZzICA6JzwsJz53IFBPQ0ggYWF1ICtzZWdoc3QsIGVlIHdlbm5zdCA8RUlOPiBkcnVja3N0LgorCisgIDUuIER5ciBXaW1tIHNjaHJlaWJ0IGRlIGF1c2d3YWx0biBaZWlsICBleW4gZGUgRGF1dHRpY2h0IFBPQ0ggZWluaGluLiAgQmVudXR6CisgICAgIDohZGlyICBvbGRlciAgOiFscyAgLCAgZOTfc3QgZPZzIPxiZXJwcvxlZmZzdC4gTPZzaCBzIGZlaW4gbml0IPZiYmVubiEgTWlyCisgICAgIGJyYXVjaGVuZCBzIG72bWxpY2ggZvxyIGRlIG5hZWhzdGUgTGV0em4uCisKK0FubfZya3VuZzogIERydWNrdCBteW4gIHYgICwgZ2lubnQgZCBTaWNodGlzY2gtQXVzd2FsLiBEdSBrYW5zdCBtaXQgbiBN9nJrbCB1bS0KKyAgICAgICAgICAgIGF5bmFuZGZhcm4sICB1bSBkIEF1c3dhbCAgeiB2ZXL2bmRlcm4uICBEcmFmdGVyIGthbiBteW4gbWl0IHluIGF5bm4KKyAgICAgICAgICAgIFBmZW1lcmVyICBtaXQgZPZubiBHd29ydCAg9mJicyBtYWNoZW4uICBabyBuIEJlaXNwaWwgbPZzY2h0ICBkICBk9nMKKyAgICAgICAgICAgIEd3b3J0Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgTGV0em4gNS40OiBFSU5M1lNOIFVORCBaQU1NRU5G3EVSTiBWT04gREFVVFRJQ0hUTiAgIAorCisKKyAgICAqKiBVbSD2bm4gSW5oYWx0IHZvbiBheW5lciBEYXV0dGljaHQgZWluemz2c24sIHppcGYgIDpyIERBVVRUSUNIVE5BTSAgKioKKworICAxLiBT9nR6IPZubiBN9nJrbCD8YmVyIGT2IFplaWwgZGFhZGVyLgorCitPQkFDSFQ6ICBBZnQgZOTfc3Qg9m5uIFNjaHJpdCAyICBhdXNnZvxlcnQgaGFhc3QsICBzZWdoc3QgYXVmIGF5bm1hYWwgIPZiYnMgYXVzCisgICAgICAgICBkeXIgTGV0em4gNS4zLiAgQmV39mcgZGkgbmFhY2hlcmQgd2lkZXIgYWJ35HJ0cywgZHlybWl0c3QgZPYgTGV0em4gd2ktCisgICAgICAgICBkZXJmaW5kZHN0LgorICAyLiBJZXR6ICBsaXMgIGRlaW4gRGF1dHRpY2h0ICBQT0NIIGVpbiwgIGluZGVtIGTk33N0IGQgRmF1ZHVuZyAgIDpyIFBPQ0ggYXVzLQorICAgICBm/GVyc3QsICB3b2JlaSB3aWUgZ3NhaXQgUE9DSCAgZvxyIGT2bm4gIHZvbiBkaXIgIGF1c2dzdWVjaHRuIERhdXR0aWNodG5hbQorICAgICBzdGVldC4gRGUgZWluZ2z2c25lIERhdXR0aWNodCB3ZXJkIHVudGVyaGFsYiBkeXIgTfZya2x6ZWlsIGVpbmdm/GVndC4KKworICAzLiBVbSB6byBuINxiZXJwcvxlZmZlbiwgIG9iIGRlIERhdXR0aWNodCAgYWF1IGd3ad8gZWluZ2z2c24gaXN0LCAgZ2VlIHpydWdnOworICAgICB1bmQgZHUgc2VnaHN0LCAgZOTfIHMgaWV0eiB6d28gQXVzZvZydGlndW5nZW4gIHZvbiBkeXIgTGV0em4gNS4zLiBnZWl0LCAgcworICAgICBVcm5pc3MgdW5kIGRlIGVpbmdm/GVndGUgRGF1dHRpY2h0ZmFzc3VuZy4KKworQW5t9nJrdW5nOiAgRHUga2Fuc3QgYWF1ICBkIEF1c2dhYWIgdm9uIGF5bm4gQXVzc2VyaWdiZWZlbGggZWlubPZzbi4gIFpvIG4gQmVpLQorICAgICAgICAgICAgc3BpbCBsaXN0ICAgOnIgIWxzICBkIEF1c2dhYWIgdm9uIGR5ciBGYXVkdW5nICBscyAgIGVpbiB1bmQgZvxlZ3QgcworICAgICAgICAgICAgdW50ZXJoYWxiIG4gTfZya2wgZWluLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgWkFNTUVORkFTU1VORyBWT04gRFlSIExFVFpOIDUKKworCisgIDEuIDohRkFVRFVORyBm/GVydCBheW5uIGF1c3NlcmlnbmVuIEJlZmVsaCBhdXMuCisKKyAgICAgIERhYWRlciBheW4g1nR0bHljaCBnd+RuZGR0ZSBCZWlzcGlsZXI6CisgICAgICAoRmVuc3RsKSAgICAgICAgICAgICAgKEFpbnNsIC0gTGVpbnNsKQorICAgICAgOiFkaXIgICAgICAgICAgICAgICAgIDohbHMgICAgICAgICAgICAgICAgLSBsaXN0dCBzIFZlcnphaWNobmlzcyBhdWYuCisgICAgICA6IWRlbCBEQVVUVElDSFQgICAgICAgOiFybSBEQVVUVElDSFQgICAgICAtIHZlcndlaXRlcnQgc2VsZSBEYXV0dGljaHQuCisKKyAgMi4gOncgREFVVFRJQ0hUICBzcGVpY2hlcnQgZGUgaWV0enVuZGUgV2ltbWRhdXR0aWNodCAgdW50ZXIgZPZubiBiZXNhZ3RuIE5hbS4KKworICAzLiB2ICBXT0xFTkQgIDp3IERBVVRUSUNIVE5BTSAgIHNjaHJlaWJ0IGRlIHNpY2h0aXNjaCBhdXNnd2FsdG4gWmVpbG4gIGV5biBkZQorICAgICBEYXV0dGljaHQgbWl0IHNlbG4gTmFtLgorCisgIDQuIDpyIERBVVRUSUNIVE5BTSAgbGFkdCBzZWxlIERhdXR0aWNodCAgdW5kIGb8ZWd0IHMgIHVudGVyaGFsYiBuIE32cmtsYmVmYW5kCisgICAgIGVpbi4KKworICA1LiA6ciAhZGlyICAgbGlzdCBkIEF1c2dhYWIgIHZvbiBkeXIgRmF1ZHVuZyAgIGRpciAgIHVuZCBm/GVndCBzICB1bnRlcmhhbGIgbgorICAgICBN9nJrbGJlZmFuZCBlaW4uCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gNi4xOiBaRUlMINZGRk5FTiAou29wZW6rKQorCisKKyAgICAgICAgKiogWmlwZiBvLCB1bSBheW4gWmVpbCB1bnRlcmhhbGIgbiBN9nJrbCB6IPZmZm5lbiB1bmQgZXluIGQgKioKKyAgICAgICAgICAgICAgICAgICAgICAgICoqIEVpbmb8ZWdhcnR3ZWlzIHoga2VtbWVuLiAqKgorCisgIDEuIEJld/ZnIPZubiBN9nJrbCB6byBkeXIgZWVyc3RuIG1pdCAtLS0+IGFuZ232cmt0biBaZWlsIHVudC4KKworICAyLiBaaXBmIG8gKGtsYWluKSwgIHVtIGF5biBaZWlsICBVTlRFUkhBTEIgbiBN9nJrbCB6IPZmZm5lbiAgdW5kIG1pdCBkeXIgRWluLQorICAgICBm/GVnYXJ0d2VpcyB3ZWl0ZXJ6dHVlbi4KKworICAzLiBJZXR6IHppcGYgYXluIFdlZW5nIGF5biBHd29ydCB1bmQgZHJ1Y2sgPEVTQz4sICB1bSBkIEVpbmb8ZWdhcnR3ZWlzIHogdmVyLQorICAgICBsYWFzc24uCistLS0+IE1pdCAgbyAgd2VyZCBkeXIgTfZya2wgYXVmIGRlIG9mZmVuZSBaZWlsIGluIGR5ciBFaW5m/GVnYXJ0d2VpcyBnc/Z0enQuCisKKyAgNC4gVW0gYXluIFplaWwgT0JFUkhBTEIgbiBN9nJrbCBhdWZ6bWFjaGVuLCAgZ2liIGFpbmZhY2ggYXlubiBncm9vc3NzIE8gc3RhdHQKKyAgICAgeW4gYXlubiBrbGFpbmVuIGVpbi4gVmVyc3VlY2ggZPZzIGF1ZiBkeXIgdW50aWduZW4gWmVpbC4KKworLS0tPiDWZmZuZXQgYXluIFplaWwg/GJlciBkZXJlciBkYWFkZXIgbWl0ICBPICAsICB3ZW5uIGR5ciBN9nJrbCBhdWYgZGVyZXIgWmVpbAorICAgICBpc3QuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgIExldHpuIDYuMjogR1dPUlQgQU5G3EVHTiAou2FwcGVuZKspCisKKworICAgICAgICAgICAgICAgICoqIFppcGYgIGEgICwgdW0g9mJicyBOQUFDSCBuIE32cmtsIGVpbnpm/GVnbi4gKioKKworICAxLiBCZXf2ZyD2bm4gTfZya2wgZ2FuIG4gQW5mYW5nIHZvbiBkeXIgZWVyc3RuINxlYnVuZ3N6ZWlsIG1pdCAtLS0+IHVudC4KKworICAyLiBEcnVjayAgZSAgLCBoaW5zdCBk5N8gZHlyIE32cmtsIGFuIG4gRW5kIHZvbiAgWmVpICBzdGVldC4KKworICAzLiBaaXBmIGF5biBrbGFpbnMgIGEgICwgdW0g9mJicyBOQUFDSCBuIE32cmtsIGFuemb8ZWduLgorCisgIDQuIFZlcmf2bnR6IGT2cyBXb3J0IHdpZSBpbiBkeXIgWmVpbCBkcnVudGVyLiAgRHJ1Y2sgPEVTQz4sIHVtIGQgU2NocmVpYi1BcnQtCisgICAgIHdlaXMgeiB2ZXJsYWFzc24uCisKKyAgNS4gQmV39mcgZGkgbWl0ICBlICAgem8gbiBuYWVoc3RuIHVuZ2FudHpuIFdvcnQgIHVuZCB3aWRlcmhvbCBkIFNjaHJpdHQgMyB1bmQKKyAgICAgNC4KKworLS0tPiBE9iBaZSBiaWV0dCBheW4gR2z2Z24gLCBheW4gR3dvcnQgaW4gYXluZXIgWmVpbCBhbnpm/C4KKy0tLT4gRPYgWmVpbCBiaWV0dCBheW4gR2z2Z25ldCwgYXluIEd3b3J0IGluIGF5bmVyIFplaWwgYW56ZvxlZ24uCisKK0FubfZya3VuZzogICBhICAsICBpICB1bmQgIEEgIGJyaW5nZW5kIGFpbm4gZ2xlaWNoZXJtYWHfbiBleW4gZCBFaW5m/GVnYXJ0d2VpczsKKyAgICAgICAgICAgICBkeXIgYWluemlnZSBVbnRlcnNjaGFpZCBpc3QsIFdPIG1pdCBuIEVpbmb8ZWduIGFuZ2Zhbmd0IHdlcmQuCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgIExldHpuIDYuMzogQVlOIEFOREVSTkUgV0VJUyBaTyBOIEVSU9ZUWk4gKLtyZXBsYWNlqykKKworCisgKiogRGVtbWx0IGF5biBncm9vc3NzICBSICAsIHVtIG1lZXJlciBhbHMgd2llIGdyYWQgYWluIFphaWNoZW4geiBlcnP2dHpuLiAqKgorCisgIDEuIEJld/ZnIPZubiBN9nJrbCB6byBkeXIgZWVyc3RuIHVudGlnbmVuLCBtaXQgLS0tPiBhbmdt9nJrdG4gWmVpbC4KKyAgICAgR2VlIG1pdCBuIE32cmtsIGdhbiBuIEFuZmFuZyB2b24gbiBlZXJzdG4gIHh4eCAgLgorCisgIDIuIElldHogZHJ1Y2sgIFIgICB1bmQgemlwZiBzZWxlIFphbCwgIHdvIGRydW50ZXIgIGluIGR5ciB6d2FpdHRuIFplaWwgc3RlZXQsCisgICAgIHlzbyBk5N8gZGUgc2VsIHMgeHh4IGVyc/Z0enQuCisKKyAgMy4gRHJ1Y2sgPEVTQz4gLCAgdW0gZCBFcnP2dHp1bmdzYXJ0d2VpcyAgeiB2ZXJsYWFzc24uICBEdSBnc3Bhbm5zdCwgIGTk3yBkeXIKKyAgICAgUmVzdCB2b24gZHlyIFplaWwgdW52ZXL2bmRlcnQgYmxlaWJ0LgorCisgIDQuIMRmZXJ0IGRpZSBTY2hyaXR0LCB1bSBk9nMg/GJlcmJsaWJuZSB4eHggeiBlcnP2dHpuLgorCistLS0+IFMgWnVuZGRuIHZvbiAxMjMgem8geHh4IGVyZ2lidCB4eHguCistLS0+IFMgWnVuZGRuIHZvbiAxMjMgem8gNDU2IGVyZ2lidCA1NzkuCisKK0FubfZya3VuZzogRCBFcnP2dHp1bmdzYXJ0d2VpcyBpc3Qgd2llIGQgRWluZvxlZ2FydHdlaXMsICBhYmVyIGF5biBpZWRzIGVpbmRlbS0KKyAgICAgICAgICAgbWx0ZSBaYWljaGVuIGz2c2NodCBheW4gdm9yaGFuZGRucy4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgIExldHpuIDYuNDogR1dPUlQgQUFNRU4gVU5EIEVJTkbcRUdOCisKKyAqKiBCZW51dHog9m5uIFBmZW1lcmVyICB5ICAsIHVtIPZiYnMgeiBhYW1lbiwgdW5kICBwICAsIHVtIPZiYnMgZWluemb8ZWduLiAqKgorCisgIDEuIEdlZSB6byBkeXIgbWl0ICAtLS0+ICBhbmdt9nJrdG4gWmVpbCB1bnQgIHVuZCBz9nR6IPZubiBN9nJrbCAgaGludGVyICJhKSIuCisKKyAgMi4gR2lubiBkIFNpY2h0aXNjaC1BcnR3ZWlzIG1pdCAgIHYgICB1bmQgYmV39mcg9m5uIE32cmtsIGduYXVuIHZvciAiZWVyc3RlIi4KKyAgCisgIDMuIFppcGYgIHkgICwgdW0gZPZubiB2/HJoZXJnaPZidG4gVGFpbCB6IGFhbWVuLgorCisgIDQuIEJld/ZnIPZubiBN9nJrbCBnYW4gbiBFbmQgdm9uIGR5ciBuYWVoc3RuIFplaWw6ICBqJAorCisgIDUuIERlbW1sdCAgcCAgLCB1bSBk9nMgR3dvcnQgZWluemb8ZWduLCB1bmQgYWZ0OiAgYSB6d2FpdHRlIDxFU0M+ICAuCisKKyAgNi4gQmVudXR6IGQgU2ljaHRpc2NoYXJ0d2VpcywgdW0gIiBFaW50cmFnLiIgYXVzendhbG4sICBhYW0gcyBwZmVsZnMgIHksICBiZS0KKyAgICAgd/ZnIGRpIGdhbiBuIEVuZCB2b24gZHlyIG5hZWhzdG4gWmVpbCBtaXQgIGokICAgdW5kIGb8ZWcgcyBHd29ydCBkb3J0biBtaXQKKyAgICAgcCAgYW4uCisKKy0tLT4gIGEpIGT2cyBpc3QgZHlyIGVlcnN0ZSBFaW50cmFnLgorICAgICAgYikKKworQW5t9nJrdW5nOiBEdSBrYW5zdCAgeSAgYWF1IGFscyBQZmVtZXJlciB2ZXJ3ZW5kZG47ICB5dyAgYWFtdCBhaW4gV29ydC4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIExldHpuIDYuNTogU0NIQUxUVEVSIFPWVFpOCisKKyoqIFP2dHogYXlubiBTY2hhbHR0ZXIgeXNvLCAgZOTfIGF5biBTdWVjaCBvbGRlciBFcnP2dHp1bmcgR3Jvb98tIHVuZCBLbGFpbi0gKioKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKiBzY2hyZWlidW5nIPxiZXJnZWV0LiAqKgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorICAxLiBTdWVjaCB1bSAn/GJlcmdlZSIsIGluZGVtIGTk33N0ICAgL/xiZXJnZWUgICBlaW5naWJzdC4KKyAgICAgV2lkZXJob2wgZCBTdWVjaCBheW4g1nR0bHljaCBNYWFsLCBpbmRlbSBk5N9zdCBkZSBUYXN0biAgbiAgZHJ1Y2tzdC4KKworICAyLiBT9nR6IGRlIFp3aXNsIC0g9m5uIFNjaGFsdHRlciAtICdpYycgKLtpZ25vcmUgY2FzZaspLCBpbmRlbSBk5N9zdCAgOnNldCBpYworICAgICBlaW5naWJzdC4KKyAgMy4gSWV0eiBzdWVjaCB3aWRlciB1bSAn/GJlcmdlZScgdW5kIHR1ZSBhYXUgd2lkZXIgbWl0ICBuICB3ZWl0ZXIuICBEYWEgZmFsbHQKKyAgICAgZHlyIGF1ZiwgZOTfIGlldHog9mJiZW5uIGFhdSAg3GJlcmdlZSAgdW5kICDcQkVSR0VFICBoZXJnZWV0LgorCisgIDQuIFP2dHogZGUgWndpc2xuICdobHNlYXJjaCcgdW5kICdpbmNzZWFyY2gnIHBmZWxmczogICA6c2V0IGhscyBpcworCisgIDUuIFdpZGVyaG9sIGQgU3VlY2ggdW5kIGJvYmFjaHQsIHdhcyBpZXR6IGdzY2hpZWdodDogICAv/GJlcmdlZSA8RUlOPgorCisgIDYuIETk33N0IGdyb2/fIHVuZCBrbGFpbiB3aWRlciBnd29uIHVudGVyc2NoZWlkc3QsIHppcGY6ICAgOnNldCBub2ljCisKK0FubfZya3VuZzogIE1lY2hzdCBkZSBUcvZmZmVyIG5pZW1lciB2/HJoZXJnaPZidCBzZWdobiwgIGdpYiBlaW46ICAgOm5vaGxzZWFyY2gKK0FubfZya3VuZzogIFNvbGx0IGtsYWluL2dyb2/fIGJlaSBheW5lciBhaW56aWduZW4gU3VlY2ggd3Vyc3Qgc2VpbiwgIGJlbnV0eiAgXGMKKyAgICAgICAgICAgIGluIG4gU3VlY2hhdXNkcnVrOiAgIC/8YmVyZ2VlXGMgPEVJTj4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICBaQU1NRU5GQVNTVU5HIFZPTiBEWVIgTEVUWk4gNgorCisgIDEuIFppcGYgIG8gICwgIHVtIGF5biBaZWlsICBVTlRFUkhBTEIgbiBN9nJrbCB6IPZmZm5lbiB1bmQgZCBFaW5m/GVnYXJ0d2VpcyB6CisgICAgICAgICAgICAgICAgIGdpbm5lbi4KKyAgICAgWmlwZiAgTyAgLCAgdW0gYXluIFplaWwgT0JFUkhBTEIgbiBN9nJrbCB6IPZmZm5lbi4KKworICAyLiBaaXBmICBhICAsICB1bSBOQUFDSCBuIE32cmtsIGF5biBHd29ydCBlaW56ZvxlZ24uCisgICAgIFppcGYgIEEgICwgIHVtIGF5biBHd29ydCBuYWFjaCBuIFplaWxuZW5kIGFuemb8ZWduLgorCisgIDMuIEQgRmF1ZHVuZyAgZSAgYnJpbmd0IGRpIGdhbiBuIEVuZCB2b24gYXlubiBXb3J0LgorCisgIDQuIER5ciBQZmVtZXJlciAgeSAgKLt5YW5rqykgYWFtdCD2YmJzLCAgcCAgKLtwdXSrKSBm/GVndCBk9nMgZWluLgorCisgIDUuIEF5biBncm9vc3NzICBSICBnZWV0IGV5biBkIEVyc/Z0enVuZ3NhcnR3ZWlzLCAgaGluc3QgZOTfIG15biA8RVNDPiBkcnVja3QuCisKKyAgNi4gRCBFaW5nYWFiIHZvbiAiOnNldCB4eHgiICBz9nR6dCBkZSBad2lzbCAieHh4Ii4gIEF5biDWdHRseWNoIFp3aXNsbiBzZWluZDoKKyAgICAgJ2ljJyAnaWdub3JlY2FzZScgICBHcm9v3y9rbGFpbiB3dXJzdCBiZWkgYXluZXIgU3VlY2gKKyAgICAgJ2lzJyAnaW5jc2VhcmNoJyAgICBaYWlnIGFhdSBzY2hvb24gYXluIFRhaWz8YmVyYWluc3RpbW11bmcKKyAgICAgJ2hscycgJ2hsc2VhcmNoJyAgICBI9mIgYWxsc2FuZCBw5HNzZXRuIEF1c2Ry/GNrIHb8cmhlcgorICAgICBEeXIgU2NoYWx0dGVybmFtIGthbiBpbiBkeXIgS3Vyei0gb2xkZXIgTGFuZ2Zvcm0gYW5n9mJuIHdlcmRuLgorCisgIDcuIFN09mxsIHluIGF5bmVyIFp3aXNsICJubyIgdm9yYW4sIGTk33N0IHlzIGFic2NoYWx0dHN0OiAgIDpzZXQgbm9pYworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgIExldHpuIDcuMTogQVlOIEhJTEZHV09SVCBBVUZSVUVGRkVOCisKKworICAgICAgICAgICAgKiogTnV0eiBk9nMgZWluYmF1dGUgSGlsZmdlYuR1LCBkZSAiQmV0cmlic2FubGFpdHR1bmciICoqCisKKyAgRXluIG4gV2ltbSAgaXN0IGF5biBhdXNm/GVybGljaGUgIkdlYnJhdWNoc2Fud2Vpc3VuZyIgIGVpbmJhdXQuICBG/HIgcyBFZXJzdGUKKyAgcHL2Ymx0IGFpbmZhY2ggYWlucyB2b24gZGVuZSBkcmV1IGF1czoKKyAgICAtIERydWNrIGQgPEhJTEY+LVRhc3RuLCB3ZW5uc3Qg9mJiZW5uIGFpbmUgaGFhc3QuCisgICAgLSBEcnVjayBkZSBUYXN0biA8RjE+LCBmYWxsc3N0IHlzIGhhYXN0LgorICAgIC0gWmlwZiAgIDpoZWxwIDxFSU4+CisKKyAgTGlzIGRpIGV5biBzIEhpbGZmZW5zdGVyIGVpbiwgZHlybWl0c3QgZHJhdWZraW1tc3QsIHdpZSBk9nMgbWl0IGR5ciBIaWxmIGdlZXQuCisgIERlbW1sdCAgPFNUUkc+dyB3ICAsIHVtIHZvbiBhaW5uIEZlbnN0ZXIgem8gbiBhbmRlcm4gem8gbiBTcHJpbmdlbi4KKyAgRGVtbWx0ICAgOnEgPEVJTj4gICwgdW0gcyBIaWxmZmVuc3RlciB6byBuIFNjaGxpZXNzbi4KKworICBEdSBrYW5zdCB6byBzbyBndWV0IHdpZSBhbGxzc2FuZCBheW4gSGlsZiBmaW5kZG4sICBpbmRlbSBk5N9zdCB5biBkeXIgRmF1ZHVuZworICA6aGVscCAgIGF5bm4gQXVlcndlcmQgbmFhY2hzdPZsbHN0IHVuZCBpc3RpZyA8RUlOPiBuaXQgdmVyZ2lzc3QuICBQcvZibHQgZPZzOgorCisgICAgIDpoZWxwIHcKKyAgICAgOmhlbHAgY19DVFJMLUQKKyAgICAgOmhlbHAgaW5zZXJ0LWluZGV4CisgICAgIDpoZWxwIHVzZXItbWFudWFsCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgIExldHpuIDcuMjogRVJTVNZMTCBBWU4gR0lOLVNDSFJJUEYKKworCisgICAgICAgICAgICAqKiBNdXR6IPZubiBXaW1tIG1pdCBkZSBlaW5iYXV0biBGYWVoaWdrZWl0biBhdWYgKioKKworICBEeXIgV2ltbSBiZXNpdHp0IGF5biBX9nNuIFNjaORmdHVuZ2VuLCAgd28g/GJlciBuIFVyd2ltbSBhdXNoaW5nZWVuZCwgYWJlciBkZQorICBtZWVyZXJuIGR5cnZvbiAgc2VpbmQgaW4gZHlyIFZvcmdhYWIgYXVzZ3NjaGFsdHQuICBEeXJtaXRzdCBtZWVyZXIgYXVzIG4gV2ltbQorICBhdXNoZXJob2xzdCwgZXJzdPZsbHN0IGF5biAidmltcmMiLURhdXR0aWNodC4KKworICAxLiBM9mcgYXluICJ2aW1yYyItRGF1dHRpY2h0IGFuOyAgZPZzIGdlZXQgIGllIG5hYWNoIEJldHJpYnNnZWLkdSAgdmVyc2NoaWRuOgorICAgICA6ZSB+Ly52aW1yYyAgICAgZvxyIHMgQWluc2wKKyAgICAgOmUgJFZJTS9fdmltcmMgIGJlaSBuIEZlbnN0bAorCisgIDIuIElldHogbGlzIPZubiBJbmhhbHQgdm9uIGR5ciBCZWlzcGlsLSJ2aW1yYyItRGF1dHRpY2h0IGVpbjoKKyAgICAgOnIgJFZJTVJVTlRJTUUvdmltcmNfZXhhbXBsZS52aW0KKworICAzLiBTcGVpY2hlcnQgZGUgRGF1dHRpY2h0IG1pdDoKKyAgICAgOncKKworICA0LiBCZWkgbiBuYWVoc3RuIEdpbiB2b24gbiBXaW1tICBpc3QgYWZ0IGQgRvxlZ251c3N2/HJoZXJo9mJ1bmcgIHp1ZWdzY2hhbHR0LgorICAgICBEdSBrYW5zdCBkeXIgYWxsc3MgIGV5biBk9iBEYXV0dGljaHQgIGVpbmhpbnNjaHJlaWJuLCAgd2Fzc3QgYnN05G5kaWcgaGFibgorICAgICB3aWxsc3QuIE1lZXJlciBkeXJ6dWUgZXJmYXJzdCB1bnRlcjogICA6aGVscCB2aW1yYy1pbnRybworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gNy4zOiBWRVJH1k5UWk4KKworCisgICAgICAgICAgICAgICAqKiBCZWZlbGhzemVpbG52ZXJn9m50enVuZyBtaXQgPFNUUkc+ZCB1bmQgPFRBQj4gKioKKworICAxLiBWZXJnd2nfIGRpLCBk5N8gZHlyIFdpbW0gbml0IGF1ZiBuIFVyd2ltbS0iR2xhaXMiIGZhcnQ6ICAgOnNldCBub2NwCisKKyAgMi4gU2NoYXVnIG5hYWNoLCB39mxjaGVybmUgRGF1dHRpY2h0biBk5N8gcyBpbiBuIFZlcnphaWNobmlzcyBnZWl0OiAgIDohbHMKKyAgICAgb2xkZXIgICA6IWRpcgorICAzLiBaaXBmIPZubiBBbmZhbmcgdm9uIGF5bmVyIEZhdWR1bmc6ICAgOmUKKworICA0LiBEcnVjayAgPFNUUkc+ZCAgLCAgdW5kIGR5ciBXaW1tIHphaWd0IGF5biBMaXN0biB2b24gRmF1ZHVuZ2VuLCAgd28gbWl0ICJlIgorICAgICBhbmdlZW5kLgorICA1LiBEcnVjayAgPFRBQj4gICwgIHVuZCBkeXIgV2ltbSB2ZXJ2b2xsc3T2bmRpZ3QgIPZubiBGYXVkdW5nc25hbSB6byAiOmVkaXQiLgorCisgIDYuIEb8ZWcgIGF5biBMYWVyemFpY2hlbiAgdW5kIPZubiBBbmZhbmcgIHZvbiBheW5lciAgYmVzdGVlaGV0biBEYXV0dGljaHQgYW46CisgICAgIDplZGl0IERBVQorCisgIDcuIERydWNrIDxUQUI+LiAgRHlyIFdpbW0gdmVyZ/ZudHp0IPZubiBOYW0sICBk9nMgaGFpc3N0LCAgd2VubiB5ciBhaW5kZXV0dGlnCisgICAgIGlzdC4KK0FubfZya3VuZzogIEQgVmVyZ/ZudHp1bmcgIGdlaXQgcyBm/HIgYXlubiBIYXVmZmVuIEZhdWR1bmdlbi4gIFZlcnN1ZWNoIGFpbmZhY2gKKyAgICAgICAgICAgPFNUUkc+ZCAgdW5kICA8VEFCPi4gIEJzdW5kZXJzIG78dHpsaWNoIGlzdCBk9nMgYmVpICAgOmhlbHAgIC4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICBaQU1NRU5GQVNTVU5HIFZPTiBEWVIgTEVUWk4gNworCisKKyAgMS4gWmlwZiAgOmhlbHAgICBvbGRlciBkcnVjayA8RjE+IG9sZGVyIDxISUxGPiwgIHVtIGF5biBIaWxmZmVuc3RlciB6IPZmZm5lbi4KKworICAyLiBaaXBmICA6aGVscCBGQVVEVU5HICAsIHVtIGF1ZiBheW4gSGlsZiBnYW4gYXlubiBCZWZlbGggeiBrZW1tZW4uCisKKyAgMy4gWmlwZiAgPFNUUkc+dyB3ICAsIHVtIHpvIG4gYW5kZXJuIEZlbnN0ZXIgeiBzcHJpbmdlbi4KKworICA0LiBaaXBmICA6cSAgLCB1bSBzIEhpbGZmZW5zdGVyIHogc2NobGllc3NuLgorCisgIDUuIEVyc3T2bGwgYXluIHZpbXJjLUdpbnNjaHJpcGYgIHp1ZXIgU2ljaGVydW5nIHZvbiBkZWluZSBN9nR6bmVpbnN09mxsdW5nZW4uCisKKyAgNi4gRHJ1Y2sgPFNUUkc+ZCwgYWZ0IGTk33N0IG5hYWNoICA6ICBtaXQgYXluZXIgRmF1ZHVuZyBhbmdmYW5ndCBoYWFzdCwgIGR5ci0KKyAgICAgbWl0c3QgbfxnbGljaGUgVmVyZ/ZudHp1bmdlbiBhbnphaWd0IGtyaWVnc3QuCisgICAgIERydWNrIDxUQUI+IGb8ciBhaW4gVmVydm9sbHN09m5kaWd1bmcgeWxsYWluLgorCisKKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCisgIET2cyB35HIgaWV0emV0IHMgRW5kIHZvbiBuIFdpbW1zY2hhaW5lci4gIEdhbmdlbiBpc3QgcyBkYWEgZHJ1bSwgIGF5bm4ga3VydHpuCisgIHVuZCBi/G5kaWduZW4g3GJlcmJsaWsg/GJlciBzIEJsYXQgIFdJTU0geiBsaWZlcm4sICBuZXR0eSB2aWwgZ251ZWcsICBk5N8gbXluCisgIGb8ciBzIEVlcnN0ZSAgd2lya2xpY2gg9mJicyAgZHlybWl0IGFuZmFuZ2VuIGthbi4gIER5cm1pdCBpc3QgcyBhYmVyIGF1ZiBrYWluCisgIFdlaXRuIG5vbiBuaXQgdGFhbjsgIGR5ciBXaW1tIGhhYXQgc2Nob29uIG5vbiB2aWwgbWVlcmVyICBhdWYgTGFnZXIuICBMaXMgYWxzCisgIE5hZWhzdHMgYXlubWFhbCBzIEJlbnV0emVyaGFuZGJ1ZWNoOiAgIDpoZWxwIHVzZXItbWFudWFsICAgLgorCisgIFpvIG4gV2VpdGVybPZzbiB1bmQgV2VpdGVybGVybmVuIHf2ciBk9nMgQnVlY2ggZGFhZGVyIHpvIG4gRW1wZmVsaGVuOgorICAgIFZpbSAtIFZpIEltcHJvdmVkIC0gdm9uIG4gT1VBTExJTkUgU3RldmUKKyAgICBWZXJsYWFnOiBOZXcgUmlkZXJzCisgIET2cyBpc3QgZPZzIGVlcnN0ZSBCdWVjaCwgd28gZ2FueiB5biBuIFdpbW0gZ3dpZG10IGlzdCwgbmV0dHkgZPZzIEdyZWNodGUgZvxyCisgIEFuZvZuZ2VyLiBFcyBoYWF0IGF5biBX9nNuIEJlaXNwaWxlciB1bmQgYWF1IEJpbGRlciBkcmlubi4KKyAgU2VlIGh0dHA6Ly9pY2NmLWhvbGxhbmQub3JnL2NsaWNrNS5odG1sCisKKyAgRPZzIGZvbGdldGUgQnVlY2ggIGlzdCBzY2hvb24g9mx0ZXIgdW5kIG1lZXJlciAg/GJlciBuIFVyd2ltbSAgYWxzIHdpZSD8YmVyIG4KKyAgV2ltbSwgIGFiZXIgYWF1IHpvIG4gRW1wZmVsaGVuOiAgIFRleHRiZWFyYmVpdHVuZyBtaXQgZGVtIHZpLUVkaXRvciAtIHZvbiBkeXIKKyAgTEFNQiBMaW5kYSB1bmQgbiBST0JCSU5TIEFybm9sZCAgLSAgVmVybGFhZyBPJ1JlaWxseSAgLSBCdWVjaGxhaXR0emFsIChJU0JOKToKKyAgMzg5NzIxMTI2MgorICBJbiBk9m5uIEJ1ZWNoICBrYW4gbXluIGZhc3QgYWxsc3MgZmluZGRuLCAgd2FzIG15biBtaXQgbiBVcndpbW0gYW5nZWVuIG1lY2h0LgorICBEZSBz9nh0ZSBBdXNnYWFiIGVudGhhbHR0IGFhdSBzY2hvb24g9mJicyD8YmVyIG4gV2ltbS4KKyAgQWxzIGlldHp1bmRlIEJlenVnbmlzcyAgZvxyIGQgRmFzc3VuZyAgNi4yICB1bmQgYXluIHBmcmVuZ2UgRWluZvxlcnVuZyAgZGllbnQKKyAgZPZzIGZvbGdldGUgQnVlY2g6CisgICAgdmltIGdlLXBhY2t0ICB2b24gbiBXT0JTVCBSZWluaGFyZAorICAgIG1pdHAtVmVybGFhZywgQnVlY2hsYWl0dHphbCAzLTgyNjYtMTQyNS05CisgIFRyb3R6IGR5ciByZWNodCBwZnJlbmdlbiBEYXJzdPZsbHVuZyAgaXN0IHMgZHVyY2ggc2VpbmUgdmlsbiBu/HR6bGljaG5lbiBCZWktCisgIHNwaWxlciBhYXUgZvxyIEVpbnN0ZWlnZXIgZ3JhZCBncmVjaHQuICBQcm9iaGFldXBzdGVyIHVuZCBkZSBCZWlzcGlsc2NocmlwZmVyCisgIHNlaW5kIHplc2lnIHpvIG4gS3JpZWduOyBzZWUgaHR0cDovL2ljY2YtaG9sbGFuZC5vcmcvY2xpY2s1Lmh0bWwKKworICBWZXJmYXNzdCBoYWJuZCBk9m5uIFNjaGFpbmVyIGR5ciBQSUVSQ0UgTWljaGFlbCBDLiB1bmQgV0FSRSBSb2JlcnQgSy4gdm9uIGR5cgorICBLb2xyYWFkZXIgS25hcHBuc2NodWVsIChDb2xvcmFkbyBTY2hvb2wgb2YgTWluZXMpLiBFciBiZXJ1ZXQgYXVmIEVudHf8cmZmLCB3bworICBkeXIgU01JVEggQ2hhcmxlcyAgdm9uIGR5ciAgS29scmFhZGVyIEFsbHNjaHVlbCAgKENvbG9yYWRvIFN0YXRlICBVbml2ZXJzaXR5KQorICB6dWVyIFZlcmb8ZWd1bmcgZ3N09mxsdCBoYWF0LiBHdW5kcG9zdDogYndhcmVAbWluZXMuY29sb3JhZG8uZWR1LgorICBG/HIgbiBXaW1tIGhhYXQgbiBkeXIgTU9PTEVOQUFSIEJyYW0gYmFyZWNodHQuCisgIERlIGJhaXJpc2NoZSDcYmVyc/Z0enVuZyBzdGFtbXQgdm9uIG4gSEVMTCBTZXBwIDIwMDkuIFNlaW4gR3VuZHBvc3RicuRjaHQgaXN0CisgIHN0dXJtaWJ1bmRAdC1vbmxpbmUuZGUgCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgCisKKyAKKworCisKZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuYmoudXRmLTggYi9ydW50aW1lL3R1dG9yL3R1dG9yLmJqLnV0Zi04Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgwYzNhZGUKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLmJqLnV0Zi04CkBAIC0wLDAgKzEsOTg3IEBACis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cis9ICAgIEcgbyB0IGkgayBhIG0gICBpIG4gICBuICAgVyBJIE0gTSAtIFMgYyBoIGEgaSBuIGUgciAgIC0gICBGYXNzdW5nIDEuN0QgICA9Cis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKyAgIER5ciBXaW1tIGlzdCBheW4gZ3JvIG3DpGNodGlncyBCbGF0LCBkw7ZzIHdhcyBtaXQgYXlubiBXw7ZzbiBCZWZlbGggYXVmd2FydHQ7IHoKKyAgIHZpbCwgIGTDpMOfIG15biBzIGFsbHNhbmQgIGluIGF5bm4gU2NoYWluZXIgIHdpZSBkw7ZubiBkYWFkZXIgIHVudGVyYnLDpG5nLiAgRGVyCisgICBTY2hhaW5lciBpc3QgeXNvIGF1ZmJhdXQsICBkw6TDnyB5ciBoYWx0IG5ldHR5IGRpZSBCZWZlbGggYWxsc2FuZCBicmluZ3QsIHdvc3QKKyAgIGJyYXVjaHN0LCBkw6TDn3N0IG1pdCBpZW0gZsO8ciBzIEVlcnN0ZSB3aXJrbGljaCDDtmJicyBhbmZhbmdlbiBrYW5zdC4KKyAgIER1cmNoaGluYXJlY2h0biBrYW5zdCBkaSwgd2VubnN0IHdpbGxzdCwgaW4gYXluZXIgaGFsYmV0biBTdHVuZDsgZMO2cyBoYWlzc3QsCisgICB3ZW5uc3QgZGkgbml0IGdyb2/DnyBtaXQgbiBQcsO2YmxuIHVuZCBUw7xmdGxuIGF1ZmhhbHRzdC4KKworICAgT0JBQ0hUOgorICAgRGllIEZhdWR1bmdlbiwgIHdvc3QgZGFhZGVyIGZpbmRkc3QsICBnYWFuZCBpc3RpZyAgcyBHd29ydCDDtm5kZXJuLiAgRMO2c3N3w7ZnbgorICAgbWFjaHN0IGV5biBuIELDtnN0biBnbGVpICBheW4gQWFtdW0gdm9uIGRlcmVyIERhdXR0aWNodCBkYWFkZXIuICBIYWFzdCBhbHNuYW4KKyAgIGTDtnMgR3dvcnQgZGFhZGVyICBtaXQgbiBCZWZlbGggInZpbXR1dG9yIGJqIiAgYXVzaGVybGFhc3NuLCAgaXN0IHMgZWUgc2Nob29uCisgICBheW4gQWFtdW0uCisgICBNaXIga2FuIHMgIG5pdCBvZnQgZ251ZWcgIHNhZ24sICBkw6TDnyAgZGVyIFNjaGFpbmVyIGRhYWRlciAgaXN0aWcgIGdhbiBuIMOcZWJuCisgICBnaG9lcnQuICBBbHNvIG11ZXNzdCBzY2hvb24gYWF1IGRpZSBCZWZlbGggYXVzZsO8ZXJuLCAgd2VubnN0IHlzIGdzY2hlaWQgbGVyLQorICAgbmVuIHdpbGxzdC4gTWl0IG4gTMO2c24geWxsYWluIGlzdCBzICtuaXQgdGFhbiEKKworICAgSWV0eiBzY2hhdXN0IGdyYWQgbm9uLCBkw6TDnyBkZWluIEbDtnN0c3TDtmxsdGFzdG4gbml0IGRydWNrdCBpc3Q7IHVuZCBhZnQgZ2Vlc3QKKyAgIGdsZWkgYXlubWFhbCBtaXQgZHlyIGotVGFzdG4gYWJ3w6RydHMgKHlzbyBsYWF1ZmZ0IGTDtnMgbsO2bWxpY2gpLCAgaGluc3QgZMOkw59zdAorICAgZGUgZ2FudHplIExldHpuIDEuMSBhdWYgbiBCaWxkc2NoaXJtIGhhYXN0Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgIExldHpuIDEuMTogTUlUIE4gTcOWUktMIFVNQVlOQU5ERkFSTgorCisqKiAgRHlybWl0c3QgbWl0IG4gTcO2cmtsIHVtYXluYW5ka2ltbXN0LCBkcnVjayBoLCBqLCBrIHVuZCBsIHdpZSB1bnQgemFpZ3QuICAqKgorICAgICAgICAgICAgXiAgICAgICAgICAgIEF5biDDlnNsc2JydWdnOgorICAgICAgICAgICAgayAgICAgICAgICAgIERlIFRhc3RuICBoICBpc3Qgd2luc3RlciB1bmQgK2dlZXQgYWF1IGdhbiB3aW5zdGVyLgorICAgPCBoICAgICAgICAgICAgIGwgPiAgIFMgIGwgIGxlaXQgemVzbSB1bmQgcmljaHR0IHNpIGdhbiB6ZXNtLgorICAgICAgICAgICAgaiAgICAgICAgICAgIFMgIGogIGthbiBteW4gd2llIGF5bm4gUGZlaWwgZ2FuIHVudCBzZWdobi4KKyAgICAgICAgICAgIHYgICAgICAgICAgICBNaXQgbiAgayAga2ltbXN0IGdhbiBuIEtPUEYuICAgICAgICAgICAgCisgIDEuIElldHogcnVlZGVydHN0IGFpbmZhY2ggbWl0IG4gTcO2cmtsIGF1ZiBuIEJpbGRzY2hpcm0gdW1heW5hbmQsICBoaW5zdCBkw6TDn3N0CisgICAgIGRpIHNpY2hlciBmw7xlbHN0LgorICAyLiBIYWx0ICBkIEFiaGluLVRhc3RuIChqKSAgZHJ1Y2t0OyAgYWZ0IHJ1bXBsdCBzICBhaW5mYWNoIHdlaXRlci4gIE5ldHR5IHlzbworICAgICBraW1tc3QgZ2FuIGR5ciBuYWVoc3RuIExldHpuLgorICAgICAKKyAgMy4gV2llIGdzYWl0LCBpZXR6IGJld8O2Z3N0IGRpIGFsc28gbWl0IGRlcmVyIFRhc3RuIGdhbiBkeXIgTGV0em4gMS4yLgorCitOb24gw7ZiYnM6IEFsbHdlaWwsIHdlbm4gZHlyIG5pZW1lciBnYW56IHdvbCBpc3QsIHdhc3N0IMO2YmJlbm4gZHJ1Y2t0IGhhYXN0LCBhZnQKKyAgICAgICAgICB6aXBmc3QgIDxFU0M+OyAgbmFhY2hlcmQgYmlzdCB3aWRlciBnYW56IGd3b24gaW4gZHlyIEJlZmVsaHMtQXJ0d2Vpcy4KKworICAgICAgCisgICAgICAgICAgTsO2Ym5iZWkgZ3NhaXQga2ltbXN0IGd3b25lcndlaWwgYWF1IG1pdCBkZSBQZmVpbHRhc3RuZW4gd2VpdGVyLiAgQWJlcgorICAgICAgICAgIGhqa2wgIHNlaW5kIHogaGFpc3NuIHMgV2ltbS1VcmdzdGFpbjsgIHVuZCBkZSAiSMO2cnRuIiBzZWluZCBnYW56IGR5ci0KKyAgICAgICAgICBmw7xyLCBkw6TDnyBteW4gYmVpICtkZW5lIGJsZWlidC4gUHLDtmJsdCBzIGFpbmZhY2ggYXVzIQorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gMS4yOiDDlk5OIFdJTU0gQVVTU0NIQUxUVE4KKworCisgIEFMU08sIEVFIFdFTk5TVCDDlkJCUyBWT04gREFBIFVOVCBBVVNGw5xFUlNULCAgTElTIExJRUJFUiBaRUVSU1QgREUgR0FOVFpFIExFVC0KKyAgWk4hCisKKyAgMS4gRHJ1Y2sgZCA8RVNDPi1UYXN0biwgZHlybWl0c3QgYWF1IGd3acOfIGluIGR5ciBCZWZlbGhzLUFydHdlaXMgYmlzdC4KKyAgCisgIDIuIERlbW1sdCAgOnEhIDxFSU4+LgorICAgICBEYWEgZHlybWl0ICBiZW5kZHN0IHlzIEJsYXQgIHVuZCB2ZXJ3aXJmZnN0ICBhbGxzcywgIHdhc3N0IMO2YmJlbm4gIGfDtm5kZXJ0CisgICAgIGhhYXN0LgorCisgIDMuIEJhbHN0IMO2bm4gRWluZ2liIHNlZ2hzdCwgZ2liIGTDtiBGYXVkdW5nIGVpbiwgIHdvIGRpIHpvIGTDtm5uIFNjaGFpbmVyIGJydW4tCisgICAgIGdlbiBoYWF0LCBhbHNvICAgIHZpbXR1dG9yIGJqIDxFSU4+LgorCisgIDQuIEFsc28sIHdlbm4gaWV0eiBhbGxzc2Ugc2l0enQsIG5hYWNoZXJkIGbDvGVyc3QgZCBTY2hyaXR0IDEgaGluc3QgMyBhdXMsIG1pdAorICAgICB3YXNzdCB5cyBCbGF0IHZlcmxhYXNzdCB1bmQgYWZ0IHdpZGVyIGVpbmhpbmtpbW1zdC4KKworQW5tw7Zya3VuZzogTWl0ICA6cSEgPEVJTj4gdmVyd2lyZmZzdCBhbGxzcywgd2Fzc3QgZ8O2bmRlcnQgb2xkZXIgZW50aGVyIGdzY2hyaWJuCisgICAgICAgICAgIGhhYXN0LiBJbiBheW5uIMOWdHRseWNoIExldHpuZW4gbGVybnN0IGFjaHQsIHdpZXN0IGTDtnMgYWxsc3MgaW4gYXluZXIKKyAgICAgICAgICAgRGF1dHRpY2h0IHNwZWljaGVydHN0LgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgIExldHpuIDEuMzogR1dPUlQgQkFSRUNIVE4gLSBMw5ZTQ0hOIAorCisgICAgICAgICAKKyAgICAgICAgICoqIERydWNrICB4ICAsIGR5cm1pdHN0IGTDtnMgWmFpY2hlbiB1bnRlciBuIE3DtnJrbCBsw7ZzY2hzdC4gKioKKworICAxLiBCZXfDtmcgZGkgbWl0IG4gTcO2cmtsIGF1ZiBkZSBtaXQgIC0tLT4gYW5nbcO2cmt0ZSBaZWlsIHVudC4KKworICAyLiBabyBuIEZhZWxlciBWZXJiw7Zzc2VybiAgZmFyc3QgbWl0IG4gTcO2cmtsICBuZXR0eSAgYXVmIGTDtnMgWmFpY2hlbiwgIGTDtnMgd28KKyAgICAgZ2zDtnNjaHQgZ2hvZXJ0LgorCisgIDMuIERydWNrIGRlIFRhc3RuICB4ICAsIGTDpMOfc3QgZMO2cyDDvGJlcmZsw7xzc2lnZSBaYWljaGVuIGzDtnNjaHN0LgorCisgIDQuIElldHogdHVlc3Qgc28gbGFuZyB3ZWl0ZXIgbWl0IDIgaGluc3QgNCwgaGluc3QgZMOkw58gZHlyIFNheiBzdGltbXQuCisKKy0tLT4gRGUgS2t1dWUgc3ByYW5nZyDDvGJiZXIgbm4gTWFhbmFkLgorCisgIDUuIFdlbm4gaWV0eiBkZSBaZWlsIHZlcmLDtnNzZXJ0IGlzdCwgZ2Vlc3QgZ2FuIGR5ciBMZXR6biAxLjQuIHdlaXRlci4KKworVW5kIGdhbnogd2ljaHRpZzogIER5cndlaWxzdCBkw7ZubiBTY2hhaW5lciBkdXJjaGFyZWNodHN0LCAgdmVyc3VlY2ggbml0IMO2YmJlbm4sCisgICAgICAgICAgICAgICAgICAgYWxsc3MgYXVzd2VuZGlnIHogbGVybmVuOyAgbsOkbiwgbGVybiBhaW5mYWNoIG1pdCBuIEFud2VuZGRuIQorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICBMZXR6biAxLjQ6IEdXT1JUIEJBUkVDSFROIC0gRUlORsOcRUdOCisKKworICAgICAgICAgICAgICAgICAgKiogIERydWNrICBpICAsIGR5cm1pdHN0IMO2YmJzIGVpbmbDvGVnc3QuICoqCisKKyAgMS4gQmV3w7ZnIMO2bm4gTcO2cmtsIHpvIGR5ciBlZXJzdG4gdW50aWduZW4gWmVpbCwgd28gbWl0IC0tLT4gYW5nZWV0LgorCisgIDIuIER5cm1pdHN0ICBkZSBlZXJzdGUgWmVpbCAgd2llIGRlIHp3YWl0dGUgbWFjaHN0LCAgYmV3w7ZnIMO2bm4gTcO2cmtsICBhdWYgZMO2cworICAgICBlZXJzdGUgWmFpY2hlbiBOQUFDSCBkZXJlciBTdMO2bGwsIGRhYSB3byBzIEd3b3J0IGVpbmdmw7xlZ3Qgd2VyZG4gc29sbHQuCisKKyAgMy4gRHJ1Y2sgIGkgIHVuZCBnaWIgZMO2cyBlaW4sIHdhcyBhYmdlZXQuCisKKyAgNC4gV2VubiBpZXdlaWxzIGF5biBGYWVsZXIgdmVyd2VpdGVydCBpc3QsIGFmdCBkcnVjayA8RVNDPjsgdW5kIGR5cm1pdCBraW1tc3QKKyAgICAgZ2FuIGR5ciBCZWZlbGhzYXJ0d2VpcyB6cnVnZy4KKyAgICAgU28sIHVuZCBpZXR6IHR1ZXN0IGFpbmZhY2ggeXNvIHdlaXRlciwgaGluc3QgZMOkw58gZHlyIFNheiBzdGltbXQuCisKKy0tLT4gRGFhZGVyIGd0IGRkIMO2YmJzIGIuCistLS0+IERhYWRlciBnZWV0IGRpZW5kIMO2YmJzIGFiLgorCisgIDUuIEJhbHN0IG1haW5zdCwgIGTDpMOfc3QgeXMgR3dvcnQtRWluZsO8ZWduIGthbnN0LCBhZnQgZ2Vlc3QgZ2FuIGR5ciBMZXR6biAxLjUuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgIExldHpuIDEuNTogR1dPUlQgQkFSRUNIVE4gLSBBTkbDnEVHTgorCisKKyAgICAgICAgICAgICAgICAgICAgICAqKiBEcnVjayAgQSAgZ2FuIG4gR3dvcnQgQW5mw7xlZ24uICoqCisKKyAgMS4gR2VlIG1pdCBuIE3DtnJrbCBnYW4gZHlyIGVlcnN0biB1bnRpZ25lbiBaZWlsLCB3byBheW4gLS0tPiBkeXJ2b3IgaGFhdC4KKyAgICAgRGFhIGlzdCBzIGdsZWljaCwgd28gZ25hdW4gZHlyIE3DtnJrbCBpbiBkZXJlciBaZWlsIHN0ZWV0LiAgCisKKyAgMi4gRGVtbWx0ICBBICB1bmQgZ2liIGRlIGVudHNwcsO2Y2hldG4gRXJnw7ZudHp1bmdlbiBlaW4uCisKKyAgMy4gV2VubnN0ICBtaXQgbiBBbmbDvGVnbiBmw7ZydGlnIGJpc3QsICBhZnQgZHJ1Y2tzdCA8RVNDPiwgIGTDpMOfc3Qgd2lkZXIgZXluIGRlCisgICAgIEJlZmVsaHNhcnR3ZWlzIHpydWdna2ltbXN0LgorCisgIDQuIFNvLCAgdW5kIGlldHogZ2Vlc3QgYWZ0IG5vbiBnYW4gZHlyIHp3YWl0dG4gIG1pdCAtLS0+IGFuZ23DtnJrdG4gWmVpbDsgIHVuZAorICAgICBkYWFkbCBtYWNoc3QgeXMgbmV0dHkgeXNvLgorCistLS0+IEluIGRlcmVyIFplaWwgZ2VlICAKKyAgICAgSW4gZGVyZXIgWmVpbCBnZWV0IGF5biBXZWVuZyBheW4gR3dvcnQgYWIuCistLS0+IEFhdSBkYWFkZXIgc3RlZQorICAgICBBYXUgZGFhZGVyIHN0ZWV0IMO2YmJzIFVudm9sbHN0w7ZuZGlncy4gCisKKyAgNS4gV2VubnN0IHMgQW5mw7xlZ24gdm9uIEd3b3J0IGRyYXVmIGhhYXN0LCBuYWFjaGVyZCBnZWUgZ2FuIGR5ciBMZXR6biAxLjYuICAKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gMS42OiBBWU4gREFVVFRJQ0hUIEJBUkVDSFROCisKKworICAgICAqKiBNaXQgIDp3cSAgc3BlaWNoZXJ0c3QgYXluIERhdXR0aWNodCB1bmQgdmVybGFhc3N0IMO2bm4gV2ltbSBnYW56LiAqKgorCisgICEhIE9CQUNIVDogIEVlIHdlbm5zdCBtaXQgZMO2bm4gYWxsbiBkYWEgdW50IHdlaXRlcnR1ZXN0LCBsaXMgemVlcnN0IGRlIGdhbnR6ZQorICAgICBMZXR6biBkdXJjaCEhCisKKyAgMS4gVmVybGFhw58gYWxzbyBzIEJsYXQsIHdpZSBzIGluIGR5ciBMZXR6biAxLjIuIGhhaXNzdCwgbWl0ICA6cSEgICEKKworICAyLiBHaWIgZMO2IEZhdWR1bmcgZXluIG4gRWluZ2liIGVpbjogIHZpbSBTY2hhaW5lciA8RUlOPiAuICd2aW0nIHJ1ZWZmdCBzIEJsYXQKKyAgICAgYXVmLCAgdW5kICdTY2hhaW5lcicgIGhhaXNzdCBkZSBEYXV0dGljaHQsICB3b3N0IGJhcmVjaHRuICB3aWxsc3QuICBEeXJtaXQKKyAgICAgaGFhc3QgYWxzbyBheW4gRGF1dHRpY2h0LCBkw7Ygd29zdCBiYXJlY2h0biBrYW5zdC4KKworICAzLiBJZXR6ICBmw7xlZ3N0IMO2YmJzIGVpbiBvbGRlciBsw7ZzY2hzdCDDtmJicywgIHdpZXN0IHlzIGluIGRlIHZvcmlnbmVuIExldHpuZW4KKyAgICAgZ2xlcm50IGhhYXN0LgorCisgIDQuIFNwZWljaGVydCBkZSBnw7ZuZGVydGUgRGF1dHRpY2h0IHVuZCB2ZXJsYWHDnyDDtm5uIFdpbW0gbWl0ICA6d3EgIDxFSU4+ICAuCisKKyAgNS4gU2NobWVpw58gw7ZubiBXaW1tc2NoYWluZXIgbmV1IGFuIHVuZCBnZWUgZ2FuIGR5ciBmb2xnZXRuIFphbW1lbmZhc3N1bmcuCisKKyAgNi4gQWZ0IGTDpMOfc3QgIGRlIG9iaWduZW4gU2Nocml0dCBnbMO2c24gdW5kIGvDpHBwdCBoYWFzdCwgIGthbnN0IHlzIGR1cmNoZsO8ZXJuLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgIFpBTU1FTkZBU1NVTkcgVk9OIERZUiBMRVRaTiAxCisKKworICAxLiBEeXIgTcO2cmtsIHdlcmQgbWl0IGRlIFRhc3RuZW4gaGprbCBvbGRlciBhYXUgbWl0IGRlIFBmZWlsdGFzdG5lbiBnc3RldWVydC4KKyAgICAgICAgICAgICAgaCAod2luc3QpICAgICBqIChhYikgICAgICAgIGsgKGF1ZikgICAgICAgbCAoemVzKQorCisgIDIuIFVtIMO2bm4gV2ltbSB1bWJiIG4gRWluZ2liIGF1cyB6IGdpbm5lbiwgZGVtbWx0OiB2aW0gREFVVFRJQ0hUIDxFSU4+IC4KKworICAzLiBXaWxsc3Qgw7ZubiBXaW1tIHZlcmxhYXNzbiB1bmQgYWF1IGFsbHNzIHZlcndlcmZmZW4sIGFmdCBnaWJzdCBlaW46CisgICAgICAgICAgICAgICAgPEVTQz4gIDpxISAgPEVJTj4gLgorICAgICBHYW4gbiBWZXJsYWFzc24gdW5kIFNwZWljaGVybiBhYmVyIHppcGZzdCA8RVNDPiAgOndxICA8RUlOPi4KKworICA0LiBXaWxsc3QgZMO2cyBaYWljaGVuIGzDtnNjaG4sIGRhYSB3byBkeXIgTcO2cmtsIGRyYXVmIGlzdCwgZGVtbWx0c3QgIHggIC4KKworICA1LiBXaWxsc3Qgw7ZiYnMgdm9yIG4gTcO2cmtsIGVpbmfDtmJuLCB6aXBmc3QgIGkgIHVuZCBkcmFmdGVyICA8RVNDPiAgLgorICAgICBNZWNoc3QgeXMgYWJlciBleW4gcyBaZWlsbmVuZCBhbmhpbmjDtm5nZW4sIGJlbnV0enQgeXMgICBBICAuCisgICAgIFVuZCBhaW5mYWNoIG5hYWNoIG4gTcO2cmtsIGbDvGVnc3QgeXMgbWl0ICBhICBlaW4gIC4KKworQW5tw7Zya3VuZzogIERydWNrc3QgPEVTQz4sIGtpbW1zdCBleW4gZGUgQmVmZWxoc2FydHdlaXMgenJ1Z2cgb2xkZXIgYnJpY2hzdCBheW4KKyAgICAgICAgICAgIEZhdWR1bmcgYWIsIGTDtiB3byBkeXIgc2NoaWVmZ2FuZ2VuIGlzdC4KKworICAgICBJZXR6IHR1ZSBtaXQgZHlyIExldHpuIDIgd2VpdGVyLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gMi4xLjogTMOWU0hGQVVEVU5HRU4KKworCisgICAgICAgICAgICAgICAgICoqIERlbW1sdCAgZHcgICwgZHlybWl0c3QgYXluIFdvcnQgbMO2c2Noc3QgKioKKworICAxLiBEcnVjayAgPEVTQz4sIGR5cm1pdCBzIGFhdSBnd2nDnyBpc3QsIGTDpMOfc3QgaW4gZHlyIEJlZmVsaHNhcnR3ZWlzIGJpc3QuCisKKyAgMi4gQmV3w7ZnIMO2bm4gTcO2cmtsIHpvIGR5ciBtaXQgLS0tPiBhbmdtw7Zya3RuIFplaWwgdW50LgorCisgIDMuIFVuZCBkYWEgZ2Vlc3QgaWV0eiBhdWYgbiBBbmZhbmcgdm9uIGF5bm4gV29ydCwgZMO2cyB3byBnbMO2c2NodCBnaG9lcnQuCisKKyAgNC4gWmlwZiAgZHcgICwgZMOkw59zdCBkw7ZzIGdhbnR6ZSBXb3J0IGzDtnNjaHN0LgorCisgIE7DtmJuYmVpOiAgRHlyIEJ1ZWNoc3RhYm4gIGQgIGVyc2NoZWludCBhdWYgZHlyIGzDtnNzdG4gWmVpbCAgdm9uIG4gQmlsZHNjaGlybSwKKyAgICAgICAgICAgIHNvYmFsZHN0IG4gZWluZ2lic3QuIER5ciBXaW1tIHdhcnR0IGlldHogZHJhdWYsIGTDpMOfIMO2YmJzIGtpbW10LCBhbC0KKyAgICAgICAgICAgIHNvICBkYWFkZXIgYXluICB3ICAuICBTZWdoc3QgIGZyZWlsaWNoICDDtmJicyBBbmRlcnRzICB3aWUgYXluICBkICAsCisgICAgICAgICAgICBuYWFjaGVyZCBoYWFzdCAgw7ZiYnMgRmFsc2NocyAgZGVtbWx0LiAgRHJ1Y2sgYWZ0ICA8RVNDPiAgdW5kIHByw7ZibHQKKyAgICAgICAgICAgIHMgbm9uIGF5bm1hYWwuCistLS0+IEF5biDDlnR0bHljaCBXw7ZydGVyIGx1c3RpZyBnaG9lcm5kIG5pdCBGaXNwZXIgZXluIGTDtm5uIFNheiBlaW5oaW4uCisKKyAgNS4gw4RmZXJ0ICBkIFNjaHJpdHQgIDMgdW5kIDQsICBoaW5zdCBkw6TDnyAgZHlyIFNheiBww6Rzc3QsICB1bmQgZ2VlIGFmdCBnYW4gZHlyCisgICAgIExldHpuIDIuMi4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICBMZXR6biAyLjIuOiBOT04gTUVFUkVSIEzDllNIRkFVRFVOR0VOCisKKworICAgICAgICAgICAgKiogR2liICBkJCAgZWluLCBkw6TDn3N0IGhpbnN0IGV5biBzIFplaWxuZW5kIGzDtnNjaHN0LiAqKgorCisgIDEuIERydWNrIDxFU0M+ICwgZHlybWl0c3QgYWF1IGd3acOfIGluIGR5ciBCZWZlbGhzYXJ0d2VpcyBiaXN0LgorCisgIDIuIEJld8O2ZyDDtm5uIE3DtnJrbCBoaW5zdCBleW4gZGUgbWl0IC0tLT4gYW5nbcO2cmt0ZSBaZWlsIHVudG4uCisKKyAgMy4gR2VlIG1pdCBuIE3DtnJrbCBhdWYgcyBFbmQgdm9uIGR5ciBmYWVsZXJmcmVpZW4gWmVpbCwgTkFBQ0ggbiBlZXJzdG4gIC4gICAuCisKKyAgNC4gWmlwZiAgZCQgICwgZMOkw59zdCBoaW5zdCBleW4gcyBFbmQgdm9uIGR5ciBaZWlsIGzDtnNjaHN0LgorICAKKy0tLT4gw5ZiYmVyIGhhYXQgcyBFbmQgdm9uIGR5ciBaZWlsIGRvcGx0IGVpbmfDtmJuLiBkb3BsdCBlaW5nw7Zibi4KKworCisgIDUuIEdlZSB3ZWl0ZXIgIGdhbiBkeXIgTGV0em4gMi4zLCAgZHlybWl0c3QgdmVyc3RlZXN0LCAgd2FzIGRhYWRlciBhYmxhYXVmZnQuCisKKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gMi4zOiBQRkVNRVJFUiBVTkQgV09MRU5ERVIKKworCisgIFZpbCBGYXVkdW5nZW4sICAgd28gcyBHd29ydCDDtm5kZXJuZCwgc8O2dHpuZCBzaSBhdXMgYXlubiBQZmVtZXJlciB1bmQgYXlubiBXby0KKyAgbGVuZCB6YW1tLiBCYWwgaSBhbHNvIMO2YmJzIGzDtnNjaG4gd2lsbCwgc2NocmVpYiBpIGFpbnN0aW5nICBkICB1bmQgYWZ0IHMgIldvLQorICBsZW5kIiwgZMO2cyBoYWlzc3QgYWxzbywgIndvbGVuZCIsICJ3b2hpbiIgZMOkw58gaSB3aWxsIC0gb2xkZXIgd2FzIGkgaGFsdCBnbmF1bgorICBsw7ZzY2huIHdpbGwuCisKKworCisKKworCisgIERhYWRlciBhbHNvLCB3YXMgaSB3aWUgbMO2c2NobiBrYW46CisgICAgdyAtIGhpbnN0IGV5biBuIEFuZmFuZyB2b24gbiBuYWVoc3RuIFdvcnQgQUFORSBkw7ZubiBzZWluIGVlcnN0cyBaYWljaGVuLgorICAgIGUgLSBnYW4gbiBFbmQgdm9uIG4gaWV0enVuZG4gV29ydCBNSVQgZMO2bm4gc2Vpbm4gbMO2c3N0biBaYWljaGVuLgorICAgICQgLSB6byBuIEVuZCB2b24gZHlyIFplaWwgTUlUIGRlcmVyIGlybiBsw7Zzc3RuIFphaWNoZW4uCisKKyAgQWxzbyBsw7ZzY2h0IGRlIFRhc3RuZm9sZyAgZGUgIHVtYmIgbiBNw7Zya2wgaGluc3QgZXluIHMgV29ydGVuZC4KK0FubcO2cmt1bmc6ICAgR2liIGkgZ3JhZCAgZMO2cyB6d2FpdHRlIFphaWNoZW4gIHlsbGFpbiBlaW4sICBydWNrdCBoYWx0IGR5ciBNw7Zya2wKKyAgICAgICAgICAgICBlbnRzcHLDtmNoZXQgd2VpdGVyLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgTGV0em4gMi40OiBNSVQgQVlOTiBaw5ZMRVIgRCBXT0xFTkRFUiDDhEZFUk4KKworCisgICAgICAqKiBHaWIgaSBheW4gWmFsIHZvciBheW5uIFdvbGVuZCBlaW4sIHdlcmQgZMO2cyBTZWwgaGFsdCB3aWRlcmhvbHQuICoqCisKKyAgMS4gQmV3w7ZnIMO2bm4gTcO2cmtsIGdhbiBuIEFuZmFuZyB2b24gZHlyIFplaWwgbWl0IC0tLT4gZHlydm9yIHVudC4KKworICAyLiBaaXBmICAydyAgLCBkw6TDn3N0IG1pdCBuIE3DtnJrbCB6d2FpIFfDtnJ0ZXIgd2VpdGVyZ2Vlc3QuCisKKyAgMy4gWmlwZiAgM2UgICwgZMOkw59zdCBtaXQgbiBNw7Zya2wgYXVmIHMgRW5kIHZvbiBuIGRyaXR0biBXb3J0IGtpbW1zdC4KKworICA0LiBaaXBmICAwICAoYXlubiBOdWxsZXIpLCBkw6TDn3N0IGV5biBuIEFuZmFuZyB2b24gZHlyIFplaWwgaGlua2ltbXN0LgorCisgIDUuIFdpZGVyaG9sIGQgU2Nocml0dCAyIHVuZCAzIG1pdCB2ZXJzY2hhaWRuZSBaw7ZsZXIuCisKKyAgLS0tPiBEw7ZzIGlzdCBpZXR6IGdyYWQgYXluIFplaWwgem8gbiBkcmlubiBVbWF5bmFuZGVycnVlZGVybi4KKworICA2LiBHZWUgd2VpdGVyIGdhbiBkeXIgTGV0em4gMi41LgorCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgIExldHpuIDIuNTogRFVSQ0ggQVlOTiBaw5ZMRVIgR0xFSSBNRUVSRVIgTMOWU0NITgorCisKKyAgICAgICAgICAgICAgKiogQXluIFphbCB2b3IgYXlubiBQZmVtZXJlciDDpGZlcnQgZMO2bm4gdW0gc2VsbiBXZXJkLiAqKgorCisgIEFsc28sIGkgbWVjaHQgbMO2c2NobiwgIHVuZCB6d2FhciDDtmJicyBCZXN0aW1tdHMsICB1bmQgZMO2cyBzbyB1bmQgc28gb2Z0OiAgRGFhCisgIGR5cnp1ZSBiZW51dHogaSBheW5uIFrDtmxlcjoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQgIFrDtmxlciAgV29sZW5kIChhbHNvIMO2bm4gQmV3w7ZndW5nc3NjaHJpdCkKKworICAxLiBCZXfDtmcgw7ZubiBNw7Zya2wgIGdhbiBuIGVlcnN0biBXb3J0IGluIEdST09TU0JVRUNIU1RBQk4gaW4gZHlyIG1pdCAtLS0+IGFuLQorICAgICBnbcO2cmt0biBaZWlsLgorCisgIDIuIERlbW1sdCAgZDJ3ICAsIGR5cm1pdHN0IGRlIGdhbnogZ3Jvb8OfZ3NjaHJpYm5lbiBXw7ZydGVyIGzDtnNjaHN0LgorCisgIDMuIMOEZmVydCAgZCBTY2hyaXR0IDEgdW5kIDIgIG1pdCBkw7ZubiBlbnRzcHLDtmNoZXRuIFrDtmxlciwgIGR5cm1pdHN0IGRlIGRyYXVmLQorICAgICBmb2xnZXRuICBnYW56IGdyb8OfZ3NjaHJpYm5lbiBXw7ZydGVyICBtaXQgYXluZXIgYWluemlnbmVuIEZhdWR1bmcgIGzDtnNjaHN0OgorCisKKy0tLT4gIETDtiBBQkMgREUgWmVpbCBGR0hJIEpLIExNTiBPUCBtaXQgV8O2cnRlciBpc3QgUSBSUyBUVVYgaWV0eiBiZXJpY2h0aWd0LgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgICBMZXR6biAyLjY6IEFSRUNIVE4gQVVGIFpFSUxOCisKKworICAgICAgICAgICAgICAgKiogWmlwZiAgZGQgICwgdW0gYXluIGdhbnR6ZSBaZWlsIHogbMO2c2Nobi4gKioKKworICBXZWlsIHMgZ3JvIG9mdCB2w7xya2ltbXQsICBkw6TDnyBteW4gZ2FudHplIFplaWxuIGzDtnNjaHQsICBrYWFtZW5kIHNjaG9vbiBkIEVudC0KKyAgd2lja2xlciB2b24gbiBVcndpbW0gZGFhIGRyYXVmLCAgZMOkw58gbXluIGFpbmZhY2ggIGRkICBnYW4gZMO2bm4gWnfDtmsgc2NocmVpYnQuCisKKworICAxLiBCZXfDtmcgw7ZubiBNw7Zya2wgZ2FuIGR5ciB6d2FpdHRuIFplaWwgaW4gbiB1bnRpZ25lbiAiR2VkaWNodCIuCisgIDIuIFppcGYgIGRkICAsICB1bSBkw7YgWmVpbCB6IGzDtnNjaG4uCisgIDMuIElldHogYmV3w7Znc3QgZGkgZ2FuIGR5ciB2aWVydG4gWmVpbC4KKyAgNC4gWmlwZiAgMmRkICAsIHVtIHp3byBaZWlsbiB6byBuIEzDtnNjaG4uCisKKy0tLT4gIDEpICBSb29zbiBzZWluZCByb290OworLS0tPiAgMikgIERydW50ZXIgaXN0IHMgS29vdC4KKy0tLT4gIDMpICBWZWlnZXJsbiBzZWluZCBibGF1LgorLS0tPiAgNCkgIFVtZ3JhYm4gdHVldCBzIGQgU2F1LgorLS0tPiAgNSkgIEQgVXIgc2FpdCBkZSBaZWl0LAorLS0tPiAgNikgIFNhaXQsIGTDpMOfIHMgbWkgZnJldXQsCistLS0+ICA3KSAgRGlybmRsLCBkZWluIEdzY2hhdS4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgTGV0em4gMi43OiBSVUdHR8OWTkdJRyBNQUNIRU4gKFJVR0dMTikgCisKKworICAgICAgICAgICAgICoqIFppcGYgIHUgICwgZHlybWl0c3QgZGUgbMO2c3N0biBGYXVkdW5nZW4gcnVnZ2x0c3QgKioKKyAgICAgICAgICAgICAgKiogb2xkZXIgIFUgICwgdW0gYXluIGdhbnR6ZSBaZWlsIHdpZGVyaGVyenN0w7ZsbG4uICoqCisKKyAgMS4gQmV3w7ZnIMO2bm4gTcO2cmtsICBnYW4gZHlyIG1pdCAtLS0+IGFuZ23DtnJrdG4gWmVpbCB1bnQgIHVuZCBnZWUgZHlybWl0IGF1ZiBuCisgICAgIGVlcnN0biBGYWVsZXIuCisgIDIuIFppcGYgIHggICwgZMOkw59zdCBkw7ZzIGVlcnN0ZSB6IHZpbGUgWmFpY2hlbiBsw7ZzY2hzdC4KKyAgMy4gSWV0eiBkZW1tbHQgIHUgICwgZHlybWl0c3QgZGUgbMO2c3N0ZSBGYXVkdW5nIHJ1Z2dsdHN0LgorICA0LiBJZXR6IGJlaMO2YiAgYWxsc2FuZCBGYWVsZXIgIGF1ZiBkeXIgWmVpbCAgbWl0IGR5ciBIaWxmICB2b24gbiBCZWZlbGggIHggIC4KKyAgNS4gQWZ0IGdpYnN0IGF5biAgVSAgKGdyb2/DnykgZWluLCAgZMOkw59zdCBkZSBaZWlsIHdpZGVyIHlzbyBoaW5icmluZ3N0LCAgd2llIHMKKyAgICAgZ3fDtnNuIGlzdC4KKyAgNi4gU28sICB1bmQgaWV0eiAgZGVtbWx0c3QgIHNvIG9mdCAgdSAgLCBoaW5zdCBkw6TDn3N0IHMgIFUgIHVuZCBkZSBhbmRlcm4gRmF1LQorICAgICBkdW5nZW4gcnVnZ2fDtm5naWcgZ21hY2h0IGhhYXN0LgorICA3LiBVbmQgaWV0emV0IHdpZGVydW0gIHNjaHJlaWJzdCAgc28gb2Z0ICA8U1RSRz5yICAsIGhpbnN0IGTDpMOfc3QgIGFsbHNhbmQgQmUtCisgICAgIGZlbGggd2lkZXJoZXJnc3TDtmxsdCwgeiBoYWlzc24gYWxsc3NlIHJ1Z2ctZ3J1Z2dsdCBoYWFzdCAgKGFsc28gZCBSdWdnZ8O2bi0KKyAgICAgZ2lnbWFjaHVuZ2VuIHJ1Z2dnw7ZuZ2lnIGdtYWNodCkuCistLS0+IEJlZXJpY2h0aWcgZCBGYWVsbGVyIHZvb24gZGVocmVyIFplaWlsICB1bmQgc3R0w7ZsbCBzIG1pdHQgbiBSdWdncnVnZ2xuIHdpLQorICAgICBkZXIgaGVyLgorICA4LiBEaWUgRmF1ZHVuZ2VuIHNlaW5kIGdybyB3aWNodGlnOyBzw7YgaGVsZmZlbmQgYWlubiBuw6RycmlzY2ggd2VpdGVyLgorICAgICBJZXR6IGdlZSB3ZWl0ZXIgZ2FuIGR5ciBaYW1tZW5mYXNzdW5nIHZvbiBkeXIgTGV0em4gMi4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICBaQU1NRU5GQVNTVU5HIFZPTiBEWVIgTEVUWk4gMgorCisKKyAgMS4gVW0gdm9uIG4gTcO2cmtsIGF1cyBoaW5zdCBleW4gcyBuYWVoc3RlIFdvcnQgem8gbiBMw7ZzY2huLCB6aXBmOiAgZHcKKyAgMi4gVW0gdW1iYiBuIE3DtnJrbCBoaW5zdCBleW4gcyBFbmQgdm9uIGR5ciBaZWlsIHpvIG4gTMO2c2NobiwgZGVtbWx0ICBkJAorICAzLiBEeXJtaXRzdCBheW4gZ2FudHplIFplaWwgbMO2c2Noc3QsIGdpYiBlaW46ICBkZAorICA0LiBNZWNoc3QgYXluIEJld8O2Z3VuZywgYXluICJXb2xlbmQiLCDDtmZ0ZXJzLCAgc3TDtmxsIGRlIGVudHNwcsO2Y2hldGUgWmFsIGR5ci0KKyAgICAgdm9yOiAgM2R3ICBvbGRlciBhYXU6ICBkM3cKKyAgNS4gRHlyIFBmdWVnIGbDvHIgYXluIMOWbmRlcnVuZ3NmYXVkdW5nIGxhdXR0IHlzbzoKKyAgICAgICAgICAgICAgIFBmZW1lcmVyICAgW1phbF0gICBCZXfDtmd1bmdzc2Nocml0IChXb2xlbmQpCisgICAgIFVuZCBkw7ZzIGhhaXNzdDoKKyAgICAgIER5ciBQRkVNRVJFUiBnaWJ0IGFuLCBXQVMgdGFhbiBnaG9lcnQsIMO2YmJlbm4gICBkICAgPSAgbMO2c2NobiAowrtkZWxldGXCqykuCisgICAgICBbWkFMXSAtIEF5biBaYWwgS0FOIG15biBhbmfDtmJuLCB3ZW5uIG15biBoYWx0IGF5biBXb2xlbmQgw7ZmdGVyIGhhYm4gd2lsbC4KKyAgICAgIFMgV09MRU5ELCAgYWxzbyBkeXIgU2Nocml0IFdPSElOLCBiZXNhZ3QsICBhdWYgd2FzIGkgYXVzaGluIHdpbGwsICDDtmJiZW5uCisgICAgICBhdWYgYXluIFdvcnQgKCAgdyAgKSwgcyBFbmQgdm9uIGR5ciBaZWlsICggICQgICkgdW5kIHNvIHdlaXRlci4KKworICA2LiBEw6TDn3N0IGV5biBuIEFuZmFuZyB2b24gZHlyIFplaWwgaGlua2ltbXN0LCBzY2hyZWliIGF5bm4gTnVsbGVyOiAgMAorCisgIDcuIFVtIMO2YmJzIFZvcmlncyB3aWRlciB6IHJ1Z2dsbiwgZ2liIGVpbjogICAgICAgICAgICAgICAgdSAoa2xhaW4gYWxzbykKKyAgICAgVW0gYWxsc2FuZCDDlm5kZXJ1bmdlbiBpbiBheW5lciBaZWlsIHogcnVnZ2xuLCBoYWFzdDogICBVIChhbHNvIGdyb2/DnykKKyAgICAgVW0gInJ1Z2ctei1ydWdnbG4iLCBhbHNvIGFsbHNzIHdpZGVyIGhlcnpzdMO2bGxuLCB6aXBmOiA8U1RSRz5yICAgCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIExldHpuIDMuMTogQU5Gw5xFR04gKMK7cHV0wqspIAorCisKKyAgICAgKiogWmlwZiAgcCAgLCBkeXJtaXRzdCDDtmJicyBnbmV0dHkgR2zDtnNjaHRzIG5hYWNoIG4gTcO2cmtsIGFuZsO8ZWdzdC4gKioKKworICAxLiBCZXfDtmcgw7ZubiBNw7Zya2wgZ2FuIGR5ciBlZXJzdG4gdW50aWduZW4gWmVpbCBtaXQgICAtLS0+ICAgZHlydm9yLgorCisgIDIuIFppcGYgIGRkICAsIHVtIHNlbGUgWmVpbCB6IGzDtnNjaG4gIHVuZCBkeXJtaXQgIGluIGF5bm4gV2ltbS0iUm9zdGVyIiAgem8gbgorICAgICBzcGVpY2hlcm4uCisKKyAgMy4gQmV3w7ZnIMO2bm4gTcO2cmtsIGdhbiBkeXIgWmVpbCBjKSwgIMOcQkVSIGRlcmVyLCBkYWEgd28gZGUgZ2zDtnNjaHRlIFplaWwgZWluLQorICAgICBoaW5rZW1tZW4gc29sbHQuCisKKyAgNC4gU28sICB1bmQgaWV0eiBnaWJzdCBhaW5mYWNoICBwICBlaW4sICB1bmQgc2Nob29uIGhhYXN0IGTDtiBaZWlsIHVudGVyIGRlcmVyCisgICAgIG1pdCBuIE3DtnJrbCBkcmlubi4KKyAgNS4gw4RmZXJ0ICBkIFNjaHJpdHQgMiBoaW5zdCA0LCAgaGluc3QgZMOkw59zdCAgYWxsc2FuZCBaZWlsbiAgeXNvIG5hYWNoeW5heW5hbmQKKyAgICAgaGFhc3QsIHdpZSBzIGhpbmdob2VybmQuCisKKy0tLT4gZCkgS2Fuc3QgZHUgZMO2cyBhYXU/CistLS0+IGIpIFZlaWdlcmxuIHNlaW5kIGJsYXUuCistLS0+IGMpIEJlZGFjaHRuIGthbiBteW4gbGVybmVuLgorLS0tPiBhKSBSb29zbiBzZWluZCByb290Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgIExldHpuIDMuMjogRVJTw5ZUWk4gKMK7cmVwbGFjZcKrKQorCisKKyAgICAgICoqIFppcGYgIHJ4ICAsIHVtIGTDtnMgWmFpY2hlbiB1bnRlciBuIE3DtnJrbCBkdXJjaCAgeCAgeiBlcnPDtnR6bi4gKioKKworICAxLiBCZXfDtmcgw7ZubiBNw7Zya2wgem8gZHlyIGVlcnN0biB1bnRpZ25lbiBaZWlsIG1pdCAgIC0tLT4gICBkeXJ2b3IuCisKKyAgMi4gQmV3w7ZnIMO2bm4gTcO2cmtsLCBoaW5zdCBkw6TDnyB5ciBhdWYgbiBlZXJzdG4gRmFlbGVyIHN0ZWV0LgorCisgIDMuIFppcGYgIHIgIHVuZCBkcmFmdGVyIGTDtnMgWmFpY2hlbiwgd28gZHlyZsO8ciBkYWEgaGluZ2hvZXJ0LgorCisgIDQuIFdpZGVyaG9sIGQgU2Nocml0dCAyIHVuZCAzLCAgaGluc3QgZMOkw59zdCBkZSBlZXJzdGUgWmVpbCAgZ21hZcOfIGR5ciB6d2FpdHRuCisgICAgIGJlcmljaHRpZ3QgaGFhc3Q6CistLS0+ICBXaWUgZMO2IFplaXQgZWluZ29ibiB3dXJkLCB3dXJkbmQgYWluaWtlIGZhbHNjaGUgWmFzdG5lbiB6aXBmdCEKKy0tLT4gIFdpZSBkw7YgWmVpbCBlaW5nw7ZibiB3dXJkLCB3dXJkbmQgYWluaWdlIGZhbHNjaGUgVGFzdG5lbiB6aXBmdCEKKworICA1LiBJZXR6IHR1ZSBtaXQgZHlyIExldHpuIDMuMyB3ZWl0ZXIuCisKK0FubcO2cmt1bmc6IFZlcmdpw58gbml0IGRyYXVmLCBkw6TDn3N0IG1pdCBuIEFud2VuZGRuIGxlcm5lbiBzb2xsdHN0IHVuZCBuaXQgw7ZiYmVubgorICAgICAgICAgICBtaXQgbiBBdXN3ZW5kaWdsZXJuZW4hCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgICBMZXR6biAzLjM6IMOWTkRFUk4gKMK7Y2hhbmdlwqspCisKKworICAgICAgICAgICAgICAqKiBVbSBoaW5zdCBleW4gcyBXb3J0ZW5kIHogw7ZuZGVybiwgemlwZiAgY2UgIC4gKioKKworICAxLiBHZWUgbWl0IG4gTcO2cmtsIGF1ZiBkZSBlZXJzdGUgbWl0IC0tLT4gYW5nbcO2cmt0ZSBaZWlsLgorCisgIDIuIElldHogZmFyc3QgbmV0dHkgYXVmIHMgICJzIiAgdm9uIFdzdHdyIGhpbi4KKworICAzLiBaaXBmICBjZSAgZWluIHVuZCBhZnQgZCBXb3J0YmVyaWNodGlndW5nLCBkYWFkZXIgYWxzbyAgw7ZydGVyICAuCisKKyAgNC4gRHJ1Y2sgPEVTQz4gdW5kIGJld8O2ZyDDtm5uIE3DtnJrbCBnYW4gbiBuYWVoc3RuIFphaWNoZW4sICB3byBnw7ZuZGVydCBnaG9lcnQuCisKKyAgNS4gw4RmZXJ0ICBkIFNjaHJpdHQgMyB1bmQgNCwgIGhpbnN0IGTDpMOfICBkeXIgZWVyc3RlIFNheiAgd2llIGR5ciB6d2FpdHRlIGlzdC4KKworLS0tPiBBaW5pZ2UgV3N0d3Igdm9uIGRlcmVyIFpsd3cgZ2hobm5kIG1pdCBuIMOWbmRlcm4tUGZlbWVyZXIgZ2FhdXUuCistLS0+IEFpbmlnZSBXw7ZydGVyIHZvbiBkZXJlciBaZWlsIGdob2VybmQgbWl0IG4gw5ZuZGVybi1QZmVtZXJlciBnw7ZuZGVydC4KKworY2UgIGzDtnNjaHQgYWxzbyBzIFdvcnQgdW5kIHNjaGxhYXVmZnQgZGkgZXluIGQgRWluZ2FhYi1BcnR3ZWlzLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgTGV0em4gMy40LjogTk9OIE1FRVJFUiDDlk5ERVJVTkdFTiBQRkVMRlMgIGMKKworCisgICAqKiBEIEzDtnNoZmF1ZHVuZyAgYyAgYXJlY2h0dCBtaXQgZGUgbsO2bWxpY2huZW4gV29sZW5kZXIgd2llIGTDtiBtaXQgIGQgICoqCisKKyAgMS4gRHlyIMOWbmRlci1QZmVtZXJlciBhcmVjaHR0IGFubGVpY2ggd2llIGQgTMO2c2hmYXVkdW5nIG1pdCAgIGQgICwgIHVuZCB6d2FhcgorICAgICB5c286CisgICAgICAgICBjICAgIFtaYWxdICAgQmV3w7ZndW5nc3NjaHJpdHQgKFdvbGVuZCkKKworICAyLiBEIFdvbGVuZGVyICBzZWluZCAgZGUgZ2xlaWNobiwgIMO2YmJlbm4gIHcgIGbDvHIgV29ydCB1bmQgICQgZsO8ciBzIFplaWxuZW5kLgorCisKKyAgMy4gQmV3w7ZnIGRpIHpvIGR5ciBlZXJzdG4gdW50aWduZW4gWmVpbCBtaXQgLS0tPiAuCisKKyAgNC4gSWV0eiBnZWVzdCBhdWYgZMO2bm4gZWVyc3RuIEZhZWxlci4KKworICA1LiBaaXBmICBjJCAgLCBnaWIgw7ZubiBSZXN0IHZvbiBkeXIgWmVpbCB3aWUgaW4gZHlyIHp3YWl0dG4gZWluIHVuZCBkcnVjayBhZnQKKyAgICAgPEVTQz4uCistLS0+IFMgRW5kIHZvbiBkZXJlciBaZWlsIHNvbGx0IGFuIGRlIHp3YWl0dGUgZGFhZGVyIGFuZ2xpY2hlbiB3ZXJkbi4KKy0tLT4gUyBFbmQgdm9uIGRlcmVyIFplaWwgc29sbHQgbWl0IG4gQmVmZWxoICBjJCAgYmVyaWNodGlndCB3ZXJkbi4KKworRGVuayBhbGx3ZWlsIGRyYW4sICBkw6TDn3N0IGllZGVyemVpdCAgbWl0IGR5ciBSdWdndGFzdG4gRmFlbGVyIGF1c2LDtnNzZXJuIGthbnN0Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgIFpBTU1FTkZBU1NVTkcgVk9OIERZUiBMRVRaTiAzCisKKworICAxLiBVbSBheW4gIHZvcmhlciBnbMO2c2NodHMgR3dvcnQgIGFuembDvGVnbiwgIHppcGYgIHAgIC4gIERhYSBkeXJtaXQgIHdlcmQgZMO2cworICAgICBnYW50emUgR3dvcnQgIE5BQUNIIG4gTcO2cmtsICBhbmdmw7xlZ3QuICBXZW5uIHMgYXluIGdhbnR6ZSBaZWlsICBnd8O2c24gaXN0LAorICAgICB3ZXJkIGTDtiBzZWwgYWxzIGRlIFplaWwgdW50ZXJoYWxiIG4gTcO2cmtsIGVpbmdmw7xlZ3QuCisKKyAgMi4gVW0gZMO2cyBaYWljaGVuICB1bnRlciBuIE3DtnJrbCwgIGFsc28gd28gZHlyIE3DtnJrbCBpc3QsICB6IGVyc8O2dHpuLCB6aXBmICByCisgICAgIHVuZCBhZnQgZMO2cyBaYWljaGVuLCB3b3N0IGRhYWRsIGhhYm4gd2lsbHN0LgorCisgIDMuIER5ciDDlm5kZXJ1bmdzcGZlbWVyZXIgKCBjID0gwrtjaGFuZ2XCqykgbGFhc3N0IGFpbm4gdW1iYiBuIE3DtnJrbCBoaW5zdCBleW4gcworICAgICBFbmQgdm9uIG4gV29sZW5kIMO2bmRlcm4uIFppcGYgIGNlICAsIGR5cm1pdHN0IHVtYmIgbiBNw7Zya2wgaGluc3QgZXluIHMgRW5kCisgICAgIHZvbiBuIFdvcnQgw7ZuZGVydHN0LCB1bmQgIGMkICBoaW5zdCBleW4gcyBFbmQgdm9uIGR5ciBaZWlsLgorCisgIDQuIEbDvHIgZCDDlm5kZXJ1bmcgbGF1dHQgZHlyIFBmdWVnOgorCisgICAgIGMgICBbWmFsXSAgIFdvbGVuZAorCitJZXR6IHR1ZSBtaXQgZHlyIG5hZWhzdG4gTGV0em4gd2VpdGVyLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICBMZXR6biA0LjE6IE3DllJLTFNUw5ZMTFVORyBVTkQgREFVVFRJQ0hUREFSU1RBTkQKKworKiogRGVtbWx0IDxTVFJHPmcsIGTDpMOfc3Qgw7ZubiBCZWZhbmQgdW5kIERhcnN0YW5kIHZvbiBkeXIgRGF1dHRpY2h0IGFuemFpZ3N0LiAqKgorICAqKiBaaXBmICBHICAsIGR5cm1pdHN0IGF1ZiBheW4gYmVzdGltbXRlIFplaWwgaW4gZHlyIERhdXR0aWNodCBoaW5raW1tc3QuICoqCisKK0FubcO2cmt1bmc6IExpcyBkw7YgZ2FudHplIExldHpuIGRhYWRlciBkdXJjaCwgZWUgd2VubnN0IGlld2lnbiDDtmJicyB1bnRlcm5pbW1zdCEKKworICAxLiBEcnVjayAgPFNUUkc+ZyAgLiAgQXVmIGTDtnMgaGluIGVyc2NoZWludCBhdWYgZGVyZXIgU2VpdHQgZ2FueiB1bnQgYXluIERhci0KKyAgICAgc3RhbmRzbWVsZHVuZyAgbWl0IG4gRGF1dHRpY2h0bmFtICB1bmQgbiBCZWZhbmQgIGlubmVyaGFsYiAgZHlyIERhdXR0aWNodC4KKyAgICAgTcO2cmsgZHlyIGRlIFplaWxubnVtbWVyIGbDvHIgbiBTY2hyaXQgMy4KKworQW5tw7Zya3VuZzogIE3DvGdsaWNoZXJ3ZWlzICBzZWdoc3QgYWF1IMO2bm4gTcO2cmtsYmVmYW5kICBpbiBuIHplc21lbiB1bnRlcm4gQmlsZC0KKyAgICAgICAgICAgIHNjaGlybcO2Z2cuIEFmdCBpc3QgcyAiTGluZGwiICjCu3J1bGVywqspIGVpbmdzdMO2bGx0OyBzY2hhdSBkeXJ6dWUgbWl0CisgICAgICAgICAgICBuIEJlZmVsaCAgIDpoZWxwICdydWxlcicgICBuYWFjaC4KKyAgMi4gRHJ1Y2sgIEcgICwgdW0gYW4gcyBFbmQgdm9uIGR5ciBEYXV0dGljaHQgeiBrZW1tZW4uCisgICAgIGdnICBnaWJzdCBlaW4sIGTDpMOfc3QgZ2FuIG4gQW5mYW5nIHZvbiBkeXIgRGF1dHRpY2h0IGF1ZmhpbmtpbW1zdC4KKworICAzLiBHaWIgZCBOdW1tZXIgdm9uIGRlcmVyIFplaWwgZWluLCBkYWEgd29zdCB2b3JoZXIgd2Fyc3QsICB1bmQgYWZ0IG5vbiAgRyAgLgorICAgICBEw7ZzIGJyaW5ndCBkaSB6cnVnZyBnYW4gc2VsZXIgWmVpbCwgIGRhYSB3b3N0IHN0dWVuZGRzdCwgIHdpZXN0IGTDtnMgZWVyc3RlCisgICAgIE1hYWwgPFNUUkc+ZyBnYWRydWNrc3QuCisKKyAgNC4gV2VubnN0IGRpIHNpY2hlciBnbnVlZyBmw7xlbHN0LCBhZnQgZsO8ZXIgZCBTY2hyaXR0IDEgaGluc3QgMyBhdXMuCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgIExldHpuIDQuMjogRFlSIEJFRkVMSCBaTyBOIFNVRUNIRU4gCisgICAgICAgICAgICAgICAKKworICAqKiBaaXBmICAvICB1bmQgZHlybmFhY2ggYXlubiBBdXNkcnVrLCB1bSBzZWxiaWduZW4gem8gbiBTdWVjaGVuLiAqKgorCisgIDEuIER1IGdpYnN0IGFsc28gaW4gZHlyIEJlZmVsaHNhcnR3ZWlzIHMgWmFpY2hlbiAgLyAgZWluLiBEw7ZzIHNlbCB3aWUgYWF1IGR5cgorICAgICBNw7Zya2wgZXJzY2hlaW5lbmQgZHJhdWYgdW50IGF1ZiBuIFNjaGlybSwgbmV0dHkgd2llIGJlaSBkeXIgRmF1ZHVuZyAgOiAgLgorCisgIDIuIElldHogemlwZiAnRmFlZWxlcicgPEVJTj4uIE5ldHR5IHVtIGTDtnMgJ0ZhZWVsZXInIHdpbGxzdCBpZXR6IHN1ZWNoZW4uCisKKyAgMy4gV2lsbHN0IHVtIGduYXVuIGTDtm5uIEF1c2RydWsgd2VpdGVyc3VlY2hlbiwgemlwZiBhaW5mYWNoICBuICAod2llIMK7bmV4dMKrKS4KKyAgICAgV2lsbHN0IGhpbnpydWdnIHN1ZWNoZW4sIGFmdCBnaWJzdCAgTiAgZWluLgorCisgIDQuIFVtIHZvbiBIYXVzIGF1cyB6cnVnZ2F1cyB6IHN1ZWNoZW4sIG5pbW0gID8gIHN0YXR0ICAvICBoZXIuCisKKyAgNS4gRHlybWl0c3Qgd2lkZXIgZGFhIGhpbmtpbW1zdCwgd29zdCBoZXJrZW1tZW4gYmlzdCwgZHJ1Y2sgPFNUUkc+bywgIHVuZCBkw7ZzCisgICAgIMO2ZnRlciwgIHdlbm5zdCB3ZWl0ZXIgenJ1Z2cgd2lsbHN0LiAgTWl0IDxTVFJHPmkgd2lkZXJ1bSAga2ltbXN0IHZvcnfDpHJ0cy4KKworLS0tPiAgQXlubiBGYWVsZXIgc2NocmVpYnQgbXluIG5pdCAiRmFlZWxlciI7IEZhZWVsZXIgaXN0IGF5biBGYWVsZXIKKworQW5tw7Zya3VuZzogIFdlbm4gZCBTdWVjaCBzIERhdXR0aWNodGVuZCBkeXJyYWljaHQgaGFhdCwgZ2VldCBzIGV5biBuIEFuZmFuZyB3aS0KKyAgICAgICAgICAgIGRlciB3ZWl0ZXIgZHlybWl0LCAgbWVuIFNhY2ggIGR5ciBTY2hhbHR0ZXIgJ3dyYXBzY2FuJyB3w6RyIGF1ZiBhdXMuCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgIExldHpuIDQuMzogREUgR8OWR05LTEFNTUVSTiBGSU5ERE4KKworCisgICAqKiBaaXBmICAlICAsIHVtIGRlIGVudHNwcsO2Y2hldGUgS2xhbW1lciAgKSAgLCAgXSAgb2xkZXIgIH0gIHogZmluZGRuLiAqKgorCisgIDEuIFPDtnR6IMO2bm4gTcO2cmtsICBhdWYgaWV3aWduIGFpbmUgIHZvbiBkZW5lIGRyZWkgS2xhbW1lcm4gICggICwgIFsgIG9sZGVyICB7CisgICAgIGluIGR5ciB1bnRpZ25lbiBaZWlsLCB3byBtaXQgLS0tPiBhbmdtw7Zya3QgaXN0LgorCisgIDIuIElldHpldCB6aXBmIHMgWmFpY2hlbiAgJSAgLgorCisgIDMuIER5ciBNw7Zya2wgZ2VldCBpZXR6IGF1ZiBkZSBww6Rzc2V0ZSBzY2hsaWVzc2V0ZSBLbGFtbWVyLgorCisgIDQuIElldHogZGVtbWx0ICAlICAsIHVuZCBkeXJtaXQga2ltbXN0IGdhbiBkeXIgw7ZmZm5lcmV0biBLbGFtbWVyIHpydWdnLgorCisgIDUuIFPDtnR6IMO2bm4gTcO2cmtsIGF1ZiBheW4gYW5kZXJuZSBLbGFtbWVyIHZvbiAgICh7W119KSAgIHVuZCBwcsO2Ymx0ICAgJSAgYXVzLgorCistLS0+IETDtnMgKCBpc3QgIGJsb2/DnyBheW4gUG9jaHplaWwgKCBtaXQgWyB2ZXJzY2hhaWRuZSBdIHsgS2xhbW1lcm4gfSBkcmlubi4gKSkKKworQW5tw7Zya3VuZzogIFVtIGTDtiBNw7xnbGljaGtlaXQgZ2Fhc3QgYnN1bmRlcnMgZnJvbyBzZWluLCAgd2VubnN0IGF5bm1hYWwgaW4gYXlubgorICAgICAgICAgICAgU3BhaWNoZ3dvcnQgdmVyendlaWZsdCBheW4gZmFlbGV0ZSBHw7ZnbmtsYW1tZXIgc3VlY2hzdCEKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgIExldHpuIDQuNDogRCBFUlPDllRaVU5HU0ZBVURVTkcgKMK7c3Vic3RpdHV0ZcKrKQorCisKKyAgICAgICAgKiogWmlwZiAgOnMvYWx0L25ldS9nICAsIHVtICdhbHQnIGR1cmNoICduZXUnIHpvIG4gRXJzw7Z0em4uICoqCisKKyAgMS4gR2VlIG1pdCBuIE3DtnJrbCB6byBkeXIgdW50IHN0ZWVoZXRuIG1pdCAtLS0+IGFuZ23DtnJrdG4gWmVpbC4KKworICAyLiBaaXBmICA6cy9kZWUvZGUgPEVJTj4gIC4gRGVyIEJlZmVsaCBlcnPDtnR6dCBhbHNuYW4gZ3JhZCBkw7ZzICtlZXJzdGUgImRlZSIsCisgICAgIHdvIHbDvHJraW1tdC4KKworICAzLiBJZXR6IHByw7ZibHQgcyBtaXQgIDpzL2RlZS9kZS9nICAuIETDtnMgenVlc8O2dHpsaWNoZSAgZyAgKCJQZmxvayIgIG5lbm50IG15bgorICAgICDDtmJicyBTw7ZsY2hlcnMpIGJld2lya3QsIGTDpMOfIGFsbHNzLCB3YXMgZHlybWl0IGtlbm56YWljaG5ldCBpc3QsICBpbm5lcmhhbGIKKyAgICAgdm9uIGR5ciBhaW5uIFplaWwgZXJzw7Z0enQgd2VyZC4KKworLS0tPiBEZWUgc2Nob2Vuc3RlIFplaXQsIGTDpMOfIG15biBkZWUgQmzDvGVtbG4gYW5zY2hhdXQsIGlzdCBkZWUgc2Nob2VuZSBMYW4tCisgICAgIGdlc3N6ZWl0LgorICA0LiBVbSBpZXR6ICBhbGxzYW5kIFN1ZWNoYmVncmlmZiAgaW5uZXJoYWxiIHZvbiB6d28gWmVpbG4gIHpvIG4gw5ZuZGVybiwgIHppcGYKKyAgICAgOiMsI3MvYWx0L25ldS9nICAsICB3b2JlaSAjIGlld2VpbHMgZsO8ciBkZSBlZXJzdGUgdW5kIGzDtnNzdGUgWmVpbCB2b24gZMO2bm4KKyAgICAgUGZyYWljaCBzdGVldC4KKyAgICAgOiVzL2FsdC9uZXUvZyAgemlwZnN0LCBkw6TDn3N0IGQgVsO8cmtlbW1lbiBpbiBkeXIgZ2FudHpuIERhdXR0aWNodCDDtm5kZXJ0c3QuCisgICAgICAgIE1pdCAgOiVzL2FsdC9uZXUvZ2MgIGZpbmRkc3QgYWxsc2FuZCBWw7xya2VtbWVuIGluIGR5ciBnc2FtdG4gRGF1dHRpY2h0OworICAgICBkYWEgd2Vyc3QgYWJlciB6ZWVyc3Qgbm9uIGdmcmFhZ3QsIG9ic3QgeXMgZXJzw7Z0em4gd2lsbHN0IG9sZGVyIG5pdHkuCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgWkFNTUVORkFTU1VORyBWT04gRFlSIExFVFpOIDQKKyAgICAgICAgICAgICAgICAgICAgICAgIAorICAxLiA8U1RSRz5nICAgemFpZ3QgZMO2bm4gaWV0enVuZG4gRGF1dHRpY2h0YmVmYW5kICB1bmQgw7ZubiBEYXJzdGFuZCBkeXJ2b24gYW4uCisgICAgICAgICAgIEcgIGJyaW5ndCBkaSBhbiBzIEVuZCB2b24gZHlyIERhdXR0aWNodC4KKyAgICAgPFphbD4gRyAgYnJpbmd0IGRpIGdhbiBkeXIgZW50c3Byw7ZjaGV0biBaZWlsbm51bW1lci4KKyAgICAgICAgICBnZyAgYnJpbmd0IGRpIHpvIGR5ciBlZXJzdG4gWmVpbC4KKyAgICAgICAgICAKKyAgMi4gRCBFaW5nYWFiIHZvbiAgLyAgbWl0IGF5bm4gQXVzZHJ1ayBzdWVjaHQgVsOcUlNITElORyB1bSBkw7ZubiBBdXNkcnVrLgorICAgICBHaWJzdCAgPyAgdW5kIGF5bm4gU3VlY2hiZWdyaWYgZWluLCBzdWVjaHQgcyB1bSBkw7ZubiDDhFJTSExJTkcuCisgICAgIFppcGYgbmFhY2ggYXluZXIgU3VlY2ggIG4gIDsgIG5hYWNoZXJkIHdlcmQgaW4gZGUgZ2xlaWNoZSBSaWNodHVuZyB3ZWl0ZXItCisgICAgIGdzdWVjaHQuIE1pdCAgTiBnZWV0IHMgdW1rZWVydGVyIHdlaXRlci4KKyAgICAgPFNUUkc+byBicmluZ3QgZGkgem8gw7ZsdGVybmUgQmVmw6RuZGQgenJ1Z2csIDxTVFJHPmkgem8gbmV1ZXJuZS4KKworICAzLiBEIEVpbmdhYWIgdm9uICAlICwgd2VubiBkeXIgTcO2cmtsIGF1ZiBhaW5lciB2b24gZGVuZSBLbGFtbWVybiBzdGVldDogICAoe1sKKyAgICAgKV19ICAsIGJyaW5ndCBkaSB6byBkeXIgR8O2Z25rbGFtbWVyLgorCisgIDQuIFVtIGTDtnMgZWVyc3RlIFbDvHJrZW1tZW4gIHZvbiAiYWx0IiAgaW4gYXluZXIgWmVpbCAgZHVyY2ggIm5ldSIgIHogZXJzw7Z0em4sCisgICAgIHppcGYgICA6cy9hbHQvbmV1ICAgLgorICAgICBVbSBhbGxzYW5kIGluIGF5bmVyIFplaWwgeiBlcnPDtnR6biwgemlwZiAgIDpzL2FsdC9uZXUvZyAgIC4KKyAgICAgTWVjaHN0IGFsbHNzIGluIHp3byBaZWlsbiBlcnPDtnR6biwgZGVtbWx0IHpvIG4gQmVpc3BpbCAgOjUsNnMvYWx0L25ldS9nICAuCisgICAgIE1lY2hzdCBhbGxzcyBpbiBkeXIgZ2FudHpuIERhdXR0aWNodCBlcnPDtnR6biwgZ2liIGVpbjogICA6JXMvYWx0L25ldS9nICAgLgorICAgICBXaWxsc3QgYXluIGllZHMgTWFhbCBic3RhZXRsbiwgaMO2bmcgJ2MnIHdpZSDCu2NvbmZpcm3CqyBoaW50IGFuaGluLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgTGV0em4gNS4xOiBaV0lTQ0hORFJJTk4gQVlOTiBBVVNTRVJJR05FTiBCRUZFTEggQVVTRsOcRVJOIAorICAgICAgICAgICAgCisKKyAgKiogV2lsbHN0IGF5biBHZsOkw59mYXVkdW5nIGF1c2bDvGVybiwgZ2liIGFpbmZhY2ggZMO2IHNlbCBuYWFjaCAgIDohICAgZWluLiAqKgorIAorICAxLiBaaXBmICBkw7ZubiBiZWthbm50biBCZWZlbGggICA6ICAsICBkeXJtaXRzdCAgbWl0IG4gTcO2cmtsICBhdWYgbiBCaWxkc2NoaXJtCisgICAgIGdhbnogYWJoaW4ga2ltbXN0LiBEcmF1ZmhpbiBrYW5zdCBheW5uIGd3b25lbiBHZsOkw59iZWZlbGggZWluZ8O2Ym4uCisKKyAgMi4gWmVlcnN0ICBraW1tdCBhYmVyIG5vbiBheW4gUnVlZnphaWNoZW4gICAhICAgLiAgVW5kIGlldHogaGFhc3QgZGUgTcO8Z2xpY2gtCisgICAgIGtlaXQsIGF5biBiZWxpZWJpZ2UgYXVzc2VyaWdlIEdmw6TDn2ZhdWR1bmcgYXVzembDvGVybi4KKworICAzLiBBbHMgQmVpc3BpbCB6aXBmICAgOiFscyA8RUlOPiAgOyB1bmQgc2Nob29uIGhhYXN0IGF5biBBdWZsaXN0dW5nIHZvbiBkZWlubgorICAgICBWZXJ6YWljaG5pc3MsICBuZXR0eSAgd2llIHdlbm5zdCAgZ2FueiBnd29uICBpbiBuIEVpbmdpYiB3w6Ryc3QuICBHZWV0ICAgbHMKKyAgICAgYXVzIGlld2lnbiBheW5uIEdydW5kIG5pdCwgYWZ0IHByw7ZibHQgcyBtaXQgIDohZGlyIDxFSU4+ICAuCisKK0Fsc28gbm9uIGF5bm1hYWw6IE1pdCBkw7ZubiBBbmdhbmcga2FuIGF5biBpZWRlIGJlbGllYmlnZSBhdXNzZXJpZ2UgRmF1ZHVuZyBhdXMtCisgICAgICAgICAgICAgICAgICBnZsO8ZXJ0IHdlcmRuLCBhYXUgbWl0IEF1ZXJ3ZXJkZC4KKworVW5kIHdvbGdtw7Zya3Q6ICAgIEFsbHNhbmQgQmVmZWxoLCB3byBtaXQgIDogIGFuZ2VlbmQsICBtw7xlc3NlbmQgbWl0IDxFSU4+IGJzdMO2LQorICAgICAgICAgICAgICAgICAgdGlndCB3ZXJkbi4gRMO2cyBkeXJzYWduIG15ciB2w7xyYmHDnyBuaWVtZXIuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICBMZXR6biA1LjI6IE5PTiBNRUVSRVIgRFLDnEJFUiwgV0lFIE1ZTiBEQVVUVElDSFROIFNDSFJFSUJUCisKKworICAgICAgKiogVW0gw7ZiYnMgR8O2bmRlcnRzIG5ldSB6IHNwZWljaGVybiwgemlwZiA6dyBORVVFUl9EQVVUVElDSFROQU0uICoqCisKKyAgMS4gWmlwZiAgOiFkaXIgICBvbGRlciAgOiFscyAgLCAgZMOkw59zdCBkeXIgYXluIEF1Zmxpc3R1bmcgdm9uIGRlaW5uIFZlcnphaWNoLQorICAgICBuaXNzIGF1c2hlcmxhYXNzdC4gIETDpMOfc3QgZHlybmFhY2ggPEVJTj4gZWluZ8O2Ym4gbXVlc3N0LCB3YWlzc3QgZWUgc2Nob29uLgorCisgIDIuIFN1ZWNoIGR5ciBheW5uIERhdXR0aWNodG5hbSBhdXMsIGTDtm5uIHdvIHMgbm9uIG5pdCBnZWl0LCDDtmJiZW5uIFBPQ0guCisKKyAgMy4gSWV0eiBkZW1tbHQ6ICA6dyBQT0NIICAgKGFsc28gbWl0IFBPQ0ggYWxzIGTDtm5uIG5ldWVuIERhdXR0aWNodG5hbSkuCisKKyAgNC4gRMO2cyBzcGVpY2hlcnQgaWV0eiBkZSBnYW50emUgRGF1dHRpY2h0LCBhbHNvIMO2bm4gV2ltbXNjaGFpbmVyLCAgdW50ZXIgZMO2bm4KKyAgICAgTmFtIFBPQ0guIETDtnMga2Fuc3QgbGVpY2h0IMO8YmVycHLDvGVmZmVuLCBpbmRlbSBkw6TDn3N0IGFpbmZhY2ggIDohbHMgICBvbGRlcgorICAgICA6IWRpciAgemlwZnN0IHVuZCBkeXJtaXQgZGVpbm4gVmVyemFpY2huaXNzaW5oYWx0IHNlZ2hzdC4KKworQW5tw7Zya3VuZzogIFN0aWdzdCBpZXR6IGF1cyBuIFdpbW0gYXVzIHVuZCBnw6RubnN0IG4gYWZ0IHdpZGVyIG1pdCAgIHZpbSBQT0NIICAsCisgICAgICAgICAgICBuYWFjaGVyZCB3w6RyIGTDtiBEYXV0dGljaHQgYXluIGduYXVuZSBBYW11bSB2b24gbiBTY2hhaW5lciBkeXJzZWxibiwKKyAgICAgICAgICAgIHdpZXN0IG4gZ3NwZWljaGVydCBoYWFzdC4KKworICA1LiBJZXR6IHZlcndlaXRlcnQgZMO2IERhdXR0aWNodCAtIGZhbGxzc3QgcyBGZW5zdGwgaGFhc3QgLSAsIG1pdCAgIDohZGVsIFBPQ0gKKyAgICAgYmV6aWVodW5nc3dlaXMgYmVpIGF5bm4gQWluc2xnZWLDpHUgbWl0ICAgOiFybSBQT0NIICAgLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgTGV0em4gNS4zOiBBWU5OIFRBSUwgVk9OIE4gR1dPUlQgWk8gTiBTUEVJQ0hFUk4gQVVTV0FMTgorCisqKiBVbSBheW5uIFRhaWwgdm9uIGR5ciBEYXV0dGljaHQgeiBzcGVpY2hlcm4sIHppcGYgIHYgW1dvbGVuZF0gOncgREFVVFRJQ0hUICoqCisKKyAgMS4gUnVjayDDtm5uIE3DtnJrbCBhdWYgbmV0dHkgZMO2IFplaWwgZGFhZGVyLgorCisgIDIuIERlbW1sdCAgdiAgdW5kIGdlZSBtaXQgbiBNw7Zya2wgIGF1ZiBkw7ZubiBmw7xtZnRuIEF1Zmxpc3R1bmdzcHVudCB1bnRldC4gIER1CisgICAgIHNlZ2hzdCBnbGVpLCBkw6TDnyBzIEd3b3J0IHbDvHJoZXJnaMO2YnQgZXJzY2hlaW50LgorCisgIDMuIERydWNrIHMgWmFpY2hlbiAgOiAgLiBHYW56IHVudCBhdWYgbiBCaWxkc2NoaXJtIGVyc2NoZWludCAgOic8LCc+ICAuCisKKyAgNC4gWmlwZiAgdyBQT0NIICAsIHdvYmVpIHMgZMO2bm4gRGF1dHRpY2h0bmFtIFBPQ0ggIG5vbiBuaXQgZ2VpdC4gIFZlcmd3acOfIGRpLAorICAgICBkw6TDn3N0IGTDtnMgIDonPCwnPncgUE9DSCBhYXUgK3NlZ2hzdCwgZWUgd2VubnN0IDxFSU4+IGRydWNrc3QuCisKKyAgNS4gRHlyIFdpbW0gc2NocmVpYnQgZGUgYXVzZ3dhbHRuIFplaWwgIGV5biBkZSBEYXV0dGljaHQgUE9DSCBlaW5oaW4uICBCZW51dHoKKyAgICAgOiFkaXIgIG9sZGVyICA6IWxzICAsICBkw6TDn3N0IGTDtnMgw7xiZXJwcsO8ZWZmc3QuIEzDtnNoIHMgZmVpbiBuaXQgw7ZiYmVubiEgTWlyCisgICAgIGJyYXVjaGVuZCBzIG7Dtm1saWNoIGbDvHIgZGUgbmFlaHN0ZSBMZXR6bi4KKworQW5tw7Zya3VuZzogIERydWNrdCBteW4gIHYgICwgZ2lubnQgZCBTaWNodGlzY2gtQXVzd2FsLiBEdSBrYW5zdCBtaXQgbiBNw7Zya2wgdW0tCisgICAgICAgICAgICBheW5hbmRmYXJuLCAgdW0gZCBBdXN3YWwgIHogdmVyw7ZuZGVybi4gIERyYWZ0ZXIga2FuIG15biBtaXQgeW4gYXlubgorICAgICAgICAgICAgUGZlbWVyZXIgIG1pdCBkw7ZubiBHd29ydCAgw7ZiYnMgbWFjaGVuLiAgWm8gbiBCZWlzcGlsIGzDtnNjaHQgIGQgIGTDtnMKKyAgICAgICAgICAgIEd3b3J0Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgTGV0em4gNS40OiBFSU5Mw5ZTTiBVTkQgWkFNTUVORsOcRVJOIFZPTiBEQVVUVElDSFROICAgCisKKworICAgICoqIFVtIMO2bm4gSW5oYWx0IHZvbiBheW5lciBEYXV0dGljaHQgZWluemzDtnNuLCB6aXBmICA6ciBEQVVUVElDSFROQU0gICoqCisKKyAgMS4gU8O2dHogw7ZubiBNw7Zya2wgw7xiZXIgZMO2IFplaWwgZGFhZGVyLgorCitPQkFDSFQ6ICBBZnQgZMOkw59zdCDDtm5uIFNjaHJpdCAyICBhdXNnZsO8ZXJ0IGhhYXN0LCAgc2VnaHN0IGF1ZiBheW5tYWFsICDDtmJicyBhdXMKKyAgICAgICAgIGR5ciBMZXR6biA1LjMuICBCZXfDtmcgZGkgbmFhY2hlcmQgd2lkZXIgYWJ3w6RydHMsIGR5cm1pdHN0IGTDtiBMZXR6biB3aS0KKyAgICAgICAgIGRlcmZpbmRkc3QuCisgIDIuIElldHogIGxpcyAgZGVpbiBEYXV0dGljaHQgIFBPQ0ggZWluLCAgaW5kZW0gZMOkw59zdCBkIEZhdWR1bmcgICA6ciBQT0NIIGF1cy0KKyAgICAgZsO8ZXJzdCwgIHdvYmVpIHdpZSBnc2FpdCBQT0NIICBmw7xyIGTDtm5uICB2b24gZGlyICBhdXNnc3VlY2h0biBEYXV0dGljaHRuYW0KKyAgICAgc3RlZXQuIERlIGVpbmdsw7ZzbmUgRGF1dHRpY2h0IHdlcmQgdW50ZXJoYWxiIGR5ciBNw7Zya2x6ZWlsIGVpbmdmw7xlZ3QuCisKKyAgMy4gVW0gem8gbiDDnGJlcnByw7xlZmZlbiwgIG9iIGRlIERhdXR0aWNodCAgYWF1IGd3acOfIGVpbmdsw7ZzbiBpc3QsICBnZWUgenJ1Z2c7CisgICAgIHVuZCBkdSBzZWdoc3QsICBkw6TDnyBzIGlldHogendvIEF1c2bDtnJ0aWd1bmdlbiAgdm9uIGR5ciBMZXR6biA1LjMuIGdlaXQsICBzCisgICAgIFVybmlzcyB1bmQgZGUgZWluZ2bDvGVndGUgRGF1dHRpY2h0ZmFzc3VuZy4KKworQW5tw7Zya3VuZzogIER1IGthbnN0IGFhdSAgZCBBdXNnYWFiIHZvbiBheW5uIEF1c3NlcmlnYmVmZWxoIGVpbmzDtnNuLiAgWm8gbiBCZWktCisgICAgICAgICAgICBzcGlsIGxpc3QgICA6ciAhbHMgIGQgQXVzZ2FhYiB2b24gZHlyIEZhdWR1bmcgIGxzICAgZWluIHVuZCBmw7xlZ3QgcworICAgICAgICAgICAgdW50ZXJoYWxiIG4gTcO2cmtsIGVpbi4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgIFpBTU1FTkZBU1NVTkcgVk9OIERZUiBMRVRaTiA1CisKKworICAxLiA6IUZBVURVTkcgZsO8ZXJ0IGF5bm4gYXVzc2VyaWduZW4gQmVmZWxoIGF1cy4KKworICAgICAgRGFhZGVyIGF5biDDlnR0bHljaCBnd8OkbmRkdGUgQmVpc3BpbGVyOgorICAgICAgKEZlbnN0bCkgICAgICAgICAgICAgIChBaW5zbCAtIExlaW5zbCkKKyAgICAgIDohZGlyICAgICAgICAgICAgICAgICA6IWxzICAgICAgICAgICAgICAgIC0gbGlzdHQgcyBWZXJ6YWljaG5pc3MgYXVmLgorICAgICAgOiFkZWwgREFVVFRJQ0hUICAgICAgIDohcm0gREFVVFRJQ0hUICAgICAgLSB2ZXJ3ZWl0ZXJ0IHNlbGUgRGF1dHRpY2h0LgorCisgIDIuIDp3IERBVVRUSUNIVCAgc3BlaWNoZXJ0IGRlIGlldHp1bmRlIFdpbW1kYXV0dGljaHQgIHVudGVyIGTDtm5uIGJlc2FndG4gTmFtLgorCisgIDMuIHYgIFdPTEVORCAgOncgREFVVFRJQ0hUTkFNICAgc2NocmVpYnQgZGUgc2ljaHRpc2NoIGF1c2d3YWx0biBaZWlsbiAgZXluIGRlCisgICAgIERhdXR0aWNodCBtaXQgc2VsbiBOYW0uCisKKyAgNC4gOnIgREFVVFRJQ0hUTkFNICBsYWR0IHNlbGUgRGF1dHRpY2h0ICB1bmQgZsO8ZWd0IHMgIHVudGVyaGFsYiBuIE3DtnJrbGJlZmFuZAorICAgICBlaW4uCisKKyAgNS4gOnIgIWRpciAgIGxpc3QgZCBBdXNnYWFiICB2b24gZHlyIEZhdWR1bmcgICBkaXIgICB1bmQgZsO8ZWd0IHMgIHVudGVyaGFsYiBuCisgICAgIE3DtnJrbGJlZmFuZCBlaW4uCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gNi4xOiBaRUlMIMOWRkZORU4gKMK7b3BlbsKrKQorCisKKyAgICAgICAgKiogWmlwZiBvLCB1bSBheW4gWmVpbCB1bnRlcmhhbGIgbiBNw7Zya2wgeiDDtmZmbmVuIHVuZCBleW4gZCAqKgorICAgICAgICAgICAgICAgICAgICAgICAgKiogRWluZsO8ZWdhcnR3ZWlzIHoga2VtbWVuLiAqKgorCisgIDEuIEJld8O2ZyDDtm5uIE3DtnJrbCB6byBkeXIgZWVyc3RuIG1pdCAtLS0+IGFuZ23DtnJrdG4gWmVpbCB1bnQuCisKKyAgMi4gWmlwZiBvIChrbGFpbiksICB1bSBheW4gWmVpbCAgVU5URVJIQUxCIG4gTcO2cmtsIHogw7ZmZm5lbiAgdW5kIG1pdCBkeXIgRWluLQorICAgICBmw7xlZ2FydHdlaXMgd2VpdGVyenR1ZW4uCisKKyAgMy4gSWV0eiB6aXBmIGF5biBXZWVuZyBheW4gR3dvcnQgdW5kIGRydWNrIDxFU0M+LCAgdW0gZCBFaW5mw7xlZ2FydHdlaXMgeiB2ZXItCisgICAgIGxhYXNzbi4KKy0tLT4gTWl0ICBvICB3ZXJkIGR5ciBNw7Zya2wgYXVmIGRlIG9mZmVuZSBaZWlsIGluIGR5ciBFaW5mw7xlZ2FydHdlaXMgZ3PDtnR6dC4KKworICA0LiBVbSBheW4gWmVpbCBPQkVSSEFMQiBuIE3DtnJrbCBhdWZ6bWFjaGVuLCAgZ2liIGFpbmZhY2ggYXlubiBncm9vc3NzIE8gc3RhdHQKKyAgICAgeW4gYXlubiBrbGFpbmVuIGVpbi4gVmVyc3VlY2ggZMO2cyBhdWYgZHlyIHVudGlnbmVuIFplaWwuCisKKy0tLT4gw5ZmZm5ldCBheW4gWmVpbCDDvGJlciBkZXJlciBkYWFkZXIgbWl0ICBPICAsICB3ZW5uIGR5ciBNw7Zya2wgYXVmIGRlcmVyIFplaWwKKyAgICAgaXN0LgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICBMZXR6biA2LjI6IEdXT1JUIEFORsOcRUdOICjCu2FwcGVuZMKrKQorCisKKyAgICAgICAgICAgICAgICAqKiBaaXBmICBhICAsIHVtIMO2YmJzIE5BQUNIIG4gTcO2cmtsIGVpbnpmw7xlZ24uICoqCisKKyAgMS4gQmV3w7ZnIMO2bm4gTcO2cmtsIGdhbiBuIEFuZmFuZyB2b24gZHlyIGVlcnN0biDDnGVidW5nc3plaWwgbWl0IC0tLT4gdW50LgorCisgIDIuIERydWNrICBlICAsIGhpbnN0IGTDpMOfIGR5ciBNw7Zya2wgYW4gbiBFbmQgdm9uICBaZWkgIHN0ZWV0LgorCisgIDMuIFppcGYgYXluIGtsYWlucyAgYSAgLCB1bSDDtmJicyBOQUFDSCBuIE3DtnJrbCBhbnpmw7xlZ24uCisKKyAgNC4gVmVyZ8O2bnR6IGTDtnMgV29ydCB3aWUgaW4gZHlyIFplaWwgZHJ1bnRlci4gIERydWNrIDxFU0M+LCB1bSBkIFNjaHJlaWItQXJ0LQorICAgICB3ZWlzIHogdmVybGFhc3NuLgorCisgIDUuIEJld8O2ZyBkaSBtaXQgIGUgICB6byBuIG5hZWhzdG4gdW5nYW50em4gV29ydCAgdW5kIHdpZGVyaG9sIGQgU2Nocml0dCAzIHVuZAorICAgICA0LgorCistLS0+IETDtiBaZSBiaWV0dCBheW4gR2zDtmduICwgYXluIEd3b3J0IGluIGF5bmVyIFplaWwgYW56ZsO8LgorLS0tPiBEw7YgWmVpbCBiaWV0dCBheW4gR2zDtmduZXQsIGF5biBHd29ydCBpbiBheW5lciBaZWlsIGFuembDvGVnbi4KKworQW5tw7Zya3VuZzogICBhICAsICBpICB1bmQgIEEgIGJyaW5nZW5kIGFpbm4gZ2xlaWNoZXJtYWHDn24gZXluIGQgRWluZsO8ZWdhcnR3ZWlzOworICAgICAgICAgICAgIGR5ciBhaW56aWdlIFVudGVyc2NoYWlkIGlzdCwgV08gbWl0IG4gRWluZsO8ZWduIGFuZ2Zhbmd0IHdlcmQuCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgIExldHpuIDYuMzogQVlOIEFOREVSTkUgV0VJUyBaTyBOIEVSU8OWVFpOICjCu3JlcGxhY2XCqykKKworCisgKiogRGVtbWx0IGF5biBncm9vc3NzICBSICAsIHVtIG1lZXJlciBhbHMgd2llIGdyYWQgYWluIFphaWNoZW4geiBlcnPDtnR6bi4gKioKKworICAxLiBCZXfDtmcgw7ZubiBNw7Zya2wgem8gZHlyIGVlcnN0biB1bnRpZ25lbiwgbWl0IC0tLT4gYW5nbcO2cmt0biBaZWlsLgorICAgICBHZWUgbWl0IG4gTcO2cmtsIGdhbiBuIEFuZmFuZyB2b24gbiBlZXJzdG4gIHh4eCAgLgorCisgIDIuIElldHogZHJ1Y2sgIFIgICB1bmQgemlwZiBzZWxlIFphbCwgIHdvIGRydW50ZXIgIGluIGR5ciB6d2FpdHRuIFplaWwgc3RlZXQsCisgICAgIHlzbyBkw6TDnyBkZSBzZWwgcyB4eHggZXJzw7Z0enQuCisKKyAgMy4gRHJ1Y2sgPEVTQz4gLCAgdW0gZCBFcnPDtnR6dW5nc2FydHdlaXMgIHogdmVybGFhc3NuLiAgRHUgZ3NwYW5uc3QsICBkw6TDnyBkeXIKKyAgICAgUmVzdCB2b24gZHlyIFplaWwgdW52ZXLDtm5kZXJ0IGJsZWlidC4KKworICA0LiDDhGZlcnQgZGllIFNjaHJpdHQsIHVtIGTDtnMgw7xiZXJibGlibmUgeHh4IHogZXJzw7Z0em4uCisKKy0tLT4gUyBadW5kZG4gdm9uIDEyMyB6byB4eHggZXJnaWJ0IHh4eC4KKy0tLT4gUyBadW5kZG4gdm9uIDEyMyB6byA0NTYgZXJnaWJ0IDU3OS4KKworQW5tw7Zya3VuZzogRCBFcnPDtnR6dW5nc2FydHdlaXMgaXN0IHdpZSBkIEVpbmbDvGVnYXJ0d2VpcywgIGFiZXIgYXluIGllZHMgZWluZGVtLQorICAgICAgICAgICBtbHRlIFphaWNoZW4gbMO2c2NodCBheW4gdm9yaGFuZGRucy4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgIExldHpuIDYuNDogR1dPUlQgQUFNRU4gVU5EIEVJTkbDnEVHTgorCisgKiogQmVudXR6IMO2bm4gUGZlbWVyZXIgIHkgICwgdW0gw7ZiYnMgeiBhYW1lbiwgdW5kICBwICAsIHVtIMO2YmJzIGVpbnpmw7xlZ24uICoqCisKKyAgMS4gR2VlIHpvIGR5ciBtaXQgIC0tLT4gIGFuZ23DtnJrdG4gWmVpbCB1bnQgIHVuZCBzw7Z0eiDDtm5uIE3DtnJrbCAgaGludGVyICJhKSIuCisKKyAgMi4gR2lubiBkIFNpY2h0aXNjaC1BcnR3ZWlzIG1pdCAgIHYgICB1bmQgYmV3w7ZnIMO2bm4gTcO2cmtsIGduYXVuIHZvciAiZWVyc3RlIi4KKyAgCisgIDMuIFppcGYgIHkgICwgdW0gZMO2bm4gdsO8cmhlcmdow7ZidG4gVGFpbCB6IGFhbWVuLgorCisgIDQuIEJld8O2ZyDDtm5uIE3DtnJrbCBnYW4gbiBFbmQgdm9uIGR5ciBuYWVoc3RuIFplaWw6ICBqJAorCisgIDUuIERlbW1sdCAgcCAgLCB1bSBkw7ZzIEd3b3J0IGVpbnpmw7xlZ24sIHVuZCBhZnQ6ICBhIHp3YWl0dGUgPEVTQz4gIC4KKworICA2LiBCZW51dHogZCBTaWNodGlzY2hhcnR3ZWlzLCB1bSAiIEVpbnRyYWcuIiBhdXN6d2FsbiwgIGFhbSBzIHBmZWxmcyAgeSwgIGJlLQorICAgICB3w7ZnIGRpIGdhbiBuIEVuZCB2b24gZHlyIG5hZWhzdG4gWmVpbCBtaXQgIGokICAgdW5kIGbDvGVnIHMgR3dvcnQgZG9ydG4gbWl0CisgICAgIHAgIGFuLgorCistLS0+ICBhKSBkw7ZzIGlzdCBkeXIgZWVyc3RlIEVpbnRyYWcuCisgICAgICBiKQorCitBbm3DtnJrdW5nOiBEdSBrYW5zdCAgeSAgYWF1IGFscyBQZmVtZXJlciB2ZXJ3ZW5kZG47ICB5dyAgYWFtdCBhaW4gV29ydC4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIExldHpuIDYuNTogU0NIQUxUVEVSIFPDllRaTgorCisqKiBTw7Z0eiBheW5uIFNjaGFsdHRlciB5c28sICBkw6TDnyBheW4gU3VlY2ggb2xkZXIgRXJzw7Z0enVuZyBHcm9vw58tIHVuZCBLbGFpbi0gKioKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKiBzY2hyZWlidW5nIMO8YmVyZ2VldC4gKioKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyAgMS4gU3VlY2ggdW0gJ8O8YmVyZ2VlIiwgaW5kZW0gZMOkw59zdCAgIC/DvGJlcmdlZSAgIGVpbmdpYnN0LgorICAgICBXaWRlcmhvbCBkIFN1ZWNoIGF5biDDlnR0bHljaCBNYWFsLCBpbmRlbSBkw6TDn3N0IGRlIFRhc3RuICBuICBkcnVja3N0LgorCisgIDIuIFPDtnR6IGRlIFp3aXNsIC0gw7ZubiBTY2hhbHR0ZXIgLSAnaWMnICjCu2lnbm9yZSBjYXNlwqspLCBpbmRlbSBkw6TDn3N0ICA6c2V0IGljCisgICAgIGVpbmdpYnN0LgorICAzLiBJZXR6IHN1ZWNoIHdpZGVyIHVtICfDvGJlcmdlZScgdW5kIHR1ZSBhYXUgd2lkZXIgbWl0ICBuICB3ZWl0ZXIuICBEYWEgZmFsbHQKKyAgICAgZHlyIGF1ZiwgZMOkw58gaWV0eiDDtmJiZW5uIGFhdSAgw5xiZXJnZWUgIHVuZCAgw5xCRVJHRUUgIGhlcmdlZXQuCisKKyAgNC4gU8O2dHogZGUgWndpc2xuICdobHNlYXJjaCcgdW5kICdpbmNzZWFyY2gnIHBmZWxmczogICA6c2V0IGhscyBpcworCisgIDUuIFdpZGVyaG9sIGQgU3VlY2ggdW5kIGJvYmFjaHQsIHdhcyBpZXR6IGdzY2hpZWdodDogICAvw7xiZXJnZWUgPEVJTj4KKworICA2LiBEw6TDn3N0IGdyb2/DnyB1bmQga2xhaW4gd2lkZXIgZ3dvbiB1bnRlcnNjaGVpZHN0LCB6aXBmOiAgIDpzZXQgbm9pYworCitBbm3DtnJrdW5nOiAgTWVjaHN0IGRlIFRyw7ZmZmVyIG5pZW1lciB2w7xyaGVyZ2jDtmJ0IHNlZ2huLCAgZ2liIGVpbjogICA6bm9obHNlYXJjaAorQW5tw7Zya3VuZzogIFNvbGx0IGtsYWluL2dyb2/DnyBiZWkgYXluZXIgYWluemlnbmVuIFN1ZWNoIHd1cnN0IHNlaW4sICBiZW51dHogIFxjCisgICAgICAgICAgICBpbiBuIFN1ZWNoYXVzZHJ1azogICAvw7xiZXJnZWVcYyA8RUlOPgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgIFpBTU1FTkZBU1NVTkcgVk9OIERZUiBMRVRaTiA2CisKKyAgMS4gWmlwZiAgbyAgLCAgdW0gYXluIFplaWwgIFVOVEVSSEFMQiBuIE3DtnJrbCB6IMO2ZmZuZW4gdW5kIGQgRWluZsO8ZWdhcnR3ZWlzIHoKKyAgICAgICAgICAgICAgICAgZ2lubmVuLgorICAgICBaaXBmICBPICAsICB1bSBheW4gWmVpbCBPQkVSSEFMQiBuIE3DtnJrbCB6IMO2ZmZuZW4uCisKKyAgMi4gWmlwZiAgYSAgLCAgdW0gTkFBQ0ggbiBNw7Zya2wgYXluIEd3b3J0IGVpbnpmw7xlZ24uCisgICAgIFppcGYgIEEgICwgIHVtIGF5biBHd29ydCBuYWFjaCBuIFplaWxuZW5kIGFuembDvGVnbi4KKworICAzLiBEIEZhdWR1bmcgIGUgIGJyaW5ndCBkaSBnYW4gbiBFbmQgdm9uIGF5bm4gV29ydC4KKworICA0LiBEeXIgUGZlbWVyZXIgIHkgICjCu3lhbmvCqykgYWFtdCDDtmJicywgIHAgICjCu3B1dMKrKSBmw7xlZ3QgZMO2cyBlaW4uCisKKyAgNS4gQXluIGdyb29zc3MgIFIgIGdlZXQgZXluIGQgRXJzw7Z0enVuZ3NhcnR3ZWlzLCAgaGluc3QgZMOkw58gbXluIDxFU0M+IGRydWNrdC4KKworICA2LiBEIEVpbmdhYWIgdm9uICI6c2V0IHh4eCIgIHPDtnR6dCBkZSBad2lzbCAieHh4Ii4gIEF5biDDlnR0bHljaCBad2lzbG4gc2VpbmQ6CisgICAgICdpYycgJ2lnbm9yZWNhc2UnICAgR3Jvb8OfL2tsYWluIHd1cnN0IGJlaSBheW5lciBTdWVjaAorICAgICAnaXMnICdpbmNzZWFyY2gnICAgIFphaWcgYWF1IHNjaG9vbiBheW4gVGFpbMO8YmVyYWluc3RpbW11bmcKKyAgICAgJ2hscycgJ2hsc2VhcmNoJyAgICBIw7ZiIGFsbHNhbmQgcMOkc3NldG4gQXVzZHLDvGNrIHbDvHJoZXIKKyAgICAgRHlyIFNjaGFsdHRlcm5hbSBrYW4gaW4gZHlyIEt1cnotIG9sZGVyIExhbmdmb3JtIGFuZ8O2Ym4gd2VyZG4uCisKKyAgNy4gU3TDtmxsIHluIGF5bmVyIFp3aXNsICJubyIgdm9yYW4sIGTDpMOfc3QgeXMgYWJzY2hhbHR0c3Q6ICAgOnNldCBub2ljCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgTGV0em4gNy4xOiBBWU4gSElMRkdXT1JUIEFVRlJVRUZGRU4KKworCisgICAgICAgICAgICAqKiBOdXR6IGTDtnMgZWluYmF1dGUgSGlsZmdlYsOkdSwgZGUgIkJldHJpYnNhbmxhaXR0dW5nIiAqKgorCisgIEV5biBuIFdpbW0gIGlzdCBheW4gYXVzZsO8ZXJsaWNoZSAiR2VicmF1Y2hzYW53ZWlzdW5nIiAgZWluYmF1dC4gIEbDvHIgcyBFZXJzdGUKKyAgcHLDtmJsdCBhaW5mYWNoIGFpbnMgdm9uIGRlbmUgZHJldSBhdXM6CisgICAgLSBEcnVjayBkIDxISUxGPi1UYXN0biwgd2VubnN0IMO2YmJlbm4gYWluZSBoYWFzdC4KKyAgICAtIERydWNrIGRlIFRhc3RuIDxGMT4sIGZhbGxzc3QgeXMgaGFhc3QuCisgICAgLSBaaXBmICAgOmhlbHAgPEVJTj4KKworICBMaXMgZGkgZXluIHMgSGlsZmZlbnN0ZXIgZWluLCBkeXJtaXRzdCBkcmF1ZmtpbW1zdCwgd2llIGTDtnMgbWl0IGR5ciBIaWxmIGdlZXQuCisgIERlbW1sdCAgPFNUUkc+dyB3ICAsIHVtIHZvbiBhaW5uIEZlbnN0ZXIgem8gbiBhbmRlcm4gem8gbiBTcHJpbmdlbi4KKyAgRGVtbWx0ICAgOnEgPEVJTj4gICwgdW0gcyBIaWxmZmVuc3RlciB6byBuIFNjaGxpZXNzbi4KKworICBEdSBrYW5zdCB6byBzbyBndWV0IHdpZSBhbGxzc2FuZCBheW4gSGlsZiBmaW5kZG4sICBpbmRlbSBkw6TDn3N0IHluIGR5ciBGYXVkdW5nCisgIDpoZWxwICAgYXlubiBBdWVyd2VyZCBuYWFjaHN0w7ZsbHN0IHVuZCBpc3RpZyA8RUlOPiBuaXQgdmVyZ2lzc3QuICBQcsO2Ymx0IGTDtnM6CisKKyAgICAgOmhlbHAgdworICAgICA6aGVscCBjX0NUUkwtRAorICAgICA6aGVscCBpbnNlcnQtaW5kZXgKKyAgICAgOmhlbHAgdXNlci1tYW51YWwKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gNy4yOiBFUlNUw5ZMTCBBWU4gR0lOLVNDSFJJUEYKKworCisgICAgICAgICAgICAqKiBNdXR6IMO2bm4gV2ltbSBtaXQgZGUgZWluYmF1dG4gRmFlaGlna2VpdG4gYXVmICoqCisKKyAgRHlyIFdpbW0gYmVzaXR6dCBheW4gV8O2c24gU2Now6RmdHVuZ2VuLCAgd28gw7xiZXIgbiBVcndpbW0gYXVzaGluZ2VlbmQsIGFiZXIgZGUKKyAgbWVlcmVybiBkeXJ2b24gIHNlaW5kIGluIGR5ciBWb3JnYWFiIGF1c2dzY2hhbHR0LiAgRHlybWl0c3QgbWVlcmVyIGF1cyBuIFdpbW0KKyAgYXVzaGVyaG9sc3QsIGVyc3TDtmxsc3QgYXluICJ2aW1yYyItRGF1dHRpY2h0LgorCisgIDEuIEzDtmcgYXluICJ2aW1yYyItRGF1dHRpY2h0IGFuOyAgZMO2cyBnZWV0ICBpZSBuYWFjaCBCZXRyaWJzZ2Viw6R1ICB2ZXJzY2hpZG46CisgICAgIDplIH4vLnZpbXJjICAgICBmw7xyIHMgQWluc2wKKyAgICAgOmUgJFZJTS9fdmltcmMgIGJlaSBuIEZlbnN0bAorCisgIDIuIElldHogbGlzIMO2bm4gSW5oYWx0IHZvbiBkeXIgQmVpc3BpbC0idmltcmMiLURhdXR0aWNodCBlaW46CisgICAgIDpyICRWSU1SVU5USU1FL3ZpbXJjX2V4YW1wbGUudmltCisKKyAgMy4gU3BlaWNoZXJ0IGRlIERhdXR0aWNodCBtaXQ6CisgICAgIDp3CisKKyAgNC4gQmVpIG4gbmFlaHN0biBHaW4gdm9uIG4gV2ltbSAgaXN0IGFmdCBkIEbDvGVnbnVzc3bDvHJoZXJow7ZidW5nICB6dWVnc2NoYWx0dC4KKyAgICAgRHUga2Fuc3QgZHlyIGFsbHNzICBleW4gZMO2IERhdXR0aWNodCAgZWluaGluc2NocmVpYm4sICB3YXNzdCBic3TDpG5kaWcgaGFibgorICAgICB3aWxsc3QuIE1lZXJlciBkeXJ6dWUgZXJmYXJzdCB1bnRlcjogICA6aGVscCB2aW1yYy1pbnRybworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGV0em4gNy4zOiBWRVJHw5ZOVFpOCisKKworICAgICAgICAgICAgICAgKiogQmVmZWxoc3plaWxudmVyZ8O2bnR6dW5nIG1pdCA8U1RSRz5kIHVuZCA8VEFCPiAqKgorCisgIDEuIFZlcmd3acOfIGRpLCBkw6TDnyBkeXIgV2ltbSBuaXQgYXVmIG4gVXJ3aW1tLSJHbGFpcyIgZmFydDogICA6c2V0IG5vY3AKKworICAyLiBTY2hhdWcgbmFhY2gsIHfDtmxjaGVybmUgRGF1dHRpY2h0biBkw6TDnyBzIGluIG4gVmVyemFpY2huaXNzIGdlaXQ6ICAgOiFscworICAgICBvbGRlciAgIDohZGlyCisgIDMuIFppcGYgw7ZubiBBbmZhbmcgdm9uIGF5bmVyIEZhdWR1bmc6ICAgOmUKKworICA0LiBEcnVjayAgPFNUUkc+ZCAgLCAgdW5kIGR5ciBXaW1tIHphaWd0IGF5biBMaXN0biB2b24gRmF1ZHVuZ2VuLCAgd28gbWl0ICJlIgorICAgICBhbmdlZW5kLgorICA1LiBEcnVjayAgPFRBQj4gICwgIHVuZCBkeXIgV2ltbSB2ZXJ2b2xsc3TDtm5kaWd0ICDDtm5uIEZhdWR1bmdzbmFtIHpvICI6ZWRpdCIuCisKKyAgNi4gRsO8ZWcgIGF5biBMYWVyemFpY2hlbiAgdW5kIMO2bm4gQW5mYW5nICB2b24gYXluZXIgIGJlc3RlZWhldG4gRGF1dHRpY2h0IGFuOgorICAgICA6ZWRpdCBEQVUKKworICA3LiBEcnVjayA8VEFCPi4gIER5ciBXaW1tIHZlcmfDtm50enQgw7ZubiBOYW0sICBkw7ZzIGhhaXNzdCwgIHdlbm4geXIgYWluZGV1dHRpZworICAgICBpc3QuCitBbm3DtnJrdW5nOiAgRCBWZXJnw7ZudHp1bmcgIGdlaXQgcyBmw7xyIGF5bm4gSGF1ZmZlbiBGYXVkdW5nZW4uICBWZXJzdWVjaCBhaW5mYWNoCisgICAgICAgICAgIDxTVFJHPmQgIHVuZCAgPFRBQj4uICBCc3VuZGVycyBuw7x0emxpY2ggaXN0IGTDtnMgYmVpICAgOmhlbHAgIC4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICBaQU1NRU5GQVNTVU5HIFZPTiBEWVIgTEVUWk4gNworCisKKyAgMS4gWmlwZiAgOmhlbHAgICBvbGRlciBkcnVjayA8RjE+IG9sZGVyIDxISUxGPiwgIHVtIGF5biBIaWxmZmVuc3RlciB6IMO2ZmZuZW4uCisKKyAgMi4gWmlwZiAgOmhlbHAgRkFVRFVORyAgLCB1bSBhdWYgYXluIEhpbGYgZ2FuIGF5bm4gQmVmZWxoIHoga2VtbWVuLgorCisgIDMuIFppcGYgIDxTVFJHPncgdyAgLCB1bSB6byBuIGFuZGVybiBGZW5zdGVyIHogc3ByaW5nZW4uCisKKyAgNC4gWmlwZiAgOnEgICwgdW0gcyBIaWxmZmVuc3RlciB6IHNjaGxpZXNzbi4KKworICA1LiBFcnN0w7ZsbCBheW4gdmltcmMtR2luc2NocmlwZiAgenVlciBTaWNoZXJ1bmcgdm9uIGRlaW5lIE3DtnR6bmVpbnN0w7ZsbHVuZ2VuLgorCisgIDYuIERydWNrIDxTVFJHPmQsIGFmdCBkw6TDn3N0IG5hYWNoICA6ICBtaXQgYXluZXIgRmF1ZHVuZyBhbmdmYW5ndCBoYWFzdCwgIGR5ci0KKyAgICAgbWl0c3QgbcO8Z2xpY2hlIFZlcmfDtm50enVuZ2VuIGFuemFpZ3Qga3JpZWdzdC4KKyAgICAgRHJ1Y2sgPFRBQj4gZsO8ciBhaW4gVmVydm9sbHN0w7ZuZGlndW5nIHlsbGFpbi4KKworCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKworICBEw7ZzIHfDpHIgaWV0emV0IHMgRW5kIHZvbiBuIFdpbW1zY2hhaW5lci4gIEdhbmdlbiBpc3QgcyBkYWEgZHJ1bSwgIGF5bm4ga3VydHpuCisgIHVuZCBiw7xuZGlnbmVuIMOcYmVyYmxpayDDvGJlciBzIEJsYXQgIFdJTU0geiBsaWZlcm4sICBuZXR0eSB2aWwgZ251ZWcsICBkw6TDnyBteW4KKyAgZsO8ciBzIEVlcnN0ZSAgd2lya2xpY2ggw7ZiYnMgIGR5cm1pdCBhbmZhbmdlbiBrYW4uICBEeXJtaXQgaXN0IHMgYWJlciBhdWYga2FpbgorICBXZWl0biBub24gbml0IHRhYW47ICBkeXIgV2ltbSBoYWF0IHNjaG9vbiBub24gdmlsIG1lZXJlciAgYXVmIExhZ2VyLiAgTGlzIGFscworICBOYWVoc3RzIGF5bm1hYWwgcyBCZW51dHplcmhhbmRidWVjaDogICA6aGVscCB1c2VyLW1hbnVhbCAgIC4KKworICBabyBuIFdlaXRlcmzDtnNuIHVuZCBXZWl0ZXJsZXJuZW4gd8O2ciBkw7ZzIEJ1ZWNoIGRhYWRlciB6byBuIEVtcGZlbGhlbjoKKyAgICBWaW0gLSBWaSBJbXByb3ZlZCAtIHZvbiBuIE9VQUxMSU5FIFN0ZXZlCisgICAgVmVybGFhZzogTmV3IFJpZGVycworICBEw7ZzIGlzdCBkw7ZzIGVlcnN0ZSBCdWVjaCwgd28gZ2FueiB5biBuIFdpbW0gZ3dpZG10IGlzdCwgbmV0dHkgZMO2cyBHcmVjaHRlIGbDvHIKKyAgQW5mw7ZuZ2VyLiBFcyBoYWF0IGF5biBXw7ZzbiBCZWlzcGlsZXIgdW5kIGFhdSBCaWxkZXIgZHJpbm4uCisgIFNlZSBodHRwOi8vaWNjZi1ob2xsYW5kLm9yZy9jbGljazUuaHRtbAorCisgIETDtnMgZm9sZ2V0ZSBCdWVjaCAgaXN0IHNjaG9vbiDDtmx0ZXIgdW5kIG1lZXJlciAgw7xiZXIgbiBVcndpbW0gIGFscyB3aWUgw7xiZXIgbgorICBXaW1tLCAgYWJlciBhYXUgem8gbiBFbXBmZWxoZW46ICAgVGV4dGJlYXJiZWl0dW5nIG1pdCBkZW0gdmktRWRpdG9yIC0gdm9uIGR5cgorICBMQU1CIExpbmRhIHVuZCBuIFJPQkJJTlMgQXJub2xkICAtICBWZXJsYWFnIE8nUmVpbGx5ICAtIEJ1ZWNobGFpdHR6YWwgKElTQk4pOgorICAzODk3MjExMjYyCisgIEluIGTDtm5uIEJ1ZWNoICBrYW4gbXluIGZhc3QgYWxsc3MgZmluZGRuLCAgd2FzIG15biBtaXQgbiBVcndpbW0gYW5nZWVuIG1lY2h0LgorICBEZSBzw7Z4dGUgQXVzZ2FhYiBlbnRoYWx0dCBhYXUgc2Nob29uIMO2YmJzIMO8YmVyIG4gV2ltbS4KKyAgQWxzIGlldHp1bmRlIEJlenVnbmlzcyAgZsO8ciBkIEZhc3N1bmcgIDYuMiAgdW5kIGF5biBwZnJlbmdlIEVpbmbDvGVydW5nICBkaWVudAorICBkw7ZzIGZvbGdldGUgQnVlY2g6CisgICAgdmltIGdlLXBhY2t0ICB2b24gbiBXT0JTVCBSZWluaGFyZAorICAgIG1pdHAtVmVybGFhZywgQnVlY2hsYWl0dHphbCAzLTgyNjYtMTQyNS05CisgIFRyb3R6IGR5ciByZWNodCBwZnJlbmdlbiBEYXJzdMO2bGx1bmcgIGlzdCBzIGR1cmNoIHNlaW5lIHZpbG4gbsO8dHpsaWNobmVuIEJlaS0KKyAgc3BpbGVyIGFhdSBmw7xyIEVpbnN0ZWlnZXIgZ3JhZCBncmVjaHQuICBQcm9iaGFldXBzdGVyIHVuZCBkZSBCZWlzcGlsc2NocmlwZmVyCisgIHNlaW5kIHplc2lnIHpvIG4gS3JpZWduOyBzZWUgaHR0cDovL2ljY2YtaG9sbGFuZC5vcmcvY2xpY2s1Lmh0bWwKKworICBWZXJmYXNzdCBoYWJuZCBkw7ZubiBTY2hhaW5lciBkeXIgUElFUkNFIE1pY2hhZWwgQy4gdW5kIFdBUkUgUm9iZXJ0IEsuIHZvbiBkeXIKKyAgS29scmFhZGVyIEtuYXBwbnNjaHVlbCAoQ29sb3JhZG8gU2Nob29sIG9mIE1pbmVzKS4gRXIgYmVydWV0IGF1ZiBFbnR3w7xyZmYsIHdvCisgIGR5ciBTTUlUSCBDaGFybGVzICB2b24gZHlyICBLb2xyYWFkZXIgQWxsc2NodWVsICAoQ29sb3JhZG8gU3RhdGUgIFVuaXZlcnNpdHkpCisgIHp1ZXIgVmVyZsO8ZWd1bmcgZ3N0w7ZsbHQgaGFhdC4gR3VuZHBvc3Q6IGJ3YXJlQG1pbmVzLmNvbG9yYWRvLmVkdS4KKyAgRsO8ciBuIFdpbW0gaGFhdCBuIGR5ciBNT09MRU5BQVIgQnJhbSBiYXJlY2h0dC4KKyAgRGUgYmFpcmlzY2hlIMOcYmVyc8O2dHp1bmcgc3RhbW10IHZvbiBuIEhFTEwgU2VwcCAyMDA5LiBTZWluIEd1bmRwb3N0YnLDpGNodCBpc3QKKyAgc3R1cm1pYnVuZEB0LW9ubGluZS5kZSAKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAKKworIAorCisKKwpkaWZmIC0tZ2l0IGEvcnVudGltZS90dXRvci90dXRvci5lbyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmFjMDY4OQotLS0gL2Rldi9udWxsCisrKyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZW8KQEAgLTAsMCArMSw5ODkgQEAKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorPSAgQiBvIG4gdiBlIG4gbyBuICBhbCAgbGEgIEkgbiBzIHQgciB1IGkgbCBvICBkZSAgViBJIE0gIC0gIFZlcnNpbyAxLjcuZW8uMiA9Cis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworICAgVmltIGVzdGFzIHRyZSBwb3RlbmNhIHJlZGFrdGlsbywga2l1IGhhdmFzIG11bHRham4ga29tYW5kb2puLCB0cm8gZGEgaWxpCisgICBwb3Ig5mlvbiBrbGFyaWdpIGVuIGluc3RydWlsbyBraWVsIOZpIHRpdS4gxmkgdGl1IGluc3RydWlsbyBlc3RhcworICAgZmFzb25pdGEgcG9yIHByaXNrcmliaSBzdWZp5mFqbiBrb21hbmRvam4sIHBvciBrZSB2aSBrYXBhYmx1IHV6aSBWaW0KKyAgIGt1biBzdWZp5mEgZmFjaWxlY28uCisKKyAgIExhIHRlbXBvIGJlem9uYXRhIHBvciBwbGVudW1pIGxhIGt1cnNvbiBlc3RhcyAyNS0zMCBtaW51dG9qLCBrYWogZGVwZW5kYXMKKyAgIGRlIGtpb20gZGEgdGVtcG8gZXN0YXMgdXphdGEgcG9yIGVrc3BlcmltZW50aS4KKworICAgQVRFTlRVOgorICAgTGEga29tYW5kb2ogZW4gbGEgbGVjaW9ub2og/mFu+G9zIGxhIHRla3N0b24uIEtvcGl1IHRpdW4g5mkgZG9zaWVyb24KKyAgIHBvciBla3plcmNpIHZpbiAoc2UgdmkgbGFu5mlzICJ2aW10dXRvciIsIHRpYW0gZXN0YXMgamFtIGtvcGlvKS4KKworICAgR3JhdmFzIG1lbW9yaSwga2Ug5mkgdGl1IGluc3RydWlsbyBlc3RhcyBvcmdhbml6YXRhIHBvciBpbnN0cnVpIHBlcgorICAgbGEgdXpvLiBUaW8gc2lnbmlmYXMsIGtlIHZpIGRldmFzIHBsZW51bWkgbGEga29tYW5kb2puIHBvciBib25lIGxlcm5pCisgICBpbGluLiBTZSB2aSBudXIgbGVnYXMgbGEgdGVrc3RvbiwgdmkgZm9yZ2Vzb3MgbGEga29tYW5kb2puIQorCisgICBOdW4sIGNlcnRpZ3UsIGtlIGxhIG1hanVza2xhIGJhc2t1bG8gTkUgZXN0YXMgZW4gcmX4aW1vIG1hanVza2xhLAorICAga2FqIHByZW11IGxhIGtsYXZvbiAgaiAgc3VmaeZlIGRhIGZvam9qIHBvciBtb3ZpIGxhIGt1cnNvcm9uLCBrYWogcG9yCisgICBrZSBsYSBsZWNpb25vIDEuMSBwbGVuaWd1IGxhIGVrcmFub24uCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gMS4xOiAgTU9WSSBMQSBLVVJTT1JPTgorCisKKyAgKiogUG9yIG1vdmkgbGEga3Vyc29yb24sIHByZW11IGxhIGgsaixrLGwga2xhdm9qbiBraWVsIG1vbnRyaXRlLiAqKgorICAgICAgICAgXgorICAgICAgICAgayAgICAgICAgS29uc2lsbzogTGEga2xhdm8gaCBlc3RhcyBsYSBwbGVqIGxpdmEga2FqIG1vdmFzIGxpdmVuLgorICAgPCBoICAgICAgIGwgPiAgICAgICAgICAgTGEga2xhdm8gbCBlc3RhcyBsYSBwbGVqIGRla3N0cmEga2FqIG1vdmFzIGRla3N0cmVuLgorICAgICAgICAgaiAgICAgICAgICAgICAgICAgTGEga2xhdm8gaiBhc3Bla3RhcyBraWVsIG1hbHN1cHJlbmEgc2Fnby4KKyAgICAgICAgIHYKKyAgMS4gTW92dSBsYSBrdXJzb3JvbiBzdXIgbGEgZWtyYW5vIPhpcyBraWFtIHZpIHNlbnRhcyB2aW4ga29tZm9ydGEuCisKKyAgMi4gUHJlbXUgbGEga2xhdm9uIChqKSD4aXMga2lhbSD4aSByaXBldGFzLgorICAgICBWaSBudW4gc2NpYXMsIGtpZWwgbW92afhpIGFsIGxhIHNla3ZhbnRhIGxlY2lvbm8KKworICAzLiBVemFudGUgbGEgbWFsc3VwcmVuYW4ga2xhdm9uLCBtb3Zp+HUgYWwgbGEgbGVjaW9ubyAxLjIuCisKK1JJTUFSS086IFNlIHZpIGR1YmFzIHByaSB0aW8sIGtpb24gdmkgcHJlbWlzLCBwcmVtdSA8RVNLPiBwb3IgcmVpcmkgYWwKKyAgICAgICAgIGxhIG5vcm1hbGEgcmX4aW1vLiBUaWFtIHJlcHJlbXUgbGEgZGV6aXJhdGFuIGtvbWFuZG9uLgorCitSSU1BUktPOiBMYSBrbGF2b2ogZGUgbGEga3Vyc29ybyBkZXZ1cyBhbmth/SBmdW5rY2lpLiBTZWQgdXphbnRlIGhqa2wsCisgICAgICAgICB2aSBrYXBhYmxvcyBtb3Zp+GkgcGxpIHJhcGlkZSBwb3N0IGtpYW0gdmkga3V0aW1p+G9zLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gMS4yOiAgRUxJUkkgRUwgVklNCisKKworICAhISBSSU1BUktPOiBBbnRh/SBvbCBwbGVudW1pIGl1am4gc3ViYWpuIHBh/m9qbiBham4sIGxlZ3UgbGEgdHV0YW4gbGVjaW9ub24hIQorCisgIDEuIFByZW11IGxhIGtsYXZvbiA8RVNLPiAocG9yIGNlcnRpZ2ksIGtlIHZpIGVzdGFzIGVuIG5vcm1hbGEgcmX4aW1vKS4KKworICAyLiBUYWpwdTogICAgICAgOnEhIDxFbmVua2xhdm8+LgorICAgICBUaW8gZWxpcmFzIGVsIGxhIHJla2Rha3RpbG8sIFNFTiBrb25zZXJ2aSBsYSD+YW74b2puLCBraXVqbiB2aSBmYXJpcy4KKworICAzLiBLaWFtIHZpIHZpZGFzIGxhIP5lbGludml0b24sIHRhanB1IGxhIGtvbWFuZG9uIGtpdW4gdmkgdXppcyBwb3IgZW5pcmkKKyAgICAgZW4g5mkgdGl1IGluc3RydWlsby4gVGlvIGVzdHVzOiAgIHZpbXR1dG9yIDxFbmVua2xhdm8+CisKKyAgNC4gU2UgdmkgbWVtb3JpcyB0aXVqbiBwYf5vam4ga2FqIHNlbnRhcyB2aW4gbWVtZmlkYSwgcGxlbnVtdSBsYSBwYf5vam4KKyAgICAgMSD4aXMgMyBwb3IgZWxpcmkga2FqIHJlZW5pcmkgbGEgcmVkYWt0aWxvbi4KKworUklNQVJLTzogOnEhIDxFbmVua2xhdm8+IGVsaXJhcyBzZW4ga29uc2VydmkgbGEg/mFu+G9qbiwga2l1am4gdmkgZmFyaXMuCisgICAgICAgICBQb3N0IGtlbGthaiBsZWNpb25vaiwgdmkgbGVybm9zIGtpZWwga29uc2VydmkgbGEg/mFu+G9qbiBhbCBkb3NpZXJvLgorCisgIDUuIE1vdnUgbGEga3Vyc29yb24gc3ViZW4g+GlzIGxhIGxlY2lvbm8gMS4zLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICBMZWNpb25vIDEuMzogIFJFREFLVE8gREUgVEVLU1RPIC0gRk9SVkneTworCisKKyAgICAgICAgICAgICAqKiBQcmVtdSAgeCAgcG9yIGZvcnZp/mkgbGEgc2lnbm9uIHN1YiBsYSBrdXJzb3JvLiAqKgorCisgIDEuIE1vdnUgbGEga3Vyc29yb24gYWwgbGEgc3ViYSBsaW5pbyBtYXJraXRhIHBlciAtLS0+LgorCisgIDIuIFBvciBrb3Jla3RpIGxhIGVyYXJvam4sIG1vdnUgbGEga3Vyc29yb24g+GlzIGtpYW0g+GkgZXN0YXMgc3VyIGxhCisgICAgIGZvcnZp/mVuZGEgc2lnbm8uCisKKyAgMy4gUHJlbXUgbGEga2xhdm9uICB4ICBwb3IgZm9ydmn+aSBsYSBuZWRlemlyYXRhbiBzaWdub24uCisKKyAgNC4gUmlwZXR1IHBh/m9qbiAyIPhpcyA0IPhpcyBraWFtIGxhIGZyYXpvIGVzdGFzIPh1c3RhLgorCisKKy0tLT4gTGEgYm9vdmlubm8gc2FhbHRpc3Mgc3N1ciBsYWEgbHV1bm8uCisKKyAgNS4gUG9zdCBraWFtIGxhIGxpbmlvIGVzdGFzIPh1c3RhLCBpcnUgYWwgbGEgbGVjaW9ubyAxLjQKKworUklNQVJLTzogVHJhaXJhbnRlIGxhIGluc3RydWlsb24sIG5lIHByb3Z1IG1lbW9yaSwgbGVybnUgcGVyIGxhIHV6by4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDEuNDogIFJFREFLVE8gREUgVEVLU1RPIC0gRU5NRVRPCisKKworICAgICAgICAgICAgICAgICAgICAgICoqIFByZW11ICBpICBwb3IgZW5tZXRpIHRla3N0b24uICoqCisKKyAgMS4gTW92dSBsYSBrdXJzb3JvbiBhbCBsYSB1bnVhIHN1YmEgbGluaW8gbWFya2l0YSBwZXIgLS0tPi4KKworICAyLiBQb3IgaWdpIGxhIHVudWFuIGxpbmlvbiBzYW1hIGtpZWwgbGEgZHVhLCBtb3Z1IGxhIGt1cnNvcm9uIHN1ciBsYSB1bnVhbgorICAgICBzaWdub24gcG9zdCBraWUgbGEgdGVrc3RvIGVzdGFzIGVubWV0ZW5kYS4KKworICAzLiBQcmVtdSAgaSAga2FqIHRhanB1IGxhIGJlem9uYXRham4gYWxkb25vam4uCisKKyAgNC4gUHJlbXUgPEVTSz4ga2lhbSBsYSBlcmFyb2ogZXN0YXMga29yZWt0aXRhaiBwb3IgcmVpcmkgYWwgbGEgbm9ybWFsYQorICAgICByZfhpbW8uIFJpcGV0dSBsYSBwYf5vam4gMiD4aXMgNCBwb3Iga29yZWt0aSBsYSBmcmF6b24uCisKKy0tLT4gTWFuayBlbiDmaSBsaW5pby4KKy0tLT4gTWFua2FzIHRla3N0b24gZW4g5mkgdGl1IGxpbmlvLgorCisgIDUuIEtpYW0gdmkgc2VudGFzIHZpbiBrb21mb3J0YSBwcmkgZW5tZXRvIGRlIHRla3N0bywgbW92afh1IGFsIGxhCisgICAgIGxlY2lvbm8gMS41LgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICBMZWNpb25vIDEuNTogIFJFREFLVE8gREUgVEVLU1RPIC0gUE9TVEFMRE9OTworCisKKyAgICAgICAgICAgICAgICAgICAgKiogUHJlbXUgIEEgIHBvciBwb3N0YWxkb25pIHRla3N0b24uICoqCisKKyAgMS4gTW92dSBsYSBrdXJzb3JvbiBhbCBsYSB1bnVhIHN1YmEgbGluaW8gbWFya2l0YSBwZXIgLS0tPi4KKyAgICAgTmUgZ3JhdmFzIHN1ciBraXUgc2lnbm8gZXN0YXMgbGEga3Vyc29yby4KKworICAyLiBQcmVtdSBtYWp1c2tsYW4gIEEgIGthaiB0YWpwdSBsYSBiZXpvbmF0YWpuIGFsZG9ub2puLgorCisgIDMuIFBvc3Qga2lhbSBsYSB0ZWtzdG8gZXN0YXMgYWxkb25pdGEsIHByZW11IDxFU0s+IHBvciByZWlyaSBhbCBsYSBub3JtYWxhCisgICAgIHJl+Gltby4KKworICA0LiBNb3Z1IGxhIGt1cnNvcm9uIGFsIGxhIGR1YSBsaW5pbyBtYXJraXRhIHBlciAtLS0+IGthaiByaXBldHUgbGEKKyAgICAgcGH+b2puIDIga2FqIDMgcG9yIGtvcmVrdGkgbGEgZnJhem9uLgorCistLS0+IE1hbmthcyB0ZWtzdG8gZWwgdGkKKyAgICAgTWFua2FzIHRla3N0byBlbCB0aXUgbGluaW8uCistLS0+IE1hbmthcyBhbmth/SB0ZWtzCisgICAgIE1hbmthcyBhbmth/SB0ZWtzdG8g5mkgdGllLgorCisgIDUgS2lhbSB2aSBzZW50YXMgdmluIGtvbWZvcnRhIHByaSBwb3N0YWxkb25vIGRlIHRla3N0bywgbW92afh1IGFsIGxhCisgICAgbGVjaW9ubyAxLjYKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDEuNjogIFJFREFLVEkgRE9TSUVST04KKworICAgICAgICAgICAgICAgICoqIFV6dSAgOndxICBwb3Iga29uc2VydmkgZG9zaWVyb24ga2FqIGVsaXJpLiAqKgorCisgICEhIFJJTUFSS086IEFudGH9IG9sIHBsZW51bWkgaXVuIHN1YmFuIHBh/m9uIGFqbiwgbGVndSBsYSB0dXRhbiBsZWNpb25vbiEhCisKKyAgMS4gRWxpcnUgZWwgbGEgaW5zdHJ1aWxvIGtpZWwgdmkgZmFyaXMgZW4gbGEgbGVjaW9ubyAxLjI6ICA6cSEKKworICAyLiDGZSBsYSD+ZWxpbnZpdG8sIHRhanB1IOZpIHRpdW4ga29tYW5kb246ICB2aW0gdHV0b3IgPEVuZW5rbGF2bz4KKyAgICAgJ3ZpbScgZXN0YXMgbGEga29tYW5kbyBwb3IgbGFu5mkgbGEgcmVkYWt0aWxvbiBWaW0sICd0dXRvcicgZXN0YXMgbGEKKyAgICAgZG9zaWVybm9tbyBkZSBsYSBkb3NpZXJvLCBraXVuIHZpIHZvbGFzIHJlZGFrdGkuICBVenUgZG9zaWVyb24sIGtpdQorICAgICD+YW74ZWJsYXMuCisKKyAgMy4gRW5tZXR1IGthaiBmb3J2af51IHRla3N0b24sIGtpZWwgdmkgbGVybmlzIGVuIGxhIGFudGH9YWogbGVjaW9ub2ouCisKKyAgNC4gS29uc2VydnUgbGEgZG9zaWVyb24ga3VuIP5hbvhvaiBrYWogZWxpcnUgZWwgVmltIHBlcjogIDp3cSAgPEVuZW5rbGF2bz4KKworICA1LiBSZWxhbuZ1IGxhIGluc3RydWlsb24gdmltdHV0b3Iga2FqIG1vdmn4dSBzdWJlbiBhbCBsYSBzZWt2YW50YSByZXN1bW8uCisKKyAgNi4gUG9zdCBraWFtIHZpIGxlZ2lzIGxhIHN1cHJham4gcGH+b2puLCBrYWoga29tcHJlbmlzIGlsaW46IGZhcnUgaWxpbi4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyAxIFJFU1VNTworCisKKyAgMS4gTGEga3Vyc29ybyBtb3Zp+GFzIGH9IHBlciBsYSBzYWdva2xhdm9qLCBh/SBwZXIgbGEga2xhdm9qIGhqa2wuCisgICAgICAgIGggKGxpdmVuKSAgICAgaiAoc3ViZW4pICAgICAgayAoc3VwcmVuKSAgICAgbCAoZGVrc3RyZW4pCisKKyAgMi4gUG9yIGxhbuZpIFZpbSBlbCBsYSD+ZWxpbnZpdG8sIHRhanB1OiAgdmltIERPU0lFUk5PTU8gPEVuZW5rbGF2bz4KKworICAzLiBQb3IgZWxpcmkgZWwgVmltLCB0YWpwdTogIDxFU0s+ICA6cSEgPEVuZW5rbGF2bz4gIHBvciByZXppZ25pIGxhIP5hbvhvam4KKworICA0LiBQb3IgZm9ydmn+aSBsYSBzaWdub2puIOZlIGxhIHBvemljaW8gZGUgbGEga3Vyc29ybywgdGFqcHU6ICB4CisKKyAgNS4gUG9yIGVubWV0aSBh/SBwb3N0YWxkb25pIHRla3N0b24sIHRhanB1OgorICAgICAgICAgIGkgIHRhanB1IGVubWV0ZW5kYW4gdGVrc3RvbiAgICAgICAgPEVTSz4KKyAgICAgICAgICAgICBlbm1ldGFzIHRla3N0b24gYW50Yf0gbGEga3Vyc29ybworCisgICAgICAgICAgQSAgdGFqcHUgbGEgcG9zdGFsZG9uZW5kYW4gdGVrc3RvbiA8RVNLPgorICAgICAgICAgICAgIHBvc3RhbGRvbmFzIHBvc3QgbGEga3Vyc29ybworCitSSU1BUktPOiBQcmVtbyBkZSA8RVNLPiBpcmFzIGFsIGxhIG5vcm1hbGEgcmX4aW1vLCBh/SByZXppZ25hcyBsYQorICAgICAgICAgbmVkZXppcmF0YW4gYf0gcGFydGUgcGxlbnVtaXRhIGtvbWFuZG8uCisKK051biBkYf1yaWd1IGFsIGxhIGxlY2lvbm8gMi4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gMi4xOiBLT01BTkRPSiBERSBGT1JWSd5PCisKKworICAgICAgICAgICAgICAgICAgICAgICoqIFRhanB1ICBkdyAgcG9yIGZvcnZp/mkgdm9ydG9uLiAqKgorCisgIDEuIFByZW11ICA8RVNLPiAgcG9yIGNlcnRpZ2ksIGtlIHZpIGVzdGFzIGVuIG5vcm1hbGEgcmX4aW1vLgorCisgIDIuIE1vdnUgbGEga3Vyc29yb24gYWwgbGEgbGluaW8gbWFya2l0YSBwZXIgLS0tPi4KKworICAzLiBNb3Z1IGxhIGt1cnNvcm9uIGFsIGxhIGtvbWVuY28gZGUgdm9ydG8sIGtpdSBmb3J2af5lbmRhcy4KKworICA0LiBUYWpwdSAgIGR3ICAgcG9yIGZvcnZp/mkgbGEgdm9ydG9uLgorCisgIFJJTUFSS086IExhIGxpdGVybyAgZCAgYXBlcm9zIGVuIGxhIGxhc3RhIGxpbmlvIHN1ciBsYSBla3Jhbm8ga2lhbSB2aQorICAgICAgICAgICB0YWpwYXMg+GluLiBWaW0gYXRlbmRhcyD4aXMga2lhbSB2aSB0YWpwYXMgIHcgLiAgU2UgdmkgdmlkYXMKKyAgICAgICAgICAgYWxpYW4gc2lnbm9uIG9sICBkICB2aSB0YWpwaXMgaW9uIG1pc2U7IHByZW11ICA8RVNLPiAga2FqCisgICAgICAgICAgIHJla29tZW5jdS4KKworLS0tPiBFc3RhcyBpdWogdm9ydG9qIGtpdWogWmFtZW5ob2YgbmUgZGV2dXMgZXN0aSBha3V6YXRpdm8gZW4g5mkgdGl1IGZyYXpvLgorCisgIDUuIFJpcGV0dSBwYf5vam4gMyBrYWogNCD4aXMga2lhbSBsYSBmcmF6byBlc3RhcyD4dXN0YSBrYWogbW92afh1IGFsIGxhCisgICAgIGxlY2lvbm8gMi4yLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyAyLjI6IFBMSUFKIEtPTUFORE9KIERFIEZPUlZJ3k8KKworCisgICAgICAgICAgICAgICAqKiBUYWpwdSAgZCQgIHBvciBmb3J2af5pIGxhIGZpbm9uIGRlIGxhIGxpbmlvLiAqKgorCisgIDEuIFByZW11ICA8RVNLPiAgcG9yIGNlcnRpZ2ksIGtlIHZpIGVzdGFzIGVuIG5vcm1hbGEgcmX4aW1vLgorCisgIDIuIE1vdnUgbGEga3Vyc29yb24gc3VyIGxhIHN1YmFuIGxpbmlvbiBtYXJraXRhIHBlciAtLS0+LgorCisgIDMuIE1vdnUgbGEga3Vyc29yb24g5mUgbGEgZmlubyBkZSBsYSD4dXN0YSBsaW5pbyAoUE9TVCBsYSB1bnVhIC4gKS4KKworICA0LiBUYWpwdSAgIGQkICAgcG9yIGZvcml2/mkg+GlzIGxhIGZpbm8gZGUgbGEgbGluaW8uCisKKy0tLT4gSXUgdGFqcGlzIGxhIGZpbm9uIGRlIOZpIHRpdSBsaW5pbyBkdWZvamUuIGZpbm8gZGUg5mkgdGl1IGxpbmlvIGR1Zm9qZS4KKworCisgIDUuIE1vdmn4dSBhbCBsYSBsZWNpb25vIDIuMyBwb3Iga29tcHJlbmkga2lvIG9rYXphcy4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyAyLjM6IFBSSSBPUEVSQVRPUk9KIEtBSiBNT1ZPSgorCisKKyAgTXVsdGFqIGtvbWFuZG9qLCBraXVqIP5hbvhhcyBsYSB0ZWtzdG9uLCBlc3RhcyBmYXJpdGFqIGRlIG9wZXJhdG9ybyBrYWoKKyAgbW92by4gTGEgZm9ybWF0byBkZSBrb21hbmRvIGRlIGZvcnZp/m8gcGVyIGxhIG9wZXJhdG9ybyBkZSBmb3J2af5vICBkCisgIGVzdGFzIGtpZWwgc2VrdmFzOgorCisgICAgICAgZCAgIG1vdm8KKworICBLaWU6CisgICAgZCAgICAgIC0gZXN0YXMgbGEgb3BlcmF0b3JvIGRlIG1vdm8KKyAgICBtb3ZvICAgLSBlc3RhcyB0aW8sIHByaSBraW8gbGEgb3BlcmF0b3JvIG9wZXJhY2lvcyAobGlzdGlnaXRhIHN1YmUpCisKKyAgTWFsbG9uZ2EgbGlzdG8gZGUgbW92b2o6CisgICAgdyAtIPhpcyBsYSBrb21lbmNvIGRlIGxhIHNla3ZhbnRhIHZvcnRvLCBrcm9tIPhpYSB1bnVhIHNpZ25vLgorICAgIGUgLSD4aXMgbGEgZmlubyBkZSBsYSBudW5hIHZvcnRvLCBrcm9tIGxhIGxhc3RhIHNpZ25vLgorICAgICQgLSD4aXMgbGEgZmlubyBkZSBsYSBsaW5pbywga3JvbSBsYSBsYXN0YSBzaWduby4KKworICBEbyB0YWpwbyBkZSAgICdkZScgICBmb3J2af5vcyBla2RlIGxhIGt1cnNvcm8g+GlzIGxhIGZpbm8gZGUgbGEgdm9ydG8uCisKK1JJTUFSS086IFByZW1vIGRlIG51ciBsYSBtb3ZvIGVuIE5vcm1hbGEgcmX4aW1vIHNlbiBvcGVyYXRvcm8gbW92b3MKKyAgICAgICAgIGxhIGt1cnNvcm9uIGtpZWwgc3BlY2lmaXRlLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDIuNDogVVpJIE5PTUJST04gUE9SIE1PVk8KKworICAgICAgICAgICAgICoqIFRhanBvIGRlIG5vbWJybyBhbnRh/SBtb3ZvIHJpcGV0YXMg+GluIGxh/WZvamUuICoqCisKKyAgMS4gTW92dSBsYSBrdXJzb3JvbiDmZSBsYSBrb21lbmNvIGRlIGxhIHN1YmEgbGluaW8gbWFya2l0YSBwZXIgLS0tPi4KKworICAyLiBUYWpwdSAgMncgIHBvciBtb3ZpIGxhIGt1cnNvcm9uIGplIGR1IHZvcnRvaiBhbnRh/WVuLgorCisgIDMuIFRhanB1ICAzZSAgcG9yIG1vdmkgbGEga3Vyc29yb24g5mUgbGEgZmlubyBkZSBsYSB0cmlhIHZvcnRvIGFudGH9ZW4uCisKKyAgNC4gVGFqcHUgIDAgIChudWwpIHBvciBtb3Zp+Gkg5mUgbGEga29tZW5jbyBkZSBsYSBsaW5pby4KKworCisgIDUuIFJpcGV0dSBwYf5vam4gMiD4aXMgMyBrdW4gbWFsc2FtYWogbm9tYnJvai4KKworLS0tPiBUaW8gZXN0YXMgbnVyIGxpbmlvIGt1biB2b3J0b2osIGtpZSB2aSBwb3ZhcyBtb3Zp+GkuCisKKyAgNi4gTW92afh1IGFsIGxhIGxlY2lvbm8gMi41LgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDIuNTogVVpJIE5PTUJST04gUE9SIEZPUlZJ3kkgUExJCisKKworICAgICAgICAgICAgKiogVGFqcG8gZGUgbm9tYnJvIGt1biBvcGVyYXRvcm8gcmlwZXRhcyD4aW4gbGH9Zm9qZS4gKioKKworICBFbiBsYSBrb21iaW5hvG8gZGUgbGEgb3BlcmF0b3JvIGRlIGZvcnZp/m8sIGthaiBtb3ZvIGtpZWwgbWVuY2lpdGEKKyAg5mktc3VwcmUsIGVibGFzIGFsZG9uaSBub21icm9uIGFudGH9IGxhIG1vdm8gcG9yIHBsaSBmb3J2af5pOgorICAgICAgICBkICBub21icm8gICBtb3ZvCisKKyAgMS4gTW92dSBsYSBrdXJzb3JvbiDmZSBsYSB1bnVhIE1BSlVTS0xBIHZvcnRvIGVuIGxhIGxpbmlvIG1hcmtpdGEgcGVyIC0tLT4uCisKKyAgMi4gVGFqcHUgIGQydyAgcG9yIGZvcnZp/mkgbGEgZHUgTUFKVVNLTEFKTiB2b3J0b2puCisKKyAgMy4gUmlwZXR1IHBh/m9qbiAxIPhpcyAyIHBlciBtYWxzYW1hIG5vbWJybyBwb3IgZm9ydmn+aSBsYSBzaW5zZWt2YWpuCisgICAgIE1BSlVTS0xBSk4gdm9ydG9qbiBwZXIgdW51IGtvbWFuZG8KKworLS0tPiBUaXUgQUIgQ0RFIGxpbmlvIEZHSEkgSksgTE1OIE9QIGRlIHZvcnRvaiBlc3RhcyBRIFJTIFRVViBwdXJpZ2l0YS4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyAyLjY6IE9QRVJBQ0lJIFNVUiBMSU5JT0oKKworCisgICAgICAgICAgICAgICAgICAgKiogVGFqcHUgIGRkICBwb3IgZm9ydmn+aSB0dXRhbiBsaW5pb24uICoqCisKKyAgUHJvIGxhIG9mdGVjbyBkZSBmb3J2af5vIGRlIHR1dGEgbGluaW8sIGxhIHZlcmtpc3RvIGRlIFZpIGRlY2lkaXMsIGtlCisgIGVzdHVzIHBsaSBmYWNpbGUgc2ltcGxlIHRhanBpIGR1IGQtb2puICBwb3IgZm9ydmn+aSBsaW5pb24uCisKKyAgMS4gTW92dSBsYSBrdXJzb3JvbiBzdXIgbGEgZHVhbiBsaW5pb24gZW4gbGEgc3ViYSBmcmF6by4KKyAgMi4gVGFqcHUgIGRkICBwb3IgZm9ydmn+aSBsYSBsaW5pb24uCisgIDMuIE51biBtb3Zp+HUgYWwgbGEga3ZhcmEgbGluaW8uCisgIDQuIFRhanB1ICAgMmRkICAgcG9yIGZvcnZp/mkgZHUgbGluaW9qbi4KKworLS0tPiAxKSAgUm96b2ogZXN0YXMgcnX4YWosCistLS0+IDIpICDebGltbyBlc3RhcyBhbXV6YSwKKy0tLT4gMykgIFZpb2xvaiBlc3RhcyBibHVhaiwKKy0tLT4gNCkgIE1pIGhhdmFzIGH9dG9uLAorLS0tPiA1KSAgSG9ybG/4b2ogZGlyYXMga2lvbWEgaG9ybyBlc3RhcywKKy0tLT4gNikgIFN1a2VybyBlc3RhcyBkb2zmYSwKKy0tLT4gNykgIEthaiB0aWVsIHZpIGVzdGFzLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDIuNzogTEEgS09NQU5ETyBERSBNQUxGQVJPCisKKworICoqIFByZW11IHUgcG9yIG1hbGZhcmkgbGEgbGFzdGFqbiBrb21hbmRvam4sIFUgcG9yIHJpcGFyaSBsYSB0dXRhbiBsaW5pb24uICoqCisKKyAgMS4gTW92dSBsYSBrdXJzb3JvbiDmZSBsYSBzdWJhIGxpbmlvIG1hcmtpdGEgcGVyIC0tLT4ga2FqIG1ldHUg+GluIHN1cgorICAgICBsYSB1bnVhbiBlcmFyb24uCisgIDIuIFRhanB1ICB4ICBwb3IgZm9ydmn+aSBsYSB1bnVhbiBuZWRlemlyYXRhbiBzaWdub24uCisgIDMuIE51biB0YWpwdSAgdSAgcG9yIG1hbGZhcmkgbGEgbGFzdGFuIHBsZW51bWl0YW4ga29tYW5kb24uCisgIDQuIMZpLWZvamUsIHJpcGFydSDmaXVqbiBlcmFyb2puIGVuIGxhIGxpbmlvIGthaiD4aWEgb3JpZ2luYWxhIHN0YXRvLgorICA1LiBOdW4gdGFqcHUgbWFqdXNrbGFuICBVICBwb3IgaWdpIGxhIGxpbmlvbiBhbCD4aWEgYW50Yf1hIHN0YXRvLgorICA2LiBOdW4gdGFqcHUgIHUgIGtlbGtmb2plIHBvciBtYWxmYXJpIGxhICBVICBrYWogYW50Yf1ham4ga29tYW5kb2puLgorICA3LiBOdW4gdGFqcHUgQ1RSTC1SIChwcmVtYW50ZSBsYSBDVFJMIGtsYXZvbiBkdW0gdmkgcHJlbWFzIFIpIGtlbGtmb2plCisgICAgIHBvciByZWZhcmkgbGEga29tYW5kb2puIChtYWxmYXJpIGxhIG1hbGZhcm9qbikuCisKKy0tLT4gS29vcmVrdGlpIGxhIGVyYXJvam4gc3VyIHRpdXUg5mkgbGluaWlvIGthaiByZW1ldHR1IGlsbGxpbiBwZXIgbWFsZmFyby4KKworICA4LiBUaXVqIGVzdGFzIHRyZSB1dGlsYWoga29tYW5kb2ouICBOdW4gbW92afh1IGFsIGxhIGxlY2lvbm8gMiBSRVNVTU8uCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gMiBSRVNVTU8KKworCisgIDEuIFBvciBmb3J2af5pIGVrZGUgbGEga3Vyc29ybyD4aXMgbGEgc2VrdmFudGEgdm9ydG8sIHRhanB1OiAgICBkdworICAyLiBQb3IgZm9ydmn+aSBla2RlIGxhIGt1cnNvcm8g+GlzIGxhIGZpbm8gZGUgbGEgbGluaW8sIHRhanB1OiAgZCQKKyAgMy4gUG9yIGZvcnZp/mkgdHV0YW4gbGluaW9uLCB0YWpwdTogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRkCisKKyAgNC4gUG9yIHJpcGV0aSBtb3ZvbiwgYW50Yf1tZXR1IG5vbWJyb246ICAgICAgICAgICAgICAgICAgICAgICAgIDJ3CisgIDUuIExhIGZvcm1hdG8gZGUg/mFu+GEga29tYW5kbyBlc3RhczoKKyAgICAgICAgICAgb3BlcmF0b3JvICAgW25vbWJyb10gICBtb3ZvCisKKyAgICAga2llOgorICAgICAgIG9wZXJhdG9ybyAtIGVzdGFzIHRpbywga2lvIGZhcmVuZGFzLCBraWVsICBkICBwb3IgZm9ydmn+aQorICAgICAgIFtub21icm9dICAtIGVzdGFzIG9wY2lhIG5vbWJybyBwb3IgcmlwZXRpIGxhIG1vdm9uCisgICAgICAgbW92byAgICAgIC0gbW92YXMgc3VyIGxhIHRla3N0byBwb3Igb3BlcmFjaWksIGtpZWwgZWt6ZW1wbGUgIHcgKHZvcnRvKSwKKyAgICAgICAgICAgICAgICAgICAkICj4aXMgZmlubyBkZSBsaW5pbyksIGt0cC4KKworICA2LiBQb3IgbW92afhpIGFsIGxhIGtvbWVuY28gZGUgbGEgbGluaW8sIHV6dSBudWw6ICAwCisKKyAgNy4gUG9yIG1hbGZhcmkgYW50Yf1ham4gYWdvam4sIHRhanB1OiAgICAgICAgICAgICAgIHUgKG1pbnVza2xhIHUpCisgICAgIFBvciBtYWxmYXJpIOZpdWpuIP5hbvhvam4gc3VyIGxhIGxpbmlvLCB0YWpwdTogICBVIChtYWp1c2tsYSBVKQorICAgICBQb3IgcmVmYXJpIGxhIG1hbGZhcm9qbiwgdGFqcHU6ICAgICAgICAgICAgICAgICAgQ1RSTC1SCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyAzLjEgTEEgS09NQU5ETyBERSBNRVRPCisKKworICAgICoqIFRhanB1ICBwICBwb3IgbWV0aSB0ZWtzdG9uIGZvcnZp/ml0YW4gYW50Yf1lIHBvc3QgbGEga3Vyc29yby4gKioKKworICAxLiBNb3Z1IGxhIGt1cnNvcm9uIOZlIGxhIHVudWEgLS0tPiBzdWJhIGxpbmlvLgorCisgIDIuIFRhanB1ICBkZCAgcG9yIGZvcnZp/mkgbGEgbGluaW9uIGthaiBrb25zZXJ2aSD4aW4gZW5lIGRlIHJl+GlzdHJvIGRlIFZpbS4KKworICAzLiBNb3Z1IGxhIGt1cnNvcm9uIOZlIGxhIGxpbmlvIGMpLCBTVVBFUiBraWUgbGEgZm9ydmn+aXRhIGxpbmlvIGRldnVzIGVzdGkuCisKKyAgNC4gVGFqcHUgIHAgIHBvciBtZXRpIGxhIGxpbmlvbiBzdWIgbGEga3Vyc29yb24uCisKKyAgNS4gUmlwZXR1IGxhIHBh/m9qbiAyIPhpcyA0IHBvciBtZXRpIOZpdWpuIGxpbmlvam4gZW4gbGEg+HVzdGEgb3Jkby4KKworLS0tPiBkKSDGdSBhbmth/SB2aSBwb3ZhcyBsZXJuaT8KKy0tLT4gYikgVmlvbG9qIGVzdGFzIGJsdWFqLAorLS0tPiBjKSBJbnRlbGlnZW50ZWNvIGxlcm5lYmxhcywKKy0tLT4gYSkgUm96b2ogZXN0YXMgcnX4YWosCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDMuMiBMQSBLT01BTkRPIERFIEFOU1RBVEHdSUdPCisKKworICAgICAgICoqIFRhanB1ICByeCAgcG9yIGFuc3RhdGH9aWdpIGxhIHNpZ25vbiDmZSBsYSBrdXJzb3JvIHBlciAgeCAuICoqCisKKworICAxLiBNb3Z1IGxhIGt1cnNvcm9uIOZlIGxhIHVudWEgc3ViYSBsaW5pbyBtYXJraXRhIHBlciAtLS0+LgorCisgIDIuIE1vdnUgbGEga3Vyc29yb24g+GlzIGxhIHVudWEgZXJhcm8uCisKKyAgMy4gVGFqcHUgIHIgIGthaiBsYSBzaWdub24sIGtpdSBkZXZ1cyBlc3RpIHRpZS4KKworICA0LiBSaXBldHUgcGH+b2puIDIga2FqIDMg+GlzIGtpYW0gbGEgdW51YSBsaW5pbyBlZ2FsYXMgbGEgZHVhbi4KKworLS0tPiBLaWVtIHRpdSBsYW5pbyBlc3RpcyB0YWpwaXRhLCBpdSBwcmFtaXMgbGEgbmH4dWZ0YWpuIGtsb3Zvam4hCistLS0+IEtpYW0gdGl1IGxpbmlvIGVzdGlzIHRhanBpdGEsIGl1IHByZW1pcyBsYSBuZfh1c3Rham4ga2xhdm9qbiEKKworICA1LiBOdW4gbW92afh1IGFsIGxhIGxlY2lvbm8gMy4zLgorCitSaW1hcmtvOiBNZW1vcnUsIGtlIHZpIGRldnVzIGxlcm5pIHBlciB1em8sIGthaiBuZSBwZXIgbWVtb3JhZG8uCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gMy4zIExBIE9QRVJBVE9STyBERSDeQU7YTworCisKKyAgICAgICAgICAgICAgKiogUG9yIP5hbvhpIPhpcyBsYSBmaW5vIGRlIGxhIHZvcnRvLCB0YWpwdSAgY2UgLiAqKgorCisgIDEuIE1vdnUgbGEga3Vyc29yb24g5mUgbGEgdW51YSBzdWJhIGxpbmlvIG1hcmtpdGEgcGVyIC0tLT4uCisKKyAgMi4gTWV0dSBsYSBrdXJzb3JvbiBzdXIgbGEgIGQgIGVuICBsZHV6dworCisgIDMuIFRhanB1ICBjZSAga2FqIGxhIPh1c3RhbiB2b3J0b24gKGVuIHRpdSDmaSBrYXpvLCB0YWpwdSBpbmlvICkuCisKKyAgNC4gUHJlbXUgPEVTSz4ga2FqIG1vdmn4dSBhbCBsYSBzZWt2YW50YSBzaWdubywga2l1IGJlem9uYXMg/mFu+G9uLgorCisgIDUuIFJpcGV0dSBsYSBwYf5vam4gMyBrYWogNCD4aXMga2lhbSBsYSB1bnVhIGZyYXpvIGVnYWxhcyBsYSBkdWFuLgorCistLS0+IFRpdSBsZHV6dyBoYXZhcyBrZWxrYWpuIHZvcnRvam4sIGtpaWkgYmV6YXMg/mFu+G9uIHBlciBsYSD+YW74b290by4KKy0tLT4gVGl1IGxpbmlvIGhhdmFzIGtlbGtham4gdm9ydG9qbiwga2l1aiBiZXpvbmFzIP5hbvhvbiBwZXIgbGEg/mFu+G9wZXJhdG9yby4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDMuNCBQTElBSiDeQU7YT0ogUEVSIGMKKworCisgICAgICAgKiogTGEgb3BlcmF0b3JvIGRlIP5hbvhvIHV6ZWJsYXMga3VuIGxhIHNhbWEgbW92byBraWVsIGZvcnZp/m8uICoqCisKKyAgMS4gTGEgb3BlcmF0b3JvIGRlIP5hbvhvIGZ1bmtjaWFzIHNhbW1hbmllcmUga2llbCBmb3J2af5vLiBMYSBmb3JtYXRvIGVzdGFzOgorCisgICAgICAgYyAgICBbbm9tYnJvXSAgIG1vdm8KKworICAyLiBMYSBtb3ZvaiBlc3RhcyBzYW1haiwga2llbCBla3plbXBsZSAgIHcgKHZvcnRvKSBrYWogJCAoZmlubyBkZSBsaW5pbykuCisKKyAgMy4gTW92afh1IOZlIGxhIHVudWEgc3ViYSBsaW5pbyBtYXJraXRhIHBlciAtLS0+LgorCisgIDQuIE1vdnUgbGEga3Vyc29yb24gYWwgbGEgdW51YSBlcmFyby4KKworICA1LiBUYWpwdSAgYyQgIGthaiB0YWpwdSBsYSByZXN0b24gZGUgbGEgbGluaW8ga2llbCBsYSBkdWEga2FqIHByZW11IDxFU0s+LgorCistLS0+IExhIGZpbm8gZGUg5mkgdGl1IGxpbmlvIGJlem9uYXMgaGVscG9uIHBvciBpZ2kg+GluIHNhbWUga2llbCBsYSBkdWEuCistLS0+IExhIGZpbm8gZGUg5mkgdGl1IGxpbmlvIGJlem9uYXMga29yZWt0b2puIHBlciB1em8gZGUgbGEga29tYW5kbyAgYyQKKworUklNQVJLTzogIFZpIHBvdmFzIHV6aSBsYSBrbGF2b24gUmV0cm9wYf5vIHBvciBrb3Jla3RpIGVyYXJvam4gZHVtIHZpIHRhanBhcy4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyAzIFJFU1VNTworCisKKyAgMS4gUG9yIHJlbWV0aSB0ZWtzdG9uLCBraXVuIHZpILx1cyBmb3J2af5pcywgdGFqcHUgIHAuIFRpbyBtZXRhcyBsYQorICAgICBmb3J2af5pdGFuIHRla3N0b24gUE9TVCBsYSBrdXJzb3JvIChzZSBsaW5pbyBlc3RpcyBmb3J2af5pdGEsIPhpCisgICAgIGlyb3MgZW4gbGEgbGluaW9uIHN1YiBsYSBrdXJzb3JvKS4KKworICAyLiBQb3IgYW5zdGF0Yf1pZ2kgbGEgc2lnbm9uIHN1YiBsYSBrdXJzb3JvLCB0YWpwdSAgciAga2FqIHRpYW0gbGEgc2lnbm9uCisgICAgIGtpb24gdmkgZGV6aXJhcyBoYXZpIHRpZS4KKworICAzLiBMYSBvcGVyYXRvcm8gZGUg/mFu+G8gZWJsaWdhcyBhbCB2aSD+YW74aSBla2RlIGxhIGt1cnNvcm8sIPhpcyBraWUKKyAgICAgbGEgbW92byBpcmFzLiAgRWt6LiB0YWpwdSAgY2UgIHBvciD+YW74aSBla2RlIGxhIGt1cnNvcm8g+GlzIGxhIGZpbm8KKyAgICAgZGUgbGEgdm9ydG8sICBjJCAgcG9yIP5hbvhpIPhpcyBsYSBmaW5vIGRlIGxhIGxpbmlvLgorCisgIDQuIExhIGZvcm1hdG8gZGUg/mFu+G8gZXN0YXM6CisKKyAgICAgICAgIGMgICAgW25vbWJyb10gICBtb3ZvCisKK051biBkYf1yaWd1IGFsIGxhIHNla3ZhbnRhIGxlY2lvbm8uCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgIExlY2lvbm8gNC4xOiBQT1pJQ0lPIERFIEtVUlNPUk8gS0FKIFNUQVRPIERFIERPU0lFUk8KKworCisgICoqIFRhanB1IENUUkwtRyBwb3IgbW9udHJpIHZpYW4gcG96aWNpb24gZW4gbGEgZG9zaWVybyBrYWogbGEgZG9zaWVyc3RhdG9uLgorICAgICBUYWpwdSAgRyAgcG9yIG1vdmn4aSBhbCBsaW5pbyBlbiBsYSBkb3NpZXJvLiAqKgorCisgIFJJTUFSS086IExlZ3UgbGEgdHV0YW4gbGVjaW9ub24gYW50Yf0gb2wgcGxlbnVtaSBpdW4gcGH+b24gYWpuISEKKworICAxLiBQcmVtdSBsYSBrbGF2b24gQ3RybCBrYWogcHJlbXUgIGcgLiBPbmkgbm9tYXMgdGlvbiBDVFJMLUcuCisgICAgIE1lc2H4byBhcGVyb3Mg5mUgbGEgc3ViYSBwYXJ0byBkZSBsYSBwYfhvIGt1biBsYSBkb3NpZXJub21vIGthaiBsYQorICAgICBwb3ppY2lvIGVuIGxhIGRvc2llcm8uIE1lbW9ydSBsYSBudW1lcm9uIGRlIGxhIGxpbmlvIHBvciBwYf5vIDMuCisKKyAgUklNQVJLTzogVmkgZWJsZSB2aWRhcyBsYSBwb3ppY2lvbiBkZSBsYSBrdXJzb3JvIOZlIGxhIHN1YmEgZGVrc3RyYQorICAgICAgICAgICBhbmd1bG8gZGUgbGEgZWtyYW5vLiBUaW8gb2themFzIGtpYW0gbGEgYWdvcmRvICdydWxlcicgZXN0YXMKKyAgICAgICAgICAg/mFsdGl0YSAodmlkdSAgOmhlbHAgJ3J1bGVyJykKKworICAyLiBQcmVtdSAgRyAgcG9yIG1vdmn4aSDmZSBsYSBzdWJvIGRlIGxhIGRvc2llcm8uCisgICAgIFRhanB1IGdnICBwb3IgbW92afhpIOZlIGxhIGtvbWVuY28gZGUgbGEgZG9zaWVyby4KKworICAzLiBUYWpwdSBsYSBudW1lcm9uIGRlIGxhIGxpbmlvIGtpZSB2aSBlc3RpcyBrYWogcG9zdGUgRyAuICBUaW8gcmVtb3ZvcworICAgICB2aW4gYWwgbGEgbGluaW8sIGtpZSB2aSBlc3RpcyBraWFtIHZpIHVudWUgcHJlbWlzIENUUkwtRy4KKworICA0LiBTZSB2aSBzZW50YXMgdmluIGtvbWZvcnRhLCBwbGVudW11IHBh/m9qbiAxIPhpcyAzLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyA0LjIgTEEgS09NQU5ETyBERSBTRVLGTworCisKKyAgICAgICAgICAgICAqKiBUYWpwdSAgLyAga2FqIHBvc3RlIGZyYXpvbiBwb3Igc2Vy5mkgbGEgZnJhem9uLiAqKgorCisgIDEuIEVuIG5vcm1hbGEgcmX4aW1vLCB0YWpwdSBsYSAgLyAgc2lnbm9uLiAgUmltYXJrdSwga2Ug+Gkga2FqIGxhIGt1cnNvcm8KKyAgICAgYXBlcmFzIOZlIGxhIHN1YmEgcGFydG8gZGUgbGEgZWtyYW5vIGtpZWwgcG9yIGxhICA6ICBrb21hbmRvLgorCisgIDIuIE51biB0YWpwdSAnZXJyYXJybycgPEVuZW5rbGF2bz4uCisgICAgIFRpbyBlc3RhcyBsYSB2b3J0bywga2lvbiB2aSB2b2xhcyBzZXLmaS4KKworICAzLiBQb3Igc2Vy5mkgbGEgc2FtYW4gZnJhem9uIGRlbm92ZSwgc2ltcGxlIHRhanB1ICBuIC4KKyAgICAgUG9yIHNlcuZpIGxhIHNhbWFuIGZyYXpvbiBkZW5vdmUgZW4gbGEgcmV0cm9kaXJla3RvLCB0YWpwdSAgTiAuCisKKyAgNC4gUG9yIHNlcuZpIGZyYXpvbiBlbiBsYSByZXRyb2RpcmVrdG8sIHV6dSAgPyAgYW5zdGF0Yf0gIC8gLgorCisgIDUuIFBvciByZWlyaSB0aWVuLCBlbCBraWUgdmkgdmVuaXMsIHByZW11ICBDVFJMLU8gKFByZW11IEN0cmwga2FqIG8KKyAgICAgbGl0ZXJvbiBvKS4gIFJpcGV0dSBwb3IgcGxpIHJldHJvaXJpLiAgQ1RSTC1JIGlyYXMgYW50Yf1lbi4KKworLS0tPiAiZXJyYXJybyIgbmUgZXN0YXMgbWFuaWVybyBwb3IgbGl0ZXJ1bWkgZXJhcm87IGVycmFycm8gZXN0YXMgZXJhcm8uCisKK1JJTUFSS086IEtpYW0gbGEgc2Vy5m8gYXRpbmdhcyBsYSBmaW5vbiBkZSBsYSBkb3NpZXJvLCD4aSBkYf1yYXMg5mUgbGEKKyAgICAgICAgIGtvbWVuY28sIGtyb20gc2UgbGEgYWdvcmRvICd3cmFwc2NhbicgZXN0YXMgbWFs/mFsdGl0YS4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gNC4zIFNFUsZPIERFIEtPTkdSVUFKIEtSQU1QT0oKKworCisgICAgICAgICAgICAgICAgICoqIFRhanB1ICAlICBwb3IgdHJvdmkga29uZ3J1YW4gKSwgXSBh/SAgfSAqKgorCisgIDEuIFBvemljaXUgbGEga3Vyc29yb24gc3VyIGl1biAoLCBbIGH9IHsgZW4gbGEgbGluaW8gbWFya2l0YSBwZXIgLS0tPi4KKworICAyLiBOdW4gdGFqcHUgbGEgICUgIHNpZ25vbi4KKworICAzLiBMYSBrdXJzb3JvIG1vdmn4YXMgYWwgbGEga29uZ3J1YSBrcmFtcG8uCisKKyAgNC4gVGFqcHUgICUgIHBvciBtb3ZpIGxhIGt1cnNvcm9uIGFsIGxhIGFsaWEga29uZ3J1YSBrcmFtcG8uCisKKyAgNS4gTW92dSBsYSBrdXJzb3JvbiBhbCBsYSBhbGlhICgsICksIFssIF0sIHssIH0ga2FqIG9ic2VydnUgdGlvbiwKKyAgICAga2lvbiAgJSAgZmFyYXMuCisKKy0tLT4gxmkgdGl1ICggZXN0YXMgdGVzdGEgbGluaW8ga3VuICgtb2osIFstb2osIF0tb2oga2FqIHstb2osIH0tb2ogZW4g+GkuICkpCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDQuNCBMQSBLT01BTkRPIERFIEFOU1RBVEH9SUdPCisKKworICAgICAqKiBUYWpwdSAgOnMvbWFsbm92YS9ub3ZhL2cgIHBvciBhbnN0YXRh/WlnaSAnbm92YScgcGVyICdtYWxub3ZhJy4gKioKKworICAxLiBNb3Z1IGxhIGt1cnNvcm9uIGFsIGxhIHN1YmEgbGluaW8gbWFya2l0YSBwZXIgLS0tPi4KKworICAyLiBUYWpwdSAgOnMvbGFhL2xhIDxFbmVua2xhdm8+IC4gIFJpbWFya3UsIGtlIGxhIGtvbWFuZG8g/mFu+GFzIG51ciBsYQorICAgICB1bnVhbiBva2F6YbxvbiBkZSAibGFhIiBlbiBsYSBsaW5pby4KKworICAzLiBOdW4gdGFqcHUgIDpzL2xhYS9sYS9nIC4gIEFsZG9ubyBkZSAgZyAgb3BjaW8gc2lnbmlmYXMgbWFsbG9rYW4KKyAgICAgYW5zdGF0Yf1pZ29uIGVuIGxhIGxpbmlvLiDYaSD+YW74YXMg5ml1am4gb2themG8b2puIGRlICJsYWEiIGVuIGxhCisgICAgIGxpbmlvLgorCistLS0+IGxhYSBwbGVqIGJvbmEgdGVtcG8gcG9yIHZpZGkgZmxvcm9qbiBlc3RhcyBlbiBsYWEgcHJpbnRlbXBvLgorCisgIDQuIFBvciD+YW74aSDmaXVqbiBva2F6Ybxvam4gZGUgaXUg5mVuYSBzaWdubyBpbnRlciBkdSBsaW5pb2osCisgICAgIHRhanB1ICAgIDojLCNzL21hbG5vdmEvbm92YS9nICAga2llICMsIyBlc3RhcyBsYSBudW1lcm9qIGRlIGxpbmlvaiBkZSBsYQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVydmFsbyBkZSBsYSBsaW5pb2oga2llIGxhIGFuc3RhdGH9aWdvCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2them9zLgorICAgICBUYWpwdSAgICA6JXMvbWFsbm92YS9ub3ZhL2cgICAgIHBvciD+YW74aSDmaXVqbiBva2F6Ybxvam4gZW4gbGEgdHV0YQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvc2llcm8uCisgICAgIFRhanB1ICAgIDpzL21hbG5vdmEvbm92YS9nYyAgICAgcG9yIHRyb3ZpIOZpdWpuIG9rYXphvG9qbiBlbiBsYSB0dXRhCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9zaWVybywga3VuIGludml0aWxvIOZ1IGFuc3RhdGH9aWdpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYf0gbmUuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gNCBSRVNVTU8KKworICAxLiBDVFJMLUcgIHZpZGlnYXMgdmlhbiBwb3ppY2lvbiBlbiBsYSBkb3NpZXJvIGthaiBsYSBzdGF0b24gZGUgbGEgZG9zaWVyby4KKyAgICAgICAgICAgIEcgIG1vdmFzIGxhIGt1cnNvcm9uIGFsIGxhIGZpbm8gZGUgbGEgZG9zaWVyby4KKyAgICAgbnVtZXJvIEcgIG1vdmFzIGxhIGt1cnNvcm9uIGFsIG51bWVybyBkZSB0aXUgbGluaW8uCisgICAgICAgICAgIGdnICBtb3ZhcyBsYSBrdXJzb3JvbiBhbCBsYSB1bnVhIGxpbmlvLgorCisgIDIuIFRhanBvIGRlICAvICBrYWogZnJhem9uIHNlcuZhcyBsYSBmcmF6b24gYW50Yf1lbi4KKyAgICAgVGFqcG8gZGUgID8gIGthaiBmcmF6b24gc2Vy5mFzIGxhIGZyYXpvbiBtYWxhbnRh/WVuLgorICAgICBQb3N0IHNlcuZvLCB0YWpwdSBuIHBvciB0cm92aSBsYSBzZWt2YW50YW4gb2themG8b24gZW4gbGEgc2FtYSBkaXJla3RvIGH9CisgICAgIE4gcG9yIHNlcuZpIGVuIGxhIG1hbGEgZGlyZWt0by4KKyAgICAgQ1RSTC1PIG1vdmFzIHZpbiBhbCBsYSBhbnRh/WFqIHBvemljaW9qLCBDVFJMLUkgYWwgbGEgbm92YWogcG96aWNpb2ouCisKKyAgMy4gVGFqcG8gZGUgICUgIGtpYW0gbGEga3Vyc29ybyBlc3RhcyBzdXIgKCwpLFssXSx7IGH9IH0gbW92afhhcyBhbCD4aWEKKyAgICAga29uZ3J1by4KKworICA0LiBQb3IgYW5zdGF0Yf1pZ2kgJ25vdmEnIGVuIGxhIHVudWEgJ21hbG5vdmEnIGVuIGxpbmlvIDpzL21hbG5vdmEvbm92YQorICAgICBQb3IgYW5zdGF0Yf1pZ2kgJ25vdmEnIGVuIOZpdWogJ21hbG5vdmEnLW9qIGVuIGxpbmlvIDpzL21hbG5vdmEvbm92YS9nCisgICAgIFBvciBhbnN0YXRh/WlnaSBmcmF6b24gaW50ZXIgZHUgIy1haiBsaW5pb2ogICAgICAgICAgOiMsI3MvbWFsbm92YS9ub3ZhL2cKKyAgICAgUG9yIGFuc3RhdGH9aWdpIOZpdWpuIG9rYXphvG9qbiBlbiBsYSBkb3NpZXJvICAgICAgICA6JXMvbWFsbm92YS9ub3ZhL2cKKyAgICAgUG9yIGRlbWFuZGkga29uZmlybW9uIOZpdS1mb2plLCBhbGRvbnUgJ2MnICAgICAgICAgICA6JXMvbWFsbm92YS9ub3ZhL2djCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgTGVjaW9ubyA1LjEgS0lFTCBQTEVOVU1JIEVLU1RFUkFOIEtPTUFORE9OCisKKworICAgICAqKiBUYWpwdSAgOiEgIHNla3ZhdGEgZGUgZWtzdGVyYSBrb21hbmRvIHBvciBwbGVudW1pIGxhIGtvbWFuZG9uLiAqKgorCisgIDEuIFRhanB1IGxhIGtvbmF0YW4ga29tYW5kb24gIDogIHBvciBwb3ppY2lpIGxhIGt1cnNvcm9uIOZlIGxhIHN1YmEgcGFydG8KKyAgICAgZGUgbGEgZWtyYW5vLiBUaW8gZWJsaWdhcyB0YWpwYWRvbiBkZSBrb21hbmRvIGVuIGtvbWFuZGEgbGluaW8uCisKKyAgMi4gTnVuIHRhanB1IGxhICAhICAoa3Jpc2lnbm8pIHNpZ25vbi4gVGlvIGVibGlnYXMgYWwgdmkgcGxlbnVtaSBpdW4KKyAgICAgZWtzdGVyYW4g/mVsYW4ga29tYW5kb24gYWpuLgorCisgIDMuIEVremVtcGxlLCB0YWpwdSAgbHMgIHBvc3QgISBrYWogdGFqcHUgPEVuZW5rbGF2bz4uIFRpbyBsaXN0aWdvcyBsYQorICAgICBlbmhhdm9uIGRlIGxhIGRvc2llcnVqbywgc2FtZSBraWVsIHNlIHZpIGVzdGlzIGVuIP5lbGEgaW52aXRvLgorICAgICBB/SB1enUgIDohZGlyICBzZSBscyBuZSBmdW5rY2lhcy4KKworUklNQVJLTzogRWJsYXMgcGxlbnVtaSBpdW4gZWtzdGVyYW4ga29tYW5kb24gYWpuIHRpYW1hbmllcmUsIGFua2H9IGt1bgorICAgICAgICAgYXJndW1lbnRvai4KKworUklNQVJLTzogxml1aiAgOiAga29tYW5kb2ogZGV2YXMgZmluafhpIHBlciB0YWpwbyBkZSA8RW5lbmtsYXZvPgorICAgICAgICAgRWtkZSBudW4sIG5pIG5lIHBsdSBtZW5jaW9zIHRpb24uCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gNS4yIFBMSSBQUkkgS09OU0VSVk8gREUgRE9TSUVSTworCisKKyAgICoqIFBvciBrb25zZXJ2aSBsYSBmYXJpdGFqbiD+YW74b2puIGVuIGxhIHRla3N0bywgdGFqcHUgIDp3IERPU0lFUk5PTU8uICoqCisKKyAgMS4gVGFqcHUgICFkaXIgIGH9ICAhbHMgIHBvciBha2lyaSBsaXN0b24gZGUgdmlhIGRvc2llcnVqby4KKyAgICAgVmkgamFtIHNjaWFzLCBrZSB2aSBkZXZhcyB0YWpwaSA8RW5lbmtsYXZvPiBwb3N0IHRpby4KKworICAyLiBFbGVrdHUgZG9zaWVyb24sIGtpdSBuZSBqYW0gZWt6aXN0YXMsIGtpZWwgZWt6ZW1wbGUgVEVTVE8uCisKKyAgMy4gTnVuIHRhanB1OiAgIDp3IFRFU1RPICAgKGtpZSBURVNUTyBlc3RhcyBsYSBlbGVrdGl0YSBkb3NpZXJub21vKQorCisgIDQuIFRpbyBrb25zZXJ2YXMgbGEgdHV0YW4gZG9zaWVyb24gKGluc3RydWlsb24gZGUgVmltKSBrdW4gbGEgbm9tbyBURVNUTy4KKyAgICAgUG9yIGtvbnRyb2xpIHRpb24sIHRhanB1ICAgOiFkaXIgICBh/SAgICFscyAgIGRlbm92ZSBwb3IgdmlkaWdpIHZpYW4KKyAgICAgZG9zaWVydWpvbi4KKworUklNQVJLTzogU2Ugdmkgdm9sdXMgZWxpcmkgZWwgVmltIGthaiByZXN0YXJ0aWdpIPhpbiBkZW5vdmUgcGVyICB2aW0gVEVTVE8sCisgICAgICAgICBsYSBkb3NpZXJvIGVzdHVzIHByZWNpemUgc2FtZSBraWVsIGtvcGlvIGRlIGxhIGluc3RydWlsbyBraWFtIHZpCisgICAgICAgICBrb25zZXJ2aXMg+GluLgorCisgIDUuIE51biBmb3J2af51IGxhIGRvc2llcm9uIHRhanBhbnRlIChNUy1ET1MpOiAgICAgOiFkZWwgVEVTVE8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYf0gKFVOSUtTTyk6ICAgICA6IXJtIFRFU1RPCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gNS4zIEFQQVJUSUdJIEtPTlNFUlZFTkRBTiBURVNUT04KKworCisgICAgKiogUG9yIGtvbnNlcnZpIHBhcnRvbiBkZSBsYSBkb3NpZXJvLCB0YWpwdSAgIHYgIG1vdm8gIDp3IERPU0lFUk5PTU8gKioKKworICAxLiBNb3Z1IGxhIGt1cnNvcm9uIGFsIHRpdSBsaW5pby4KKworICAyLiBQcmVtdSAgdiAga2FqIG1vdnUgbGEga3Vyc29yb24gYWwgbGEga3ZpbmEgc3ViYSBlcm8uICBSaW1hcmt1LCBrZSBsYQorICAgICB0ZWtzdG8gZW1mYXpp+GFzLgorCisgIDMuIFByZW11IGxhICA6ICBzaWdub24uICDGZSBsYSBmaW5vIGRlIGxhIGVrcmFubyAgOic8LCc+ICBhcGVyb3MuCisKKyAgNC4gVGFqcHUgIHcgVEVTVE8gICwga2llIFRFU1RPIGVzdGFzIGRvc2llcm5vbW8sIGtpdSBuZSBqYW0gZWt6aXN0YXMuCisgICAgIEtvbnRyb2x1LCBrZSB2aSB2aWRhcyAgOic8LCc+dyBURVNUTyAgYW50Yf0gcHJlbWkgPEVuZW5rbGF2bz4uCisKKyAgNS4gVmltIGtvbnNlcnZvcyBsYSBhcGFydGlnaXRham4gbGluaW9qbiBhbCBsYSBkb3NpZXJvIFRFU1RPLiAgVXp1ICA6ZGlyCisgICAgIGH9ICA6IWxzICBwb3IgdmlkaWdpIPhpbi4gIE5lIGZvcnZp/nUg+GluLiAgTmkgdXpvcyD4aW4gZW4gbGEgc2VrdmFudGEKKyAgICAgbGVjaW9uby4KKworUklNQVJLTzogUHJlbW8gZGUgIHYgIGtvbWVuY2FzIFZpZHVtYW4gYXBhcnRpZ29uLiAgVmkgcG92YXMgbW92aSBsYSBrdXJzb3JvbgorICAgICAgICAgcG9yIHBsaWdyYW5kaWdpIGH9IG1hbHBsaWdyYW5kaWdpIGxhIGFwYXJ0aWdvbi4gVGlhbSB2aSBwb3ZhcyB1emkKKyAgICAgICAgIG9wZXJhdG9yb24gcG9yIHBsZW51bWkgaW9uIGt1biBsYSB0ZWtzdG8uICBFa3plbXBsZSwgIGQgIGZvcnZp/mFzCisgICAgICAgICBsYSB0ZWtzdG9uLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgIExlY2lvbm8gNS40IEFLSVJJIEtBSiBLVU5GQU5ESSBET1NJRVJPSk4KKworCisgICAgICAgICAqKiBQb3IgZW5tZXRpIGxhIGVuaGF2b24gZGUgZG9zaWVybywgdGFqcHUgIDpyIERPU0lFUk5PTU9OICoqCisKKyAgMS4gTW92dSBsYSBrdXJzb3JvbiC8dXMgc3VwZXIg5mkgdGl1IGxpbmlvLgorCitSSU1BUktPOiBQb3N0IHBsZW51bW8gZGUgcGH+byAyLCB2aSB2aWRvcyB0ZWtzdG9uIGVsIGxhIGxlY2lvbm8gNS4zLiAgVGlhbQorICAgICAgICAgbW92afh1IFNVQkVOIHBvciB2aWRpIHRpdW4gbGVjaW9ub24gZGVub3ZlLgorCisgIDIuIE51biBha2lydSB2aWFuIGRvc2llcm9uIFRFU1RPIHV6YW50ZSBsYSBrb21hbmRvbiAgIDpyIFRFU1RPICAga2llIFRFU1RPCisgICAgIGVzdGFzIGxhIG5vbW8gZGUgbGEgZG9zaWVybywga2l1biB2aSB1emlzLgorICAgICBMYSBkb3NpZXJvLCBraW9uIHZpIGFraXJhcywgZXN0YXMgbWV0aXRhIHN1YiBsYSBsaW5pbyBkZSBsYSBrdXJzb3JvLgorCisgIDMuIFBvciBrb250cm9saSwg5nUgbGEgZG9zaWVybyBha2lyafhpcywgcmV0cm9tb3Z1IGxhIGt1cnNvcm9uIGthaiByaW1hcmt1LAorICAgICBrZSBlc3RhcyBudW4gZHUga29waW9qIGRlIGxhIGxlY2lvbm8gNS4zLCBsYSBvcmlnaW5hbGEga2FqIGxhIHZlcnNpbyBtZW0KKyAgICAgZGUgbGEgZG9zaWVyby4KKworUklNQVJLTzogVmkgbnVuIHBvdmFzIGxlZ2kgbGEgZWxpcm9uIGRlIGVrc3RlcmEga29tYW5kby4gRWt6ZW1wbGUsCisgICAgICAgIDpyICFscyAgbGVnYXMgbGEgZWxpcm9uIGRlIGxhIGtvbWFuZG8gbHMga2FqIG1ldGFzIPhpbiBzdWIgbGEKKyAgICAgICAga3Vyc29yb24uCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gNSBSRVNVTU8KKworCisgIDEuICA6IWtvbWFuZG8gIHBsZW51bWFzIGVrc3RlcmFuIGtvbWFuZG9uLgorCisgICAgICBJdWogdXRpbGFqIGVremVtcGxvaiBlc3RhczoKKyAgICAgICAgKE1TLURPUykgICAgICAgICAgIChVTklLU08pCisgICAgICAgICA6IWRpciAgICAgICAgICAgICAgOiFscyAgICAgICAgICAgIC0gbGlzdGlnYXMgZG9zaWVydWpvbgorICAgICAgICAgOiFkZWwgRE9TSUVSTk9NTyAgIDohcm0gRE9TSUVSTk9NTyAtIGZvcnZp/mFzIGxhIGRvc2llcm9uIERPU0lFUk5PTU8KKworICAyLiAgOncgRE9TSUVSTk9NTyAga29uc2VydmFzIGxhIG51bmFuIGRvc2llcm9uIGRlIFZpbSBhbCBkaXNrbyBrdW4gbGEKKyAgICAgIG5vbW8gRE9TSUVSTk9NTy4KKworICAzLiAgdiAgbW92byAgOncgRE9TSUVSTk9NTyAga29uc2VydmFzIGxhIFZpZHVtYW4gYXBhcnRpZ29uIGRlIGxpbmlvaiBlbgorICAgICAgZG9zaWVybyBET1NJRVJOT01PLgorCisgIDQuIDpyIERPU0lFUk5PTU8gIGFraXJhcyBsYSBkb3NpZXJvbiBET1NJRVJOT01PIGVsIGxhIGRpc2tvIGthaiBtZXRhcworICAgICD4aW4gc3ViIGxhIHBvemljaW9uIGRlIGxhIGt1cnNvcm8uCisKKyAgNS4gOnIgIWRpciAgbGVnYXMgbGEgZWxpZ29uIGRlIGxhIGtvbWFuZG8gZGlyIGthaiBtZXRhcyD4aW4gc3ViIGxhCisgICAgIHBvemljaW9uIGRlIGxhIGt1cnNvcm8uCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gNi4xIExBIEtPTUFORE8gREUgTUFMRkVSTU8KKworCisgICoqIFRhanB1IG8gcG9yIG1hbGZlcm1pIGxpbmlvbiBzdWIgbGEga3Vyc29ybyBrYWogZW5pcmkgRW5tZXRhbiByZfhpbW9uLiAqKgorCisgIDEuIE1vdnUgbGEga3Vyc29yb24gYWwgbGEgc3ViYSBsaW5pbyBtYXJraXRhIHBlciAtLS0+LgorCisgIDIuIFRhanB1IGxhIG1pbnVza2xhbiBsaXRlcm9uICBvICBwb3IgbWFsZmVybWkgbGluaW9uIFNVQiBsYSBrdXJzb3JvIGthagorICAgICBlbmlyaSBsYSBFbm1ldGFuIHJl+Gltb24uCisKKyAgMy4gTnVuIHRhanB1IHRla3N0b24ga2FqIHByZW11IDxFU0s+IHBvciBlbGlyaSBsYSBFbm1ldGFuIHJl+Gltb24uCisKKy0tLT4gUG9zdCB0YWpwbyBkZSAgbyAgbGEga3Vyc29ybyBtb3Zp+GFzIGFsIGxhIG1hbGZlcm1hdGEgbGluaW8gZW4KKyAgICAgRW5tZXRhIHJl+Gltby4KKworICA0LiBQb3IgbWFsZmVybWkgbGluaW9uIFNVUEVSIGxhIGt1cnNvcm8sIG51ciB0YWpwdSBtYWp1c2tsYW4gIE8gICwKKyAgICAgYW5zdGF0Yf0gbWludXNrbGFuICBvLiAgUHJvdnUgdGlvbiBwZXIgbGEgc3ViYSBsaW5pby4KKworLS0tPiBNYWxmZXJtdSBsaW5pb24gU1VQRVIgdGl1IHRhanBhbnRlIE8gZHVtIGxhIGt1cnNvcm8gZXN0YXMgc3VyIHRpdSBsaW5pby4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDYuMiBMQSBLT01BTkRPIERFIFBPU1RBTERPTk8KKworCisgICAgICAgICAgICAgICAgICAqKiBUYWpwdSAgYSAgcG9yIGVubWV0aSBQT1NUIGxhIGt1cnNvcm8uICoqCisKKyAgMS4gTW92dSBsYSBrdXJzb3JvbiDmZSBsYSBrb21lbmNvIGRlIGxhIGxpbmlvIG1hcmtpdGEgcGVyIC0tLT4uCisKKyAgMi4gUHJlbXUgIGUgIPhpcyBraWFtIGxhIGt1cnNvcm8gZXN0YXMg5mUgbGEgZmlubyBkZSAgbGkuCisKKyAgMy4gVGFqcHUgIGEgIChtaW51c2tsZSkgcG9yIGFsZG9uaSB0ZWtzdG9uIFBPU1QgbGEga3Vyc29yby4KKworICA0LiBLb21wbGV0aWd1IGxhIHZvcnRvbiBzYW1lIGtpZWwgbGEgbGluaW8gc3ViIPhpLiAgUHJlbXUgPEVTSz4gcG9yCisgICAgIGVsaXJpIGxhIEVubWV0YW4gcmX4aW1vbi4KKworICA1LiBVenUgIGUgIHBvciBtb3Zp+GkgYWwgbGEgc2VrdmFudGEgbmVrb21wbGV0YSB2b3J0byBrYWogcmlwZXR1CisgICAgIHBh/m9qbiAzIGthaiA0LgorCistLS0+IMZpIHRpdSBsaW4gZWJsaWdvcyB2aW4gZWt6IHZpbiBwb3N0YWwgdGVrc3RvbiBhbCBsaW5pby4KKy0tLT4gxmkgdGl1IGxpbmlvIGVibGlnb3MgdmluIGVremVyY2kgdmluIHBvc3RhbGRvbmkgdGVrc3RvbiBhbCBsaW5pby4KKworUklNQVJLTzogxml1ICBhLCBpIGthaiBBICBpcmFzIGFsIGxhIHNhbWEgRW5tZXRhIHJl+GltbywgbGEgbnVyYSBtYWxzYW1vCisgICAgICAgICBlc3RhcyB0aWUsIGtpZSBsYSBzaWdub2ogZXN0YXMgZW5tZXRpdGFqLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDYuMyBBTElBIE1BTklFUk8gUE9SIEFOU1RBVEHdSUdJCisKKworICAgICAgICAgICoqIFRhanB1IG1hanVza2xhbiAgUiAgcG9yIGFuc3RhdGH9aWdpIHBsaSBvbCB1bnUgc2lnbm8uICoqCisKKyAgMS4gTW92dSBsYSBrdXJzb3JvbiBhbCBsYSB1bnVhIHN1YmEgbGluaW8gbWFya2l0YSBwZXIgLS0tPi4gIE1vdnUgbGEKKyAgICAga3Vyc29yb24gYWwgbGEga29tZW5jbyBkZSBsYSB1bnVhICB4eHggLgorCisgIDIuIE51biBwcmVtdSAgUiAga2FqIHRhanB1IGxhIG5vbWJyb24gc3ViIPhpIGVuIGxhIGR1YSBsaW5pbywgcG9yIGtlIPhpCisgICAgIGFuc3RhdGH9aWd1IGxhIHh4eCAuCisKKyAgMy4gUHJlbXUgPEVTSz4gcG9yIGZvcmlyaSBsYSBBbnN0YXRh/WlnYW4gcmX4aW1vbi4gUmltYXJrdSwga2UgbGEgY2V0ZXJhCisgICAgIHBhcnRvIGRlIGxhIGxpbmlvIHJlc3RhcyBuZf5hbvhhdGEuCisKKyAgNC4gUmlwZXR1IGxhIHBh/m9qbiBwb3IgYW5zdGF0Yf1pZ2kgbGEgcmVzdGFudGFqbiB4eHguCisKKy0tLT4gQWxkb25vIGRlIDEyMyBhbCB4eHggZG9uYXMgYWwgdmkgeHh4LgorLS0tPiBBbGRvbm8gZGUgMTIzIGFsIDQ1NiBkb25hcyBhbCB2aSA1NzkuCisKK1JJTUFSS086IEFuc3RhdGH9aWdhIHJl+GltbyBlc3RhcyBzYW1lIGtpZWwgRW5tZXRhIHJl+Gltbywgc2VkIOZpdSBzaWdubworICAgICAgICAgdGFqcGl0YSBmb3J2af5hcyBla3ppc3RhbiBzaWdub24uCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyA2LjQgS09QSUkgS0FKIEFMR0xVSSBURUtTVE9OCisKKworICAgICAqKiBVenUgbGEgIHkgIG9wZXJhdG9yb24gcG9yIGtvcGlpIHRla3N0b24sIGthaiAgcCAgcG9yIGFsZ2x1aSD4aW4gKioKKworCisgIDEuIElydSBhbCBsYSBsaW5pbyBtYXJraXRhIHBlciAtLS0+IHN1YmUga2FqIHBvemljaXUgbGEga3Vyc29yb24gcG9zdCAiYSkiLgorCisgIDIuIEtvbWVuY3UgbGEgVmlkdW1hbiByZfhpbW9uIHBlciAgdiAga2FqIG1vdnUgbGEga3Vyc29yb24gvHVzIGFudGH9ICJ1bnVhIi4KKworICAzLiBUYWpwdSAgeSAgcG9yIGtvcGlpIGxhIGVtZmF6aXRhbiB0ZWtzdG9uLgorCisgIDQuIE1vdnUgbGEga3Vyc29yb24g5mUgbGEgZmlubyBkZSBsYSBsaW5pbzogIGokCisKKyAgNS4gVGFqcHUgIHAgIHBvciBhbGdsdWkgbGEgdGVrc3Rvbi4gIFRpYW0gdGFqcHU6ICBhIGR1YSA8RVNLPiAuCisKKyAgNi4gVXp1IFZpZHVtYW4gcmX4aW1vbiBwb3IgYXBhcnRpZ2kgIiBlcm8uIiwga29waXUg+GluIHBlciAgeSAsIG1vdmn4dQorICAgICDmZSBsYSBmaW5vIGRlIGxhIHNla3ZhbnRhIGxpbmlvIHBlciAgaiQgIGthaiBhbGdsdXUgbGEgdGVrc3RvbiB0aWUKKyAgICAgcGVyICBwIC4KKworLS0tPiBhKSB0aW8gZXN0YXMgbGEgdW51YSBlcm8uCisgICAgIGIpCisKK1JJTUFSS086IHZpIHBvdmFzIGFua2H9IHV6aSAgeSAga2llbCBvcGVyYXRvcm87ICB5dyAga29waWFzIHVudSB2b3J0b24uCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDYuNSBBR09SREkgT1BDSU9OCisKKworICAgICAgICAgKiogQWdvcmR1IG9wY2lvbiBwb3Iga2Ugc2Vy5m8gYf0gYW5zdGF0Yf1pZ28gaWdub3J1IHVza2xlY29uICoqCisKKyAgMS4gU2Vy5nUgJ2lnbm9yaScgcGVyIHRhanBvIGRlIC9pZ25vcmkgPEVuZW5rbGF2bz4KKyAgICAgUmlwZXR1IHBsdXJmb2plIHByZW1hbnRlICBuIC4KKworICAyLiDeYWx0dSBsYSBvcGNpb24gJ2ljJyAoaWdub3JpIHVza2xlY29uKSBwZXI6ICAgOnNldCBpYworCisgIDMuIE51biBzZXLmdSAnaWdub3JpJyBkZW5vdmUgcHJlbWFudGUgIG4KKyAgICAgUmltYXJrdSwga2UgSWdub3JpIGthaiBJR05PUkkgZXN0YXMgbnVuIHRyb3ZlYmxhcy4KKworICA0LiDeYWx0dSBsYSBvcGNpb2puICdobHNlYXJjaCcga2FqICdpbmNzZWFyY2gnOiAgIDpzZXQgaGxzIGlzCisKKyAgNS4gTnVuIHJldGFqcHUgbGEgc2Vy5mFuIGtvbWFuZG9uIGthaiB2aWR1IGtpbyBva2F6YXM6ICAvaWdub3JlIDxFbmVua2xhdm8+CisKKyAgNi4gUG9yIG1hbP5hbHRpIGlnbm9yb24gZGUgdXNrbGVjbzogIDpzZXQgbm9pYworCitSSU1BUktPOiBQb3IgZm9yaWdpIGVtZmF6b24gZGUga29uZ3J1bywgdGFqcHU6ICAgOm5vaGxzZWFyY2gKK1JJTUFSS086IFNlIHZpIGRlemlyYXMgaWdub3JpIHVza2xlY29uIHBvciBudXIgdW51IHNlcuZhIGtvbWFuZG8sIHV6dSAgXGMKKyAgICAgICAgIGVuIGxhIGZyYXpvOiAgL2lnbm9yZVxjICA8RW5lbmtsYXZvPgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDYgUkVTVU1PCisKKyAgMS4gVGFqcHUgIG8gIHBvciBtYWxmZXJtaSBsaW5pb24gU1VCIGxhIGt1cnNvcm8ga2FqIGVraSBlbiBFbm1ldGEgcmX4aW1vLgorICAxLiBUYWpwdSAgTyAgcG9yIG1hbGZlcm1pIGxpbmlvbiBTVVBFUiBsYSBrdXJzb3JvLgorCisgIDIuIFRhanB1ICBhICBwb3IgZW5tZXRpIHRla3N0b24gUE9TVCBsYSBrdXJzb3JvLgorICAgICBUYWpwdSAgQSAgcG9yIGVubWV0aSB0ZWtzdG9uIHBvc3QgbGEgZmlubyBkZSBsYSBsaW5pby4KKworICAzLiBMYSAgZSAga29tYW5kbyBtb3ZhcyBsYSBrdXJzb3JvbiBhbCBsYSBmaW5vIGRlIHZvcnRvLgorCisgIDQuIGxhICB5ICBvcGVyYXRvcm8ga29waWFzIHRla3N0b24sICBwICBhbGdsdWFzIPhpbi4KKworICA1LiBUYWpwbyBkZSBtYWp1c2tsYSAgUiAgZW5pcmFzIGxhIEFuc3RhdGH9aWdhbiByZfhpbW9uIPhpcyBraWFtCisgICAgIDxFU0s+IGVzdGFzIHByZW1pdGEuCisKKyAgNi4gVGFqcG8gZGUgIjpzZXQgeHh4IiD+YWx0YXMgbGEgb3BjaW9uICJ4eHgiLiAgSXVqIG9wY2lvaiBlc3RhczoKKyAgICAgICAgJ2ljJyAnaWdub3JlY2FzZScgICAgIGlnbm9yaSB1c2tsZWNvbiBkdW0gc2Vy5m8KKyAgICAgICAgJ2lzJyAnaW5jc2VhcmNoJyAgICAgIG1vbnRydSBwYXJ0YW4ga29uZ3J1b24gZHVtIHNlcuZvCisgICAgICAgICdobHMnICdobHNlYXJjaCcgICAgICBlbWZhemFzIOZpdWpuIGtvbmdydWFqbiBmcmF6b2puCisgICAgIFZpIHBvdmFzIHV6aSBh/SBsYSBsb25nYW4sIGH9IGxhIG1hbGxvbmdhbiBub21vbiBkZSBvcGNpby4KKworICA3LiBBbnRh/WFsZG9udSAibm8iIHBvciBtYWz+YWx0aSBsYSBvcGNpb246ICA6c2V0IG5vaWMKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDcuMSBBS0lSSSBIRUxQT04KKworCisgICAgICAgICAgICAgICAgICAgICAgICAgICoqIFV6dSBsYSBoZWxwYW4gc2lzdGVtb24gKioKKworICBWaW0gaGF2YXMgYW1wbGVrc2FuIGhlbHBhbiBzaXN0ZW1vbi4gUG9yIGtvbWVuY2n4aSwgcHJvdnUgdW51IGVsIGxhIHRpdWoKKyAgdHJpOgorICAgICAgICAtIHByZW11IGxhIGtsYXZvbiA8SEVMUE8+IChzZSB2aSBoYXZhcyD4aW4pCisgICAgICAgIC0gcHJlbXUgbGEga2xhdm9uIDxGMT4gKHNlIHZpIGhhdmFzIPhpbikKKyAgICAgICAgLSB0YWpwdSAgIDpoZWxwIDxFbmVua2xhdm8+CisKKyAgTGVndSBsYSB0ZWtzdG9uIGVuIGxhIGhlbHBmZW5lc3RybyBwb3IgdHJvdmkga2llbCBoZWxwbyBmdW5rY2lhcy4KKyAgVGFqcHUgIENUUkwtVyBDVFJMLVcgICAgICBwb3Igc2FsdGkgZGUgdW51IGZlbmVzdHJvIGFsIGxhIGFsaWEuCisgIFRhanB1ICAgIDpxIDxFbmVua2xhdm8+ICAgcG9yIGZlcm1pIGxhIGhlbHBhbiBmZW5lc3Ryb24uCisKKyAgVmkgcG92YXMgdHJvdmkgaGVscG9uIHByaSBpbyBham4gYWxkb25hbnRlIGFyZ3VtZW50b24gYWwgbGEga29tYW5kbworICAiOmhlbHAiLiAgUHJvdnUgdGl1am4gKG5lIGZvcmdlc3UgcHJlbWkgPEVuZW5rbGF2bz4pOgorCisgICAgICAgIDpoZWxwIHcKKyAgICAgICAgOmhlbHAgY19DVFJMLUQKKyAgICAgICAgOmhlbHAgaW5zZXJ0LWluZGV4CisgICAgICAgIDpoZWxwIHVzZXItbWFudWFsCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gNy4yIEtSRUkgU1RBUlRBTiBTS1JJUFRPTgorCisKKyAgICAgICAgICAgICAgICAgICAgICAgICAqKiBFYmxpZ3Uga2FwYWJsb2puIGRlIFZpbSAqKgorCisgIFZpbSBoYXZhcyBtdWx0ZSBwbGkgZGEga2FwYWJsb2ogb2wgVmksIHNlZCBsYSBwbGVqIG11bHRhaiBlc3RhcyBkZWZh/Wx0ZQorICBtYWz+YWx0aXRhai4gIFBvciBla3V6aSBsYSBrYXBhYmxvam4sIHZpIGRldmFzIGtyZWkgZG9zaWVyb24gInZpbXJjLgorCisgIDEuIEVrcmVkYWt0dSBsYSBkb3NpZXJvbiAidmltcmMiLiAgVGlvIGRlcGVuZGFzIGRlIHZpYSBzaXN0ZW1vOgorICAgICAgOmUgfi8udmltcmMgICAgICAgICAgcG9yIFVuaWtzbworICAgICAgOmUgJFZJTS9fdmltcmMgICAgICAgcG9yIE1TLVZpbmRvem8KKworICAyLiBOdW4gbGVndSBsYSBlbmhhdm9uIGRlIGxhIGVremVtcGxhICJ2aW1yYyIKKyAgICAgIDpyICRWSU1SVU5USU1FL3ZpbXJjX2V4YW1wbGUudmltCisKKyAgMy4gS29uc2VydnUgbGEgZG9zaWVyb24gcGVyOgorICAgICAgOncKKworICBMYSBzZWt2YW50YW4gZm9qb24sIGtpYW0gdmkgbGFu5mFzIFZpbSwg+GkgdXpvcyBzaW50YWtzYW4gZW1mYXpvbi4KKyAgVmkgcG92YXMgYWxkb25pIOZpdWpuIHZpYWpuIHByZWZlcmF0YWpuIGFnb3Jkb2puIGFsIHRpdSBkb3NpZXJvICJ2aW1yYyIuCisgIFBvciBwbGkgZGEgaW5mb3Jtb2osIHRhanB1ICA6aGVscCB2aW1yYy1pbnRybworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDcuMyBLT01QTEVUSUdPCisKKworICAgICAgICAgICAgICoqIEtvbXBsZXRpZ28gZGUga29tYW5kYSBsaW5pbyBwZXIgQ1RSTC1EIGthaiA8VEFCPiAqKgorCisgIDEuIENlcnRpZ3Uga2UgVmltIGVzdGFzIGVuIGtvbmdydWEgcmX4aW1vOiAgOnNldCBub2NwCisKKyAgMi4gUmlnYXJkdSB0aXVqbiBkb3NpZXJvam4sIGtpdWogZWt6aXN0YXMgZW4gbGEgZG9zaWVydWpvOiAgOiFscyAgYf0gIDohZGlyCisKKyAgMy4gVGFqcHUgbGEga29tZW5jb24gZGUga29tYW5kbzogIDplCisKKyAgNC4gUHJlbXUgIENUUkwtRCAga2FqIFZpbSBtb250cm9zIGxpc3RvbiBkZSBrb21hbmRvaiwga2l1aiBrb21lbmNhcyBwZXIgImUiLgorCisgIDUuIFByZW11IDxUQUI+ICBrYWogVmltIGtvbXBsZXRpZ29zIGxhIG5vbW9uIGRlIGxhIGtvbWFuZG8gYWwgIjplZGl0Ii4KKworICA2LiBOdW4gYWxkb251IHNwYWNldG9uIGthaiBsYSBrb21lbmNvbiBkZSBla3ppc3RhbnRhIG5vbW86ICA6ZWRpdCBET1NJCisKKyAgNy4gUHJlbXUgPFRBQj4uICBWaW0ga29tcGxldGlnb3MgbGEgbm9tb24gKHNlIPhpIGVzdGFzIHVuaWthKQorCitSSU1BUktPOiBLb21wbGV0aWdvIGZ1bmtjaWFzIHBvciBtdWx0YWoga29tYW5kb2ouIE51ciBwcm92dSBwcmVtaSBDVFJMLUQga2FqCisgICAgICAgICA8VEFCPi4gIEVzdGFzIGFwYXJ0ZSB1dGlsYSBwb3IgIDpoZWxwIC4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gNyBSRVNVTU8KKworCisgIDEuIFRhanB1ICA6aGVscCAgYf0gcHJlbXUgPEYxPiBh/SA8SGVscG8+ICBwb3IgbWFsZmVybWkgaGVscGFuIGZlbmVzdHJvbi4KKworICAyLiBUYWpwdSAgOmhlbHAga21kICBwb3IgdHJvdmkgaGVscG9uIHByaSAga21kLgorCisgIDMuIFRhanB1ICBDVFJMLVcgQ1RSTC1XICBwb3Igc2FsdGkgYWwgYWxpYSBmZW5lc3Ryby4KKworICA0LiBUYWpwdSAgOnEgIHRvIGZlcm1pIGxhIGhlbHBhbiBmZW5lc3Ryb24uCisKKyAgNS4gS3JldSBrb21lbmNhbiBza3JpcHRvbiB2aW1yYyBwb3Iga29uc2Vydmkgdmlham4gYWdvcmRvam4uCisKKyAgNi4gS2lhbSB2aSB0YWpwYXMgIDogIGtvbWFuZG9uLCBwcmVtdSBDVFJMLUQgcG9yIHZpZGkg5ml1am4ga29tcGxldGVibG9qbi4KKyAgICAgUHJlbXUgPFRBQj4gcG9yIHV6aSB1bnUga29tcGxldGlnb24uCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisKKyAgVGlvIGtvbmtsdWRhcyBsYSBpbnN0cnVpbG9uIGRlIFZpbS4gINhpIGNlbGlzIGRvbmkgbWFsbG9uZ2FuIHN1cGVycmlnYXJkb24KKyAgZGUgbGEgcmVkYWt0aWxvIFZpbSwgbnVyIHRpbyBraW8gc3VmaeZhcyBwb3IgZWJsaWdpIGFsIHZpIGZhY2lsYW4gdXpvbiBkZQorICBsYSByZWRha3RpbG8uIEVzdGFzIG5lcHJlIG5la29tcGxldGEsIOZhciBWaW0gaGF2YXMgbXVsdGFqbiBtdWx0YWpuIHBsaWFqbgorICBrb21hbmRvam4uIExlZ3UgbGEgbWFubGlicm9uOiAiOmhlbHAgdXNlci1tYW51YWwiLgorCisgIFRpdSBpbnN0cnVpbG8gZXN0aXMgdmVya2l0YSBkZSBNaWNoYWVsIEMuIFBpZXJjZSBrYWogUm9iZXJ0IEsuIFdhcmUsCisgIGVsIGxhIEtvbG9yYWRpYSBMZXJuZWpvIGRlIE1pbmVqb2ogKENvbG9yYWRvIFNjaG9vbCBvZiBNaW5lcykgdXphbnRlCisgIGlkZW9qbiBwcm92aXppdGFqbiBkZSBDaGFybGVzIFNtaXRoIGVsIGxhIFN0YXRhIFVuaXZlcnNpdGF0byBkZSBLb2xvcmFkaW8KKyAgKENvbG9yYWRvIFN0YXRlIFVuaXZlcnNpdHkpCisKKyAgUmV0cG/+dG86IGJ3YXJlQG1pbmVzLmNvbG9yYWRvLmVkdS4KKworICBNb2RpZml0YSBwb3IgVmltIGRlIEJyYW0gTW9vbGVuYWFyLgorCisgIFRyYWR1a2l0YSBlbiBFc3BlcmFudG8gZGUgRG9taW5pcXVlIFBlbGzpLCAyMDA4LTA0LTAxCisgIFJldHBv/nRvOiBkb21pbmlxdWUucGVsbGVAZ21haWwuY29tCisgIExhc3RhIP5hbvhvOiAyMDA5LTAyLTAxCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpkaWZmIC0tZ2l0IGEvcnVudGltZS90dXRvci90dXRvci5lby51dGYtOCBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZW8udXRmLTgKaW5kZXggOGY2N2IyMC4uNWFkYWQzOSAxMDA2NDQKLS0tIGEvcnVudGltZS90dXRvci90dXRvci5lby51dGYtOAorKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLmVvLnV0Zi04CkBAIC0xLDUgKzEsNSBAQAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci09ICAgQiBvIG4gdiBlIG4gbyBuICBhbCAgbGEgIEkgbiBzIHQgciB1IGkgbCBvICBkZSAgViBJIE0gIC0gIFZlcnNpbyAxLjAuZW8gID0KKz0gIEIgbyBuIHYgZSBuIG8gbiAgYWwgIGxhICBJIG4gcyB0IHIgdSBpIGwgbyAgZGUgIFYgSSBNICAtICBWZXJzaW8gMS43LmVvLjIgPQogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAKICAgIFZpbSBlc3RhcyB0cmUgcG90ZW5jYSByZWRha3RpbG8sIGtpdSBoYXZhcyBtdWx0YWpuIGtvbWFuZG9qbiwgdHJvIGRhIGlsaQpAQCAtNTQsMTUgKzU0LDE1IEBACiAgIDEuIFByZW11IGxhIGtsYXZvbiA8RVNLPiAocG9yIGNlcnRpZ2ksIGtlIHZpIGVzdGFzIGVuIG5vcm1hbGEgcmXEnWltbykuCiAKICAgMi4gVGFqcHU6ICAgICAgIDpxISA8RW5lbmtsYXZvPi4KLSAgICAgVGlvIGVsaXJhcyBlbCBsYSByZWtkYWt0aWxvLCBTRU4ga29uc2VydmkgbGEgxZ1hbsSdb2puLCBraW9uIHZpIGZhcmlzLgorICAgICBUaW8gZWxpcmFzIGVsIGxhIHJla2Rha3RpbG8sIFNFTiBrb25zZXJ2aSBsYSDFnWFuxJ1vam4sIGtpdWpuIHZpIGZhcmlzLgogCi0gIDMuIEtpYW0gdmkgdmlkYXMgbGEgxZ1lbGludml0b24sIHRhanB1IGxhIGtvbWFuZG9uIGtpdW4gdmkgdXppcyBwb3IgZW5pcmkgCisgIDMuIEtpYW0gdmkgdmlkYXMgbGEgxZ1lbGludml0b24sIHRhanB1IGxhIGtvbWFuZG9uIGtpdW4gdmkgdXppcyBwb3IgZW5pcmkKICAgICAgZW4gxIlpIHRpdSBpbnN0cnVpbG8uIFRpbyBlc3R1czogICB2aW10dXRvciA8RW5lbmtsYXZvPgogCiAgIDQuIFNlIHZpIG1lbW9yaXMgdGl1am4gcGHFnW9qbiBrYWogc2VudGFzIHZpbiBtZW1maWRhLCBwbGVudW11IGxhIHBhxZ1vam4KICAgICAgMSDEnWlzIDMgcG9yIGVsaXJpIGthaiByZWVuaXJpIGxhIHJlZGFrdGlsb24uCiAKLVJJTUFSS086IDpxISA8RW5lbmtsYXZvPiBlbGlyYXMgc2VuIGtvbnNlcnZpIGxhIMWdYW7EnW9qbiBraW9uIHZpIGZhcmlzLiAKK1JJTUFSS086IDpxISA8RW5lbmtsYXZvPiBlbGlyYXMgc2VuIGtvbnNlcnZpIGxhIMWdYW7EnW9qbiwga2l1am4gdmkgZmFyaXMuCiAgICAgICAgICBQb3N0IGtlbGthaiBsZWNpb25vaiwgdmkgbGVybm9zIGtpZWwga29uc2VydmkgbGEgxZ1hbsSdb2puIGFsIGRvc2llcm8uCiAKICAgNS4gTW92dSBsYSBrdXJzb3JvbiBzdWJlbiDEnWlzIGxhIGxlY2lvbm8gMS4zLgpAQCAtNzksNyArNzksNyBAQAogICAgICBmb3J2acWdZW5kYSBzaWduby4KIAogICAzLiBQcmVtdSBsYSBrbGF2b24gIHggIHBvciBmb3J2acWdaSBsYSBuZWRlemlyYXRhbiBzaWdub24uCi0gCisKICAgNC4gUmlwZXR1IHBhxZ1vam4gMiDEnWlzIDQgxJ1pcyBraWFtIGxhIGZyYXpvIGVzdGFzIMSddXN0YS4KIAogCkBAIC05OSw3ICs5OSw3IEBACiAKICAgMS4gTW92dSBsYSBrdXJzb3JvbiBhbCBsYSB1bnVhIHN1YmEgbGluaW8gbWFya2l0YSBwZXIgLS0tPi4KIAotICAyLiBQb3IgaWdpIGxhIHVudWFuIGxpbmlvbiBzYW1hIG9sIGxhIGR1YSwgbW92dSBsYSBrdXJzb3JvbiBzdXIgbGEgdW51YW4KKyAgMi4gUG9yIGlnaSBsYSB1bnVhbiBsaW5pb24gc2FtYSBraWVsIGxhIGR1YSwgbW92dSBsYSBrdXJzb3JvbiBzdXIgbGEgdW51YW4KICAgICAgc2lnbm9uIHBvc3Qga2llIGxhIHRla3N0byBlc3RhcyBlbm1ldGVuZGEuCiAKICAgMy4gUHJlbXUgIGkgIGthaiB0YWpwdSBsYSBiZXpvbmF0YWpuIGFsZG9ub2puLgpAQCAtMTI0LDEyICsxMjQsMTIgQEAKICAgMS4gTW92dSBsYSBrdXJzb3JvbiBhbCBsYSB1bnVhIHN1YmEgbGluaW8gbWFya2l0YSBwZXIgLS0tPi4KICAgICAgTmUgZ3JhdmFzIHN1ciBraXUgc2lnbm8gZXN0YXMgbGEga3Vyc29yby4KIAotICAyLiBQcmVtdSAgQSAga2FqIHRhanB1IGxhIGJlem9uYXRham4gYWxkb25vam4uCisgIDIuIFByZW11IG1hanVza2xhbiAgQSAga2FqIHRhanB1IGxhIGJlem9uYXRham4gYWxkb25vam4uCiAKICAgMy4gUG9zdCBraWFtIGxhIHRla3N0byBlc3RhcyBhbGRvbml0YSwgcHJlbXUgPEVTSz4gcG9yIHJlaXJpIGFsIGxhIG5vcm1hbGEKICAgICAgcmXEnWltby4KIAotICA0LiBNb3Z1IGxhIGt1cnNvcm9uIGFsIGxhIGR1YSBsaW5pbyBtYXJraXRhIHBlciAtLS0+IGthaiByaXBldHUgbGEgCisgIDQuIE1vdnUgbGEga3Vyc29yb24gYWwgbGEgZHVhIGxpbmlvIG1hcmtpdGEgcGVyIC0tLT4ga2FqIHJpcGV0dSBsYQogICAgICBwYcWdb2puIDIga2FqIDMgcG9yIGtvcmVrdGkgbGEgZnJhem9uLgogCiAtLS0+IE1hbmthcyB0ZWtzdG8gZWwgdGkKQEAgLTE1Nyw3ICsxNTcsNyBAQAogCiAgIDMuIEVubWV0dSBrYWogZm9ydmnFnXUgdGVrc3Rvbiwga2llbCB2aSBsZXJuaXMgZW4gbGEgYW50YcWtYWogbGVjaW9ub2ouCiAKLSAgNC4gS29uc2VydnUgbGEgZG9zaWVyb24ga3VuIMWdYW7EnW9qIGthaiBlbGlydSBlbCBWaW0gcGVyOiAgOnF3ICA8RW5lbmtsYXZvPgorICA0LiBLb25zZXJ2dSBsYSBkb3NpZXJvbiBrdW4gxZ1hbsSdb2oga2FqIGVsaXJ1IGVsIFZpbSBwZXI6ICA6d3EgIDxFbmVua2xhdm8+CiAKICAgNS4gUmVsYW7EiXUgbGEgaW5zdHJ1aWxvbiB2aW10dXRvciBrYWogbW92acSddSBzdWJlbiBhbCBsYSBzZWt2YW50YSByZXN1bW8uCiAKQEAgLTE2Nyw2ICsxNjcsNyBAQAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gMSBSRVNVTU8KIAorCiAgIDEuIExhIGt1cnNvcm8gbW92acSdYXMgYcWtIHBlciBsYSBzYWdva2xhdm9qLCBhxa0gcGVyIGxhIGtsYXZvaiBoamtsLgogICAgICAgICBoIChsaXZlbikgICAgIGogKHN1YmVuKSAgICAgIGsgKHN1cHJlbikgICAgIGwgKGRla3N0cmVuKQogCkBAIC0yMTcsNiArMjE4LDcgQEAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyAyLjI6IFBMSUFKIEtPTUFORE9KIERFIEZPUlZJxZxPCiAKKwogICAgICAgICAgICAgICAgKiogVGFqcHUgIGQkICBwb3IgZm9ydmnFnWkgbGEgZmlub24gZGUgbGEgbGluaW8uICoqCiAKICAgMS4gUHJlbXUgIDxFU0s+ICBwb3IgY2VydGlnaSwga2UgdmkgZXN0YXMgZW4gbm9ybWFsYSByZcSdaW1vLgpAQCAtMjQ5LDcgKzI1MSw3IEBACiAgICAgbW92byAgIC0gZXN0YXMgdGlvLCBwcmkga2lvIGxhIG9wZXJhdG9ybyBvcGVyYWNpb3MgKGxpc3RpZ2l0YSBzdWJlKQogCiAgIE1hbGxvbmdhIGxpc3RvIGRlIG1vdm9qOgotICAgIHcgLSDEnWlzIGxhIGtvbWVuY28gZGUgbGEgc2VrdmFudGEgdm9ydG8sIGtyb20gxJ1pYW4gdW51YW4gc2lnbm9uLgorICAgIHcgLSDEnWlzIGxhIGtvbWVuY28gZGUgbGEgc2VrdmFudGEgdm9ydG8sIGtyb20gxJ1pYSB1bnVhIHNpZ25vLgogICAgIGUgLSDEnWlzIGxhIGZpbm8gZGUgbGEgbnVuYSB2b3J0bywga3JvbSBsYSBsYXN0YSBzaWduby4KICAgICAkIC0gxJ1pcyBsYSBmaW5vIGRlIGxhIGxpbmlvLCBrcm9tIGxhIGxhc3RhIHNpZ25vLgogCkBAIC0yODMsNiArMjg1LDcgQEAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDIuNTogVVpJIE5PTUJST04gUE9SIEZPUlZJxZxJIFBMSQogCisKICAgICAgICAgICAgICoqIFRhanBvIGRlIG5vbWJybyBrdW4gb3BlcmF0b3JvIHJpcGV0YXMgxJ1pbiBsYcWtZm9qZS4gKioKIAogICBFbiBsYSBrb21iaW5hxLVvIGRlIGxhIG9wZXJhdG9ybyBkZSBmb3J2acWdbywga2FqIG1vdm8ga2llbCBtZW5jaWl0YQpAQCAtMzAyLDYgKzMwNSw3IEBACiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyAyLjY6IE9QRVJBQ0lJIFNVUiBMSU5JT0oKIAorCiAgICAgICAgICAgICAgICAgICAgKiogVGFqcHUgIGRkICBwb3IgZm9ydmnFnWkgdHV0YW4gbGluaW9uLiAqKgogCiAgIFBybyBsYSBvZnRlY28gZGUgZm9ydmnFnW8gZGUgdHV0YSBsaW5pbywgbGEgdmVya2lzdG8gZGUgVmkgZGVjaWRpcywga2UKQEAgLTMyNCw2ICszMjgsNyBAQAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gMi43OiBMQSBLT01BTkRPIERFIE1BTEZBUk8KIAorCiAgKiogUHJlbXUgdSBwb3IgbWFsZmFyaSBsYSBsYXN0YWpuIGtvbWFuZG9qbiwgVSBwb3IgcmlwYXJpIGxhIHR1dGFuIGxpbmlvbi4gKioKIAogICAxLiBNb3Z1IGxhIGt1cnNvcm9uIMSJZSBsYSBzdWJhIGxpbmlvIG1hcmtpdGEgcGVyIC0tLT4ga2FqIG1ldHUgxJ1pbiBzdXIKQEAgLTM0NCw2ICszNDksNyBAQAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gMiBSRVNVTU8KIAorCiAgIDEuIFBvciBmb3J2acWdaSBla2RlIGxhIGt1cnNvcm8gxJ1pcyBsYSBzZWt2YW50YSB2b3J0bywgdGFqcHU6ICAgIGR3CiAgIDIuIFBvciBmb3J2acWdaSBla2RlIGxhIGt1cnNvcm8gxJ1pcyBsYSBmaW5vIGRlIGxhIGxpbmlvLCB0YWpwdTogIGQkCiAgIDMuIFBvciBmb3J2acWdaSB0dXRhbiBsaW5pb24sIHRhanB1OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGQKQEAgLTM2OCw2ICszNzQsNyBAQAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyAzLjEgTEEgS09NQU5ETyBERSBNRVRPCiAKKwogICAgICoqIFRhanB1ICBwICBwb3IgbWV0aSB0ZWtzdG9uIGZvcnZpxZ1pdGFuIGFudGHFrWUgcG9zdCBsYSBrdXJzb3JvLiAqKgogCiAgIDEuIE1vdnUgbGEga3Vyc29yb24gxIllIGxhIHVudWEgLS0tPiBzdWJhIGxpbmlvLgpAQCAtMzg5LDYgKzM5Niw3IEBACiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gMy4yIExBIEtPTUFORE8gREUgQU5TVEFUQcWsSUdPCiAKKwogICAgICAgICoqIFRhanB1ICByeCAgcG9yIGFuc3RhdGHFrWlnaSBsYSBzaWdub24gxIllIGxhIGt1cnNvcm8gcGVyICB4IC4gKioKIAogCkBAIC00MDIsNyArNDEwLDcgQEAKIAogLS0tPiBLaWVtIHRpdSBsYW5pbyBlc3RpcyB0YWpwaXRhLCBpdSBwcmFtaXMgbGEgbmHEnXVmdGFqbiBrbG92b2puIQogLS0tPiBLaWFtIHRpdSBsaW5pbyBlc3RpcyB0YWpwaXRhLCBpdSBwcmVtaXMgbGEgbmXEnXVzdGFqbiBrbGF2b2puIQotICAKKwogICA1LiBOdW4gbW92acSddSBhbCBsYSBsZWNpb25vIDMuMy4KIAogUmltYXJrbzogTWVtb3J1LCBrZSB2aSBkZXZ1cyBsZXJuaSBwZXIgdXpvLCBrYWogbmUgcGVyIG1lbW9yYWRvLgpAQCAtNDExLDYgKzQxOSw3IEBACiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyAzLjMgTEEgT1BFUkFUT1JPIERFIMWcQU7EnE8KIAorCiAgICAgICAgICAgICAgICoqIFBvciDFnWFuxJ1pIMSdaXMgbGEgZmlubyBkZSBsYSB2b3J0bywgdGFqcHUgIGNlIC4gKioKIAogICAxLiBNb3Z1IGxhIGt1cnNvcm9uIMSJZSBsYSB1bnVhIHN1YmEgbGluaW8gbWFya2l0YSBwZXIgLS0tPi4KQEAgLTQzMCw3ICs0MzksOCBAQAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyAzLjQgUExJQUogxZxBTsScT0ogUEVSIGMKIAotICAgICAgICAqKiBMYSBvcGVyYXRvcm8gZGUgxZ1hbsSdbyB1emVibGFzIGt1biBsYSBzYW1hIG1vdm8gb2wgZm9ydmnFnW8uICoqCisKKyAgICAgICAqKiBMYSBvcGVyYXRvcm8gZGUgxZ1hbsSdbyB1emVibGFzIGt1biBsYSBzYW1hIG1vdm8ga2llbCBmb3J2acWdby4gKioKIAogICAxLiBMYSBvcGVyYXRvcm8gZGUgxZ1hbsSdbyBmdW5rY2lhcyBzYW1tYW5pZXJlIGtpZWwgZm9ydmnFnW8uIExhIGZvcm1hdG8gZXN0YXM6CiAKQEAgLTQ1Myw2ICs0NjMsNyBAQAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlY2lvbm8gMyBSRVNVTU8KIAorCiAgIDEuIFBvciByZW1ldGkgdGVrc3Rvbiwga2l1biB2aSDEtXVzIGZvcnZpxZ1pcywgdGFqcHUgIHAuIFRpbyBtZXRhcyBsYQogICAgICBmb3J2acWdaXRhbiB0ZWtzdG9uIFBPU1QgbGEga3Vyc29ybyAoc2UgbGluaW8gZXN0aXMgZm9ydmnFnWl0YSwgxJ1pCiAgICAgIGlyb3MgZW4gbGEgbGluaW9uIHN1YiBsYSBrdXJzb3JvKS4KQEAgLTQ3NCw2ICs0ODUsNyBAQAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgIExlY2lvbm8gNC4xOiBQT1pJQ0lPIERFIEtVUlNPUk8gS0FKIFNUQVRPIERFIERPU0lFUk8KIAorCiAgICoqIFRhanB1IENUUkwtRyBwb3IgbW9udHJpIHZpYW4gcG96aWNpb24gZW4gbGEgZG9zaWVybyBrYWogbGEgZG9zaWVyc3RhdG9uLgogICAgICBUYWpwdSAgRyAgcG9yIG1vdmnEnWkgYWwgbGluaW8gZW4gbGEgZG9zaWVyby4gKioKIApAQCAtNDgzLDcgKzQ5NSw3IEBACiAgICAgIE1lc2HEnW8gYXBlcm9zIMSJZSBsYSBzdWJhIHBhcnRvIGRlIGxhIHBhxJ1vIGt1biBsYSBkb3NpZXJub21vIGthaiBsYQogICAgICBwb3ppY2lvIGVuIGxhIGRvc2llcm8uIE1lbW9ydSBsYSBudW1lcm9uIGRlIGxhIGxpbmlvIHBvciBwYcWdbyAzLgogCi0gIFJJTUFSS086IFZpIGVibGUgdmlkYXMgbGEgcG96aWNpb24gZGUgbGEga3Vyc29ybyDEiWUgbGEgc3ViYSBkZWtzdHJhIAorICBSSU1BUktPOiBWaSBlYmxlIHZpZGFzIGxhIHBvemljaW9uIGRlIGxhIGt1cnNvcm8gxIllIGxhIHN1YmEgZGVrc3RyYQogICAgICAgICAgICBhbmd1bG8gZGUgbGEgZWtyYW5vLiBUaW8gb2themFzIGtpYW0gbGEgYWdvcmRvICdydWxlcicgZXN0YXMKICAgICAgICAgICAgxZ1hbHRpdGEgKHZpZHUgIDpoZWxwICdydWxlcicpCiAKQEAgLTQ5OSw2ICs1MTEsNyBAQAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDQuMiBMQSBLT01BTkRPIERFIFNFUsSITwogCisKICAgICAgICAgICAgICAqKiBUYWpwdSAgLyAga2FqIHBvc3RlIGZyYXpvbiBwb3Igc2VyxIlpIGxhIGZyYXpvbi4gKioKIAogICAxLiBFbiBub3JtYWxhIHJlxJ1pbW8sIHRhanB1IGxhICAvICBzaWdub24uICBSaW1hcmt1LCBrZSDEnWkga2FqIGxhIGt1cnNvcm8KQEAgLTUyNCw3ICs1MzcsOCBAQAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDQuMyBTRVLEiE8gREUgS09OR1JVQUogS1JBTVBPSgogCi0gICAgICAgICAgICAgICAgICoqIFRhanB1ICAlICBwb3IgdHJvdmkga29uZ3J1YW4gKSwgWyBhxa0gIH0gKioKKworICAgICAgICAgICAgICAgICAqKiBUYWpwdSAgJSAgcG9yIHRyb3ZpIGtvbmdydWFuICksIF0gYcWtICB9ICoqCiAKICAgMS4gUG96aWNpdSBsYSBrdXJzb3JvbiBzdXIgaXVuICgsIFsgYcWtIHsgZW4gbGEgbGluaW8gbWFya2l0YSBwZXIgLS0tPi4KIApAQCAtNTQ4LDcgKzU2Miw3IEBACiAKICAgMS4gTW92dSBsYSBrdXJzb3JvbiBhbCBsYSBzdWJhIGxpbmlvIG1hcmtpdGEgcGVyIC0tLT4uCiAKLSAgMi4gVGFqcHUgIDpzL2xhYS9sYSA8RW5lbmtsYXZvPiAuICBSaW1hcmt1LCBrZSBsYSBrb21hbmRvIMWdYW7EnWFzIG51ciBsYSAKKyAgMi4gVGFqcHUgIDpzL2xhYS9sYSA8RW5lbmtsYXZvPiAuICBSaW1hcmt1LCBrZSBsYSBrb21hbmRvIMWdYW7EnWFzIG51ciBsYQogICAgICB1bnVhbiBva2F6YcS1b24gZGUgImxhYSIgZW4gbGEgbGluaW8uCiAKICAgMy4gTnVuIHRhanB1ICA6cy9sYWEvbGEvZyAuICBBbGRvbm8gZGUgIGcgIG9wY2lvIHNpZ25pZmFzIG1hbGxva2FuCkBAIC01NzMsNyArNTg3LDcgQEAKIAogICAxLiBDVFJMLUcgIHZpZGlnYXMgdmlhbiBwb3ppY2lvbiBlbiBsYSBkb3NpZXJvIGthaiBsYSBzdGF0b24gZGUgbGEgZG9zaWVyby4KICAgICAgICAgICAgIEcgIG1vdmFzIGxhIGt1cnNvcm9uIGFsIGxhIGZpbm8gZGUgbGEgZG9zaWVyby4KLSAgICAgbnVtZXJvIEcgIG1vdmFzIGxhIGt1cnNvcm9uIGFsIHRpdSBudW1lcm8gZGUgbGluaW8uCisgICAgIG51bWVybyBHICBtb3ZhcyBsYSBrdXJzb3JvbiBhbCBudW1lcm8gZGUgdGl1IGxpbmlvLgogICAgICAgICAgICBnZyAgbW92YXMgbGEga3Vyc29yb24gYWwgbGEgdW51YSBsaW5pby4KIAogICAyLiBUYWpwbyBkZSAgLyAga2FqIGZyYXpvbiBzZXLEiWFzIGxhIGZyYXpvbiBhbnRhxa1lbi4KQEAgLTU5NSw2ICs2MDksNyBAQAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyA1LjEgS0lFTCBQTEVOVU1JIEVLU1RFUkFOIEtPTUFORE9OCiAKKwogICAgICAqKiBUYWpwdSAgOiEgIHNla3ZhdGEgZGUgZWtzdGVyYSBrb21hbmRvIHBvciBwbGVudW1pIGxhIGtvbWFuZG9uLiAqKgogCiAgIDEuIFRhanB1IGxhIGtvbmF0YW4ga29tYW5kb24gIDogIHBvciBwb3ppY2lpIGxhIGt1cnNvcm9uIMSJZSBsYSBzdWJhIHBhcnRvCkBAIC02MDMsNyArNjE4LDcgQEAKICAgMi4gTnVuIHRhanB1IGxhICAhICAoa3Jpc2lnbm8pIHNpZ25vbi4gVGlvIGVibGlnYXMgYWwgdmkgcGxlbnVtaSBpdW4KICAgICAgZWtzdGVyYW4gxZ1lbGFuIGtvbWFuZG9uIGFqbi4KIAotICAzLiBFa3plbXBsZSwgdGFqcHUgIGxzICBwb3N0ICEga2FqIHRhanB1IDxFbmVua2xhdm8+LiBUaW8gbGlzdGlnb3MgbGEgCisgIDMuIEVremVtcGxlLCB0YWpwdSAgbHMgIHBvc3QgISBrYWogdGFqcHUgPEVuZW5rbGF2bz4uIFRpbyBsaXN0aWdvcyBsYQogICAgICBlbmhhdm9uIGRlIGxhIGRvc2llcnVqbywgc2FtZSBraWVsIHNlIHZpIGVzdGlzIGVuIMWdZWxhIGludml0by4KICAgICAgQcWtIHV6dSAgOiFkaXIgIHNlIGxzIG5lIGZ1bmtjaWFzLgogCkBAIC02MTcsNiArNjMyLDcgQEAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDUuMiBQTEkgUFJJIEtPTlNFUlZPIERFIERPU0lFUk8KIAorCiAgICAqKiBQb3Iga29uc2VydmkgbGEgZmFyaXRham4gxZ1hbsSdb2puIGVuIGxhIHRla3N0bywgdGFqcHUgIDp3IERPU0lFUk5PTU8uICoqCiAKICAgMS4gVGFqcHUgICFkaXIgIGHFrSAgIWxzICBwb3IgYWtpcmkgbGlzdG9uIGRlIHZpYSBkb3NpZXJ1am8uCkBAIC02MjYsNyArNjQyLDcgQEAKIAogICAzLiBOdW4gdGFqcHU6ICAgOncgVEVTVE8gICAoa2llIFRFU1RPIGVzdGFzIGxhIGVsZWt0aXRhIGRvc2llcm5vbW8pCiAKLSAgNC4gVGlvIGtvbnNlcnZhcyBsYSB0dXRhbiBkb3NpZXJvbiAoaW5zdHJ1aWxvIGRlIFZpbSkgcGVyIGxhIG5vbW8gVEVTVE8uCisgIDQuIFRpbyBrb25zZXJ2YXMgbGEgdHV0YW4gZG9zaWVyb24gKGluc3RydWlsb24gZGUgVmltKSBrdW4gbGEgbm9tbyBURVNUTy4KICAgICAgUG9yIGtvbnRyb2xpIHRpb24sIHRhanB1ICAgOiFkaXIgICBhxa0gICAhbHMgICBkZW5vdmUgcG9yIHZpZGlnaSB2aWFuCiAgICAgIGRvc2llcnVqb24uCiAKQEAgLTY0MSwxMSArNjU3LDEyIEBACiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyA1LjMgQVBBUlRJR0kgS09OU0VSVkVOREFOIFRFU1RPTgogCisKICAgICAqKiBQb3Iga29uc2VydmkgcGFydG9uIGRlIGxhIGRvc2llcm8sIHRhanB1ICAgdiAgbW92byAgOncgRE9TSUVSTk9NTyAqKgogCiAgIDEuIE1vdnUgbGEga3Vyc29yb24gYWwgdGl1IGxpbmlvLgotICAKLSAgMi4gUHJlbXUgIHYgIGthaiBtb3Z1IGxhIGt1cnNvcm9uIGFsIGxhIGt2aW5hIHN1YmEgZXJvLiAgUmltYXJrdSwga2UgbGEgCisKKyAgMi4gUHJlbXUgIHYgIGthaiBtb3Z1IGxhIGt1cnNvcm9uIGFsIGxhIGt2aW5hIHN1YmEgZXJvLiAgUmltYXJrdSwga2UgbGEKICAgICAgdGVrc3RvIGVtZmF6acSdYXMuCiAKICAgMy4gUHJlbXUgbGEgIDogIHNpZ25vbi4gIMSIZSBsYSBmaW5vIGRlIGxhIGVrcmFubyAgOic8LCc+ICBhcGVyb3MuCkBAIC02NTQsMTAgKzY3MSwxMCBAQAogICAgICBLb250cm9sdSwga2UgdmkgdmlkYXMgIDonPCwnPncgVEVTVE8gIGFudGHFrSBwcmVtaSA8RW5lbmtsYXZvPi4KIAogICA1LiBWaW0ga29uc2Vydm9zIGxhIGFwYXJ0aWdpdGFqbiBsaW5pb2puIGFsIGxhIGRvc2llcm8gVEVTVE8uICBVenUgIDpkaXIKLSAgICAgYcWtICA6IWxzICBwb3IgdmlkaWdpIMSdaW4uICBOZSBqYW0gZm9ydmnFnXUgxJ1pbi4gIE5pIHV6b3MgxJ1pbiBlbiBsYQotICAgICBzZWt2YW50YSBsZWNpb25vLgorICAgICBhxa0gIDohbHMgIHBvciB2aWRpZ2kgxJ1pbi4gIE5lIGZvcnZpxZ11IMSdaW4uICBOaSB1em9zIMSdaW4gZW4gbGEgc2VrdmFudGEKKyAgICAgbGVjaW9uby4KIAotUklNQVJLTzogUFJFTU8gREUgIHYgIGtvbWVuY2FzIFZpZHVtYW4gYXBhcnRpZ29uLiAgVmkgcG92YXMgbW92aSBsYSBrdXJzb3JvbgorUklNQVJLTzogUHJlbW8gZGUgIHYgIGtvbWVuY2FzIFZpZHVtYW4gYXBhcnRpZ29uLiAgVmkgcG92YXMgbW92aSBsYSBrdXJzb3JvbgogICAgICAgICAgcG9yIHBsaWdyYW5kaWdpIGHFrSBtYWxwbGlncmFuZGlnaSBsYSBhcGFydGlnb24uIFRpYW0gdmkgcG92YXMgdXppCiAgICAgICAgICBvcGVyYXRvcm9uIHBvciBwbGVudW1pIGlvbiBrdW4gbGEgdGVrc3RvLiAgRWt6ZW1wbGUsICBkICBmb3J2acWdYXMKICAgICAgICAgIGxhIHRla3N0b24uCkBAIC02ODIsNyArNjk5LDcgQEAKICAgICAga2UgZXN0YXMgbnVuIGR1IGtvcGlvaiBkZSBsYSBsZWNpb25vIDUuMywgbGEgb3JpZ2luYWxhIGthaiBsYSB2ZXJzaW8gbWVtCiAgICAgIGRlIGxhIGRvc2llcm8uCiAKLVJJTUFSS086IFZpIG51biBwb3ZhcyBsZWdpIGxhIGVsaXJvbiBkZSBla3N0ZXJhIGtvbWFuZG8uIEVremVtcGxlLCAKK1JJTUFSS086IFZpIG51biBwb3ZhcyBsZWdpIGxhIGVsaXJvbiBkZSBla3N0ZXJhIGtvbWFuZG8uIEVremVtcGxlLAogICAgICAgICA6ciAhbHMgIGxlZ2FzIGxhIGVsaXJvbiBkZSBsYSBrb21hbmRvIGxzIGthaiBtZXRhcyDEnWluIHN1YiBsYQogICAgICAgICBrdXJzb3Jvbi4KIApAQCAtNzAxLDcgKzcxOCw3IEBACiAgIDIuICA6dyBET1NJRVJOT01PICBrb25zZXJ2YXMgbGEgbnVuYW4gZG9zaWVyb24gZGUgVmltIGFsIGRpc2tvIGt1biBsYQogICAgICAgbm9tbyBET1NJRVJOT01PLgogCi0gIDMuICB2ICBtb3ZvICA6dyBET1NJRVJOT01PICBrb25zZXJ2YXMgbGEgVmlkdW1hbiBhcGFydGlnbyBkZSBsaW5pb2ogZW4KKyAgMy4gIHYgIG1vdm8gIDp3IERPU0lFUk5PTU8gIGtvbnNlcnZhcyBsYSBWaWR1bWFuIGFwYXJ0aWdvbiBkZSBsaW5pb2ogZW4KICAgICAgIGRvc2llcm8gRE9TSUVSTk9NTy4KIAogICA0LiA6ciBET1NJRVJOT01PICBha2lyYXMgbGEgZG9zaWVyb24gRE9TSUVSTk9NTyBlbCBsYSBkaXNrbyBrYWogbWV0YXMKQEAgLTc0OCw3ICs3NjUsNyBAQAogICA0LiBLb21wbGV0aWd1IGxhIHZvcnRvbiBzYW1lIGtpZWwgbGEgbGluaW8gc3ViIMSdaS4gIFByZW11IDxFU0s+IHBvcgogICAgICBlbGlyaSBsYSBFbm1ldGFuIHJlxJ1pbW9uLgogCi0gIDUuIFV6dSAgZSAgcG9yIG1vdmnEnWkgYWwgbGEgc2VrdmFudGEgbmVrb21wbGV0YSB2b3J0byBrYWogcmlwZXR1ICAgCisgIDUuIFV6dSAgZSAgcG9yIG1vdmnEnWkgYWwgbGEgc2VrdmFudGEgbmVrb21wbGV0YSB2b3J0byBrYWogcmlwZXR1CiAgICAgIHBhxZ1vam4gMyBrYWogNC4KIAogLS0tPiDEiGkgdGl1IGxpbiBlYmxpZ29zIHZpbiBla3ogdmluIHBvc3RhbCB0ZWtzdG9uIGFsIGxpbmlvLgpAQCAtODA0LDcgKzgyMSw3IEBACiAgICAgIHBlciAgcCAuCiAKIC0tLT4gYSkgdGlvIGVzdGFzIGxhIHVudWEgZXJvLgotICAgICBiKSAKKyAgICAgYikKIAogUklNQVJLTzogdmkgcG92YXMgYW5rYcWtIHV6aSAgeSAga2llbCBvcGVyYXRvcm87ICB5dyAga29waWFzIHVudSB2b3J0b24uCiAKQEAgLTgxMiw3ICs4MjksOCBAQAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDYuNSBBR09SREkgT1BDSU9OCiAKLSAgICAgICAgICoqIEFnb3JkdSBvcGNpb24gcG9yIGtlIHNlcsSJbyBhxa0gYW5zdGF0YcWtZ28gaWdub3J1IHVza2xlY29uICoqCisKKyAgICAgICAgICoqIEFnb3JkdSBvcGNpb24gcG9yIGtlIHNlcsSJbyBhxa0gYW5zdGF0YcWtaWdvIGlnbm9ydSB1c2tsZWNvbiAqKgogCiAgIDEuIFNlcsSJdSAnaWdub3JpJyBwZXIgdGFqcG8gZGUgL2lnbm9yaSA8RW5lbmtsYXZvPgogICAgICBSaXBldHUgcGx1cmZvamUgcHJlbWFudGUgIG4gLgpAQCAtODU3LDkgKzg3NSwxMSBAQAogCiAgIDcuIEFudGHFrWFsZG9udSAibm8iIHBvciBtYWzFnWFsdGkgbGEgb3BjaW9uOiAgOnNldCBub2ljCiAKKwogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGVjaW9ubyA3LjEgQUtJUkkgSEVMUE9OCiAKKwogICAgICAgICAgICAgICAgICAgICAgICAgICAqKiBVenUgbGEgaGVscGFuIHNpc3RlbW9uICoqCiAKICAgVmltIGhhdmFzIGFtcGxla3NhbiBoZWxwYW4gc2lzdGVtb24uIFBvciBrb21lbmNpxJ1pLCBwcm92dSB1bnUgZWwgbGEgdGl1agpAQCAtODg0LDIyICs5MDQsMjMgQEAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDcuMiBLUkVJIFNUQVJUQU4gU0tSSVBUT04KIAotICAgICAgICAgICAgICAgICAgICAgICAgICAqKiBFYmxpZ3UgZWJsZWNvam4gZGUgVmltICoqCiAKLSAgVmltIGhhdmFzIG11bHRlIHBsaSBkYSBlYmxlY29qIG9sIFZpLCBzZWQgbGEgcGxlaiBtdWx0YWogZXN0YXMgZGVmYcWtbHRlCi0gIG1hbMWdYWx0aXRhai4gIFBvciBla3V6aSBsYSBlYmxlY29qbiwgdmkgZGV2YXMga3JlaSBkb3NpZXJvbiAidmltcmMuCisgICAgICAgICAgICAgICAgICAgICAgICAgKiogRWJsaWd1IGthcGFibG9qbiBkZSBWaW0gKioKKworICBWaW0gaGF2YXMgbXVsdGUgcGxpIGRhIGthcGFibG9qIG9sIFZpLCBzZWQgbGEgcGxlaiBtdWx0YWogZXN0YXMgZGVmYcWtbHRlCisgIG1hbMWdYWx0aXRhai4gIFBvciBla3V6aSBsYSBrYXBhYmxvam4sIHZpIGRldmFzIGtyZWkgZG9zaWVyb24gInZpbXJjLgogCiAgIDEuIEVrcmVkYWt0dSBsYSBkb3NpZXJvbiAidmltcmMiLiAgVGlvIGRlcGVuZGFzIGRlIHZpYSBzaXN0ZW1vOgogICAgICAgOmUgfi8udmltcmMgICAgICAgICAgcG9yIFVuaWtzbwogICAgICAgOmUgJFZJTS9fdmltcmMgICAgICAgcG9yIE1TLVZpbmRvem8KIAotICAyLiBOdW4gbGVndSBsYSBlbmhhdm9uIGRlIGxhIGVremVtcGxhICJ2aW1yYyIgCisgIDIuIE51biBsZWd1IGxhIGVuaGF2b24gZGUgbGEgZWt6ZW1wbGEgInZpbXJjIgogICAgICAgOnIgJFZJTVJVTlRJTUUvdmltcmNfZXhhbXBsZS52aW0KIAogICAzLiBLb25zZXJ2dSBsYSBkb3NpZXJvbiBwZXI6CiAgICAgICA6dwogCi0gIExhIHNla3ZhbnRhIGZvam8sIGtpYW0gdmkgbGFuxIlhcyBWaW0sIMSdaSB1em9zIHNpbnRha3NhbiBlbWZhem9uLgorICBMYSBzZWt2YW50YW4gZm9qb24sIGtpYW0gdmkgbGFuxIlhcyBWaW0sIMSdaSB1em9zIHNpbnRha3NhbiBlbWZhem9uLgogICBWaSBwb3ZhcyBhbGRvbmkgxIlpdWpuIHZpYWpuIHByZWZlcmF0YWpuIGFnb3Jkb2puIGFsIHRpdSBkb3NpZXJvICJ2aW1yYyIuCiAgIFBvciBwbGkgZGEgaW5mb3Jtb2osIHRhanB1ICA6aGVscCB2aW1yYy1pbnRybwogCkBAIC05MDcsNiArOTI4LDcgQEAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZWNpb25vIDcuMyBLT01QTEVUSUdPCiAKKwogICAgICAgICAgICAgICoqIEtvbXBsZXRpZ28gZGUga29tYW5kYSBsaW5pbyBwZXIgQ1RSTC1EIGthaiA8VEFCPiAqKgogCiAgIDEuIENlcnRpZ3Uga2UgVmltIGVzdGFzIGVuIGtvbmdydWEgcmXEnWltbzogIDpzZXQgbm9jcApAQCAtOTYyLDYgKzk4NCw2IEBACiAKICAgVHJhZHVraXRhIGVuIEVzcGVyYW50byBkZSBEb21pbmlxdWUgUGVsbMOpLCAyMDA4LTA0LTAxCiAgIFJldHBvxZ10bzogZG9taW5pcXVlLnBlbGxlQGdtYWlsLmNvbQotICBMYXN0YSDFnWFuxJ1vOiAyMDA4LTA0LTAyCisgIExhc3RhIMWdYW7EnW86IDIwMDktMDItMDEKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLmVzIGIvcnVudGltZS90dXRvci90dXRvci5lcwppbmRleCBiYmRiMTNkLi5iZmI0MmU0IDEwMDY0NAotLS0gYS9ydW50aW1lL3R1dG9yL3R1dG9yLmVzCisrKyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZXMKQEAgLTExNyw3ICsxMTcsNyBAQAogCQkJICAgIFJFU1VNRU4gREUgTEEgTEVDQ0nTTiAxCiAKIAotICAxLiBFbCBjdXJzb3Igc2UgbXVldmUgdXRpbGl6YW1kbyBsYXMgdGVjbGFzIGRlIGxhcyBmbGVjaGFzIG8gbGFzIHRlY2xhcyBoamtsLgorICAxLiBFbCBjdXJzb3Igc2UgbXVldmUgdXRpbGl6YW5kbyBsYXMgdGVjbGFzIGRlIGxhcyBmbGVjaGFzIG8gbGFzIHRlY2xhcyBoamtsLgogCSBoIChpenF1aWVyZGEpCSAgIGogKGFiYWpvKQkgIGsgKGFycmliYSkJICBsIChkZXJlY2hhKQogCiAgIDIuIFBhcmEgYWNjZWRlciBhIFZpbSAoZGVzZGUgZWwgc+1tYm9sbyBkZWwgc2lzdGVtYSAlKSBlc2NyaWJhOgpkaWZmIC0tZ2l0IGEvcnVudGltZS90dXRvci90dXRvci5lcy51dGYtOCBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZXMudXRmLTgKaW5kZXggNzQ5NTYxOS4uODRkYjhmZCAxMDA2NDQKLS0tIGEvcnVudGltZS90dXRvci90dXRvci5lcy51dGYtOAorKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLmVzLnV0Zi04CkBAIC0xMTcsNyArMTE3LDcgQEAKIAkJCSAgICBSRVNVTUVOIERFIExBIExFQ0NJw5NOIDEKIAogCi0gIDEuIEVsIGN1cnNvciBzZSBtdWV2ZSB1dGlsaXphbWRvIGxhcyB0ZWNsYXMgZGUgbGFzIGZsZWNoYXMgbyBsYXMgdGVjbGFzIGhqa2wuCisgIDEuIEVsIGN1cnNvciBzZSBtdWV2ZSB1dGlsaXphbmRvIGxhcyB0ZWNsYXMgZGUgbGFzIGZsZWNoYXMgbyBsYXMgdGVjbGFzIGhqa2wuCiAJIGggKGl6cXVpZXJkYSkJICAgaiAoYWJham8pCSAgayAoYXJyaWJhKQkgIGwgKGRlcmVjaGEpCiAKICAgMi4gUGFyYSBhY2NlZGVyIGEgVmltIChkZXNkZSBlbCBzw61tYm9sbyBkZWwgc2lzdGVtYSAlKSBlc2NyaWJhOgpkaWZmIC0tZ2l0IGEvcnVudGltZS90dXRvci90dXRvci5mciBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZnIKaW5kZXggYmM1NjY4OS4uZTMyMTc1NCAxMDA2NDQKLS0tIGEvcnVudGltZS90dXRvci90dXRvci5mcgorKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLmZyCkBAIC0xLDUgKzEsNSBAQAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotPSBCIGkgZSBuIHYgZSBuIHUgZSAgZGFucyBsZSAgVCB1IHQgbyByIGkgZSBsICBkZSAgViBJIE0gIC0gIFZlcnNpb24gMS41LmZyLjIgPQorPSBCIGkgZSBuIHYgZSBuIHUgZSAgZGFucyBsZSAgVCB1IHQgbyByIGkgZSBsICBkZSAgViBJIE0gIC0gIFZlcnNpb24gMS43LmZyLjEgPQogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogCiAgICAgIFZpbSBlc3QgdW4g6WRpdGV1ciB0cuhzIHB1aXNzYW50IHF1aSBhIHRyb3AgZGUgY29tbWFuZGVzIHBvdXIgcG91dm9pcgpAQCAtNyw5MyArNywxMDAgQEAKICAgICAgZOljcmlyZSBzdWZmaXNhbW1lbnQgYWZpbiBkZSB2b3VzIHBlcm1ldHRyZSBkJ3V0aWxpc2VyIHNpbXBsZW1lbnQgVmltLgogCiAgICAgIExlIHRlbXBzIHJlcXVpcyBwb3VyIHN1aXZyZSBjZSBjb3VycyBlc3QgZCdlbnZpcm9uIDI1IOAgMzAgbWludXRlcywgc2Vsb24KLSAgICAgbGUgdGVtcHMgcXVlIHZvdXMgcGFzc2VyZXog4CBleHDpcmltZW50ZXIuICBMZXMgY29tbWFuZGVzIHV0aWxpc+llcyBkYW5zCi0gICAgIGxlcyBsZedvbnMgbW9kaWZpZXJvbnQgbGUgdGV4dGUuIEZhaXRlcyB1bmUgY29waWUgZGUgY2UgZmljaGllciBhZmluIGRlCi0gICAgIHZvdXMgZW50cmHubmVyIGRlc3N1cyAoc2kgdm91cyBhdmV6IGxhbmPpICJ2aW10dXRvciIgY2VjaSBlc3QgZOlq4CB1bmUKLSAgICAgY29waWUpLgorICAgICBsZSB0ZW1wcyBxdWUgdm91cyBwYXNzZXJleiDgIGV4cOlyaW1lbnRlci4KKworICAgICBBVFRFTlRJT04gOgorICAgICBMZXMgY29tbWFuZGVzIHV0aWxpc+llcyBkYW5zIGxlcyBsZedvbnMgbW9kaWZpZXJvbnQgbGUgdGV4dGUuIEZhaXRlcyB1bmUKKyAgICAgY29waWUgZGUgY2UgZmljaGllciBhZmluIGRlIHZvdXMgZW50cmHubmVyIGRlc3N1cyAoc2kgdm91cyBhdmV6IGxhbmPpCisgICAgICJ2aW10dXRvciIgY2VjaSBlc3QgZOlq4CB1bmUgY29waWUpLgogCiAgICAgIElsIGVzdCBpbXBvcnRhbnQgZGUgZ2FyZGVyIGVuIHTqdGUgcXVlIGNlIGNvdXJzIGVzdCBjb27ndSBwb3VyIGFwcHJlbmRyZQotICAgICBwYXIgbGEgcHJhdGlxdWUuICBDZWxhIHNpZ25pZmllIHF1ZSB2b3VzIGRldmV6IGV46WN1dGVyIGxlcyBjb21tYW5kZXMKLSAgICAgcG91ciBsZXMgYXBwcmVuZHJlIGNvcnJlY3RlbWVudC4gIFNpIHZvdXMgdm91cyBjb250ZW50ZXogZGUgbGlyZSBsZQotICAgICB0ZXh0ZSwgdm91cyBvdWJsaWVyZXogbGVzIGNvbW1hbmRlcyAhCisgICAgIHBhciBsYSBwcmF0aXF1ZS4gQ2VsYSBzaWduaWZpZSBxdWUgdm91cyBkZXZleiBleOljdXRlciBsZXMgY29tbWFuZGVzCisgICAgIHBvdXIgbGVzIGFwcHJlbmRyZSBjb3JyZWN0ZW1lbnQuIFNpIHZvdXMgdm91cyBjb250ZW50ZXogZGUgbGlyZSBsZSB0ZXh0ZSwKKyAgICAgdm91cyBvdWJsaWVyZXogbGVzIGNvbW1hbmRlcyAhCiAKLSAgICAgTWFpbnRlbmFudCwgdulyaWZpZXogcXVlIHZvdHJlIGNsYXZpZXIgbidlc3QgUEFTIHZlcm91aWxs6SBlbiBtYWp1c2N1bGVzLAotICAgICBldCBhcHB1eWV6IGxhIHRvdWNoZSAgaiAgbGUgbm9tYnJlIGRlIGZvaXMgc3VmZmlzYW50IHBvdXIgcXVlIGxhIGxl529uCi0gICAgIDEuMSByZW1wbGlzc2UgY29tcGzodGVtZW50IGwn6WNyYW4uCisgICAgIE1haW50ZW5hbnQsIHbpcmlmaWV6IHF1ZSB2b3RyZSBjbGF2aWVyIG4nZXN0IFBBUyB2ZXJyb3VpbGzpIGVuCisgICAgIG1hanVzY3VsZXMsIGV0IGFwcHV5ZXogbGEgdG91Y2hlICBqICBsZSBub21icmUgZGUgZm9pcyBzdWZmaXNhbnQgcG91cgorICAgICBxdWUgbGEgTGXnb24gMS4xIHJlbXBsaXNzZSBjb21wbOh0ZW1lbnQgbCfpY3Jhbi4KKworCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgICAgTGXnb24gMS4xIDogRMlQTEFDRU1FTlQgRFUgQ1VSU0VVUgorICAgICAgICAgICAgICAgICAgICAgIExl529uIDEuMSA6IETJUExBQ0VNRU5UIERVIENVUlNFVVIKIAogCiAgICoqIFBvdXIgZOlwbGFjZXIgbGUgY3Vyc2V1ciwgYXBwdXlleiBsZXMgdG91Y2hlcyBoLGosayxsIGNvbW1lIGluZGlxdekuICoqCi0JICAgIF4KLQkgICAgawkgICAgIEFzdHVjZTogIExhIHRvdWNoZSBoIGVzdCDgIGdhdWNoZSBldCBk6XBsYWNlIOAgZ2F1Y2hlLgotICAgICAgPCBoICAgICAgbCA+CSAgICAgIExhIHRvdWNoZSBsIGVzdCDgIGRyb2l0ZSBldCBk6XBsYWNlIOAgZHJvaXRlLgotCSAgIGoJCSAgICAgIExhIHRvdWNoZSBqIHJlc3NlbWJsZSDgIHVuZSBmbOhjaGUgdmVycyBsZSBiYXMuCi0JICAgdgorICAgICAgICAgIF4KKyAgICAgICAgICBrICAgICAgICBBc3R1Y2UgOiAgTGEgdG91Y2hlIGggZXN0IOAgZ2F1Y2hlIGV0IGTpcGxhY2Ug4CBnYXVjaGUuCisgICAgPCBoICAgICAgIGwgPiAgICAgICAgICAgIExhIHRvdWNoZSBsIGVzdCDgIGRyb2l0ZSBldCBk6XBsYWNlIOAgZHJvaXRlLgorICAgICAgICAgIGogICAgICAgICAgICAgICAgICBMYSB0b3VjaGUgaiByZXNzZW1ibGUg4CB1bmUgZmzoY2hlIHZlcnMgbGUgYmFzLgorICAgICAgICAgIHYKICAgMS4gROlwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbCfpY3JhbiBqdXNxdSfgIHZvdXMgc2VudGlyIOAgbCdhaXNlLgogCiAgIDIuIE1haW50ZW5leiBsYSB0b3VjaGUgQmFzIChqKSBlbmZvbmPpZSBqdXNxdSfgIGNlIHF1J2VsbGUgc2Ugculw6HRlLgotLS0tPiBNYWludGVuYW50IHZvdXMg6nRlcyBjYXBhYmxlIGRlIHZvdXMgZOlwbGFjZXIganVzcXUn4CBsYSBsZedvbiBzdWl2YW50ZS4KKyAgICAgTWFpbnRlbmFudCB2b3VzIOp0ZXMgY2FwYWJsZSBkZSB2b3VzIGTpcGxhY2VyIGp1c3F1J+AgbGEgbGXnb24gc3VpdmFudGUuCiAKICAgMy4gRW4gdXRpbGlzYW50IGxhIHRvdWNoZSBCYXMsIGFsbGV6IOAgbGEgTGXnb24gMS4yLgogCi1Ob3RlOiBTaSBqYW1haXMgdm91cyBkb3V0ZXogZGUgY2UgcXVlIHZvdXMgdmVuZXogZGUgdGFwZXIsIGFwcHV5ZXogPMljaGFwPgotICAgICAgcG91ciByZXZlbmlyIGVuIG1vZGUgTm9ybWFsLiBQdWlzIHJldGFwZXogbGEgY29tbWFuZGUgcXVlIHZvdXMgdm91bGllei4KK05PVEUgOiBTaSBqYW1haXMgdm91cyBkb3V0ZXogZGUgY2UgcXVlIHZvdXMgdmVuZXogZGUgdGFwZXIsIGFwcHV5ZXogPMljaGFwPgorICAgICAgIHBvdXIgcmV2ZW5pciBlbiBtb2RlIE5vcm1hbC4gUHVpcyByZXRhcGV6IGxhIGNvbW1hbmRlIHF1ZSB2b3VzIHZvdWxpZXouCiAKLU5vdGU6IExlcyB0b3VjaGVzIGZs6WNo6WVzIGRldnJhaWVudCDpZ2FsZW1lbnQgZm9uY3Rpb25uZXIuIE1haXMgZW4gdXRpbGlzYW50Ci0gICAgICBoamtsIHZvdXMgcG91cnJleiB2b3VzIGTpcGxhY2VyIGJlYXVjb3VwIHBsdXMgcmFwaWRlbWVudCwgdW5lIGZvaXMgcXVlCi0gICAgICB2b3VzIGF1cmV6IHByaXMgbCdoYWJpdHVkZS4KK05PVEUgOiBMZXMgdG91Y2hlcyBmbOljaOllcyBkZXZyYWllbnQg6WdhbGVtZW50IGZvbmN0aW9ubmVyLiBNYWlzIGVuIHV0aWxpc2FudAorICAgICAgIGhqa2wgdm91cyBwb3VycmV6IHZvdXMgZOlwbGFjZXIgYmVhdWNvdXAgcGx1cyByYXBpZGVtZW50LCB1bmUgZm9pcyBxdWUKKyAgICAgICB2b3VzIGF1cmV6IHByaXMgbCdoYWJpdHVkZS4KKworCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgICBMZedvbiAxLjIgOiBFTlRSyUUgRVQgU09SVElFIERFIFZJTQorICAgICAgICAgICAgICAgICAgICAgTGXnb24gMS4yIDogU09SVElSIERFIFZJTQogCiAKLSAhISBOT1RFOiBBdmFudCBkJ2VmZmVjdHVlciBsZXMg6XRhcGVzIGNpLWRlc3NvdXMsIGxpc2V6IHRvdXRlIGNldHRlIGxl529uICEhCisgISEgTk9URSA6IEF2YW50IGQnZWZmZWN0dWVyIGxlcyDpdGFwZXMgY2ktZGVzc291cywgbGlzZXogdG91dGUgY2V0dGUgbGXnb24gISEKIAotICAxLiBBcHB1eWV6IGxhIHRvdWNoZQk8yWNoYXA+ICAocG91ciDqdHJlIHP7ciBkJ+p0cmUgZW4gbW9kZSBOb3JtYWwpLgorICAxLiBBcHB1eWV6IGxhIHRvdWNoZSAgPMljaGFwPiAgKHBvdXIg6nRyZSBz+3IgZCfqdHJlIGVuIG1vZGUgTm9ybWFsKS4KIAotICAyLiBUYXBlejoJCQk6cSEgPEVudHLpZT4KKyAgMi4gVGFwZXogOiAgOnEhIDxFbnRy6WU+CisgICAgIENlY2kgcXVpdHRlIGwn6WRpdGV1ciBTQU5TIGVucmVnaXN0cmVyIGxlcyBjaGFuZ2VtZW50cyBxdWUgdm91cyBhdmV6CisgICAgIGZhaXRzLgogCi0tLS0+IENlY2kgcXVpdHRlIGwn6WRpdGV1ciBTQU5TIHNhdXZlciBsZXMgY2hhbmdlbWVudHMgcXVlIHZvdXMgYXZleiBmYWl0cy4KLSAgICAgU2kgdm91cyB2b3VsZXogZW5yZWdpc3RyZXIgbGVzIGNoYW5nZW1lbnRzIGV0IHNvcnRpciwgdGFwZXo6Ci0JCQkJOndxIDxFbnRy6WU+Ci0KLSAgMy4gTG9yc3F1ZSBsJ2ludml0ZSBkdSAnc2hlbGwnIHZvdXMgc2VyYSBwculzZW506WUsIHRhcGV6IGxhIGNvbW1hbmRlIHF1aQotICAgICB2b3VzIGEgYW1lbukgZGFucyBjZSB0dXRvcmllbC4gIENlbGEgcG91cnJhaXQg6nRyZTogICAgdmltdHV0b3IgPEVudHLpZT4KLSAgICAgTm9ybWFsZW1lbnQsIHZvdXMgdXRpbGlzZXJpZXo6CQkJICAgIHZpbSB0dXRvciA8RW50cullPgotCi0tLS0+ICd2aW0nIGxhbmNlIGwn6WRpdGV1ciwgJ3R1dG9yJyBlc3QgbGUgZmljaGllciBxdWUgdm91cyBzb3VoYWl0ZXog6WRpdGVyLgorICAzLiBMb3JzcXVlIGwnaW52aXRlIGR1IHNoZWxsIHZvdXMgc2VyYSBwculzZW506WUsIHRhcGV6IGxhIGNvbW1hbmRlIHF1aQorICAgICB2b3VzIGEgbWVu6SBkYW5zIGNlIHR1dG9yaWVsLiBDZWxhIHBvdXJyYWl0IOp0cmUgOiAgICB2aW10dXRvciA8RW50cullPgogCiAgIDQuIFNpIHZvdXMgYXZleiBt6W1vcmlz6SBjZXMg6XRhcGVzIGV0IOp0ZXMgY29uZmlhbnQsIGVmZmVjdHVleiBsZXMg6XRhcGVzCi0gICAgIDEg4CAzIHBvdXIgc29ydGlyIHB1aXMgcmVudHJlciBkYW5zIGwn6WRpdGV1ci4gIETpcGxhY2V6IGVuc3VpdGUgbGUKLSAgICAgIGN1cnNldXIganVzcXUn4CBsYSBMZedvbiAxLjMuCisgICAgIDEg4CAzIHBvdXIgc29ydGlyIHB1aXMgcmVudHJlciBkYW5zIGwn6WRpdGV1ci4KKworTk9URSA6ICA6cSEgPEVudHLpZT4gYW5udWxlIHRvdXMgbGUgY2hhbmdlbWVudHMgcXVlIHZvdXMgYXZleiBmYWl0LiBEYW5zCisgICAgICAgICBxdWVscXVlcyBsZedvbnMsIHZvdXMgYXBwcmVuZHJleiDgIGVucmVnaXN0cmVyIGxlcyBjaGFuZ2VtZW50cy4KKworICA1LiBE6XBsYWNleiBsZSBjdXJzZXVyIOAgbGEgTGXnb24gMS4zLgorCisKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgIExl529uIDEuMyA6IMlESVRJT04gREUgVEVYVEUgLSBFRkZBQ0VNRU5UCisgICAgICAgICAgICAgICAgICBMZedvbiAxLjMgOiDJRElUSU9OIERFIFRFWFRFIC0gRUZGQUNFTUVOVAogCiAKLSAqKiBFbiBtb2RlIE5vcm1hbCwgYXBwdXlleiAgeAlwb3VyIGVmZmFjZXIgbGUgY2FyYWN06HJlIHNvdXMgbGUgY3Vyc2V1ci4gKioKKyAgICAgICAgICoqIEFwcHV5ZXogICB4ICAgcG91ciBlZmZhY2VyIGxlIGNhcmFjdOhyZSBzb3VzIGxlIGN1cnNldXIuICoqCiAKICAgMS4gROlwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgbGlnbmUgbWFycXXpZSAtLS0+IGNpLWRlc3NvdXMuCiAKICAgMi4gUG91ciBjb3JyaWdlciBsZXMgZXJyZXVycywgZOlwbGFjZXogbGUgY3Vyc2V1ciBqdXNxdSfgIGNlIHF1J2lsIHNvaXQKICAgICAgc3VyIHVuIGNhcmFjdOhyZSDgIGVmZmFjZXIuCiAKLSAgMy4gQXBwdXlleiBsYSB0b3VjaGUJeCAgcG91ciBlZmZhY2VyIGxlIGNhcmFjdOhyZSByZWRvbmRhbnQuCisgIDMuIEFwcHV5ZXogbGEgdG91Y2hlICB4ICBwb3VyIGVmZmFjZXIgbGUgY2FyYWN06HJlIHJlZG9uZGFudC4KIAogICA0LiBS6XDpdGV6IGxlcyDpdGFwZXMgMiDgIDQganVzcXUn4CBjZSBxdWUgbGEgcGhyYXNlIHNvaXQgY29ycmVjdGUuCiAKIC0tLT4gTGEgdnZhY2hlIOAgc2F1dOnpIGF1LWRkZXNzdXMgZGRlIGxhIGx1dW5lLgogCi0gIDUuIE1haW50ZW5hbnQgcXVlIGxhIGxpZ25lIGVzdCBjb3JyZWN0ZSwgcGFzc2V6IOAgbGEgbGXnb24gMS40LgorICA1LiBNYWludGVuYW50IHF1ZSBsYSBsaWduZSBlc3QgY29ycmVjdGUsIHBhc3NleiDgIGxhIExl529uIDEuNC4KIAotTk9URTogRW4gYXZhbudhbnQgZGFucyBjZSBjb3Vycywgbidlc3NheWV6IHBhcyBkZSBt6W1vcmlzZXIsIGFwcHJlbmV6IHBhcgotICAgICAgbGEgcHJhdGlxdWUuCitOT1RFIDogRW4gYXZhbudhbnQgZGFucyBjZSBjb3Vycywgbidlc3NheWV6IHBhcyBkZSBt6W1vcmlzZXIsIGFwcHJlbmV6IHBhcgorICAgICAgIGxhIHByYXRpcXVlLgogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICBMZedvbiAxLjQgOiDJRElUSU9OIERFIFRFWFRFIC0gSU5TRVJUSU9OCisgICAgICAgICAgICAgICAgICAgIExl529uIDEuNCA6IMlESVRJT04gREUgVEVYVEUgLSBJTlNFUlRJT04KIAogCi0JICAgKiogRW4gbW9kZSBOb3JtYWwsIGFwcHV5ZXogIGkgIHBvdXIgaW5z6XJlciBkdSB0ZXh0ZS4gKioKKyAgICAgICAgICAgICAgICAgICAgKiogQXBwdXlleiAgaSAgcG91ciBpbnPpcmVyIGR1IHRleHRlLiAqKgogCiAgIDEuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIHByZW1p6HJlIGxpZ25lIG1hcnF16WUgLS0tPiBjaS1kZXNzb3VzLgogCkBAIC0xMDgsMzggKzExNSw5NCBAQAogLS0tPiBJbCBtbnFlIGNhcmFjdOhyZXMgY2V0dGUgLgogLS0tPiBJbCBtYW5xdWUgZGVzIGNhcmFjdOhyZXMgZGFucyBjZXR0ZSBsaWduZS4KIAotICA1LiBVbmUgZm9pcyBxdWUgdm91cyDqdGVzIOAgbCdhaXNlIGF2ZWMgbCdpbnNlcnRpb24gZGUgdGV4dGUsIGFsbGV6IGF1Ci0gICAgIHLpc3Vt6SBjaS1kZXNzb3VzLgorICA1LiBVbmUgZm9pcyBxdWUgdm91cyDqdGVzIOAgbCdhaXNlIGF2ZWMgbCdpbnNlcnRpb24gZGUgdGV4dGUsIGFsbGV6IOAgbGEKKyAgICAgTGXnb24gMS41LgogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkJICAgICBSyVNVTckgREUgTEEgTEXHT04gMQorICAgICAgICAgICAgICAgICAgICAgTGXnb24gMS41IDogyURJVElPTiBERSBURVhURSAtIEFKT1VURVIKKworCisgICAgICAgICAgICAgICAgICAgICoqIEFwcHV5ZXogIEEgIHBvdXIgYWpvdXRlciBkdSB0ZXh0LiAqKgorCisgIDEuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIHByZW1p6HJlIGxpZ25lIGNpLWRlc3NvdXMgbWFycXXpZSAtLS0+LgorICAgICBQZXUgaW1wb3J0ZSBzdXIgcXVlbCBjYXJhY3TocmUgc2UgdHJvdXZlIGxlIGN1cnNldXIgc3VyIGNldHRlIGxpZ25lLgorCisgIDIuIEFwcHV5ZXogIEEgIGV0IHRhcGV6IGxlcyBham91dHMgbuljZXNzYWlyZXMuCisKKyAgMy4gUXVhbmQgbGUgdGV4dGUgYSDpdOkgYWpvdXTpLCBhcHB1eWV6IDzJY2hhcD4gcG91ciByZXZlbmlyIGVuIG1vZGUKKyAgICAgTm9ybWFsLgorCisgIDQuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIHNlY29uZGUgbGlnbmUgbWFycXXpZSAtLS0+IGV0IHLpcOl0ZXogbGVzCisgICAgIOl0YXBlcyAyIGV0IDMgcG91ciBjb3JyaWdlciBsYSBwaHJhc2UuCisKKy0tLT4gSWwgbWFucXVlIGR1IHRleHRlIOAgcGFydGlyIGRlIGNldAorICAgICBJbCBtYW5xdWUgZHUgdGV4dGUg4CBwYXJ0aXIgZGUgY2V0dGUgbGlnbmUuCistLS0+IElsIG1hbnF1ZSBhdXNzaSBkdSB0ZQorICAgICBJbCBtYW5xdWUgYXVzc2kgZHUgdGV4dGUgaWNpLgorCisgIDUuIFF1YW5kIHZvdXMgdm91cyBzZW50ZXogc3VmZmlzYW1tZW50IOAgbCdhaXNlIHBvdXIgYWpvdXRlciBkdSB0ZXh0ZSwKKyAgICAgYWxsZXog4CBsYSBMZedvbiAxLjYuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgTGXnb24gMS42IDogyURJVEVSIFVOIEZJQ0hJRVIKKworCisgICAgICAgICAgKiogVXRpbGlzZXogIDp3cSAgcG91ciBlbnJlZ2lzdHJlciB1biBmaWNoaWVyIGV0IHNvcnRpci4gKioKKworISEgTk9URSA6IExpc2V6IHRvdXRlIGxhIGxl529uIGF2YW50IGQnZXjpY3V0ZXIgbGVzIGluc3RydWN0aW9ucyBjaS1kZXNzb3VzICEhCisKKyAgMS4gU29ydGV6IGRlIGNlIHR1dG9yaWVsIGNvbW1lIHZvdXMgbCdhdmV6IGZhaXQgZGFucyBsYSBMZedvbiAxLjIgOiAgOnEhCisgICAgIE91LCBzaSB2b3VzIGF2ZXogYWNj6HMg4CB1biBhdXRyZSB0ZXJtaW5hbCwgZXjpY3V0ZXogeSBsZXMgYWN0aW9ucworICAgICBxdWkgc3VpdmVudC4KKworICAyLiDAIGwnaW52aXRlIGR1IHNoZWxsLCB0YXBleiBjZXR0ZSBjb21tYW5kZSA6ICB2aW0gdHV0b3IgPEVudHLpZT4KKyAgICAgJ3ZpbScgZXN0IGxhIGNvbW1hbmRlIHBvdXIgZOltYXJyZXIgbCfpZGl0ZXVyIFZpbSwgJ3R1dG9yJyBlc3QgbGUKKyAgICAgbm9tIGR1IGZpY2hpZXIgcXVlIHZvdXMgc291aGFpdGV6IOlkaXRlci4gVXRpbGlzZXogdW4gZmljaGllciBxdWkgcGV1dAorICAgICDqdHJlIG1vZGlmaekuCisKKyAgMy4gSW5z6XJleiBldCBlZmZhY2V6IGR1IHRleHRlIGNvbW1lIHZvdXMgbCdhdmV6IGFwcHJpcyBkYW5zIGxlcyBsZedvbnMKKyAgICAgcHLpY+lkZW50ZXMuCisKKyAgNC4gRW5yZWdpc3RyZXogbGUgZmljaGllciBhdmVjIGxlcyBjaGFuZ2VtZW50cyBldCBzb3J0ZXogZGUgVmltIGF2ZWMgOgorICAgICAgIDp3cSA8RW50cullPgorCisgIDUuIFNpIHZvdXMgYXZleiBxdWl0dOkgdmltdHV0b3Ig4CBsJ+l0YXBlIDEsIHJlY29tbWVuY2V6IHZpbXR1dG9yIGV0CisgICAgIGTpcGxhY2V6LXZvdXMgZW4gYmFzIHZlcnMgbGUgculzdW3pIHN1aXZhbnQuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFLJU1VNySBERSBMQSBMRcdPTiAxCisKIAogICAxLiBMZSBjdXJzZXVyIHNlIGTpcGxhY2UgYXZlYyBsZXMgdG91Y2hlcyBmbOljaOllcyBvdSBsZXMgdG91Y2hlcyBoamtsLgotCSBoIChnYXVjaGUpCWogKGJhcykgICAgICAgIGsgKGhhdXQpICAgICAgIGwgKGRyb2l0ZSkKKyAgICAgICAgICAgaCAoZ2F1Y2hlKSAgICAgIGogKGJhcykgICAgICBrIChoYXV0KSAgICAgIGwgKGRyb2l0ZSkKIAotICAyLiBQb3VyIGVudHJlciBkYW5zIFZpbSAo4CBsJ2ludml0ZSAlKSB0YXBlejogIHZpbSBGSUNISUVSIDxFbnRy6WU+CisgIDIuIFBvdXIgZOltYXJyZXIgVmltIOAgbCdpbnZpdGUgZHUgc2hlbGwgdGFwZXogOiAgdmltIEZJQ0hJRVIgPEVudHLpZT4KIAotICAzLiBQb3VyIHF1aXR0ZXIgVmltIHRhcGV6OiAgPMljaGFwPiA6cSEgPEVudHLpZT4gIHBvdXIgcGVyZHJlIHRvdXMgbGVzCi0JCQkJCQkgICAgY2hhbmdlbWVudHMuCi0JCSAgIE9VIHRhcGV6OiAgPMljaGFwPiA6d3EgPEVudHLpZT4gIHBvdXIgZW5yZWdpc3RyZXIgbGVzCi0JCQkJCQkgICAgY2hhbmdlbWVudHMuCisgIDMuIFBvdXIgcXVpdHRlciBWaW0gdGFwZXogOiAgPMljaGFwPiA6cSEgPEVudHLpZT4gIHBvdXIgcGVyZHJlIHRvdXMgbGVzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZW1lbnRzLgorICAgICAgICAgICAgICAgICAgIE9VIHRhcGV6IDogIDzJY2hhcD4gOndxIDxFbnRy6WU+ICBwb3VyIGVucmVnaXN0cmVyIGxlcworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2VtZW50cy4KIAotICA0LiBQb3VyIGVmZmFjZXIgdW4gY2FyYWN06HJlIHNvdXMgbGUgY3Vyc2V1ciBlbiBtb2RlIE5vcm1hbCB0YXBlejogIHgKKyAgNC4gUG91ciBlZmZhY2VyIHVuIGNhcmFjdOhyZSBzb3VzIGxlIGN1cnNldXIgdGFwZXogOiAgeAogCi0gIDUuIFBvdXIgaW5z6XJlciBkdSB0ZXh0ZSBhdSBuaXZlYXUgZHUgY3Vyc2V1ciBlbiBtb2RlIE5vcm1hbCB0YXBlejoKLQkgaSAgIHRhcGV6IGxlIHRleHRlICAgPMljaGFwPgorICA1LiBQb3VyIGluc+lyZXIgb3UgYWpvdXRlciBkdSB0ZXh0ZSB0YXBleiA6CisgICAgICAgICBpICAgdGFwZXogbGUgdGV4dGUg4CBpbnPpcmVyIGF2YW50IGxlIGN1cnNldXIgICA8yWNoYXA+CisgICAgICAgICBBICAgdGFwZXogbGUgdGV4dGUg4CBham91dGVyIGFwcuhzIGxlIGN1cnNldXIgICA8yWNoYXA+CiAKLU5PVEU6IEFwcHV5ZXIgIDzJY2hhcD4Jdm91cyBwbGFjZSBlbiBtb2RlIE5vcm1hbCBvdSBhbm51bGUgdW5lIGNvbW1hbmRlCi0gICAgICBwYXJ0aWVsbGVtZW50IHRhcOllIGRvbnQgdm91cyBuZSB2b3VkcmlleiBwbHVzLgorTk9URSA6IEFwcHV5ZXIgIDzJY2hhcD4gIHZvdXMgcGxhY2UgZW4gbW9kZSBOb3JtYWwgb3UgYW5udWxlIHVuZSBjb21tYW5kZQorICAgICAgIHBhcnRpZWxsZW1lbnQgdGFw6WUgZG9udCB2b3VzIG5lIHZvdWxleiBwbHVzLgogCi1QYXNzZXogbWFpbnRlbmFudCDgIGxhIExl529uIDIuCitQYXNzZXogbWFpbnRlbmFudCDgIGxhIGxl529uIDIuCisKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgICBMZedvbiAyLjEgOiBFRkZBQ0VNRU5UUworICAgICAgICAgICAgICAgICAgICAgICBMZedvbiAyLjEgOiBDT01NQU5ERVMgRCdFRkZBQ0VNRU5UCiAKIAotCSAgICAqKiBUYXBleiAgZHcgIHBvdXIgZWZmYWNlciBqdXNxdSfgIGxhIGZpbiBkJ3VuIG1vdC4gKioKKyAgICAgICAgICAgICAgICAgICAgICoqIFRhcGV6ICBkdyAgcG91ciBlZmZhY2VyIHVuIG1vdC4gKioKIAogICAxLiBBcHB1eWV6ICA8yWNoYXA+ICBwb3VyIOp0cmUgc/tyIGQn6nRyZSBlbiBtb2RlIE5vcm1hbC4KIApAQCAtMTQ3LDkxICsyMTAsMTM5IEBACiAKICAgMy4gUGxhY2V6IGxlIGN1cnNldXIgc3VyIGxlIGTpYnV0IGQndW4gbW90IHF1aSBhIGJlc29pbiBkJ+p0cmUgZWZmYWPpLgogCi0gIDQuIFRhcGV6ICBkdwlwb3VyIGZhaXJlIGRpc3BhcmHudHJlIGNlIG1vdC4KKyAgNC4gVGFwZXogIGR3ICBwb3VyIGZhaXJlIGRpc3BhcmHudHJlIGNlIG1vdC4KIAotTk9URTogTGVzIGxldHRyZXMgIGR3ICBhcHBhcmHudHJvbnQgc3VyIGxhIGRlcm5p6HJlIGxpZ25lIGRlIGwn6WNyYW4gbG9ycyBkZQotICAgICAgdm90cmUgZnJhcHBlLiBTaSB2b3VzIGF2ZXogbWFsIHRhcOkgcXVlbHF1ZSBjaG9zZSwgYXBwdXlleiA8yWNoYXA+IGV0Ci0gICAgICByZWNvbW1lbmNlei4KK05PVEUgOiBMYSBsZXR0cmUgIGQgIGFwcGFyYe50cmEgc3VyIGxhIGRlcm5p6HJlIGxpZ25lIGRlIGwn6WNyYW4gbG9ycyBkZQorICAgICAgIHZvdHJlIGZyYXBwZS4gVmltIGF0dGVuZCBxdWUgdm91cyB0YXBpZXogIHcgLiBTaSB2b3VzIHZveWV6IHVuIGF1dHJlCisgICAgICAgY2FyYWN06HJlIHF1ZSAgZCAgdm91cyBhdmV6IHRhcOkgYXV0cmUgY2hvc2UgOyBhcHB1eWV6IDzJY2hhcD4gZXQKKyAgICAgICByZWNvbW1lbmNlei4KIAogLS0tPiBJbCB5IGEgcXVlbHF1ZXMgZHL0bGUgbW90cyBxdWkgbidvbnQgcmllbiDgIGZhaXJlIHBhcGllciBzdXIgY2V0dGUgbGlnbmUuCiAKICAgNS4gUulw6XRleiBsZXMg6XRhcGVzIDMgZXQgNCBqdXNxdSfgIGNlIHF1ZSBsYSBwaHJhc2Ugc29pdCBjb3JyZWN0ZSBldCBhbGxlegogICAgICDgIGxhIExl529uIDIuMi4KIAorCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCUxl529uIDIuMiA6IFBMVVMgRCdFRkZBQ0VNRU5UUworICAgICAgICAgICAgICAgICAgTGXnb24gMi4yIDogUExVUyBERSBDT01NQU5ERVMgRCdFRkZBQ0VNRU5UUwogCiAKLQkgICoqIFRhcGV6ICBkJAlwb3VyIGVmZmFjZXIganVzcXUn4CBsYSBmaW4gZGUgbGEgbGlnbmUuICoqCisgICAgICAgICAgKiogVGFwZXogIGQkICBwb3VyIGVmZmFjZXIganVzcXUn4CBsYSBmaW4gZGUgbGEgbGlnbmUuICoqCiAKICAgMS4gQXBwdXlleiAgPMljaGFwPiAgcG91ciDqdHJlIHP7ciBkJ+p0cmUgZW4gbW9kZSBOb3JtYWwuCiAKICAgMi4gROlwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgbGlnbmUgbWFycXXpZSAtLS0+IGNpLWRlc3NvdXMuCiAKLSAgMy4gROlwbGFjZXogbGUgY3Vyc2V1ciBqdXNxdSfgIGxhIGZpbiBjb3JyZWN0ZSBkZSBsYSBsaWduZQotICAgICAoQVBSyFMgbGUgcHJlbWllciAuICkuCisgIDMuIETpcGxhY2V6IGxlIGN1cnNldXIganVzcXUn4CBsYSBmaW4gZGUgbGEgbGlnbmUgY29ycmVjdGUgKEFQUshTIGxlCisgICAgIHByZW1pZXIgLiApLgogCi0gIDQuIFRhcGV6ICBkJAlwb3VyIGVmZmFjZXIganVzcXUn4CBsYSBmaW4gZGUgbGEgbGlnbmUuCisgIDQuIFRhcGV6ICBkJCAgcG91ciBlZmZhY2VyIGp1c3F1J+AgbGEgZmluIGRlIGxhIGxpZ25lLgogCiAtLS0+IFF1ZWxxdSd1biBhIHRhcOkgbGEgZmluIGRlIGNldHRlIGxpZ25lIGRldXggZm9pcy4gY2V0dGUgbGlnbmUgZGV1eCBmb2lzLgogCiAgIDUuIEFsbGV6IOAgbGEgTGXnb24gMi4zIHBvdXIgY29tcHJlbmRyZSBjZSBxdWkgc2UgcGFzc2UuCiAKIAorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgTGXnb24gMi4zIDogwCBQUk9QT1MgREVTIE9QyVJBVEVVUlMgRVQgREVTIE1PVVZFTUVOVFMKIAogCisgIFBsdXNpZXVycyBjb21tYW5kZXMgcXVpIGNoYW5nZW50IGxlIHRleHRlIHNvbnQgY29uc3RpdHXpZXMgZCd1biBvcOlyYXRldXIKKyAgZXQgZCd1biBtb3V2ZW1lbnQuIExlIGZvcm1hdCBwb3VyIHVuZSBjb21tYW5kZSBkJ2VmZmFjZW1lbnQgYXZlYyBsJ29w6XJhdGV1cgorICBkICBkJ2VmZmFjZW1lbnQgZXN0IGxlIHN1aXZhbnQgOgorCisgICAgICAgIGQgICBtb3V2ZW1lbnQKKworICBP+SA6CisgICAgZCAgICAgICAgIC0gZXN0IGwnb3DpcmF0ZXVyIGQnZWZmYWNlbWVudAorICAgIG1vdXZlbWVudCAtIGVzdCBsZSBtb3V2ZW1lbnQgc3VyIGxlcXVlbCBhZ2l0IGwnb3DpcmF0ZXVyIChsaXN06XMKKyAgICAgICAgICAgICAgICBjaS1kZXNzb3VzKQorCisgIFVuZSBjb3VydGUgbGlzdGUgZGUgbW91dmVtZW50cyA6CisgICAgdyAtIGp1c3F1J2F1IGTpYnV0IGR1IHByb2NoYWluIG1vdCwgZW4gRVhDTFVBTlQgc29uIHByZW1pZXIgY2FyYWN06HJlLgorICAgIGUgLSBqdXNxdSfgIGxhIGZpbiBkdSBtb3QgY291cmFudCwgZW4gRVhDTFVBTlQgc29uIGRlbmllciBjYXJhY3TocmUuCisgICAgJCAtIGp1c3F1J+AgbGEgZmluIGRlIGxhIGxpZ25lLCBlbiBJTkNMVUFOVCBzb24gZGVybmllciBjYXJhY3TocmUuCisKKyAgQWluc2ksIHRhcGVyICBkZSAgdmEgZWZmYWNlciBkZXB1aXMgbGUgY3Vyc2V1ciBqdXNxdSfgIGxhIGZpbiBkdSBtb3QuCisKK05PVEUgOiBMZSBzZXVsIGFwcHVpIGQndW4gbW91dmVtZW50IGVuIG1vZGUgTm9ybWFsLCBzYW5zIGNvbW1hbmRlLCBk6XBsYWNlIGxlCisgICAgICAgY3Vyc2V1ciBjb21tZSBpbmRpcXXpLgorCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICBMZedvbiAyLjMgOiBERVMgQ09NTUFOREVTIEVUIERFUyBPQkpFVFMKKyAgICAgICAgICAgIExl529uIDIuNCA6IFVUSUxJU0VSIFVOIFFVQU5USUZJQ0FURVVSIEFWRUMgVU4gTU9VVkVNRU5UCiAKIAotICBMZSBmb3JtYXQgZGUgbGEgY29tbWFuZGUgZCdlZmZhY2VtZW50ICBkICBlc3QgbGUgc3VpdmFudDoKKyAgICAgICAqKiBUYXBlciB1biBub21icmUgYXZhbnQgdW4gbW91dmVtZW50IGxlIHLpcOh0ZSBhdXRhbnQgZGUgZm9pcy4gKioKIAotCSBbbm9tYnJlXSAgZCAgb2JqZXQJICAgT1UJICAgICBkCVtub21icmVdICBvYmpldAotICBv+ToKLSAgICBub21icmUgLSBlc3QgY29tYmllbiBkZSBmb2lzIGV46WN1dGVyIGxhIGNvbW1hbmRlIChvcHRpb25uZWwsIGTpZmF1dDogMSkuCi0gICAgZCAtIGVzdCBsYSBjb21tYW5kZSBkJ2VmZmFjZW1lbnQuCi0gICAgb2JqZXQgLSBlc3QgY2Ugc3VyIHF1b2kgbGEgY29tbWFuZGUgdmEgb3DpcmVyIChsaXN0ZSBjaS1kZXNzb3VzKS4KKyAgMS4gROlwbGFjZXogbGUgY3Vyc2V1ciBhdSBk6WJ1dCBkZSBsYSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KIAotICBVbmUgY291cnRlIGxpc3RlIGQnb2JqZXRzOgotICAgIHcgLSBkdSBjdXJzZXVyIGp1c3F1J+AgbGEgZmluIGR1IG1vdCwgeSBjb21wcmlzIGwnZXNwYWNlIHF1aSBzdWl0LgotICAgIGUgLSBkdSBjdXJzZXVyIGp1c3F1J+AgbGEgZmluIGR1IG1vdCwgU0FOUyBsJ2VzcGFjZSBxdWkgc3VpdC4KLSAgICAkIC0gZHUgY3Vyc2V1ciBqdXNxdSfgIGxhIGZpbiBkZSBsYSBsaWduZS4KKyAgMi4gVGFwZXogIDJ3ICBwb3VyIGTpcGxhY2VyIGxlIGN1cnNldXIgZGUgMiBtb3RzIHZlcnMgbCdhdmFudC4KIAotTk9URTogUG91ciBsZXMgYXZlbnR1cmV1eCwgbGUgc2V1bCBhcHB1aSBkJyBvYmpldCAgZW4gbW9kZSBOb3JtYWwsIHNhbnMKLSAgICAgIGNvbW1hbmRlLCBk6XBsYWNlIGxlIGN1cnNldXIgY29tbWUgaW5kaXF16SBkYW5zIGxhIGxpc3RlIGRlcyBvYmpldHMuCisgIDMuIFRhcGV6ICAzZSAgcG91ciBk6XBsYWNlciBsZSBjdXJzZXVyIOAgbGEgZmluIGR1IHRyb2lzaehtZSBtb3QgdmVycworICAgICBsJ2F2YW50LgogCisgIDQuIFRhcGV6ICAwICAoeulybykgcG91ciBk6XBsYWNlciBhdSBk6WJ1dCBkZSBsYSBsaWduZS4KIAorICA1LiBS6XDpdGV6IGxlcyDpdGFwZXMgMiBldCAzIGF2ZWMgZGVzIHF1YW50aWZpY2F0ZXVycyBkaWZm6XJlbnRzLgorCistLS0+IENlY2kgZXN0IGp1c3RlIHVuZSBsaWduZSBhdmVjIGRlcyBtb3RzIG/5IHZvdXMgcG91dmV6IHZvdXMgZOlwbGFjZXIuCisKKyAgNi4gROlwbGFjZXotdm91cyDgIGxhIExl529uIDIuNS4KIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJIExl529uIDIuNCA6IFVORSBFWENFUFRJT04gwCAnQ09NTUFOREUtT0JKRVQnCisgICAgICAgICAgICBMZedvbiAyLjUgOiBVVElMSVNFUiBVTiBRVUFOVElGSUNBVEVVUiBQT1VSIEVGRkFDRVIgUExVUwogCi0JICAgICAgKiogVGFwZXoJZGQgIHBvdXIgZWZmYWNlciB1bmUgbGlnbmUgY29tcGzodGUuICoqCisKKyAgICAgICAqKiBUYXBlciB1biBub21icmUgYXZlYyB1biBvcOlyYXRldXIgbGUgculw6HRlIGF1dGFudCBkZSBmb2lzLiAqKgorCisgIE91dHJlIGxhIGNvbWJpbmFpc29uIGRlIGwnb3DpcmF0ZXVyIGQnZWZmYWNlbWVudCBhdmVjIHVuIGTpcGxhY2VtZW50CisgIG1lbnRpb25u6SBjaS1kZXNzdXMsIHZvdXMgcG91dmV6IGluc+lyZXIgdW4gbm9tYnJlIChxdWFudGlmaWNhdGV1cikKKyAgcG91ciBlZmZhY2V6IGVuY29yZSBwbHVzIDoKKyAgICAgICBkICAgbm9tYnJlICAgZOlwbGFjZW1lbnQKKworICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIHZlcnMgbGUgcHJlbWllciBtb3QgZW4gTUFKVVNDVUxFUyBkYW5zIGxhIGxpZ25lCisgICAgIG1hcnF16WUgLS0tPi4KKworICAyLiBUYXBleiAgZDJ3ICBwb3VyIGVmZmFjZXIgbGVzIGRldXggbW90cyBlbiBNQUpVU0NVTEVTLgorCisgIDMuIFLpcOl0ZXogbGVzIOl0YXBlcyAxIGV0IDIgYXZlYyBkZXMgcXVhbnRpZmljYXRldXJzIGRpZmbpcmVudHMgcG91cgorICAgICBlZmZhY2VyIGxlcyBtb3RzIHN1aXZhbnRzIGVuIE1BSlVTQ1VMRVMg4CBsJ2FpZGUgZCd1bmUgY29tbWFuZGUuCisKKy0tLT4gQ2V0dGUgQUJDIERFIGxpZ25lIEZHSEkgSksgTE1OIE9QIGRlIG1vdHMgZXN0IFEgUlMgVFVWIG5ldHRveellLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICBMZedvbiAyLjYgOiBPUMlSRVogU1VSIERFUyBMSUdORVMKKworCisgICAgICAgICAgICAgICoqIFRhcGV6ICAgZGQgICBwb3VyIGVmZmFjZXIgdW5lIGxpZ25lIGNvbXBs6HRlLiAqKgogCiAgIFZ1IGxlIG5vbWJyZSBkZSBmb2lzIG/5IGwnb24gZWZmYWNlIGRlcyBsaWduZXMgY29tcGzodGVzLCBsZXMgY29uY2VwdGV1cnMKLSAgZGUgVmkgb250IGTpY2lk6SBxdSdpbCBzZXJhaXQgcGx1cyBmYWNpbGUgZGUgdGFwZXIgc2ltcGxlbWVudCBkZXV4IGQg4CBsYQotICBzdWl0ZSBwb3VyIGVmZmFjZXIgdW5lIGxpZ25lLgorICBkZSBWaSBvbnQgZOljaWTpIHF1J2lsIHNlcmFpdCBwbHVzIGZhY2lsZSBkZSB0YXBlciBzaW1wbGVtZW50IGRldXggIGQKKyAgcG91ciBlZmZhY2VyIHVuZSBsaWduZS4KIAogICAxLiBQbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgc2Vjb25kZSBsaWduZSBkZSBsYSBwaHJhc2UgY2ktZGVzc291cy4KLSAgMi4gVGFwZXogIGRkCXBvdXIgZWZmYWNlciBsYSBsaWduZS4KKyAgMi4gVGFwZXogIGRkICBwb3VyIGVmZmFjZXIgbGEgbGlnbmUuCiAgIDMuIE1haW50ZW5hbnQgYWxsZXog4CBsYSBxdWF0cmnobWUgbGlnbmUuCi0gIDQuIFRhcGV6ICAyZGQgIChyYXBwZWxlei12b3VzLCBub21icmUtY29tbWFuZGUtb2JqZXQpIHBvdXIgZWZmYWNlciBsZXMKLSAgICAgZGV1eCBsaWduZXMuCisgIDQuIFRhcGV6ICAgMmRkICAgcG91ciBlZmZhY2VyIGRldXggbGlnbmVzLgogCi0gICAgICAxKSAgTGVzIHJvc2VzIHNvbnQgcm91Z2VzLAotICAgICAgMikgIExhIGJvdWUgYydlc3QgZHL0bGUsCi0gICAgICAzKSAgTGVzIHZpb2xldHRlcyBzb250IGJsZXVlcywKLSAgICAgIDQpICBKJ2FpIHVuZSB2b2l0dXJlLAotICAgICAgNSkgIExlcyBob3Jsb2dlcyBkb25uZW50IGwnaGV1cmUsCi0gICAgICA2KSAgTGUgc3VjcmUgZXN0IGRvdXgKLSAgICAgIDcpICBUb3V0IGNvbW1lIHZvdXMuCistLS0+ICAxKSAgTGVzIHJvc2VzIHNvbnQgcm91Z2VzLAorLS0tPiAgMikgIExhIGJvdWUgYydlc3QgZHL0bGUsCistLS0+ICAzKSAgTGVzIHZpb2xldHRlcyBzb250IGJsZXVlcywKKy0tLT4gIDQpICBKJ2FpIHVuZSB2b2l0dXJlLAorLS0tPiAgNSkgIExlcyBob3Jsb2dlcyBkb25uZW50IGwnaGV1cmUsCistLS0+ICA2KSAgTGUgc3VjcmUgZXN0IGRvdXgKKy0tLT4gIDcpICBUb3V0IGNvbW1lIHZvdXMuCisKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgICAgTGXnb24gMi41IDogTCdBTk5VTEFUSU9OCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGXnb24gMi43IDogTCdBTk5VTEFUSU9OCiAKLQkgICAgKiogVGFwZXogIHUgIHBvdXIgYW5udWxlciBsZXMgZGVybmnocmVzIGNvbW1hbmRlcy4gKioKLQkgICAgICAgKiogVGFwZXogIFUgIHBvdXIgculjdXDpcmVyIHRvdXRlIHVuZSBsaWduZS4gKioKKworICAgICAgICAgICAgKiogVGFwZXogIHUgIHBvdXIgYW5udWxlciBsZXMgZGVybmnocmVzIGNvbW1hbmRlcy4gKioKKyAgICAgICAgICAgICAgICoqIFRhcGV6ICBVICBwb3VyIHLpY3Vw6XJlciB0b3V0ZSB1bmUgbGlnbmUuICoqCiAKICAgMS4gROlwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgbGlnbmUgbWFycXXpZSAtLS0+IGNpLWRlc3NvdXMgZXQgcGxhY2V6LWxlIHN1cgogICAgICBsYSBwcmVtaehyZSBlcnJldXIuCkBAIC0yMzksMTAgKzM1MCwxMCBAQAogICAzLiBQdWlzIHRhcGV6ICB1ICBwb3VyIGFubnVsZXIgbGEgZGVybmnocmUgY29tbWFuZGUgZXjpY3V06WUuCiAgIDQuIENldHRlIGZvaXMsIGNvcnJpZ2V6IHRvdXRlcyBsZXMgZXJyZXVycyBkZSBsYSBsaWduZSBhdmVjIGxhIGNvbW1hbmRlICB4IC4KICAgNS4gUHVpcyB0YXBleiB1biAgVSAgbWFqdXNjdWxlIHBvdXIgcmVtZXR0cmUgbGEgbGlnbmUgZGFucyBzb24g6XRhdCBpbml0aWFsLgotICA2LiBQdWlzIHRhcGV6ICB1ICBkZXV4LXRyb2lzIGZvaXMgcG91ciBhbm51bGVyIGxlICBVCWV0IGxlcyBjb21tYW5kZXMKKyAgNi4gUHVpcyB0YXBleiAgdSAgZGV1eC10cm9pcyBmb2lzIHBvdXIgYW5udWxlciBsZSAgVSAgZXQgbGVzIGNvbW1hbmRlcwogICAgICBwculj6WRlbnRlcy4KLSAgNy4gTWFpbnRlbmFudCB0YXBleiAgQ3RybC1SICAobWFpbnRlbmV6IGxhIHRvdWNoZSBDdHJsIGVuZm9uY+llIHBlbmRhbnQgcXVlCi0gICAgIHZvdXMgYXBwdXlleiBzdXIgUikgZGV1eC10cm9pcyBmb2lzIHBvdXIgcmVmYWlyZSBsZXMgY29tbWFuZGVzIChhbm51bGVyCisgIDcuIE1haW50ZW5hbnQgdGFwZXogIENUUkwtUiAgKG1haW50ZW5leiBsYSB0b3VjaGUgQ1RSTCBlbmZvbmPpZSBwZW5kYW50IHF1ZQorICAgICB2b3VzIGFwcHV5ZXogUikgZGV1eC10cm9pcyBmb2lzIHBvdXIgcmVmYWlyZSBsZXMgY29tbWFuZGVzIChhbm51bGVyCiAgICAgIGxlcyBhbm51bGF0aW9ucykuCiAKIC0tLT4gQ29vcnJpZ2V6IGxlcyBlcnJldXJzIHN1dXIgY2NldHRlIGxpZ25lIGV0IHJlZW1ldHRlei1sZXMgYXZ2ZWMgJ2FubnVsZXInLgpAQCAtMjUwLDU3ICszNjEsNjQgQEAKICAgOC4gQ2Ugc29udCBkZXMgY29tbWFuZGVzIHRy6HMgdXRpbGVzLiBNYWludGVuYW50LCBhbGxleiBhdSBy6XN1bekgZGUgbGEKICAgICAgTGXnb24gMi4KIAotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgICAgIFLJU1VNySBERSBMQSBMRcdPTiAyCi0KLQotICAxLiBQb3VyIGVmZmFjZXIgZHUgY3Vyc2V1ciBqdXNxdSfgIGxhIGZpbiBkJ3VuIG1vdCB0YXBlejoJZHcKLQotICAyLiBQb3VyIGVmZmFjZXIgZHUgY3Vyc2V1ciBqdXNxdSfgIGxhIGZpbiBkJ3VuZSBsaWduZSB0YXBlejoJZCQKLQotICAzLiBQb3VyIGVmZmFjZXIgdG91dGUgdW5lIGxpZ25lIHRhcGV6OiAgZGQKLQotICA0LiBMZSBmb3JtYXQgZCd1bmUgY29tbWFuZGUgZW4gbW9kZSBOb3JtYWwgZXN0OgotCi0gICAgICAgW25vbWJyZV0gIGNvbW1hbmRlICBvYmpldCAgICAgT1UgICAgIGNvbW1hbmRlICBbbm9tYnJlXQlvYmpldAotICAgICBv+ToKLSAgICAgICBub21icmUgLSBlc3QgY29tYmllbiBkZSBmb2lzIHLpcOl0ZXIgbGEgY29tbWFuZGUKLSAgICAgICBjb21tYW5kZSAtIGVzdCBjZSBxdSdpbCBmYXV0IGZhaXJlLCBwYXIgZXhlbXBsZQlkICBwb3VyIGVmZmFjZXIKLSAgICAgICBvYmpldCAtIGVzdCBjZSBzdXIgcXVvaSBsYSBjb21tYW5kZSBkZXZyYWl0IGFnaXIsIHBhciBleGVtcGxlIHcgKG1vdCksCi0JICAgICAgICQgKGp1c3F1J+AgbGEgZmluIGRlIGxhIGxpZ25lKSwgZXRjLgotCi0gIDUuIFBvdXIgYW5udWxlciBkZXMgYWN0aW9ucyBwculj6WRlbnRlcywgdGFwZXo6CSAgICAgdQkodSBtaW51c2N1bGUpCi0gICAgIFBvdXIgYW5udWxlciB0b3VzIGxlcyBjaGFuZ2VtZW50cyBzdXIgdW5lIGxpZ25lIHRhcGV6OiAgVQkoVSBtYWp1c2N1bGUpCi0gICAgIFBvdXIgYW5udWxlciBsJ2FubnVsYXRpb24gdGFwZXo6CQkJICAgICBDdHJsLVIKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgICAgIExl529uIDMuMSA6IExFIENPTExBR0UKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUslTVU3JIERFIExBIExFx09OIDIKIAogCi0gICAqKiBUYXBleiAgcAlwb3VyIHBsYWNlciBhcHLocyBsZSBjdXJzZXVyIGNlIHF1aSB2aWVudCBkJ+p0cmUgZWZmYWPpLiAqKgorICAxLiBQb3VyIGVmZmFjZXIgZHUgY3Vyc2V1ciBqdXNxdSdhdSBtb3Qgc3VpdmFudCB0YXBleiA6ICAgICAgICAgZHcKIAotICAxLiBQbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgcHJlbWnocmUgbGlnbmUgZHUgInBv6G1lIiBjaS1kZXNzb3VzLgorICAyLiBQb3VyIGVmZmFjZXIgZHUgY3Vyc2V1ciBqdXNxdSfgIGxhIGZpbiBkJ3VuZSBsaWduZSB0YXBleiA6ICAgZCQKIAotICAyLiBUYXBleiAgZGQJcG91ciBlZmZhY2VyIGxhIGxpZ25lIGV0IGxhIHBsYWNlciBkYW5zIGxlIHRhbXBvbiBkZSBWaW0uCisgIDMuIFBvdXIgZWZmYWNlciB0b3V0ZSB1bmUgbGlnbmUgdGFwZXogOiAgICAgICAgICAgICAgICAgICAgICAgICBkZAogCi0gIDMuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIGxpZ25lIHF1aSBQUslDyERFIGwnZW5kcm9pdCBv+SB2b3VzIHZvdWxlegotICAgICByZW1ldHRyZSBsYSBsaWduZSBlZmZhY+llLgorICA0LiBQb3VyIHLpcOl0ZXIgdW4gZOlwbGFjZW1lbnQgYWpvdXRleiB1biBxdWFudGlmaWNhdGV1ciA6ICAgICAgMncKIAotICA0LiBFbiBtb2RlIE5vcm1hbCwgdGFwZXogIHAgIHBvdXIgcmVtZXR0cmUgbGEgbGlnbmUuCisgIDUuIExlIGZvcm1hdCBkJ3VuZSBjb21tYW5kZSBkZSBjaGFuZ2VtZW50IGVzdCA6CisKKyAgICAgICBvcOlyYXRldXIgICBbbm9tYnJlXSAgIGTpcGxhY2VtZW50CisKKyAgICAgT/kgOgorICAgICAgIG9w6XJhdGV1ciAgIC0gZXN0IGNlIHF1J2lsIGZhdXQgZmFpcmUsIGNvbW1lICBkICBwb3VyIGVmZmFjZXIuCisgICAgICAgW25vbWJyZV0gICAgLSB1biBxdWFudGlmaWNhdGV1ciBvcHRpb25uZWwgcG91ciBy6XDpdGVyIGxlIGTpcGxhY2VtZW50LgorICAgICAgIGTpcGxhY2VtZW50IC0gZOlwbGFjZSBsZSBsb25nIGR1IHRleHRlIOAgb3DpcmVyLCB0ZWwgcXVlICB3ICAobW90KSwKKyAgICAgICAgICAgICAgICAgICAgICQgKGp1c3F1J+AgbGEgZmluIGRlIGxpZ25lKSwgZXRjLgorCisgIDYuIFBvdXIgc2UgZOlwbGFjZXIgYXUgZOlidXQgZGUgbGlnbmUsIHV0aWxpc2V6IHVuIHrpcm8gOiAgMAorCisgIDUuIFBvdXIgYW5udWxlciBkZXMgYWN0aW9ucyBwculj6WRlbnRlcywgdGFwZXogOiAgICAgICAgICAgIHUgKHUgbWludXNjdWxlKQorICAgICBQb3VyIGFubnVsZXIgdG91cyBsZXMgY2hhbmdlbWVudHMgc3VyIHVuZSBsaWduZSB0YXBleiA6ICBVIChVIG1hanVzY3VsZSkKKyAgICAgUG91ciBhbm51bGVyIGwnYW5udWxhdGlvbiB0YXBleiA6ICAgICAgICAgICAgICAgICAgICAgICAgQ1RSTC1SCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExl529uIDMuMSA6IExFIENPTExBR0UKKworCisgICAqKiBUYXBleiAgcCAgcG91ciBwbGFjZXIgYXBy6HMgbGUgY3Vyc2V1ciBjZSBxdWkgdmllbnQgZCfqdHJlIGVmZmFj6S4gKioKKworICAxLiBQbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgcHJlbWnocmUgbGlnbmUgY2ktZGVzc291cyBtYXJxdellIC0tLT4uCisKKyAgMi4gVGFwZXogIGRkICBwb3VyIGVmZmFjZXIgbGEgbGlnbmUgZXQgbGEgcGxhY2VyIGRhbnMgdW4gcmVnaXN0cmUgZGUgVmltLgorCisgIDMuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIGxpZ25lIGMpIGF1IGRlc3N1cyBv+SB2b3VzIHZvdWxleiByZW1ldHRyZSBsYQorICAgICBsaWduZSBlZmZhY+llLgorCisgIDQuIEVuIG1vZGUgTm9ybWFsLCB0YXBleiAgIHAgICBwb3VyIHJlbWV0dHJlIGxhIGxpZ25lIGVuIGRlc3NvdXMgZHUgY3Vyc2V1ci4KIAogICA1LiBS6XDpdGV6IGxlcyDpdGFwZXMgMiDgIDQgcG91ciBtZXR0cmUgdG91dGVzIGxlcyBsaWduZXMgZGFucyBsZSBib24gb3JkcmUuCiAKLSAgICAgZCkgRXQgdm91cywgcXUnYXBwcmVuZXotdm91cyA/Ci0gICAgIGIpIExlcyB2aW9sZXR0ZXMgc29udCBibGV1ZXMsCi0gICAgIGMpIEwnaW50ZWxsaWdlbmNlIHMnYXBwcmVuZCwKLSAgICAgYSkgTGVzIHJvc2VzIHNvbnQgcm91Z2VzLAorLS0tPiBkKSBFdCB2b3VzLCBxdSdhcHByZW5lei12b3VzID8KKy0tLT4gYikgTGVzIHZpb2xldHRlcyBzb250IGJsZXVlcywKKy0tLT4gYykgTCdpbnRlbGxpZ2VuY2UgcydhcHByZW5kLAorLS0tPiBhKSBMZXMgcm9zZXMgc29udCByb3VnZXMsCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgTGXnb24gMy4yIDogTEUgUkVNUExBQ0VNRU5UCisgICAgICAgICAgICAgICAgICAgIExl529uIDMuMiA6IExBIENPTU1BTkRFIERFIFJFTVBMQUNFTUVOVAogCiAKLSAqKiBUYXBleiAgciAgZXQgdW4gY2FyYWN06HJlIHBvdXIgcmVtcGxhY2VyIGxlIGNhcmFjdOhyZSBzb3VzIGxlIGN1cnNldXIuICoqCisgICAgICoqIFRhcGV6ICByeCAgcG91ciByZW1wbGFjZXIgdW4gY2FyYWN06HJlIHNvdXMgbGUgY3Vyc2V1ciBwYXIgIHggLiAqKgogCiAgIDEuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIHByZW1p6HJlIGxpZ25lIG1hcnF16WUgLS0tPiBjaS1kZXNzb3VzLgogCkBAIC0zMDgsMzEgKzQyNiwzMiBAQAogCiAgIDMuIFRhcGV6ICByICBzdWl2aSBkdSBjYXJhY3TocmUgcXVpIGRvaXQgY29ycmlnZXIgbCdlcnJldXIuCiAKLSAgNC4gUulw6XRleiBsZXMg6XRhcGVzIDIgZXQgMyBqdXNxdSfgIGNlIHF1ZSBsYSBwcmVtaehyZSBsaWduZSBzb2l0IGNvcnJlY3RlLgorICA0LiBS6XDpdGV6IGxlcyDpdGFwZXMgMiBldCAzIGp1c3F1J+AgY2UgcXVlIGxhIHByZW1p6HJlIGxpZ25lIHNvaXQg6WdhbGUKKyAgICAg4CBsYSBzZWNvbmRlLgogCiAtLS0+ICBRdWFuZCBjZXR0ZSBsaWduZSBhIOl06SBzYXV2aWUsIHF1ZWxxdSd1biBhIGxhaXQgZGVzIGZhdW5lcyBkZSBmcmFwcGUgIQogLS0tPiAgUXVhbmQgY2V0dGUgbGlnbmUgYSDpdOkgc2Fpc2llLCBxdWVscXUndW4gYSBmYWl0IGRlcyBmYXV0ZXMgZGUgZnJhcHBlICEKIAogICA1LiBNYWludGVuYW50LCBhbGxleiDgIGxhIExl529uIDMuMy4KIAotTk9URTogTidvdWJsaWV6IHBhcyBxdWUgdm91cyBkZXZyaWV6IGFwcHJlbmRyZSBwYXIgbGEgcHJhdGlxdWUsIHBhcyBwYXIKLSAgICAgIG3pbW9yaXNhdGlvbi4KK05PVEUgOiBOJ291YmxpZXogcGFzIHF1ZSB2b3VzIGRldnJpZXogYXBwcmVuZHJlIHBhciBsYSBwcmF0aXF1ZSwgcGFzIHBhcgorICAgICAgIG3pbW9yaXNhdGlvbi4KIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSAgTGXnb24gMy4zIDogTEUgQ0hBTkdFTUVOVAorICAgICAgICAgICAgICAgICAgICAgTGXnb24gMy4zIDogTCdPUMlSQVRFVVIgREUgQ0hBTkdFTUVOVAogCiAKLQkgICAgKiogUG91ciBjaGFuZ2VyIHRvdXQgb3UgcGFydGllIGQndW4gbW90LCB0YXBleiAgY3cgLioqCisgICAgICAgICAgICAqKiBQb3VyIGNoYW5nZXIganVzcXUn4CBsYSBmaW4gZCd1biBtb3QsIHRhcGV6ICBjZSAuKioKIAogICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBwcmVtaehyZSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KIAotICAyLiBQbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGUgdSBkZSBsdWhrby4KKyAgMi4gUGxhY2V6IGxlIGN1cnNldXIgc3VyIGxlICB1ICBkZSBsdWhrby4KIAotICAzLiBUYXBleiAgY3cJZXQgY29ycmlnZXogbGUgbW90IChkYW5zIG5vdHJlIGNhcywgdGFwZXogICdpZ25lJy4pCisgIDMuIFRhcGV6ICBjZSAgZXQgY29ycmlnZXogbGUgbW90IChkYW5zIG5vdHJlIGNhcywgdGFwZXogICdpZ25lJy4pCiAKLSAgNC4gQXBwdXlleiA8yWNoYXA+IGV0IHBsYWNlei12b3VzIHN1ciBsJ2VycmV1ciBzdWl2YW50ZSAobGUgcHJlbWllcgotICAgICBjYXJhY3TocmUgcXVpIGRvaXQg6nRyZSBjaGFuZ+kpLgorICA0LiBBcHB1eWV6IDzJY2hhcD4gZXQgcGxhY2V6LXZvdXMgc3VyIGxlIHByb2NoYWluIGNhcmFjdOhyZSBxdWkgZG9pdAorICAgICDqdHJlIGNoYW5n6SkuCiAKICAgNS4gUulw6XRleiBsZXMg6XRhcGVzIDMgZXQgNCBqdXNxdSfgIGNlIHF1ZSBsYSBwcmVtaehyZSBwaHJhc2Ugc29pdAogICAgICBpZGVudGlxdWUg4CBsYSBzZWNvbmRlLgpAQCAtMzQwLDE3MSArNDU5LDE4OSBAQAogLS0tPiBDZXR0ZSBsdWhrbyBjb250aWVudCBxdWVscXVlcyBteXFhIHF1aSBvbnQgcmljbmUgZCfqdHJlIGNoYW50dWZpcC4KIC0tLT4gQ2V0dGUgbGlnbmUgY29udGllbnQgcXVlbHF1ZXMgbW90cyBxdWkgb250IGJlc29pbiBkJ+p0cmUgY2hhbmfpcy4KIAotTm90ZXogcXVlICBjdyAgZWZmYWNlIGxlIG1vdCBldCB2b3VzIHBsYWNlIGVuc3VpdGUgZW4gbW9kZSBJbnNlcnRpb24uCitOb3RleiBxdWUgIGNlICBlZmZhY2UgbGUgbW90IGV0IHZvdXMgcGxhY2UgZW5zdWl0ZSBlbiBtb2RlIEluc2VydGlvbi4KKwogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgIExl529uIDMuNCA6IFBMVVMgREUgQ0hBTkdFTUVOVFMgQVZFQyBjCisgICAgICAgICAgICAgICAgICAgIExl529uIDMuNCA6IFBMVVMgREUgQ0hBTkdFTUVOVFMgQVZFQyBjCiAKIAotICAgICoqIExlIGNoYW5nZW1lbnQgZm9uY3Rpb25uZSBhdmVjIGxlcyBt6m1lcyBvYmpldHMgcXVlIGwnZWZmYWNlbWVudC4gKioKKyAgICAqKiBMJ29w6XJhdGV1ciBkZSBjaGFuZ2VtZW50IGZvbmN0aW9ubmUgYXZlYyBsZXMgbeptZXMgZOlwbGFjZW1lbnRzCisgICAgICAgcXVlIGwnZWZmYWNlbWVudC4gKioKIAotICAxLiBMZSBjaGFuZ2VtZW50IGZvbmN0aW9ubmUgZGUgbGEgbeptZSBtYW5p6HJlIHF1ZSBsJ2VmZmFjZW1lbnQuCi0gICAgIExlIGZvcm1hdCBlc3Q6CisgIDEuIEwnb3DpcmF0ZXVyIGRlIGNoYW5nZW1lbnQgZm9uY3Rpb25uZSBkZSBsYSBt6m1lIG1hbmnocmUgcXVlCisgICAgIGwnZWZmYWNlbWVudC4gTGUgZm9ybWF0IGVzdCA6CiAKLQkgW25vbWJyZV0gIGMgIG9iamV0CSAgIE9VCSAgICAgYwlbbm9tYnJlXSAgb2JqZXQKKyAgICAgICAgIGMgICBbbm9tYnJlXSAgIGTpcGxhY2VtZW50CiAKLSAgMi4gTGVzIG9iamV0cyBzb250IOlnYWxlbWVudCBsZXMgbeptZXM6ICB3IChtb3QpLCAkIChmaW4gZGUgbGlnbmUpLCBldGMuCisgIDIuIExlcyBk6XBsYWNlbWVudHMgc29udCBpZGVudGlxdWVzIDogIHcgKG1vdCkgZXQgICQgKGZpbiBkZSBsaWduZSkuCiAKLSAgMy4gROlwbGFjZXotdm91cyDgIGxhIHByZW1p6HJlIGxpZ25lIG1hcnF16WUgLS0tPiBjaS1kZXNzb3VzLgorICAzLiBE6XBsYWNlei12b3VzIHN1ciBsYSBwcmVtaehyZSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KIAogICA0LiBQbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgcHJlbWnocmUgZXJyZXVyLgogCi0gIDUuIFRhcGV6ICBjJAlwb3VyIGNoYW5nZXIgbGEgZmluIGRlIGxhIGxpZ25lLCByZW5kZXotbOAgaWRlbnRpcXVlIOAgbGEKLSAgICAgc2Vjb25kZSBsaWduZSwgcHVpcyB0YXBleiA8yWNoYXA+LgorICA1LiBUYXBleiAgYyQgIGV0IHRhcGV6IGxlIHJlc3RlIGRlIGxhIGxpZ25lIGFmaW4gcXUnZWxsZSBzb2l0IGlkZW50aXF1ZQorICAgICDgIGxhIHNlY29uZGUgbGlnbmUsIHB1aXMgdGFwZXogPMljaGFwPi4KIAogLS0tPiBMYSBmaW4gZGUgY2V0dGUgbGlnbmUgZG9pdCDqdHJlIHJlbmR1ZSBpZGVudGlxdWUg4CBsYSBzZWNvbmRlLgotLS0tPiBMYSBmaW4gZGUgY2V0dGUgbGlnbmUgZG9pdCDqdHJlIGNvcnJpZ+llIGF2ZWMgbGEgY29tbWFuZGUJYyQgLgorLS0tPiBMYSBmaW4gZGUgY2V0dGUgbGlnbmUgZG9pdCDqdHJlIGNvcnJpZ+llIGF2ZWMgbGEgY29tbWFuZGUgIGMkIC4KKworTk9URSA6ICBWb3VzIHBvdXZleiB1dGlsaXNleiBsYSB0b3VjaGUgUmV0b3VyIEFycmnocmUgcG91ciBjb3JyaWdlciBsZXMKKyAgICAgICAgZXJyZXVycyBsb3JzcXVlIHZvdXMgdGFwZXouCisKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgICAgIFLJU1VNySBERSBMQSBMRcdPTiAzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFLJU1VNySBERSBMQSBMRcdPTiAzCiAKIAotICAxLiBQb3VyIHJlbWV0dHJlIGR1IHRleHRlIHF1aSB2aWVudCBkJ+p0cmUgZWZmYWPpLCB0YXBleiAgcCAuIENlbGEgUGxhY2UgbGUKKyAgMS4gUG91ciByZW1ldHRyZSBsZSB0ZXh0ZSBxdWkgYSBk6WrgIOl06SBlZmZhY+ksIHRhcGV6ICBwIC4gQ2VsYSBQbGFjZSBsZQogICAgICB0ZXh0ZSBlZmZhY+kgQVBSyFMgbGUgY3Vyc2V1ciAoc2kgdW5lIGxpZ25lIGNvbXBs6HRlIGEg6XTpIGVmZmFj6WUsIGVsbGUKICAgICAgc2VyYSBwbGFj6WUgc291cyBsYSBsaWduZSBkdSBjdXJzZXVyKS4KIAogICAyLiBQb3VyIHJlbXBsYWNlciBsZSBjYXJhY3TocmUgc291cyBsZSBjdXJzZXVyLCB0YXBleiAgciAgc3VpdmkgZHUgY2FyYWN06HJlCiAgICAgIHF1aSByZW1wbGFjZXJhIGwnb3JpZ2luYWwuCiAKLSAgMy4gTGUgY2hhbmdlbWVudCB2b3VzIHBlcm1ldCBkZSBjaGFuZ2VyIGwnb2JqZXQgc3DpY2lmaeksIGR1IGN1cnNldXIganVzcXUn4AotICAgICBsYSBmaW4gZGUgbCdvYmpldC4gUGFyIGV4ZW1wbGUsIHRhcGV6ICBjdwlwb3VyIGNoYW5nZXIgZHUgY3Vyc2V1cgotICAgICBqdXNxdSfgIGxhIGZpbiBkdSBtb3QsICBjJCAgcG91ciBjaGFuZ2VyIGp1c3F1J+AgbGEgZmluIGQndW5lIGxpZ25lLgorICAzLiBMJ29w6XJhdGV1ciBkZSBjaGFuZ2VtZW50IHZvdXMgcGVybWV0IGRlIGNoYW5nZXIgZGVwdWlzIGxhIHBvc2l0aW9uIGR1CisgICAgIGN1cnNldXIganVzcXUnb/kgbGUgZOlwbGFjZW1lbnQgdm91cyBhbehuZS4gUGFyIGV4ZW1wbGUsIHRhcGV6ICBjZQorICAgICBwb3VyIGNoYW5nZXIgZHUgY3Vyc2V1ciBqdXNxdSfgIGxhIGZpbiBkdSBtb3QsICBjJCAgcG91ciBjaGFuZ2VyIGp1c3F1J+AKKyAgICAgbGEgZmluIGQndW5lIGxpZ25lLgogCi0gIDQuIExlIGZvcm1hdCBwb3VyIGxlIGNoYW5nZW1lbnQgZXN0OgorICA0LiBMZSBmb3JtYXQgcG91ciBsZSBjaGFuZ2VtZW50IGVzdCA6CiAKLQkgW25vbWJyZV0gIGMgIG9iamV0CSAgIE9VCSAgICAgYwlbbm9tYnJlXSAgb2JqZXQKKyAgICAgICAgIGMgICBbbm9tYnJlXSAgIGTpcGxhY2VtZW50CiAKIFBhc3NleiBtYWludGVuYW50IOAgbGEgbGXnb24gc3VpdmFudGUuCiAKIAotCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgTGXnb24gNC4xIDogUE9TSVRJT04gRVQgyVRBVCBEVSBGSUNISUVSCisgICAgICAgICAgICAgICBMZedvbiA0LjEgOiBQT1NJVElPTiBEVSBDVVJTRVVSIEVUIMlUQVQgRFUgRklDSElFUgogCiAKLSAgKiogVGFwZXogQ3RybC1HIHBvdXIgYWZmaWNoZXIgdm90cmUgcG9zaXRpb24gZGFucyBsZSBmaWNoaWVyIGV0IHNvbiDpdGF0LgotICAgICBVdGlsaXNleiBNYWotRyBwb3VyIHZvdXMgcmVuZHJlIOAgdW5lIGxpZ25lIGRvbm7pZSBkdSBmaWNoaWVyLiAqKgorICAqKiBUYXBleiBDVFJMLUcgcG91ciBhZmZpY2hlciB2b3RyZSBwb3NpdGlvbiBkYW5zIGxlIGZpY2hpZXIgZXQgc29uIOl0YXQuCisgICAgIFRhcGV6ICBHICBwb3VyIHZvdXMgcmVuZHJlIOAgdW5lIGxpZ25lIGRvbm7pZSBkdSBmaWNoaWVyLiAqKgogCi0gIE5vdGU6IExpc2V6IHRvdXRlIGNldHRlIGxl529uIGF2YW50IGQnZWZmZWN0dWVyIGwndW5lIGRlcyDpdGFwZXMgIQorTk9URSA6IExpc2V6IHRvdXRlIGNldHRlIGxl529uIGF2YW50IGQnZWZmZWN0dWVyIGwndW5lIGRlcyDpdGFwZXMgISEKIAotICAxLiBNYWludGVuZXogZW5mb25j6WUgbGEgdG91Y2hlIEN0cmwgZXQgYXBwdXlleiBzdXIgIEcgLiAgVW5lIGxpZ25lIGQn6XRhdAotICAgICB2YSBhcHBhcmHudHJlIGVuIGJhcyBkZSBsJ+ljcmFuIGF2ZWMgbGUgbm9tIGR1IGZpY2hpZXIgZXQgbGUgbnVt6XJvIGRlIGxhCi0gICAgIGxpZ25lIG/5IHZvdXMg6nRlcy4gIE5vdGV6IGNlIG51belybywgaWwgc2VydmlyYSBsb3JzIGRlIGwn6XRhcGUgMy4KKyAgMS4gTWFpbnRlbmV6IGVuZm9uY+llIGxhIHRvdWNoZSBDVFJMIGV0IGFwcHV5ZXogc3VyICBnIC4gT24gYXBwZWxsZSBjZWxhCisgICAgIENUUkwtRy4gVW5lIGxpZ25lIGQn6XRhdCB2YSBhcHBhcmHudHJlIGVuIGJhcyBkZSBsJ+ljcmFuIGF2ZWMgbGUgbm9tCisgICAgIGR1IGZpY2hpZXIgZXQgbGUgbnVt6XJvIGRlIGxhIGxpZ25lIG/5IHZvdXMg6nRlcy4gTm90ZXogY2UgbnVt6XJvLCBpbAorICAgICBzZXJ2aXJhIGxvcnMgZGUgbCfpdGFwZSAzLgogCi0gIDIuIFRhcGV6ICBHICBtYWp1c2N1bGUgKE1hai1HKSBwb3VyIHZvdXMgcmVuZHJlIOAgbGEgZmluIGR1IGZpY2hpZXIuCitOT1RFIDogVm91cyBwb3V2ZXogcGV1dC3qdHJlIHZvaXIgbGUgY3Vyc2V1ciBlbiBiYXMg4CBkcm9pdGUgZGUgbCfpY3Jhbi4KKyAgICAgICBDZWNpIGFycml2ZSBxdWFuZCBsJ29wdGlvbiAncnVsZXInIGVzdCBhY3RpdullICh2b2lyICA6aGVscCAncnVsZXInKQogCi0gIDMuIFRhcGV6IGxlIG51belybyBkZSBsYSBsaWduZSBv+SB2b3VzIOl0aWV6IHN1aXZpIGRlIE1hai1HLglDZWxhIHZvdXMKLSAgICAgcmFt6G5lcmEg4CBsYSBsaWduZSBv+SB2b3VzIOl0aWV6IGF1IGTpcGFydC4KLSAgICAgKExvcnNxdWUgdm91cyB0YXBleiBsZXMgY2hpZmZyZXMsIGlscyBuJ2FwcGFyYWlzc2VudCBQQVMg4CBsJ+ljcmFuKS4KKyAgMi4gVGFwZXogIEcgICBwb3VyIHZvdXMgZOlwbGFjZXIg4CBsYSBmaW4gZHUgZmljaGllci4KKyAgICAgVGFwZXogIGdnICBwb3VyIHZvdXMgZOlwbGFjZXIgYXUgZOlidXQgZHUgZmljaGllci4KKworICAzLiBUYXBleiBsZSBudW3pcm8gZGUgbGEgbGlnbmUgb/kgdm91cyDpdGlleiBzdWl2aSBkZSAgIEcgLiBDZWxhIHZvdXMKKyAgICAgcmFt6G5lcmEg4CBsYSBsaWduZSBv+SB2b3VzIOl0aWV6IGF1IGTpcGFydCBxdWFuZCB2b3VzIGF2aWV6IGFwcHV56QorICAgICBDVFJMLUcuCiAKICAgNC4gU2kgdm91cyB2b3VzIHNlbnRleiBwcup0IOAgZmFpcmUgY2VjaSwgZWZmZWN0dWV6IGxlcyDpdGFwZXMgMSDgIDMuCiAKIAotCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSAgICBMZedvbiA0LjIgOiBMQSBSRUNIRVJDSEUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZedvbiA0LjIgOiBMQSBSRUNIRVJDSEUKIAogCi0JICAqKiBUYXBleiAgLyAgc3VpdmkgZCd1biB0ZXh0ZSBwb3VyIHJlY2hlcmNoZXIgY2UgdGV4dGUuICoqCisgICAgICAgICAgKiogVGFwZXogIC8gIHN1aXZpIGQndW4gdGV4dGUgcG91ciByZWNoZXJjaGVyIGNlIHRleHRlLiAqKgogCiAgIDEuIFRhcGV6IGxlIGNhcmFjdOhyZSAgLyAgZW4gbW9kZSBOb3JtYWwuIE5vdGV6IHF1ZSBjZWx1aS1jaSBldCBsZSBjdXJzZXVyCiAgICAgIGFwcGFyYWlzc2VudCBlbiBiYXMgZGUgbCfpY3JhbiwgY29tbWUgbG9yc3F1ZSBsJ29uIHV0aWxpc2UgIDogLgogCi0gIDIuIFB1aXMgdGFwZXogJ2VycnJldXVyJyA8RW50cullPi4gIEMnZXN0IGxlIG1vdCBxdWUgdm91cyB2b3VsZXogcmVjaGVyY2hlci4KKyAgMi4gUHVpcyB0YXBleiAnZXJycmV1dXInIDxFbnRy6WU+LiBDJ2VzdCBsZSBtb3QgcXVlIHZvdXMgdm91bGV6IHJlY2hlcmNoZXIuCiAKLSAgMy4gUG91ciByZWNoZXJjaGVyIOAgbm91dmVhdSBsZSBt6m1lIHRleHRlLCB0YXBleiBzaW1wbGVtZW50CW4gLgotICAgICBQb3VyIHJlY2hlcmNoZXIgbGUgbeptZSB0ZXh0ZSBkYW5zIGxhIGRpcmVjdGlvbiBvcHBvc+llLCB0YXBleiAgTWFqLU4gLgorICAzLiBQb3VyIHJlY2hlcmNoZXIg4CBub3V2ZWF1IGxlIG3qbWUgdGV4dGUsIHRhcGV6IHNpbXBsZW1lbnQgIG4gLgorICAgICBQb3VyIHJlY2hlcmNoZXIgbGUgbeptZSB0ZXh0ZSBkYW5zIGxhIGRpcmVjdGlvbiBvcHBvc+llLCB0YXBleiAgTiAuCiAKLSAgNC4gU2kgdm91cyB2b3VsZXogcmVjaGVyY2hlciB1biB0ZXh0ZSB2ZXJzIGxlIGhhdXQgZHUgZmljaGllciwgdXRpbGlzZXogID8KLSAgICAg4CBsYSBwbGFjZSBkZSAgLyAuCisgIDQuIFBvdXIgcmVjaGVyY2hlciB1bmUgcGhyYXNlIGRhbnMgbGEgZGlyZWN0aW9uIG9wcG9z6WUsIHV0aWxpc2V6ICA/CisgICAgIGF1IGxpZXUgZGUgIC8gLgogCi0tLS0+IGVycmV1ciBuZSBzJ+ljcml0IHBhcyAiZXJycmV1dXIiOyBlcnJyZXV1ciBlc3QgdW5lIGVycmV1ci4KKy0tLT4gZXJyZXVyIG5lIHMn6WNyaXQgcGFzICJlcnJyZXV1ciIgOyBlcnJyZXV1ciBlc3QgdW5lIGVycmV1ci4KIAotTm90ZTogUXVhbmQgbGEgcmVjaGVyY2hlIGF0dGVpbnQgbGEgZmluIGR1IGZpY2hpZXIsIGVsbGUgcmVwcmVuZCBhdSBk6WJ1dC4KLQorTk9URSA6IFF1YW5kIGxhIHJlY2hlcmNoZSBhdHRlaW50IGxhIGZpbiBkdSBmaWNoaWVyLCBlbGxlIHJlcHJlbmQgYXUgZOlidXQKKyAgICAgICBzYXVmIHNpIGwnb3B0aW9uICd3cmFwc2NhbicgZXN0IGTpYWN0aXbpZS4KIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkgICAgTGXnb24gNC4zIDogUkVDSEVSQ0hFIERFUyBQQVJFTlRIyFNFUyBDT1JSRVNQT05EQU5URVMKKyAgICAgICAgICAgIExl529uIDQuMyA6IFJFQ0hFUkNIRSBERVMgUEFSRU5USMhTRVMgQ09SUkVTUE9OREFOVEVTCiAKIAotCSAgICoqIFRhcGV6ICAlCXBvdXIgdHJvdXZlciBkZXMgKSwgXSBvdSB9IGNvcnJlc3BvbmRhbnRzLiAqKgorICAgICAgICAgICAqKiBUYXBleiAgJSAgcG91ciB0cm91dmVyIGRlcyApLCBdIG91IH0gY29ycmVzcG9uZGFudHMuICoqCiAKICAgMS4gUGxhY2V6IGxlIGN1cnNldXIgc3VyIGwndW4gZGVzICgsIFsgb3UgeyBkZSBsYSBsaWduZSBtYXJxdellIC0tLT4KICAgICAgY2ktZGVzc291cy4KIAogICAyLiBQdWlzIHRhcGV6IGxlIGNhcmFjdOhyZSAgJSAuCiAKLSAgMy4gTGUgY3Vyc2V1ciBkZXZyYWl0IHNlIHBsYWNlciBzdXIgbGEgcGFyZW50aOhzZSBjb3JyZXNwb25kYW50ZS4KKyAgMy4gTGUgY3Vyc2V1ciBzZSBk6XBsYWNlcmEgc3VyIGxhIHBhcmVudGjoc2Ugb3V0IGNyb2NoZXQgY29ycmVzcG9uZGFudC4KIAotICA0LiBUYXBleiAgJSAgcG91ciByZXBsYWNlciBsZSBjdXJzZXVyIHN1ciBsJ2F1dHJlIHBhcmVudGjoc2UuCisgIDQuIFRhcGV6ICAlICBwb3VyIHJlcGxhY2VyIGxlIGN1cnNldXIgc3VyIGxhIHBhcmVudGjoc2Ugb3UgY3JvY2hldAorICAgICBjb3JyZXNwb25kYW50LgorCisgIDUuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIHVuIGF1dHJlICgsKSxbLF0seyBvdSB9IGV0IHJlZ2FyZGV6IGNlIHF1ZQorICAgICBmYWl0ICAlIC4KIAogLS0tPiBWb2ljaSAoIHVuZSBsaWduZSBkZSB0ZXN0IGNvbnRlbmFudCBkZXMgKCwgZGVzIFsgXSBldCBkZXMgeyB9ICkpLgogCi1Ob3RlOiBDZXR0ZSBmb25jdGlvbm5hbGl06SBlc3QgdHLocyB1dGlsZSBsb3JzIGR1IGTpYm9nYWdlIGQndW4gcHJvZ3JhbW1lIHF1aQotICAgICAgY29udGllbnQgZGVzIHBhcmVudGjoc2VzIGTpc+lxdWlsaWJy6WVzICEKLQotCitOT1RFIDogQ2V0dGUgZm9uY3Rpb25uYWxpdOkgZXN0IHRy6HMgdXRpbGUgbG9ycyBkdSBk6WJvZ2FnZSBkJ3VuIHByb2dyYW1tZSBxdWkKKyAgICAgICBjb250aWVudCBkZXMgcGFyZW50aOhzZXMgZOlz6XF1aWxpYnLpZXMgIQogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCSAgICAgICBMZedvbiA0LjQgOiBVTkUgTUFOSchSRSBERSBDT1JSSUdFUiBMRVMgRVJSRVVSUworICAgICAgICAgICAgICAgICAgICBMZedvbiA0LjQgOiBMQSBDT01NQU5ERSBERSBTVUJTVElUVVRJT04KIAogCi0gICoqIFRhcGV6ICA6cy9hbmNpZW4vbm91dmVhdS9nICBwb3VyIHJlbXBsYWNlciAnYW5jaWVuJyBwYXIgJ25vdXZlYXUnLiAgKioKKyAgICAqKiBUYXBleiAgOnMvYW5jaWVuL25vdXZlYXUvZyAgcG91ciByZW1wbGFjZXIgJ2FuY2llbicgcGFyICdub3V2ZWF1Jy4gKioKIAogICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KIAogICAyLiBUYXBleiAgOnMvbGVlL2xlIDxFbnRy6WU+IC4gTm90ZXogcXVlIGNldHRlIGNvbW1hbmRlIGNoYW5nZSBzZXVsZW1lbnQgbGEKLSAgICAgcHJlbWnocmUgb2NjdXJlbmNlIHN1ciBsYSBsaWduZS4KKyAgICAgcHJlbWnocmUgb2NjdXJyZW5jZSBkZSAibGVlIiBkYW5zIGxhIGxpZ25lLgogCi0gIDMuIFB1aXMgdGFwZXogIDpzL2xlZS9sZS9nICBxdWkgb3Jkb25uZSBkZSBmYWlyZSB1bmUgc3Vic3RpdHV0aW9uIGdsb2JhbGUKLSAgICAgc3VyIGxhIGxpZ25lLiBDZWxhIGNoYW5nZSB0b3V0ZXMgbGVzIG9jY3VyZW5jZXMgc3VyIGxhIGxpZ25lCisgIDMuIFB1aXMgdGFwZXogIDpzL2xlZS9sZS9nIC4gTCdham91dCBkdSBkcmFwZWF1ICBnICBvcmRvbm5lIGRlIGZhaXJlIHVuZQorICAgICBzdWJzdGl0dXRpb24gZ2xvYmFsZSBzdXIgbGEgbGlnbmUsIGV0IGNoYW5nZSB0b3V0ZXMgbGVzIG9jY3VycmVuY2VzIGRlCisgICAgICJsZWUiIHN1ciBsYSBsaWduZS4KIAotLS0tPiBsZWUgbWVpbGxldXIgbW9tZW50IHBvdXIgcmVnYXJkZXIgbGVlcyBmbGV1cnMgZXN0IHBlbmRhbnQgbGVlIFByaW50ZW1wcy4KKy0tLT4gbGVlIG1laWxsZXVyIG1vbWVudCBwb3VyIHJlZ2FyZGVyIGxlZXMgZmxldXJzIGVzdCBwZW5kYW50IGxlZSBwcmludGVtcHMuCiAKLSAgNC4gUG91ciBjaGFuZ2VyIHRvdXRlcyBsZXMgb2NjdXJlbmNlcyBkJ3VuIHRleHRlLCBlbnRyZSBkZXV4IGxpZ25lcywKLSAgICAgdGFwZXogIDojLCNzL2FuY2llbi9ub3V2ZWF1L2cgIG/5ICMsIyBzb250IGxlcyBudW3pcm9zIGRlcyBkZXV4IGxpZ25lcy4KLSAgICAgVGFwZXogIDolcy9hbmNpZW4vbm91dmVhdS9nICAgIHBvdXIgY2hhbmdlciBjaGFxdWUgb2NjdXJlbmNlIGRhbnMgdG91dAotCQkJCSAgICBsZSBmaWNoaWVyLgorICA0LiBQb3VyIGNoYW5nZXIgdG91dGVzIGxlcyBvY2N1cnJlbmNlcyBkJ3VuIHRleHRlLCBlbnRyZSBkZXV4IGxpZ25lcywKKyAgICAgdGFwZXogIDojLCNzL2FuY2llbi9ub3V2ZWF1L2cgIG/5ICMsIyBzb250IGxlcyBudW3pcm9zIGRlIGxpZ25lcyBkZSBsYQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhZ2Ugb/kgbGEgc3Vic3RpdHV0aW9uIGRvaXQg6nRyZSBmYWl0ZS4KKyAgICAgVGFwZXogIDolcy9hbmNpZW4vbm91dmVhdS9nICAgIHBvdXIgY2hhbmdlciB0b3V0ZXMgbGVzIG9jY3VycmVuY2VzIGRhbnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdXQgbGUgZmljaGllci4KKyAgICAgVGFwZXogIDolcy9hbmNpZW4vbm91dmVhdS9nYyAgIHBvdXIgdHJvdXZlciB0b3V0ZXMgbGVzIG9jY3VycmVuY2VzIGRhbnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdXQgbGUgZmljaGllciBhdmVjIHVuZSBpbnZpdGUgcG91cgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlybWVyIG91IGluZmlybWVyIGNoYXF1ZSBzdWJzdGl0dXRpb24uCiAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSAgICAgUslTVU3JIERFIExBIExFx09OIDQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUslTVU3JIERFIExBIExFx09OIDQKIAogCi0gIDEuIEN0cmwtRyAgYWZmaWNoZSB2b3RyZSBwb3NpdGlvbiBkYW5zIGxlIGZpY2hpZXIgZXQgbCfpdGF0IGRlIGNlbHVpLWNpLgotICAgICBNYWotRyAgdm91cyBwbGFjZSDgIGxhIGZpbiBkdSBmaWNoaWVyLiBVbiBudW3pcm8gZGUgbGlnbmUgc3VpdmkgZGUgTWFqLUcKLSAgICAgdm91cyBwbGFjZSDgIGNldHRlIGxpZ25lLgorICAxLiBDVFJMLUcgICAgICAgYWZmaWNoZSBsYSBwb3NpdGlvbiBkYW5zIGxlIGZpY2hpZXIgZXQgbCfpdGF0IGRlIGNlbHVpLWNpLgorICAgICAgICAgICAgICAgRyAgZOlwbGFjZSDgIGxhIGZpbiBkdSBmaWNoaWVyLgorICAgICBub21icmUgICAgRyAgZOlwbGFjZSBhdSBudW3pcm8gZGUgbGlnbmUuCisgICAgICAgICAgICAgIGdnICBk6XBsYWNlIOAgbGEgcHJlbWnocmUgbGlnbmUuCiAKICAgMi4gVGFwZXIgIC8gIHN1aXZpIGQndW4gdGV4dGUgcmVjaGVyY2hlIGNlIHRleHRlIHZlcnMgbCdBVkFOVC4KICAgICAgVGFwZXIgID8gIHN1aXZpIGQndW4gdGV4dGUgcmVjaGVyY2hlIGNlIHRleHRlIHZlcnMgbCdBUlJJyFJFLgotICAgICBBcHLocyB1bmUgcmVjaGVyY2hlIHRhcGV6CW4gIHBvdXIgdHJvdXZlciBsJ29jY3VyZW5jZSBzdWl2YW50ZSBkYW5zIGxhCi0gICAgIG3qbWUgZGlyZWN0aW9uIG91CU1hai1OICBwb3VyIHJlY2hlcmNoZXIgZGFucyBsYSBkaXJlY3Rpb24gb3Bwb3PpZS4KKyAgICAgQXBy6HMgdW5lIHJlY2hlcmNoZSB0YXBleiAgbiAgcG91ciB0cm91dmVyIGwnb2NjdXJyZW5jZSBzdWl2YW50ZSBkYW5zIGxhCisgICAgIG3qbWUgZGlyZWN0aW9uIG91ICBNYWotTiAgcG91ciByZWNoZXJjaGVyIGRhbnMgbGEgZGlyZWN0aW9uIG9wcG9z6WUuCiAKICAgMy4gVGFwZXIgICUgIGxvcnNxdWUgbGUgY3Vyc2V1ciBlc3Qgc3VyICAoLCApLCBbLCBdLCB7IG91IH0gIGTpcGxhY2UKICAgICAgY2VsdWktY2kgc3VyIGxlIGNhcmFjdOhyZSBjb3JyZXNwb25kYW50LgogCi0gIDQuIFBvdXIgcmVtcGxhY2VyIGxlIHByZW1pZXIgYWEgcGFyIGJiIHN1ciB1bmUgbGlnbmUgdGFwZXoJIDpzL2FhL2JiCi0gICAgIFBvdXIgcmVtcGxhY2VyIHRvdXMgbGVzIGFhIHBhciBiYiBzdXIgdW5lIGxpZ25lIHRhcGV6CSA6cy9hYS9iYi9nCi0gICAgIFBvdXIgcmVtcGxhY2VyIGR1IHRleHRlIGVudHJlIGRldXggbnVt6XJvcyBkZSBsaWduZSB0YXBlegkgOiMsI3MvYWEvYmIvZwotICAgICBQb3VyIHJlbXBsYWNlciB0b3V0ZXMgbGVzIG9jY3VyZW5jZXMgZGFucyBsZSBmaWNoaWVyIHRhcGV6ICA6JXMvYWEvYmIvZwotICAgICBQb3VyIGRlbWFuZGVyIHVuZSBjb25maXJtYXRpb24g4CBjaGFxdWUgZm9pcyBham91dGV6ICdjJwkgOiVzL2FhL2JiL2djCisgIDQuIFBvdXIgcmVtcGxhY2VyIGxlIHByZW1pZXIgYWEgcGFyIGJiIHN1ciB1bmUgbGlnbmUgdGFwZXogICAgIDpzL2FhL2JiCisgICAgIFBvdXIgcmVtcGxhY2VyIHRvdXMgbGVzIGFhIHBhciBiYiBzdXIgdW5lIGxpZ25lIHRhcGV6ICAgICAgIDpzL2FhL2JiL2cKKyAgICAgUG91ciByZW1wbGFjZXIgZHUgdGV4dGUgZW50cmUgZGV1eCBudW3pcm9zIGRlIGxpZ25lIHRhcGV6ICAgOiMsI3MvYWEvYmIvZworICAgICBQb3VyIHJlbXBsYWNlciB0b3V0ZXMgbGVzIG9jY3VycmVuY2VzIGRhbnMgbGUgZmljaGllciB0YXBleiA6JXMvYWEvYmIvZworICAgICBQb3VyIGRlbWFuZGVyIHVuZSBjb25maXJtYXRpb24g4CBjaGFxdWUgZm9pcyBham91dGV6ICdjJyAgICA6JXMvYWEvYmIvZ2MKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkgICAgICBMZedvbiA1LjEgOiBDT01NRU5UIEVYyUNVVEVSIFVORSBDT01NQU5ERSBFWFRFUk5FCisgICAgICAgICAgICAgIExl529uIDUuMSA6IENPTU1FTlQgRVjJQ1VURVIgVU5FIENPTU1BTkRFIEVYVEVSTkUKIAogCiAgKiogVGFwZXogIDohICBzdWl2aSBkJ3VuZSBjb21tYW5kZSBleHRlcm5lIHBvdXIgZXjpY3V0ZXIgY2V0dGUgY29tbWFuZGUuICoqCkBAIC01MTYsMjk0ICs2NTMsMzg2IEBACiAgICAgIG4naW1wb3J0ZSBxdWVsbGUgY29tbWFuZGUgdmFsaWRlIHBvdXIgdm90cmUgaW50ZXJwcul0ZXVyIChzaGVsbCkuCiAKICAgMy4gUGFyIGV4ZW1wbGUsIHRhcGV6ICBscyAgYXBy6HMgbGUgICEgIGV0IGFwcHV5ZXogPEVudHLpZT4uIENlY2kgYWZmaWNoZXJhCi0gICAgIGxhIGxpc3RlIGRlcyBmaWNoaWVycyBkdSBkb3NzaWVyIGNvdXJhbnQsIGNvbW1lIHNpIHZvdXMgYXZpZXogdGFw6SBsYQotICAgICBjb21tYW5kZSDgIGwnaW52aXRlIGR1IHNoZWxsLiBVdGlsaXNleiAgOiFkaXIgIHNpCTohbHMgIG5lIG1hcmNoZSBwYXMuCisgICAgIGxhIGxpc3RlIGRlcyBmaWNoaWVycyBkdSBy6XBlcnRvaXJlIGNvdXJhbnQsIGNvbW1lIHNpIHZvdXMgYXZpZXogdGFw6SBsYQorICAgICBjb21tYW5kZSDgIGwnaW52aXRlIGR1IHNoZWxsLiBVdGlsaXNleiAgOiFkaXIgIHNpICA6IWxzICBuZSBtYXJjaGUgcGFzLgogCi1Ob3RlOiAgSWwgZXN0IHBvc3NpYmxlIGQnZXjpY3V0ZXIgbidpbXBvcnRlIHF1ZWxsZSBjb21tYW5kZSBleHRlcm5lIGRlIGNldHRlCi0gICAgICAgbWFuaehyZS4KK05PVEUgOiAgSWwgZXN0IHBvc3NpYmxlIGQnZXjpY3V0ZXIgbidpbXBvcnRlIHF1ZWxsZSBjb21tYW5kZSBleHRlcm5lIGRlIGNldHRlCisgICAgICAgIG1hbmnocmUsIGF2ZWMgb3Ugc2FucyBhcmd1bWVudC4KIAotTm90ZTogIFRvdXRlcyBsZXMgY29tbWFuZGVzICA6ICBkb2l2ZW50IGZpbmlyIHBhciBsYSBmcmFwcGUgZGUgPEVudHLpZT4uCi0KK05PVEUgOiAgVG91dGVzIGxlcyBjb21tYW5kZXMgIDogIGRvaXZlbnQgZmluaXIgcGFyIGxhIGZyYXBwZSBkZSA8RW50cullPi4KKyAgICAgICAgwCBwYXJ0aXIgZGUgbWFpbnRlbmFudCwgbm91cyBuZSBsZSBtZW50aW9ubmVyb25zIHBsdXMuCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JIExl529uIDUuMiA6IFBMVVMgREUgRMlUQUlMUyBTVVIgTCdFTlJFR0lTVFJFTUVOVCBERSBGSUNISUVSUworICAgICAgICAgTGXnb24gNS4yIDogUExVUyBERSBEyVRBSUxTIFNVUiBMJ0VOUkVHSVNUUkVNRU5UIERFIEZJQ0hJRVJTCiAKIAotICoqIFBvdXIgZW5yZWdpc3RyZXIgbGVzIGNoYW5nZW1lbnRzIGZhaXRzIGF1IGZpY2hpZXIsIHRhcGV6ICA6dyBGSUNISUVSIC4gKioKKyAqKiBQb3VyIGVucmVnaXN0cmVyIGxlcyBjaGFuZ2VtZW50cyBmYWl0cyBhdSB0ZXh0ZSwgdGFwZXogIDp3IEZJQ0hJRVIgLiAqKgogCi0gIDEuIFRhcGV6ICA6IWRpciAgb3UgIDohbHMgIHBvdXIgYXZvaXIgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIGR1IGRvc3NpZXIKLSAgICAgY291cmFudC4gVm91cyBzYXZleiBk6WrgIHF1J2lsIGZhdXQgYXBwdXllciA8RW50cullPiBhcHLocyBjZWxhLgorICAxLiBUYXBleiAgOiFkaXIgIG91ICA6IWxzICBwb3VyIGF2b2lyIGxhIGxpc3RlIGRlcyBmaWNoaWVycyBkYW5zIGxlCisgICAgIHLpcGVydG9pcmUgY291cmFudC4gVm91cyBzYXZleiBk6WrgIHF1J2lsIGZhdXQgYXBwdXllciA8RW50cullPiBhcHLocworICAgICBjZWxhLgogCiAgIDIuIENob2lzaXNzZXogdW4gbm9tIGRlIGZpY2hpZXIgcXVpIG4nZXhpc3RlIHBhcyBlbmNvcmUsIHBhciBleGVtcGxlIFRFU1QuCiAKICAgMy4gUHVpcyB0YXBleiAgOncgVEVTVCAgKG/5IFRFU1QgZXN0IGxlIG5vbSBxdWUgdm91cyBhdmV6IGNob2lzaSkuCiAKLSAgNC4gQ2VsYSBzYXV2ZWdhcmRlIHRvdXQgbGUgZmljaGllciAoVHV0b3JpZWwgVmltKSBzb3VzIGxlIG5vbSBURVNULgotICAgICBQb3VyIGxlIHbpcmlmaWVyLCB0YXBleiAgOiFkaXIgIHBvdXIgcmV2aXN1YWxpc2VyIGxlIGNvbnRlbnUgZHUgZG9zc2llci4KKyAgNC4gQ2VsYSBlbnJlZ2lzdHJlIHRvdXQgbGUgZmljaGllciAoVHV0b3JpZWwgVmltKSBzb3VzIGxlIG5vbSBURVNULgorICAgICBQb3VyIGxlIHbpcmlmaWVyLCB0YXBleiAgOiFkaXIgIG91ICA6IWxzICBkZSBub3V2ZWF1IHBvdXIgcmV2aXN1YWxpc2VyCisgICAgIHZvdHJlIHLpcGVydG9pcmUuCiAKLU5vdGV6IHF1ZSBzaSB2b3VzIHF1aXR0ZXogVmltIGV0IHkgcmV0b3VybmV6IGF2ZWMgbGUgZmljaGllciBURVNULCBjZWx1aS1jaQotc2VyYSB1bmUgY29waWUgZXhhY3RlIGR1IGNvdXJzIGF1IG1vbWVudCBv+SB2b3VzIGwnYXZleiBzYXV26S4KK05PVEUgOiBTaSB2b3VzIHF1aXR0ZXogVmltIGV0IGxlIHJlZOltYXJyZXogZGUgbm91dmVhdSBhdmVjIGxlIGZpY2hpZXIgVEVTVCwKKyAgICAgICBjZWx1aS1jaSBzZXJhIHVuZSBjb3BpZSBleGFjdGUgZGUgY2UgY291cnMgYXUgbW9tZW50IG/5IHZvdXMgbCdhdmV6CisgICAgICAgZW5yZWdpc3Ry6S4KIAotICA1LiBNYWludGVuYW50LCBlZmZhY2V6IGxlIGZpY2hpZXIgZW4gdGFwYW50IChNUy1ET1MpOiAgICA6IWRlbCBURVNUCi0JCQkJCSAgIG91IChVbml4KToJICAgOiFybSBURVNUCisgIDUuIE1haW50ZW5hbnQsIGVmZmFjZXogbGUgZmljaGllciBlbiB0YXBhbnQgKE1TLURPUykgOiAgIDohZGVsIFRFU1QKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdSAoVW5peCkgOiAgICAgOiFybSBURVNUCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCSAgICBMZedvbiA1LjMgOiBVTiBFTlJFR0lTVFJFTUVOVCBTyUxFQ1RJRgorICAgICAgICAgICAgICAgICAgTGXnb24gNS4zIDogU8lMRUNUSU9OIERVIFRFWFRFIMAgRU5SRUdJU1RSRVIKIAogCi0gICAgICoqIFBvdXIgZW5yZWdpc3RyZXIgdW5lIHBvcnRpb24gZGUgZmljaGllciwgdGFwZXoJOiMsI3cgRklDSElFUiAqKgorICAgICAgICAgICAgICAgICAgKiogUG91ciBlbnJlZ2lzdHJlciB1bmUgcG9ydGlvbiBkdSBmaWNoaWVyLAorICAgICAgICAgICAgICAgICAgICAgIHRhcGV6IDogICB2ICBk6XBsYWNlbWVudCAgOncgRklDSElFUiAgKioKIAotICAxLiBUYXBleiDgIG5vdXZlYXUgIDohZGlyICBvdSAgOiFscyAgcG91ciB2aXN1YWxpc2VyIGxlIGNvbnRlbnUgZHUgZG9zc2llcgotICAgICBjb3VyYW50IGV0IGNob2lzaXNzZXogdW4gbm9tIGRlIGZpY2hpZXIsIHRlbCBxdWUgVEVTVC4KKyAgMS4gROlwbGFjZXogbGUgY3Vyc2V1ciBzdXIgY2V0dGUgbGlnbmUuCiAKLSAgMi4gROlwbGFjZXogbGUgY3Vyc2V1ciBqdXNxdSdlbiBoYXV0IGRlIGNldHRlIHBhZ2UgZXQgdGFwZXogIEN0cmwtRyAgcG91cgotICAgICBjb25uYe50cmUgbGUgbnVt6XJvIGRlIGNldHRlIGxpZ25lLiBOT1RFWiBDRSBOVU3JUk8gIQorICAyLiBBcHB1eWV6ICB2ICBldCBk6XBsYWNleiBsZSBjdXJzZXVyIHZlcnMgbGEgY2lucXVp6G1lIGxpZ25lIHBsdXMgYmFzLgorICAgICBSZW1hcnF1ZXogcXVlIGxlIHRleHRlIGVzdCBlbiBzdXJicmlsbGFuY2UuCiAKLSAgMy4gUHVpcyByZW5kZXotdm91cyBhdSBiYXMgZGUgY2V0dGUgcGFnZSBldCB0YXBleiDgIG5vdXZlYXUgIEN0cmwtRyAuCi0gICAgIE5PVEVaIMlHQUxFTUVOVCBDRSBOVU3JUk8gIQorICAzLiBBcHB1eWV6ICA6ICAuIEVuIGJhcyBkZSBsJ+ljcmFuICA6JzwsJz4gdmEgYXBwYXJh7nRyZS4KIAotICA0LiBQb3VyIGVucmVnaXN0cmVyIFNFVUxFTUVOVCB1bmUgcG9ydGlvbiBkJ3VuIGZpY2hpZXIsIHRhcGV6ICA6IywjdyBURVNUCi0gICAgIG/5ICMsIyBzb250IGxlcyBkZXV4IG51belyb3MgcXVlIHZvdXMgYXZleiBub3TpcyAoaGF1dCxiYXMpIGV0IFRFU1QgZXN0Ci0gICAgIGxlIG5vbSBkdSBmaWNoaWVyLgorICA0LiBUYXBleiAgIHcgVEVTVCAgLCBv+SBURVNUIGVzdCB1biBub20gZGUgZmljaGllciBxdWkgbidleGlzdGUgcGFzLgorICAgICBW6XJpZmlleiBxdWUgdm91cyB2b3lleiAgOic8LCc+dyBURVNUICBhdmFudCBkZSBkJ2FwcHV5ZXIgc3VyIEVudHLpZS4KIAotICA1LiBVbmUgZm9pcyBlbmNvcmUsIHbpcmlmaWV6IGxhIHBy6XNlbmNlIGR1IGZpY2hpZXIgYXZlYyAgOiFkaXIgIG1haXMgTkUKLSAgICAgTCdFRkZBQ0VaIFBBUy4KKyAgNS4gVmltIHZhIGVucmVnaXN0cmVyIGxlcyBsaWduZXMgc+lsZWN0aW9ubullcyBkYW5zIGxlIGZpY2hpZXIgVEVTVC4KKyAgICAgVXRpbGlzZXogIDohZGlyICBvdSAgIWxzIHBvdXIgbGUgdm9pci4gTmUgbCdlZmZhY2V6IHBhcyBlbmNvcmUgIQorICAgICBOb3VzIGFsbG9ucyBsJ3V0aWxpc2VyIGRhbnMgbGEgbGXnb24gc3VpdmFudGUuCisKK05PVEUgOiBMJ2FwcHVpIGRlICB2ICBk6W1hcnJlIGxhIHPpbGVjdGlvbiBWaXN1ZWxsZS4gVm91cyBwb3V2ZXogZOlwbGFjZXIgbGUKKyAgICAgICBjdXJzZXVyIHBvdXIgYWdyYW5kaXIgb3Ugcul0culjaXIgbGEgc+lsZWN0aW9uLiBQdWlzIHZvdXMgcG91dmV6CisgICAgICAgdXRpbGlzZXIgdW4gb3DpcmF0ZXVyIHBvdXIgZmFpcmUgcXVlbHF1ZSBjaG9zZSBzdXIgbGUgdGV4dGUuIFBhcgorICAgICAgIGV4ZW1wbGUsICBkICBlZmZhY2UgbGUgdGV4dGUuCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCSBMZedvbiA1LjQgOiBSyUNVUMlSQVRJT04gRVQgRlVTSU9OIERFIEZJQ0hJRVJTCisgICAgICAgICAgICAgICAgIExl529uIDUuNCA6IFLJQ1VQyVJBVElPTiBFVCBGVVNJT04gREUgRklDSElFUlMKIAogCi0JKiogUG91ciBpbnPpcmVyIGxlIGNvbnRlbnUgZCd1biBmaWNoaWVyLCB0YXBlegk6ciBGSUNISUVSICoqCisgICAgICAgICoqIFBvdXIgaW5z6XJlciBsZSBjb250ZW51IGQndW4gZmljaGllciwgdGFwZXogIDpyIEZJQ0hJRVIgKioKIAotICAxLiBUYXBleiAgOiFkaXIgIHBvdXIgdulyaWZpZXIgcXVlIHZvdHJlIGZpY2hpZXIgVEVTVCBlc3QgZW5jb3JlIGzgLgorICAxLiBQbGFjZXogbGUgY3Vyc2V1ciBqdXN0ZSBhdSBkZXNzdXMgZGUgY2V0dGUgbGlnbmUuCiAKLSAgMi4gUGxhY2V6IGxlIGN1cnNldXIgZW4gaGF1dCBkZSBjZXR0ZSBwYWdlLgorTk9URSA6ICBBcHLocyBhdm9pciBleOljdXTpIGwn6XRhcGUgMiB2b3VzIHZlcnJleiBkdSB0ZXh0ZSBkZSBsYSBMZedvbiA1LjMuCisgICAgICAgIFB1aXMgZOlwbGFjZXogdm91cyB2ZXJzIGxlIGJhcyBwb3VyIHZvaXIgY2V0dGUgbGXnb24g4CBub3V2ZWF1LgogCi1OT1RFOiAgQXBy6HMgYXZvaXIgc3VpdmkgbCfpdGFwZSAzIHZvdXMgdmVycmV6IOAgbCfpY3JhbiBsYSBMZedvbiA1LjMuCi0gICAgICAgROlwbGFjZXotdm91cyB2ZXJzIGxlIGJhcyBqdXNxdSfgIHJldmVuaXIg4CBjZXR0ZSBsZedvbi4KLQotICAzLiBNYWludGVuYW50IHLpY3Vw6XJleiB2b3RyZSBmaWNoaWVyIFRFU1QgZW4gdXRpbGlzYW50IGxhIGNvbW1hbmRlICA6ciBURVNUCisgIDIuIE1haW50ZW5hbnQgculjdXDpcmV6IHZvdHJlIGZpY2hpZXIgVEVTVCBlbiB1dGlsaXNhbnQgbGEgY29tbWFuZGUgIDpyIFRFU1QKICAgICAgb/kgVEVTVCBlc3QgbGUgbm9tIGRlIHZvdHJlIGZpY2hpZXIuCi0KLU5PVEU6ICBMZSBmaWNoaWVyIHF1ZSB2b3VzIHLpY3Vw6XJleiBlc3QgcGxhY+kgbOAgb/kgc2UgdHJvdXZlIGxlIGN1cnNldXIuCisgICAgIExlIGZpY2hpZXIgcXVlIHZvdXMgculjdXDpcmV6IGVzdCBwbGFj6SBhdSBkZXNzb3VzIGRlIGxhIGxpZ25lIGR1IGN1cnNldXIuCiAKICAgNC4gUG91ciB26XJpZmllciBxdWUgbGUgZmljaGllciBhIGJpZW4g6XTpIGluc+ly6SwgcmVtb250ZXogZXQgdulyaWZpZXoKICAgICAgcXUnaWwgeSBhIG1haW50ZW5hbnQgZGV1eCBjb3BpZXMgZGUgbGEgTGXnb24gNS4zLCBsJ29yaWdpbmFsZSBldCBjZWxsZQogICAgICBjb250ZW51ZSBkYW5zIGxlIGZpY2hpZXIuCiAKLQotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgICAgIFLJU1VNySBERSBMQSBMRcdPTiA1Ci0KLQotICAxLiAgOiFjb21tYW5kZSAgZXjpY3V0ZSB1bmUgY29tbWFuZGUgZXh0ZXJuZS4KLQotICAgICAgUXVlbHF1ZXMgZXhlbXBsZXMgcHJhdGlxdWVzOgotCShNUy1ET1MpCShVbml4KQotCSA6IWRpcgkJIDohbHMJCSBhZmZpY2hlIGxlIGNvbnRlbnUgZHUgZG9zc2llciBjb3VyYW50LgotCSA6IWRlbCBGSUNISUVSICAgOiFybSBGSUNISUVSICAgIGVmZmFjZSBGSUNISUVSLgotCi0gIDIuICA6dyBGSUNISUVSICBlbnJlZ2lzdHJlIGxlIGZpY2hpZXIgVmltIGNvdXJhbnQgc3VyIGxlIGRpc3F1ZSBhdmVjIHBvdXIKLQkJICBub20gRklDSElFUi4KLQotICAzLiAgOiMsI3cgRklDSElFUiAgZW5yZWdpc3RyZSBsZXMgbGlnbmVzICMg4CAjIGRhbnMgbGUgZmljaGllciBGSUNISUVSLgotCi0gIDQuICA6ciBGSUNISUVSICBy6WN1cOhyZSBsZSBmaWNoaWVyIEZJQ0hJRVIgZXQgbCdpbnPocmUgZGFucyBsZSBmaWNoaWVyCi0JCSAgY291cmFudCDgIHBhcnRpciBkZSBsYSBwb3NpdGlvbiBkdSBjdXJzZXVyLgotCi0KLQorTk9URSA6ICBWb3VzIHBvdXZleiBhdXNzaSBsaXJlIGxhIHNvcnRpZSBkJ3VuZSBjb21tYW5kZSBleHRlcm5lLiBQYXIgZXhlbXBsZSwKKyAgICAgICAgOnIgIWxzICBsaXQgbGEgc29ydGllIGRlIGxhIGNvbW1hbmRlIGxzIGV0IGxhIHBsYWNlIHNvdXMgbGEgbGlnbmUgZHUKKyAgICAgICAgY3Vyc2V1ci4KIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSAgICBMZedvbiA2LjEgOiBMJ09VVkVSVFVSRQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSyVNVTckgREUgTEEgTEXHT04gNQorCisKKyAgMS4gOiFjb21tYW5kZSAgZXjpY3V0ZSB1bmUgY29tbWFuZGUgZXh0ZXJuZS4KKworICAgICBRdWVscXVlcyBleGVtcGxlcyBwcmF0aXF1ZXMgOgorICAgICAgKE1TLURPUykgICAgICAgIChVbml4KQorICAgICAgIDohZGlyICAgICAgICAgICA6IWxzICAgICAgICAgIGFmZmljaGUgbGUgY29udGVudSBkdSBy6XBlcnRvaXJlIGNvdXJhbnQuCisgICAgICAgOiFkZWwgRklDSElFUiAgIDohcm0gRklDSElFUiAgZWZmYWNlIEZJQ0hJRVIuCisKKyAgMi4gOncgRklDSElFUiAgZW5yZWdpc3RyZSBsZSBmaWNoaWVyIFZpbSBjb3VyYW50IHN1ciBsZSBkaXNxdWUgYXZlYyBwb3VyCisgICAgICAgICAgICAgICAgICBub20gRklDSElFUi4KKworICAzLiB2ICBk6XBsYWNlbWVudCAgOncgRklDSElFUiBzYXV2ZWdhcmRlIGxlcyBsaWduZXMgZGUgbGEgc+lsZWN0aW9uIFZpc3VlbGxlCisgICAgIGRhbnMgbGUgZmljaGllciBGSUNISUVSLgorCisgIDQuIDpyIEZJQ0hJRVIgIHLpY3Vw6HJlIGxlIGNvbnRlbnUgZHUgZmljaGllciBGSUNISUVSIGV0IGwnaW5z6HJlIHNvdXMgbGEKKyAgICAgcG9zaXRpb24gZHUgY3Vyc2V1ci4KKworICA1LiA6ciAhZGlyICBsaXQgbGEgc29ydGllIGRlIGxhIGNvbW1hbmRlIGRpciBldCBsJ2luc+hyZSBzb3VzIGxhIHBvc2l0aW9uCisgICAgIGR1IGN1cnNldXIuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgTGXnb24gNi4xIDogTEEgQ09NTUFOREUgRCdPVVZFUlRVUkUKIAogCiAqKiBUYXBleiAgbyAgcG91ciBvdXZyaXIgdW5lIGxpZ25lIHNvdXMgbGUgY3Vyc2V1ciBldCB5IGFsbGVyIGVuIEluc2VydGlvbi4gKioKIAogICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KIAotICAyLiBUYXBleiAgbyAgKG1pbnVzY3VsZSkgcG91ciBvdXZyaXIgdW5lIGxpZ25lIFNPVVMgbGUgY3Vyc2V1ciBldCB2b3VzIHkKLSAgICAgcGxhY2VyIGVuIG1vZGUgSW5zZXJ0aW9uLgorICAyLiBUYXBleiBsYSBsZXR0cmUgICBvICAgbWludXNjdWxlIHBvdXIgb3V2cmlyIHVuZSBsaWduZSBTT1VTIGxlIGN1cnNldXIgZXQKKyAgICAgdm91cyB5IHBsYWNlciBlbiBtb2RlIEluc2VydGlvbi4KIAotICAzLiBQdWlzIHJlY29waWV6IGxhIGxpZ25lIG1hcnF16WUgLS0tPiBldCBhcHB1eWV6IHN1ciA8yWNoYXA+IHBvdXIgcXVpdHRlcgotICAgICBsZSBtb2RlIEluc2VydGlvbi4KKyAgMy4gUHVpcyB0YXBleiBkdSB0ZXh0ZSBldCBhcHB1eWV6IDzJY2hhcD4gcG91ciBzb3J0aXIgZHUgbW9kZSBJbnNlcnRpb24uCiAKLS0tLT4gRW4gdGFwYW50CW8gIGxlIGN1cnNldXIgc2UgbWV0IHN1ciBsYSBsaWduZSBvdXZlcnRlLCBlbiBtb2RlIEluc2VydGlvbi4KKy0tLT4gRW4gdGFwYW50ICBvICBsZSBjdXJzZXVyIHNlIG1ldCBzdXIgbGEgbGlnbmUgb3V2ZXJ0ZSwgZW4gbW9kZSBJbnNlcnRpb24uCiAKICAgNC4gUG91ciBvdXZyaXIgdW5lIGxpZ25lIGF1IERFU1NVUyBkdSBjdXJzZXVyLCB0YXBleiBzaW1wbGVtZW50IHVuICBPCiAgICAgIG1hanVzY3VsZSwgcGx1dPR0IHF1J3VuICBvICBtaW51c2N1bGUuIEZhaXRlcyB1biBlc3NhaSBzdXIgbGEgbGlnbmUKICAgICAgY2ktZGVzc291cy4KLU91dnJleiB1bmUgbGlnbmUgY2ktZGVzc3VzIGVuIHRhcGFudCBNQUotTyBsb3JzcXVlIGxlIGN1cnNldXIgZXN0IGljaS4KIAotCi0KLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkJICAgICAgTGXnb24gNi4yIDogTCdBSk9VVAotCi0KLQkgICAgKiogVGFwZXogIGEgIHBvdXIgaW5z6XJlciBkdSB0ZXh0ZSBBUFLIUyBsZSBjdXJzZXVyLiAqKgotCi0gIDEuIFBsYWNleiBsZSBjdXJzZXVyIOAgbGEgZmluIGRlIGxhIHByZW1p6HJlIGxpZ25lIG1hcnF16WUgLS0tPiBjaS1kZXNzb3VzCi0gICAgIGVuIHRhcGFudAkkICBlbiBtb2RlIE5vcm1hbC4KLQotICAyLiBUYXBleiB1biAgYSAgKG1pbnVzY3VsZSkgcG91ciBham91dGVyIGR1IHRleHRlIEFQUshTIGxlIGNhcmFjdOhyZSBzaXR16QotICAgICBzb3VzIGxlIGN1cnNldXIuICggQSAgbWFqdXNjdWxlIGFqb3V0ZSBkdSB0ZXh0ZSDgIGxhIGZpbiBkZSBsYSBsaWduZSkuCi0KLU5vdGU6IENlY2kg6XZpdGUgZGUgdGFwZXIgIGkgLCBsZSBkZXJuaWVyIGNhcmFjdOhyZSwgbGUgdGV4dGUg4CBpbnPpcmVyLAotICAgICAgPMljaGFwPiwgY3Vyc2V1ci3gLWRyb2l0ZSwgZXQgZmluYWxlbWVudAl4ICwganVzdGUgcG91ciBham91dGVyIGR1Ci0gICAgICB0ZXh0ZSDgIGxhIGZpbiBkJ3VuZSBsaWduZSAhCi0KLSAgMy4gTWFpbnRlbmFudCwgY29tcGzpdGV6IGxhIHByZW1p6HJlIGxpZ25lLiBOb3RleiDpZ2FsZW1lbnQgcXVlIGwnYWpvdXQgZXN0Ci0gICAgIGlkZW50aXF1ZSBhdSBtb2RlIEluc2VydGlvbiwgaG9ybWlzIGxhIHBvc2l0aW9uIG/5IGxlIHRleHRlIGVzdCBpbnPpcukuCi0KLS0tLT4gQ2V0dGUgbGlnbmUgdm91cyBwZXJtZXQgZGUgcHJhdGlxdWVyCi0tLS0+IENldHRlIGxpZ25lIHZvdXMgcGVybWV0IGRlIHByYXRpcXVlciBsJ2Fqb3V0IGRlIHRleHRlIGVuIGZpbiBkZSBsaWduZS4KKy0tLT4gT3V2cmV6IHVuZSBsaWduZSBjaS1kZXNzdXMgZW4gdGFwYW50IE8gbG9yc3F1ZSBsZSBjdXJzZXVyIGVzdCBpY2kuCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCUxl529uIDYuMyA6IFVORSBBVVRSRSBWRVJTSU9OIERVIFJFTVBMQUNFTUVOVAorICAgICAgICAgICAgICAgICAgICAgICAgTGXnb24gNi4yIDogTEEgQ09NTUFOREUgRCdBSk9VVAorCisKKyAgICAgICAgICAgICoqIFRhcGV6ICBhICBwb3VyIGluc+lyZXIgZHUgdGV4dGUgQVBSyFMgbGUgY3Vyc2V1ci4gKioKKworICAxLiBQbGFjZXogbGUgY3Vyc2V1ciBhdSBk6WJ1dCBkZSBsYSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KKworICAyLiBBcHB1eWV6ICBlICBqdXNxdSfgIGNlIHF1ZSBsZSBjdXJzZXVyIHNvaXQgc3VyIGxhIGZpbiBkZSAgbGkgLgorCisgIDMuIEFwcHV5ZXogIGEgIChtaW51c2N1bGUpIHBvdXIgYWpvdXRlciBkdSB0ZXh0ZSBBUFLIUyBsZSBjdXJzZXVyLgorCisgIDQuIENvbXBs6XRleiBsZSBtb3QgY29tbWUgZGFucyBsYSBsaWduZSBkZXNzb3VzLiBBcHB1eWV6IDzJY2hhcD4gcG91cgorICAgICBzb3J0aXIgZHUgbW9kZSBJbnNlcnRpb24uCisKKyAgNS4gVXRpbGlzZXogIGUgIHBvdXIgdm91cyBk6XBsYWNlciB2ZXJzIGxlIG1vdCBpbmNvbXBsZXQgc3VpdmFudCBldAorICAgICBy6XDpdGV6IGxlcyDpdGFwZXMgMyBldCA0LgorCistLS0+IENldHRlIGxpIHZvdXMgcGVybSBkZSBwcmF0aXEgbCdham91dCBkZSB0IGRhbnMgdW5lIGxpZ25lLgorLS0tPiBDZXR0ZSBsaWduZSB2b3VzIHBlcm1ldCBkZSBwcmF0aXF1ZXIgbCdham91dCBkZSB0ZXh0ZSBkYW5zIHVuZSBsaWduZS4KKworTk9URSA6ICBhLCBpLCBBIHZvbnQgdG91cyBkYW5zIGxlIG3qbWUgbW9kZSBJbnNlcnRpb24sIGxhIHNldWxlIGRpZmbpcmVuY2UKKyAgICAgICAgZXN0IGwnZW5kcm9pdCBv+SBsZXMgY2FyYWN06HJlcyBzb250IGluc+ly6XMuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgTGXnb24gNi4zIDogVU5FIEFVVFJFIE1BTknIUkUgREUgUkVNUExBQ0VSCiAKIAogICAgICAgICoqIFRhcGV6IHVuICBSICBtYWp1c2N1bGUgcG91ciByZW1wbGFjZXIgcGx1cyBkJ3VuIGNhcmFjdOhyZS4gKioKIAogICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBwcmVtaehyZSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KKyAgICAgROlwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGUgZOlidXQgZHUgcHJlbWllciB4eHggLgogCi0gIDIuIFBsYWNleiBsZSBjdXJzZXVyIGF1IGTpYnV0IGR1IHByZW1pZXIgbW90IHF1aSBkaWZm6HJlIGRlIGxhIHNlY29uZGUgbGlnbmUKLSAgICAgbWFycXXpZSAtLS0+IChsZSBtb3QgJ2NlbGxlJykuCisgIDIuIEFwcHV5ZXogbWFpbnRlbmFudCAgUiAgZXQgdGFwZXogbGUgbm9tYnJlIGRlc3NvdXMgZGFucyBsYSBkZXV4aehtZSBsaWduZSwKKyAgICAgZGUgbWFuaehyZSDgIHJlbXBsYWNlciBsZSB4eHggLgogCi0gIDMuIFB1aXMgdGFwZXogIFIgIGV0IHJlbXBsYWNleiBsZSByZXN0ZSBkdSB0ZXh0ZSBkZSBsYSBwcmVtaehyZSBsaWduZSBlbgotICAgICB0YXBhbnQgcGFyIGRlc3N1cyBjZWx1aS1jaSwgZGUgbWFuaehyZSDgIHJlbmRyZSBsYSBwcmVtaehyZSBsaWduZQotICAgICBpZGVudGlxdWUg4CBsYSBzZWNvbmRlLgorICAzLiBBcHB1eWV6IDzJY2hhcD4gcG91ciBxdWl0dGVyIGxlIG1vZGUgUmVtcGxhY2VtZW50LiBOb3RleiBxdWUgbGUgcmVzdGUgZGUKKyAgICAgbGEgbGlnbmUgZGVtZXVyZSBpbmNoYW5n6S4KIAotLS0tPiBQb3VyIHJlbmRyZSBjZXR0ZSBsaWduZSBpZGVudGlxdWUg4CBjZWxsZSBkdSBkZXNzb3VzIHV0aWxpc2V6IGxlIGNsYXZpZXIuCi0tLS0+IFBvdXIgcmVuZHJlIGNldHRlIGxpZ25lIGlkZW50aXF1ZSDgIGxhIHNlY29uZGUsIHRhcGV6IFIgZXQgbGEgY29ycmVjdGlvbi4KKyAgNC4gUulw6XRleiBsZXMg6XRhcGVzIHBvdXIgcmVtcGxhY2VyIGxlcyB4eHggcmVzdGFudHMuCiAKLSAgNC4gTm90ZXogcXVlIGxvcnNxdWUgdm91cyBhcHB1eWV6IDzJY2hhcD4sIGxlIHRleHRlIHF1aSBuJ2EgcGFzIGVuY29yZSDpdOkKLSAgICAgcmVtcGxhY+kgcmVzdGUuCiAKKy0tLT4gTCdham91dCBkZSAxMjMg4CB4eHggZG9ubmUgeHh4LgorLS0tPiBMJ2Fqb3V0IGRlIDEyMyDgIDQ1NiBkb25uZSA1NzkuCisKK05PVEUgOiBMZSBtb2RlIFJlbXBsYWNlbWVudCBlc3QgY29tbWUgbGUgbW9kZSBJbnNlcnRpb24sIG1haXMgdG91cyBsZXMKKyAgICAgICBjYXJhY3TocmVzIHRhcOlzIGVmZmFjZW50IHVuIGNhcmFjdOhyZSBleGlzdGFudC4KIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgICAgIExl529uIDYuNCA6IFLJR0xBR0UgREVTIE9QVElPTlMKKyAgICAgICAgICAgICAgICAgICAgIExl529uIDYuNCA6IENPUElFUiBFVCBDT0xMRVIgRFUgVEVYVEUKIAogCi0gICoqIFLpZ2xvbnMgdW5lIG9wdGlvbiBhZmluIHF1ZSBsYSByZWNoZXJjaGUgZXQgbGEgc3Vic3RpdHV0aW9uIGlnbm9yZW50IGxhCi0gICAgIGNhc3NlIGRlcyBjYXJhY3TocmVzLiAqKgorICAgKiogVXRpbGlzZXogbCdvcOlyYXRldXIgIHkgIHBvdXIgY29waWVyIGR1IHRleHRlIGV0ICBwICBwb3VyIGxlIGNvbGxlciAqKgogCi0gIDEuIFJlY2hlcmNoZXogJ2lnbm9yZScgZW4gdGFwYW50ICAvaWdub3JlIC4KKyAgMS4gQWxsZXog4CBsYSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cyBldCBwbGFjZXogbGUgY3Vyc2V1ciBhcHLocyAiYSkiLgorCisgIDIuIETpbWFycmV6IGxlIG1vZGUgVmlzdWVsIGF2ZWMgIHYgIGV0IGTpcGxhY2V6IGxlIGN1cnNldXIganVzdGUgZGV2YW50CisgICAgICJwcmVtaWVyIi4KKworICAzLiBUYXBleiAgeSAgcG91ciBjb3BpZXIgbGUgdGV4dGUgZW4gc3VyYnJpbGxhbmNlLgorCisgIDQuIETpcGxhY2V6IGxhIGN1cnNldXIg4CBsYSBmaW4gZGUgbGEgbGlnbmUgc3VpdmFudGUgOiAgIGokCisKKyAgNS4gVGFwZXogIHAgIHBvdXIgY29sbGVyIGxlIHRleHRlLiBQdWlzIHRhcGV6IDogIHVuIHNlY29uZCA8yWNoYXA+IC4KKworICA2LiBVdGlsaXNleiBsZSBtb2RlIFZpc3VlbCBwb3VyIHPpbGVjdGlvbm5lciAi6WzpbWVudCIsIGNvcGlleiBsZSBhdmVjICB5ICAsCisgICAgIGTpcGxhY2V6IHZvdXMg4CBsYSBmaW4gZGUgbGEgbGlnbmUgc3VpdmFudCBhdmVjICBqJCAgZXQgY29sbGV6IGxlIHRleHRlCisgICAgIOAgY2V0IGVuZHJvaXQgYXZlYyAgcCAuCisKKy0tLT4gIGEpIGNlY2kgZXN0IGxlIHByZW1pZXIg6WzpbWVudC4KKyAgICAgIGIpCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICBMZedvbiA2LjQgOiBSyUdMQUdFIERFUyBPUFRJT05TCisKKworICAgICoqIFLpZ2xvbnMgdW5lIG9wdGlvbiBhZmluIHF1ZSBsYSByZWNoZXJjaGUgZXQgbGEgc3Vic3RpdHV0aW9uIGlnbm9yZSBsYQorICAgICAgIGNhc3NlIGRlcyBjYXJhY3TocmVzLiAqKgorCisgIDEuIFJlY2hlcmNoZXogJ2lnbm9yZScgZW4gdGFwYW50IDogICAvaWdub3JlIDxFbnRy6WU+CiAgICAgIFLpcOl0ZXogY2VjaSBwbHVzaWV1cnMgZm9pcyBlbiB1dGlsaXNhbnQgbGEgdG91Y2hlICBuIC4KIAotICAyLiBBY3RpdmV6IGwnb3B0aW9uICdpYycgKElnbm9yZXIgY2Fzc2UpIGVuIHRhcGFudCAgOnNldCBpYyAuCisgIDIuIEFjdGl2ZXogbCdvcHRpb24gJ2ljJyAoaWdub3JlciBjYXNzZSkgZW4gdGFwYW50ICA6c2V0IGljIC4KIAotICAzLiBQdWlzIHBvdXJzdWl2ZXogdm90cmUgcmVjaGVyY2hlIGVuIHV0aWxpc2FudCAgbiAuCi0gICAgIFLpcOl0ZXogY2V0dGUgcmVjaGVyY2hlIHBsdXNpZXVycyBmb2lzIGF2ZWMgbGEgdG91Y2hlICBuIC4KKyAgMy4gUHVpcyBjaGVyY2hleiAnaWdub3JlJyBkZSBub3V2ZWF1IGVuIHV0aWxpc2FudCAgbiAuCisgICAgIFJlbWFycXVleiBxdWUgSWdub3JlIGV0IElHTk9SRSBzb250IG1haW50ZW5hbnQgYXVzc2kgdHJvdXbpcy4KIAogICA0LiBBY3RpdmV6IGxlcyBvcHRpb25zICdobHNlYXJjaCcgZXQgJ2luY3NlYXJjaCcgYXZlYyAgOnNldCBobHMgaXMgLgogCiAgIDUuIFB1aXMgcmVjb21tZW5jZXogdW5lIHJlY2hlcmNoZSwgZXQgZmFpdGVzIGJpZW4gYXR0ZW50aW9uIOAgY2UgcXVpIHNlCi0gICAgIHByb2R1aXQ6ICAvaWdub3JlIC4KKyAgICAgcHJvZHVpdCA6ICAvaWdub3JlIDxFbnRy6WU+CiAKLSAgNi4gUG91ciBpbnRlcnJvbXByZSBsYSBtaXNlIGVuIHN1cmJyaWxsYW5jZSBkZXMgculzdWx0YXRzLCB0YXBlejoKLSAgICAgOm5vaGxzZWFyY2gKKyAgNi4gUG91ciBk6XNhY3RpdmVyICdpZ25vcmVyIGNhc3NlJywgZW50cmV6IDogIDpzZXQgbm9pYwogCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSAgICAgUslTVU3JIERFIExBIExFx09OIDYKK05PVEUgOiBQb3VyIGVubGV2ZXIgbGEgc3VyYnJpbGxhbmNlIGRlcyBy6XN1bHRhdHMsIGVudHJleiA6ICAgOm5vaGxzZWFyY2gKIAotCi0gIDEuIFRhcGVyICBvICBvdXZyZSB1bmUgbGlnbmUgU09VUyBsZSBjdXJzZXVyIGV0IHkgcGxhY2UgY2VsdWktY2kgZW4gbW9kZQotICAgICBJbnNlcnRpb24uIFRhcGVyIHVuICBPICBtYWp1c2N1bGUgb3V2cmUgdW5lIGxpZ25lIGF1IERFU1NVUyBkZSBsYSBsaWduZQotICAgICBv+SBzZSB0cm91dmUgbGUgY3Vyc2V1ci4KLQotICAyLiBUYXBleiB1biAgYSAgcG91ciBpbnPpcmVyIGR1IHRleHRlIEFQUshTIGxlIGNhcmFjdOhyZSBv+SBzZSB0cm91dmUgbGUKLSAgICAgY3Vyc2V1ci4gVGFwZXIgdW4JQSAgbWFqdXNjdWxlIGFqb3V0ZSBkdSB0ZXh0ZSBhdXRvbWF0aXF1ZW1lbnQg4CBsYSBmaW4KLSAgICAgZGUgbGEgbGlnbmUuCi0KLSAgMy4gVGFwZXIgdW4gIFIgIG1hanVzY3VsZSBhY3RpdmUgbGUgbW9kZSBSZW1wbGFjZW1lbnQganVzcXUn4CBjZSBxdWUgbGEKLSAgICAgdG91Y2hlICA8yWNoYXA+ICBzb2l0IGFwcHV56WUgcG91ciBlbiBzb3J0aXIuCi0KLSAgNC4gVGFwZXIgIDpzZXQgeHh4ICBhY3RpdmUgbCdvcHRpb24gJ3h4eCcuCi0KLQotCi0KLQorTk9URSA6IFNpIHZvdXMgdm91bGV6IGlnbm9yZXIgbGEgY2Fzc2UgdW5pcXVlbWVudCBwb3VyIHVuZSByZWNoZXJjaGUsIHV0aWxpc2V6CisgICAgICAgXGMgIGRhbnMgbGEgcGhyYXNlIDogICAvaWdub3JlXGMgIDxFbnRy6WU+CiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCSAgICAgTGXnb24gNyA6IEFDQ8lERVIgwCBMJ0FJREUgRU4gTElHTkUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUslTVU3JIERFIExBIExFx09OIDYKIAotCQkgICoqIFV0aWxpc2VyIGxlIHN5c3TobWUgZCdhaWRlIGVuIGxpZ25lLiAqKgogCi0gIFZpbSBhIHVuIHN5c3TobWUgY29tcGxldCBkJ2FpZGUgZW4gbGlnbmUuICBQb3VyIHkgYWNj6WRlciwgZXNzYXlleiBsJ3VuZSBkZQotICBjZXMgdHJvaXMgbel0aG9kZXM6Ci0JLSBhcHB1eWV6IGxhIHRvdWNoZSA8SGVscD4gKHNpIHZvdXMgZW4gYXZleiB1bmUpCi0JLSBhcHB1eWV6IGxhIHRvdWNoZSA8RjE+IChzaSB2b3VzIGVuIGF2ZXogdW5lKQotCS0gdGFwZXogIDpoZWxwIDxFbnRy6WU+CisgIDEuIFRhcGVyICBvICBvdXZyZSB1bmUgbGlnbmUgU09VUyBsZSBjdXJzZXVyIGV0IGTpbWFycmUgbGUgbW9kZSBJbnNlcnRpb24uCisgICAgIFRhcGVyICBPICBvdXZyZSB1bmUgbGlnbmUgYXUgREVTU1VTIGR1IGN1cnNldXIuCiAKLSAgVGFwZXogIDpxIDxFbnRy6WU+ICBwb3VyIGZlcm1lciBsYSBmZW7qdHJlIGQnYWlkZS4KKyAgMi4gVGFwZXIgIGEgIHBvdXIgaW5z6XJlciBkdSB0ZXh0ZSBBUFLIUyBsZSBjdXJzZXVyLgorICAgICBUYXBlciAgQSAgcG91ciBpbnPpcmVyIGR1IHRleHRlIGFwcuhzIGxhIGZpbiBkZSBsaWduZS4KKworICAzLiBUYXBlciAgZSAgZOlwbGFjZSDgIGxhIGZpbiBkdSBtb3QuCisKKyAgNC4gVGFwZXIgIHkgIGNvcGllIGR1IHRleHRlLCAgcCAgbGUgY29sbGUuCisKKyAgNS4gVGFwZXIgIFIgIG1hanVzY3VsZSBhY3RpdmUgbGUgbW9kZSBSZW1wbGFjZW1lbnQganVzcXUn4CBjZSBxdScgPMljaGFwPgorICAgICBzb2l0IGFwcHV56S4KKworICA2LiBUYXBlciAgIjpzZXQgeHh4IiAgYWN0aXZlIGwnb3B0aW9uICJ4eHgiLiBRdWVscXVlcyBvcHRpb25zIHNvbnQgOgorICAgICAgICAnaWMnICAnaW5nbm9yZWNhc2UnIHBvdXIgaWdub3JlciBsYSBjYXNzZSBsb3JzIGRlcyByZWNoZXJjaGVzLgorICAgICAgICAnaXMnICAnaW5jc2VhcmNoJyAgIHBvdXIgbW9udHJlciBsZXMgYXBwYXJpZW1lbnRzIHBhcnRpZWxzLgorICAgICAgICAnaGxzJyAnaGxzZWFyY2gnICAgIHBvdXIgbWV0dHJlIGVuIHN1cmJyaWxsYW5jZSBsZXMgYXBwYXJpZW1lbnRzLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgIExl529uIDcuMSA6IE9CVEVOSVIgREUgTCdBSURFCisKKworICAgICAgICAgICAgICAgICAgKiogVXRpbGlzZXIgbGUgc3lzdOhtZSBkJ2FpZGUgZW4gbGlnbmUuICoqCisKKyAgVmltIGEgdW4gc3lzdOhtZSBjb21wbGV0IGQnYWlkZSBlbiBsaWduZS4gUG91ciB5IGFjY+lkZXIsIGVzc2F5ZXogbCd1bmUgZGUKKyAgY2VzIHRyb2lzIG3pdGhvZGVzIDoKKyAgICAgICAgLSBhcHB1eWV6IGxhIHRvdWNoZSA8SGVscD4gKHNpIHZvdXMgZW4gYXZleiB1bmUpCisgICAgICAgIC0gYXBwdXlleiBsYSB0b3VjaGUgPEYxPiAoc2kgdm91cyBlbiBhdmV6IHVuZSkKKyAgICAgICAgLSB0YXBleiAgOmhlbHAgPEVudHLpZT4KKworCisgIExpc2V6IGxlIHRleHRlIGRhbnMgbGEgZmVu6nRyZSBkJ2FpZGUgcG91ciBzYXZvaXIgY29tbWVudCBmb25jdGlvbm5lIGwnYWlkZS4KKyAgVGFwZXogIENUUkwtVyBDVFJMLVcgICBwb3VyIHNhdXRlciBkJ3VuZSBmZW7qdHJlIOAgbCdhdXRyZS4KKyAgVGFwZXogIDpxIDxFbnRy6WU+ICAgICBwb3VyIGZlcm1lciBsYSBmZW7qdHJlIGQnYWlkZS4KIAogICBWb3VzIHBvdXZleiBhY2PpZGVyIOAgbCdhaWRlIHN1ciDgIHBldSBwcuhzIG4naW1wb3J0ZSBxdWVsIHN1amV0IGVuIGRvbm5hbnQKICAgZGVzIGFyZ3VtZW50cyDgIGxhIGNvbW1hbmRlICA6aGVscCAuIEVzc2F5ZXogcGFyIGV4ZW1wbGUgKG4nb3VibGlleiBwYXMKLSAgZCdhcHB1eWVyIHN1ciA8RW50cullPik6CisgIGQnYXBwdXllciBzdXIgPEVudHLpZT4pIDoKIAotCTpoZWxwIHcKLQk6aGVscCBjXzxUCi0JOmhlbHAgaW5zZXJ0LWluZGV4Ci0JOmhlbHAgdXNlci1tYW51YWwKKyAgICAgICAgOmhlbHAgdworICAgICAgICA6aGVscCBjX0NUUkwtRAorICAgICAgICA6aGVscCBjXzxUCisgICAgICAgIDpoZWxwIGluc2VydC1pbmRleAorICAgICAgICA6aGVscCB1c2VyLW1hbnVhbAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICAgTGXnb24gOCA6IENSyUVSIFVOIFNDUklQVCBERSBEyU1BUlJBR0UKKyAgICAgICAgICAgICAgICAgICAgTGXnb24gNy4yIDogQ1LJRVIgVU4gU0NSSVBUIERFIETJTUFSUkFHRQogCi0JCSAgKiogQWN0aXZlciBsZXMgZm9uY3Rpb25uYWxpdOlzIGRlIFZpbS4gKioKKyAgICAgICAgICAgICAgICAgICAqKiBBY3RpdmVyIGxlcyBmb25jdGlvbm5hbGl06XMgZGUgVmltLiAqKgogCiAgIFZpbSBhIGJlYXVjb3VwIHBsdXMgZGUgZm9uY3Rpb25uYWxpdOlzIHF1ZSBWaSwgbWFpcyBsYSBwbHVwYXJ0IGRlIGNlbGxlcy1jaQotICBzb250IGTpc2FjdGl26WVzIHBhciBk6WZhdXQuICBQb3VyIGNvbW1lbmNlciDgIGxlcyB1dGlsaXNlciwgdm91cyBkZXZlegorICBzb250IGTpc2FjdGl26WVzIHBhciBk6WZhdXQuIFBvdXIgY29tbWVuY2VyIOAgbGVzIHV0aWxpc2VyLCB2b3VzIGRldmV6CiAgIGNy6WVyIHVuIGZpY2hpZXIgInZpbXJjIi4KIAotICAxLiBDb21tZW5jZXog4CDpZGl0ZXIgbGUgZmljaGllciAidmltcmMiLiBDZWNpIGTpcGVuZCBkZSB2b3RyZSBzeXN06G1lOgotCTplZGl0IH4vLnZpbXJjCQkJcG91ciBVbml4Ci0JOmVkaXQgJFZJTS9fdmltcmMJCXBvdXIgTVMtV2luZG93cworICAxLiBDb21tZW5jZXog4CDpZGl0ZXIgbGUgZmljaGllciAidmltcmMiLiBDZWNpIGTpcGVuZCBkZSB2b3RyZSBzeXN06G1lIDoKKyAgICAgICAgOmVkaXQgfi8udmltcmMgICAgICAgICBwb3VyIFVuaXgKKyAgICAgICAgOmVkaXQgJFZJTS9fdmltcmMgICAgICBwb3VyIE1TLVdpbmRvd3MKIAotICAyLiBJbnTpZ3JleiBtYWludGVuYW50IGxlIHRleHRlIGR1IGZpY2hpZXIgInZpbXJjIiBkJ2V4ZW1wbGU6Ci0JOnJlYWQgJFZJTVJVTlRJTUUvdmltcmNfZXhhbXBsZS52aW0KKyAgMi4gTGlzZXogbWFpbnRlbmFudCBsZSBmaWNoaWVyIGQnZXhlbXBsZSAidmltcmMiIDoKKyAgICAgICAgOnIgJFZJTVJVTlRJTUUvdmltcmNfZXhhbXBsZS52aW0KIAotICAzLiBFbnJlZ2lzdHJleiBsZSBmaWNoaWVyIGF2ZWM6Ci0JOndyaXRlCisgIDMuIEVucmVnaXN0cmV6IGxlIGZpY2hpZXIgYXZlYyA6CisgICAgICAgIDp3CiAKLSAgTGEgcHJvY2hhaW5lIGZvaXMgcXVlIHZvdXMgZOltYXJyZXJleiBWaW0sIGxlIHN1cmxpZ25hZ2Ugc3ludGFjdGlxdWUgc2VyYQotICBhY3RpdukuIFZvdXMgcG91dmV6IGFqb3V0ZXIgdG91cyB2b3MgculnbGFnZXMgcHLpZuly6XMgZGFucyBjZSBmaWNoaWVyLgorICBMYSBwcm9jaGFpbmUgZm9pcyBxdWUgdm91cyBk6W1hcnJlcmV6IFZpbSwgbGEgY29sb3JhdGlvbiBzeW50YXhpcXVlIHNlcmEKKyAgYWN0aXbpZS4gVm91cyBwb3V2ZXogYWpvdXRlciB0b3VzIHZvcyBy6WdsYWdlcyBwculm6XLpcyBkYW5zIGNlIGZpY2hpZXIKKyAgInZpbXJjIi4gUG91ciBwbHVzIGQnaW5mb3JtYXRpb25zLCB0YXBleiAgOmhlbHAgdmltcmMtaW50cm8KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZedvbiA3LjMgOiBDT01QTMhURU1FTlQKKworCisgICAgICAgICAgKiogQ29tcGzodGVtZW50IGRlIGxpZ25lIGRlIGNvbW1hbmRlIGF2ZWMgQ1RSTC1EIGV0IDxUQUI+ICoqCisKKyAgMS4gTWV0dGV6IFZpbSBzb2l0IGVuIG1vZGUgbm9uIGNvbXBhdGlibGUgOiAgIHNldCBub2NwCisKKyAgMi4gUmVnYXJkZXogcXVlbHMgZmljaGllcnMgZXhpc3RlbnQgZGFucyBsZSBy6XBlcnRvaXJlIDogICFscyAgb3UgICFkaXIKKworICAzLiBUYXBleiBsZSBk6WJ1dCBkJ3VuZSBjb21tYW5kZSA6ICAgOmUKKworICA0LiBBcHB1eWV6ICBDVFJMLUQgIGV0IFZpbSBhZmZpY2hlcmEgdW5lIGxpc3RlIGRlIGNvbW1hbmRlcyBxdWkgY29tbWVuY2VudAorICAgICBwYXIgImUiLgorCisgIDUuIEFwcHV5ZXogIDxUQUI+ICBldCBWaW0gY29tcGzpdGVyYSBsZSBub20gZGUgbGEgY29tbWFuZGUgOiAgIjplZGl0IgorCisgIDYuIEFqb3V0ZXogbWFpbnRlbmFudCB1biBlc3BhY2UgZXQgbGUgZOlidXQgZCd1biBmaWNoaWVyIGV4aXN0YW50IDoKKyAgICAgOmVkaXQgIEZJQworCisgIDcgIEFwcHV5ZXogIDxUQUI+LiBWaW0gdmEgY29tcGzpdGVyIGxlIG5vbSAocydpbCBlc3QgdW5pcXVlKS4KKworTk9URSA6IExlIGNvbXBs6HRlbWVudCBmb25jdGlvbm5lIHBvdXIgZGUgbm9tYnJldXNlIGNvbW1hbmRlcy4gRXNzYXllegorICAgICAgIGQnYXBwdXllciBDVFJMLUQgZXQgPFRBQj4uIEMnZXN0IHV0aWxlIGVuIHBhcnRpY3VsaWVyIHBvdXIgIDpoZWxwIC4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFLJU1VNySBERSBMQSBMRcdPTiA3CisKKworICAxLiBUYXBleiAgOmhlbHAgIG91IGFwcHV5ZXogPEYxPiBvdSA8QWlkZT4gcG91ciBvdXZyaXIgbGEgZmVu6nRyZSBkJ2FpZGUuCisKKyAgMi4gVGFwZXogIDpoZWxwIGNtZCAgcG91ciB0cm91dmVyIGwnYWlkZSBzdXIgIGNtZCAuCisKKyAgMy4gVGFwZXogIENUUkwtVyBDVFJMLVcgIHBvdXIgc2F1dGVyIOAgdW5lIGF1dHJlIGZlbup0cmUuCisKKyAgNC4gVGFwZXogIDpxICBwb3VyIGZlcm1lciBsYSBmZW7qdHJlIGQnYWlkZS4KKworICA1LiBDculleiB1biBzY3JpcHQgZGUgZOltYXJyYWdlIHZpbXJjIHBvdXIgY29uc2VydmVyIHZvcyBy6WdsYWdlcyBwculm6XLpcy4KKworICA2LiBRdWFuZCB2b3VzIHRhcGV6IHVuZSBjb21tYW5kZSAgOiAgYXBwdXlleiBDVFJMLUQgcG91ciB2b2lyIGxlcworICAgICBjb21wbOh0ZW1lbnRzIHBvc3NpYmxlcy4gQXBwdXlleiA8VEFCPiBwb3VyIHV0aWxpc2VyIHVuIGNvbXBs6HRlbWVudC4KIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAotICBDZWNpIGNvbmNsdXQgbGUgVHV0b3JpZWwgVmltLiAgTGUgYnV0IOl0YWl0IGRlIHZvdXMgZG9ubmVyIHVuIGJyZWYgYXBlcud1IGRlCisgIENlY2kgY29uY2x1dCBsZSBUdXRvcmllbCBWaW0uIExlIGJ1dCDpdGFpdCBkZSB2b3VzIGRvbm5lciB1biBicmVmIGFwZXLndSBkZQogICBsJ+lkaXRldXIgVmltLCBqdXN0ZSBhc3NleiBwb3VyIHZvdXMgcGVybWV0dHJlIGQndXRpbGlzZXIgbCfpZGl0ZXVyCi0gIHJlbGF0aXZlbWVudCBmYWNpbGVtZW50LiAgSWwgZXN0IGxvaW4gZCfqdHJlIGNvbXBsZXQsIHZ1IHF1ZSBWaW0gYSBiZWF1Y291cAotICBiZWF1Y291cCBwbHVzIGRlIGNvbW1hbmRlcy4gIFVuIE1hbnVlbCBkZSBsJ3V0aWxpc2F0ZXVyIGVzdCBkaXNwb25pYmxlIGVuCi0gIGFuZ2xhaXM6ICA6aGVscCB1c2VyLW1hbnVhbCAuCisgIHJlbGF0aXZlbWVudCBmYWNpbGVtZW50LiBJbCBlc3QgbG9pbiBkJ+p0cmUgY29tcGxldCwgdnUgcXVlIFZpbSBhIGJlYXVjb3VwCisgIGJlYXVjb3VwIHBsdXMgZGUgY29tbWFuZGVzLiBVbiBNYW51ZWwgZGUgbCd1dGlsaXNhdGV1ciBlc3QgZGlzcG9uaWJsZSBlbgorICBhbmdsYWlzIDogIDpoZWxwIHVzZXItbWFudWFsIC4KIAogICBQb3VyIGNvbnRpbnVlciDgIGTpY291dnJpciBldCDgIGFwcHJlbmRyZSBWaW0sIGlsIGV4aXN0ZSB1biBsaXZyZSB0cmFkdWl0IGVuCiAgIGZyYW7nYWlzLiBJbCBwYXJsZSBwbHVzIGRlIFZpIHF1ZSBkZSBWaW0sIG1haXMgcG91cnJhIHZvdXMg6nRyZSB1dGlsZS4KLQlMJ+lkaXRldXIgVmkgLSBDb2xsZWN0aW9uIFBy6WNpcyBldCBjb25jaXMgLSBwYXIgQXJub2xkIFJvYmJpbnMKLQnJZGl0ZXVyOiBPJ1JlaWxseSBGcmFuY2UKLQlJU0JOOiAyLTg0MTc3LTEwMi00CisgICAgICAgIEwn6WRpdGV1ciBWaSAtIENvbGxlY3Rpb24gUHLpY2lzIGV0IGNvbmNpcyAtIHBhciBBcm5vbGQgUm9iYmlucworICAgICAgICDJZGl0ZXVyIDogTydSZWlsbHkgRnJhbmNlCisgICAgICAgIElTQk4gOiAyLTg0MTc3LTEwMi00CiAKICAgRGV1eCBsaXZyZXMgZW4gYW5nbGFpcyBzb250IOlnYWxlbWVudCBtZW50aW9ubulzIGRhbnMgbGEgdmVyc2lvbiBvcmlnaW5hbGUKICAgZGUgY2UgdHV0b3JpZWwsIGRvbnQgdW4gcXVpIHRyYWl0ZSBzcOljaWZpcXVlbWVudCBkZSBWaW0uIE1lcmNpIGRlIHZvdXMgeQotICBy6WbpcmVyIHNpIHZvdXMg6nRlcyBpbnTpcmVzc+kuCisgIHLpZulyZXIgc2kgdm91cyDqdGVzIGludOlyZXNz6XMuCiAKICAgQ2UgdHV0b3JpZWwgYSDpdOkg6WNyaXQgcGFyIE1pY2hhZWwgQy4gUGllcmNlIGV0IFJvYmVydCBLLiBXYXJlIGRlIGwnyWNvbGUKICAgZGVzIE1pbmVzIGR1IENvbG9yYWRvIGV0IHJlcHJlbmQgZGVzIGlk6WVzIGZvdXJuaWVzIHBhciBDaGFybGVzIFNtaXRoLAotICBVbml2ZXJzdOkgZCfJdGF0IGR1IENvbG9yYWRvLiAgRS1tYWlsOiBid2FyZUBtaW5lcy5jb2xvcmFkby5lZHUuCisgIFVuaXZlcnNpdOkgZCfJdGF0IGR1IENvbG9yYWRvLiBFLW1haWwgOiBid2FyZUBtaW5lcy5jb2xvcmFkby5lZHUuCiAKICAgTW9kaWZp6SBwb3VyIFZpbSBwYXIgQnJhbSBNb29sZW5hci4KLQogICBUcmFkdWl0IGVuIEZyYW7nYWlzIHBhciBBZHJpZW4gQmVhdSwgZW4gYXZyaWwgMjAwMS4KLSAgRS1tYWlsOgl2ZXJzaW9uLmZyYW5jYWlzZUBmcmVlLmZyCi0gIExhc3QgQ2hhbmdlOgkyMDAzIE1heSAyOQorICBEZXJuaehyZXMgbWlzZXMg4CBqb3VyIHBhciBEb21pbmlxdWUgUGVsbOkuCisKKyAgRS1tYWlsIDogICAgICBkb21pbmlxdWUucGVsbGVAZ21haWwuY29tCisgIExhc3QgQ2hhbmdlIDogMjAwOCBOb3YgMjMKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpkaWZmIC0tZ2l0IGEvcnVudGltZS90dXRvci90dXRvci5mci51dGYtOCBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZnIudXRmLTgKaW5kZXggNWFiMTRjZC4uMWIwMTUxMCAxMDA2NDQKLS0tIGEvcnVudGltZS90dXRvci90dXRvci5mci51dGYtOAorKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLmZyLnV0Zi04CkBAIC0xLDUgKzEsNSBAQAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotPSBCIGkgZSBuIHYgZSBuIHUgZSAgZGFucyBsZSAgVCB1IHQgbyByIGkgZSBsICBkZSAgViBJIE0gIC0gIFZlcnNpb24gMS41LmZyLjIgPQorPSBCIGkgZSBuIHYgZSBuIHUgZSAgZGFucyBsZSAgVCB1IHQgbyByIGkgZSBsICBkZSAgViBJIE0gIC0gIFZlcnNpb24gMS43LmZyLjEgPQogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogCiAgICAgIFZpbSBlc3QgdW4gw6lkaXRldXIgdHLDqHMgcHVpc3NhbnQgcXVpIGEgdHJvcCBkZSBjb21tYW5kZXMgcG91ciBwb3V2b2lyCkBAIC03LDkzICs3LDEwMCBAQAogICAgICBkw6ljcmlyZSBzdWZmaXNhbW1lbnQgYWZpbiBkZSB2b3VzIHBlcm1ldHRyZSBkJ3V0aWxpc2VyIHNpbXBsZW1lbnQgVmltLgogCiAgICAgIExlIHRlbXBzIHJlcXVpcyBwb3VyIHN1aXZyZSBjZSBjb3VycyBlc3QgZCdlbnZpcm9uIDI1IMOgIDMwIG1pbnV0ZXMsIHNlbG9uCi0gICAgIGxlIHRlbXBzIHF1ZSB2b3VzIHBhc3NlcmV6IMOgIGV4cMOpcmltZW50ZXIuICBMZXMgY29tbWFuZGVzIHV0aWxpc8OpZXMgZGFucwotICAgICBsZXMgbGXDp29ucyBtb2RpZmllcm9udCBsZSB0ZXh0ZS4gRmFpdGVzIHVuZSBjb3BpZSBkZSBjZSBmaWNoaWVyIGFmaW4gZGUKLSAgICAgdm91cyBlbnRyYcOubmVyIGRlc3N1cyAoc2kgdm91cyBhdmV6IGxhbmPDqSAidmltdHV0b3IiIGNlY2kgZXN0IGTDqWrDoCB1bmUKLSAgICAgY29waWUpLgorICAgICBsZSB0ZW1wcyBxdWUgdm91cyBwYXNzZXJleiDDoCBleHDDqXJpbWVudGVyLgorCisgICAgIEFUVEVOVElPTiA6CisgICAgIExlcyBjb21tYW5kZXMgdXRpbGlzw6llcyBkYW5zIGxlcyBsZcOnb25zIG1vZGlmaWVyb250IGxlIHRleHRlLiBGYWl0ZXMgdW5lCisgICAgIGNvcGllIGRlIGNlIGZpY2hpZXIgYWZpbiBkZSB2b3VzIGVudHJhw65uZXIgZGVzc3VzIChzaSB2b3VzIGF2ZXogbGFuY8OpCisgICAgICJ2aW10dXRvciIgY2VjaSBlc3QgZMOpasOgIHVuZSBjb3BpZSkuCiAKICAgICAgSWwgZXN0IGltcG9ydGFudCBkZSBnYXJkZXIgZW4gdMOqdGUgcXVlIGNlIGNvdXJzIGVzdCBjb27Dp3UgcG91ciBhcHByZW5kcmUKLSAgICAgcGFyIGxhIHByYXRpcXVlLiAgQ2VsYSBzaWduaWZpZSBxdWUgdm91cyBkZXZleiBleMOpY3V0ZXIgbGVzIGNvbW1hbmRlcwotICAgICBwb3VyIGxlcyBhcHByZW5kcmUgY29ycmVjdGVtZW50LiAgU2kgdm91cyB2b3VzIGNvbnRlbnRleiBkZSBsaXJlIGxlCi0gICAgIHRleHRlLCB2b3VzIG91YmxpZXJleiBsZXMgY29tbWFuZGVzICEKKyAgICAgcGFyIGxhIHByYXRpcXVlLiBDZWxhIHNpZ25pZmllIHF1ZSB2b3VzIGRldmV6IGV4w6ljdXRlciBsZXMgY29tbWFuZGVzCisgICAgIHBvdXIgbGVzIGFwcHJlbmRyZSBjb3JyZWN0ZW1lbnQuIFNpIHZvdXMgdm91cyBjb250ZW50ZXogZGUgbGlyZSBsZSB0ZXh0ZSwKKyAgICAgdm91cyBvdWJsaWVyZXogbGVzIGNvbW1hbmRlcyAhCiAKLSAgICAgTWFpbnRlbmFudCwgdsOpcmlmaWV6IHF1ZSB2b3RyZSBjbGF2aWVyIG4nZXN0IFBBUyB2ZXJvdWlsbMOpIGVuIG1hanVzY3VsZXMsCi0gICAgIGV0IGFwcHV5ZXogbGEgdG91Y2hlICBqICBsZSBub21icmUgZGUgZm9pcyBzdWZmaXNhbnQgcG91ciBxdWUgbGEgbGXDp29uCi0gICAgIDEuMSByZW1wbGlzc2UgY29tcGzDqHRlbWVudCBsJ8OpY3Jhbi4KKyAgICAgTWFpbnRlbmFudCwgdsOpcmlmaWV6IHF1ZSB2b3RyZSBjbGF2aWVyIG4nZXN0IFBBUyB2ZXJyb3VpbGzDqSBlbgorICAgICBtYWp1c2N1bGVzLCBldCBhcHB1eWV6IGxhIHRvdWNoZSAgaiAgbGUgbm9tYnJlIGRlIGZvaXMgc3VmZmlzYW50IHBvdXIKKyAgICAgcXVlIGxhIExlw6dvbiAxLjEgcmVtcGxpc3NlIGNvbXBsw6h0ZW1lbnQgbCfDqWNyYW4uCisKKwogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCSAgICAgIExlw6dvbiAxLjEgOiBEw4lQTEFDRU1FTlQgRFUgQ1VSU0VVUgorICAgICAgICAgICAgICAgICAgICAgIExlw6dvbiAxLjEgOiBEw4lQTEFDRU1FTlQgRFUgQ1VSU0VVUgogCiAKICAgKiogUG91ciBkw6lwbGFjZXIgbGUgY3Vyc2V1ciwgYXBwdXlleiBsZXMgdG91Y2hlcyBoLGosayxsIGNvbW1lIGluZGlxdcOpLiAqKgotCSAgICBeCi0JICAgIGsJICAgICBBc3R1Y2U6ICBMYSB0b3VjaGUgaCBlc3Qgw6AgZ2F1Y2hlIGV0IGTDqXBsYWNlIMOgIGdhdWNoZS4KLSAgICAgIDwgaCAgICAgIGwgPgkgICAgICBMYSB0b3VjaGUgbCBlc3Qgw6AgZHJvaXRlIGV0IGTDqXBsYWNlIMOgIGRyb2l0ZS4KLQkgICBqCQkgICAgICBMYSB0b3VjaGUgaiByZXNzZW1ibGUgw6AgdW5lIGZsw6hjaGUgdmVycyBsZSBiYXMuCi0JICAgdgorICAgICAgICAgIF4KKyAgICAgICAgICBrICAgICAgICBBc3R1Y2UgOiAgTGEgdG91Y2hlIGggZXN0IMOgIGdhdWNoZSBldCBkw6lwbGFjZSDDoCBnYXVjaGUuCisgICAgPCBoICAgICAgIGwgPiAgICAgICAgICAgIExhIHRvdWNoZSBsIGVzdCDDoCBkcm9pdGUgZXQgZMOpcGxhY2Ugw6AgZHJvaXRlLgorICAgICAgICAgIGogICAgICAgICAgICAgICAgICBMYSB0b3VjaGUgaiByZXNzZW1ibGUgw6AgdW5lIGZsw6hjaGUgdmVycyBsZSBiYXMuCisgICAgICAgICAgdgogICAxLiBEw6lwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbCfDqWNyYW4ganVzcXUnw6Agdm91cyBzZW50aXIgw6AgbCdhaXNlLgogCiAgIDIuIE1haW50ZW5leiBsYSB0b3VjaGUgQmFzIChqKSBlbmZvbmPDqWUganVzcXUnw6AgY2UgcXUnZWxsZSBzZSByw6lww6h0ZS4KLS0tLT4gTWFpbnRlbmFudCB2b3VzIMOqdGVzIGNhcGFibGUgZGUgdm91cyBkw6lwbGFjZXIganVzcXUnw6AgbGEgbGXDp29uIHN1aXZhbnRlLgorICAgICBNYWludGVuYW50IHZvdXMgw6p0ZXMgY2FwYWJsZSBkZSB2b3VzIGTDqXBsYWNlciBqdXNxdSfDoCBsYSBsZcOnb24gc3VpdmFudGUuCiAKICAgMy4gRW4gdXRpbGlzYW50IGxhIHRvdWNoZSBCYXMsIGFsbGV6IMOgIGxhIExlw6dvbiAxLjIuCiAKLU5vdGU6IFNpIGphbWFpcyB2b3VzIGRvdXRleiBkZSBjZSBxdWUgdm91cyB2ZW5leiBkZSB0YXBlciwgYXBwdXlleiA8w4ljaGFwPgotICAgICAgcG91ciByZXZlbmlyIGVuIG1vZGUgTm9ybWFsLiBQdWlzIHJldGFwZXogbGEgY29tbWFuZGUgcXVlIHZvdXMgdm91bGllei4KK05PVEUgOiBTaSBqYW1haXMgdm91cyBkb3V0ZXogZGUgY2UgcXVlIHZvdXMgdmVuZXogZGUgdGFwZXIsIGFwcHV5ZXogPMOJY2hhcD4KKyAgICAgICBwb3VyIHJldmVuaXIgZW4gbW9kZSBOb3JtYWwuIFB1aXMgcmV0YXBleiBsYSBjb21tYW5kZSBxdWUgdm91cyB2b3VsaWV6LgogCi1Ob3RlOiBMZXMgdG91Y2hlcyBmbMOpY2jDqWVzIGRldnJhaWVudCDDqWdhbGVtZW50IGZvbmN0aW9ubmVyLiBNYWlzIGVuIHV0aWxpc2FudAotICAgICAgaGprbCB2b3VzIHBvdXJyZXogdm91cyBkw6lwbGFjZXIgYmVhdWNvdXAgcGx1cyByYXBpZGVtZW50LCB1bmUgZm9pcyBxdWUKLSAgICAgIHZvdXMgYXVyZXogcHJpcyBsJ2hhYml0dWRlLgorTk9URSA6IExlcyB0b3VjaGVzIGZsw6ljaMOpZXMgZGV2cmFpZW50IMOpZ2FsZW1lbnQgZm9uY3Rpb25uZXIuIE1haXMgZW4gdXRpbGlzYW50CisgICAgICAgaGprbCB2b3VzIHBvdXJyZXogdm91cyBkw6lwbGFjZXIgYmVhdWNvdXAgcGx1cyByYXBpZGVtZW50LCB1bmUgZm9pcyBxdWUKKyAgICAgICB2b3VzIGF1cmV6IHByaXMgbCdoYWJpdHVkZS4KKworCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgICBMZcOnb24gMS4yIDogRU5UUsOJRSBFVCBTT1JUSUUgREUgVklNCisgICAgICAgICAgICAgICAgICAgICBMZcOnb24gMS4yIDogU09SVElSIERFIFZJTQogCiAKLSAhISBOT1RFOiBBdmFudCBkJ2VmZmVjdHVlciBsZXMgw6l0YXBlcyBjaS1kZXNzb3VzLCBsaXNleiB0b3V0ZSBjZXR0ZSBsZcOnb24gISEKKyAhISBOT1RFIDogQXZhbnQgZCdlZmZlY3R1ZXIgbGVzIMOpdGFwZXMgY2ktZGVzc291cywgbGlzZXogdG91dGUgY2V0dGUgbGXDp29uICEhCiAKLSAgMS4gQXBwdXlleiBsYSB0b3VjaGUJPMOJY2hhcD4gIChwb3VyIMOqdHJlIHPDu3IgZCfDqnRyZSBlbiBtb2RlIE5vcm1hbCkuCisgIDEuIEFwcHV5ZXogbGEgdG91Y2hlICA8w4ljaGFwPiAgKHBvdXIgw6p0cmUgc8O7ciBkJ8OqdHJlIGVuIG1vZGUgTm9ybWFsKS4KIAotICAyLiBUYXBlejoJCQk6cSEgPEVudHLDqWU+CisgIDIuIFRhcGV6IDogIDpxISA8RW50csOpZT4KKyAgICAgQ2VjaSBxdWl0dGUgbCfDqWRpdGV1ciBTQU5TIGVucmVnaXN0cmVyIGxlcyBjaGFuZ2VtZW50cyBxdWUgdm91cyBhdmV6CisgICAgIGZhaXRzLgogCi0tLS0+IENlY2kgcXVpdHRlIGwnw6lkaXRldXIgU0FOUyBzYXV2ZXIgbGVzIGNoYW5nZW1lbnRzIHF1ZSB2b3VzIGF2ZXogZmFpdHMuCi0gICAgIFNpIHZvdXMgdm91bGV6IGVucmVnaXN0cmVyIGxlcyBjaGFuZ2VtZW50cyBldCBzb3J0aXIsIHRhcGV6OgotCQkJCTp3cSA8RW50csOpZT4KLQotICAzLiBMb3JzcXVlIGwnaW52aXRlIGR1ICdzaGVsbCcgdm91cyBzZXJhIHByw6lzZW50w6llLCB0YXBleiBsYSBjb21tYW5kZSBxdWkKLSAgICAgdm91cyBhIGFtZW7DqSBkYW5zIGNlIHR1dG9yaWVsLiAgQ2VsYSBwb3VycmFpdCDDqnRyZTogICAgdmltdHV0b3IgPEVudHLDqWU+Ci0gICAgIE5vcm1hbGVtZW50LCB2b3VzIHV0aWxpc2VyaWV6OgkJCSAgICB2aW0gdHV0b3IgPEVudHLDqWU+Ci0KLS0tLT4gJ3ZpbScgbGFuY2UgbCfDqWRpdGV1ciwgJ3R1dG9yJyBlc3QgbGUgZmljaGllciBxdWUgdm91cyBzb3VoYWl0ZXogw6lkaXRlci4KKyAgMy4gTG9yc3F1ZSBsJ2ludml0ZSBkdSBzaGVsbCB2b3VzIHNlcmEgcHLDqXNlbnTDqWUsIHRhcGV6IGxhIGNvbW1hbmRlIHF1aQorICAgICB2b3VzIGEgbWVuw6kgZGFucyBjZSB0dXRvcmllbC4gQ2VsYSBwb3VycmFpdCDDqnRyZSA6ICAgIHZpbXR1dG9yIDxFbnRyw6llPgogCiAgIDQuIFNpIHZvdXMgYXZleiBtw6ltb3Jpc8OpIGNlcyDDqXRhcGVzIGV0IMOqdGVzIGNvbmZpYW50LCBlZmZlY3R1ZXogbGVzIMOpdGFwZXMKLSAgICAgMSDDoCAzIHBvdXIgc29ydGlyIHB1aXMgcmVudHJlciBkYW5zIGwnw6lkaXRldXIuICBEw6lwbGFjZXogZW5zdWl0ZSBsZQotICAgICAgY3Vyc2V1ciBqdXNxdSfDoCBsYSBMZcOnb24gMS4zLgorICAgICAxIMOgIDMgcG91ciBzb3J0aXIgcHVpcyByZW50cmVyIGRhbnMgbCfDqWRpdGV1ci4KKworTk9URSA6ICA6cSEgPEVudHLDqWU+IGFubnVsZSB0b3VzIGxlIGNoYW5nZW1lbnRzIHF1ZSB2b3VzIGF2ZXogZmFpdC4gRGFucworICAgICAgICAgcXVlbHF1ZXMgbGXDp29ucywgdm91cyBhcHByZW5kcmV6IMOgIGVucmVnaXN0cmVyIGxlcyBjaGFuZ2VtZW50cy4KKworICA1LiBEw6lwbGFjZXogbGUgY3Vyc2V1ciDDoCBsYSBMZcOnb24gMS4zLgorCisKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgIExlw6dvbiAxLjMgOiDDiURJVElPTiBERSBURVhURSAtIEVGRkFDRU1FTlQKKyAgICAgICAgICAgICAgICAgIExlw6dvbiAxLjMgOiDDiURJVElPTiBERSBURVhURSAtIEVGRkFDRU1FTlQKIAogCi0gKiogRW4gbW9kZSBOb3JtYWwsIGFwcHV5ZXogIHgJcG91ciBlZmZhY2VyIGxlIGNhcmFjdMOocmUgc291cyBsZSBjdXJzZXVyLiAqKgorICAgICAgICAgKiogQXBwdXlleiAgIHggICBwb3VyIGVmZmFjZXIgbGUgY2FyYWN0w6hyZSBzb3VzIGxlIGN1cnNldXIuICoqCiAKICAgMS4gRMOpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIGxpZ25lIG1hcnF1w6llIC0tLT4gY2ktZGVzc291cy4KIAogICAyLiBQb3VyIGNvcnJpZ2VyIGxlcyBlcnJldXJzLCBkw6lwbGFjZXogbGUgY3Vyc2V1ciBqdXNxdSfDoCBjZSBxdSdpbCBzb2l0CiAgICAgIHN1ciB1biBjYXJhY3TDqHJlIMOgIGVmZmFjZXIuCiAKLSAgMy4gQXBwdXlleiBsYSB0b3VjaGUJeCAgcG91ciBlZmZhY2VyIGxlIGNhcmFjdMOocmUgcmVkb25kYW50LgorICAzLiBBcHB1eWV6IGxhIHRvdWNoZSAgeCAgcG91ciBlZmZhY2VyIGxlIGNhcmFjdMOocmUgcmVkb25kYW50LgogCiAgIDQuIFLDqXDDqXRleiBsZXMgw6l0YXBlcyAyIMOgIDQganVzcXUnw6AgY2UgcXVlIGxhIHBocmFzZSBzb2l0IGNvcnJlY3RlLgogCiAtLS0+IExhIHZ2YWNoZSDDoCBzYXV0w6nDqSBhdS1kZGVzc3VzIGRkZSBsYSBsdXVuZS4KIAotICA1LiBNYWludGVuYW50IHF1ZSBsYSBsaWduZSBlc3QgY29ycmVjdGUsIHBhc3NleiDDoCBsYSBsZcOnb24gMS40LgorICA1LiBNYWludGVuYW50IHF1ZSBsYSBsaWduZSBlc3QgY29ycmVjdGUsIHBhc3NleiDDoCBsYSBMZcOnb24gMS40LgogCi1OT1RFOiBFbiBhdmFuw6dhbnQgZGFucyBjZSBjb3Vycywgbidlc3NheWV6IHBhcyBkZSBtw6ltb3Jpc2VyLCBhcHByZW5leiBwYXIKLSAgICAgIGxhIHByYXRpcXVlLgorTk9URSA6IEVuIGF2YW7Dp2FudCBkYW5zIGNlIGNvdXJzLCBuJ2Vzc2F5ZXogcGFzIGRlIG3DqW1vcmlzZXIsIGFwcHJlbmV6IHBhcgorICAgICAgIGxhIHByYXRpcXVlLgogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICBMZcOnb24gMS40IDogw4lESVRJT04gREUgVEVYVEUgLSBJTlNFUlRJT04KKyAgICAgICAgICAgICAgICAgICAgTGXDp29uIDEuNCA6IMOJRElUSU9OIERFIFRFWFRFIC0gSU5TRVJUSU9OCiAKIAotCSAgICoqIEVuIG1vZGUgTm9ybWFsLCBhcHB1eWV6ICBpICBwb3VyIGluc8OpcmVyIGR1IHRleHRlLiAqKgorICAgICAgICAgICAgICAgICAgICAqKiBBcHB1eWV6ICBpICBwb3VyIGluc8OpcmVyIGR1IHRleHRlLiAqKgogCiAgIDEuIETDqXBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBwcmVtacOocmUgbGlnbmUgbWFycXXDqWUgLS0tPiBjaS1kZXNzb3VzLgogCkBAIC0xMDgsMzggKzExNSw5NCBAQAogLS0tPiBJbCBtbnFlIGNhcmFjdMOocmVzIGNldHRlIC4KIC0tLT4gSWwgbWFucXVlIGRlcyBjYXJhY3TDqHJlcyBkYW5zIGNldHRlIGxpZ25lLgogCi0gIDUuIFVuZSBmb2lzIHF1ZSB2b3VzIMOqdGVzIMOgIGwnYWlzZSBhdmVjIGwnaW5zZXJ0aW9uIGRlIHRleHRlLCBhbGxleiBhdQotICAgICByw6lzdW3DqSBjaS1kZXNzb3VzLgorICA1LiBVbmUgZm9pcyBxdWUgdm91cyDDqnRlcyDDoCBsJ2Fpc2UgYXZlYyBsJ2luc2VydGlvbiBkZSB0ZXh0ZSwgYWxsZXogw6AgbGEKKyAgICAgTGXDp29uIDEuNS4KIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSAgICAgUsOJU1VNw4kgREUgTEEgTEXDh09OIDEKKyAgICAgICAgICAgICAgICAgICAgIExlw6dvbiAxLjUgOiDDiURJVElPTiBERSBURVhURSAtIEFKT1VURVIKKworCisgICAgICAgICAgICAgICAgICAgICoqIEFwcHV5ZXogIEEgIHBvdXIgYWpvdXRlciBkdSB0ZXh0LiAqKgorCisgIDEuIETDqXBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBwcmVtacOocmUgbGlnbmUgY2ktZGVzc291cyBtYXJxdcOpZSAtLS0+LgorICAgICBQZXUgaW1wb3J0ZSBzdXIgcXVlbCBjYXJhY3TDqHJlIHNlIHRyb3V2ZSBsZSBjdXJzZXVyIHN1ciBjZXR0ZSBsaWduZS4KKworICAyLiBBcHB1eWV6ICBBICBldCB0YXBleiBsZXMgYWpvdXRzIG7DqWNlc3NhaXJlcy4KKworICAzLiBRdWFuZCBsZSB0ZXh0ZSBhIMOpdMOpIGFqb3V0w6ksIGFwcHV5ZXogPMOJY2hhcD4gcG91ciByZXZlbmlyIGVuIG1vZGUKKyAgICAgTm9ybWFsLgorCisgIDQuIETDqXBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBzZWNvbmRlIGxpZ25lIG1hcnF1w6llIC0tLT4gZXQgcsOpcMOpdGV6IGxlcworICAgICDDqXRhcGVzIDIgZXQgMyBwb3VyIGNvcnJpZ2VyIGxhIHBocmFzZS4KKworLS0tPiBJbCBtYW5xdWUgZHUgdGV4dGUgw6AgcGFydGlyIGRlIGNldAorICAgICBJbCBtYW5xdWUgZHUgdGV4dGUgw6AgcGFydGlyIGRlIGNldHRlIGxpZ25lLgorLS0tPiBJbCBtYW5xdWUgYXVzc2kgZHUgdGUKKyAgICAgSWwgbWFucXVlIGF1c3NpIGR1IHRleHRlIGljaS4KKworICA1LiBRdWFuZCB2b3VzIHZvdXMgc2VudGV6IHN1ZmZpc2FtbWVudCDDoCBsJ2Fpc2UgcG91ciBham91dGVyIGR1IHRleHRlLAorICAgICBhbGxleiDDoCBsYSBMZcOnb24gMS42LgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgIExlw6dvbiAxLjYgOiDDiURJVEVSIFVOIEZJQ0hJRVIKKworCisgICAgICAgICAgKiogVXRpbGlzZXogIDp3cSAgcG91ciBlbnJlZ2lzdHJlciB1biBmaWNoaWVyIGV0IHNvcnRpci4gKioKKworISEgTk9URSA6IExpc2V6IHRvdXRlIGxhIGxlw6dvbiBhdmFudCBkJ2V4w6ljdXRlciBsZXMgaW5zdHJ1Y3Rpb25zIGNpLWRlc3NvdXMgISEKKworICAxLiBTb3J0ZXogZGUgY2UgdHV0b3JpZWwgY29tbWUgdm91cyBsJ2F2ZXogZmFpdCBkYW5zIGxhIExlw6dvbiAxLjIgOiAgOnEhCisgICAgIE91LCBzaSB2b3VzIGF2ZXogYWNjw6hzIMOgIHVuIGF1dHJlIHRlcm1pbmFsLCBleMOpY3V0ZXogeSBsZXMgYWN0aW9ucworICAgICBxdWkgc3VpdmVudC4KKworICAyLiDDgCBsJ2ludml0ZSBkdSBzaGVsbCwgdGFwZXogY2V0dGUgY29tbWFuZGUgOiAgdmltIHR1dG9yIDxFbnRyw6llPgorICAgICAndmltJyBlc3QgbGEgY29tbWFuZGUgcG91ciBkw6ltYXJyZXIgbCfDqWRpdGV1ciBWaW0sICd0dXRvcicgZXN0IGxlCisgICAgIG5vbSBkdSBmaWNoaWVyIHF1ZSB2b3VzIHNvdWhhaXRleiDDqWRpdGVyLiBVdGlsaXNleiB1biBmaWNoaWVyIHF1aSBwZXV0CisgICAgIMOqdHJlIG1vZGlmacOpLgorCisgIDMuIEluc8OpcmV6IGV0IGVmZmFjZXogZHUgdGV4dGUgY29tbWUgdm91cyBsJ2F2ZXogYXBwcmlzIGRhbnMgbGVzIGxlw6dvbnMKKyAgICAgcHLDqWPDqWRlbnRlcy4KKworICA0LiBFbnJlZ2lzdHJleiBsZSBmaWNoaWVyIGF2ZWMgbGVzIGNoYW5nZW1lbnRzIGV0IHNvcnRleiBkZSBWaW0gYXZlYyA6CisgICAgICAgOndxIDxFbnRyw6llPgorCisgIDUuIFNpIHZvdXMgYXZleiBxdWl0dMOpIHZpbXR1dG9yIMOgIGwnw6l0YXBlIDEsIHJlY29tbWVuY2V6IHZpbXR1dG9yIGV0CisgICAgIGTDqXBsYWNlei12b3VzIGVuIGJhcyB2ZXJzIGxlIHLDqXN1bcOpIHN1aXZhbnQuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFLDiVNVTcOJIERFIExBIExFw4dPTiAxCisKIAogICAxLiBMZSBjdXJzZXVyIHNlIGTDqXBsYWNlIGF2ZWMgbGVzIHRvdWNoZXMgZmzDqWNow6llcyBvdSBsZXMgdG91Y2hlcyBoamtsLgotCSBoIChnYXVjaGUpCWogKGJhcykgICAgICAgIGsgKGhhdXQpICAgICAgIGwgKGRyb2l0ZSkKKyAgICAgICAgICAgaCAoZ2F1Y2hlKSAgICAgIGogKGJhcykgICAgICBrIChoYXV0KSAgICAgIGwgKGRyb2l0ZSkKIAotICAyLiBQb3VyIGVudHJlciBkYW5zIFZpbSAow6AgbCdpbnZpdGUgJSkgdGFwZXo6ICB2aW0gRklDSElFUiA8RW50csOpZT4KKyAgMi4gUG91ciBkw6ltYXJyZXIgVmltIMOgIGwnaW52aXRlIGR1IHNoZWxsIHRhcGV6IDogIHZpbSBGSUNISUVSIDxFbnRyw6llPgogCi0gIDMuIFBvdXIgcXVpdHRlciBWaW0gdGFwZXo6ICA8w4ljaGFwPiA6cSEgPEVudHLDqWU+ICBwb3VyIHBlcmRyZSB0b3VzIGxlcwotCQkJCQkJICAgIGNoYW5nZW1lbnRzLgotCQkgICBPVSB0YXBlejogIDzDiWNoYXA+IDp3cSA8RW50csOpZT4gIHBvdXIgZW5yZWdpc3RyZXIgbGVzCi0JCQkJCQkgICAgY2hhbmdlbWVudHMuCisgIDMuIFBvdXIgcXVpdHRlciBWaW0gdGFwZXogOiAgPMOJY2hhcD4gOnEhIDxFbnRyw6llPiAgcG91ciBwZXJkcmUgdG91cyBsZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlbWVudHMuCisgICAgICAgICAgICAgICAgICAgT1UgdGFwZXogOiAgPMOJY2hhcD4gOndxIDxFbnRyw6llPiAgcG91ciBlbnJlZ2lzdHJlciBsZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlbWVudHMuCiAKLSAgNC4gUG91ciBlZmZhY2VyIHVuIGNhcmFjdMOocmUgc291cyBsZSBjdXJzZXVyIGVuIG1vZGUgTm9ybWFsIHRhcGV6OiAgeAorICA0LiBQb3VyIGVmZmFjZXIgdW4gY2FyYWN0w6hyZSBzb3VzIGxlIGN1cnNldXIgdGFwZXogOiAgeAogCi0gIDUuIFBvdXIgaW5zw6lyZXIgZHUgdGV4dGUgYXUgbml2ZWF1IGR1IGN1cnNldXIgZW4gbW9kZSBOb3JtYWwgdGFwZXo6Ci0JIGkgICB0YXBleiBsZSB0ZXh0ZSAgIDzDiWNoYXA+CisgIDUuIFBvdXIgaW5zw6lyZXIgb3UgYWpvdXRlciBkdSB0ZXh0ZSB0YXBleiA6CisgICAgICAgICBpICAgdGFwZXogbGUgdGV4dGUgw6AgaW5zw6lyZXIgYXZhbnQgbGUgY3Vyc2V1ciAgIDzDiWNoYXA+CisgICAgICAgICBBICAgdGFwZXogbGUgdGV4dGUgw6AgYWpvdXRlciBhcHLDqHMgbGUgY3Vyc2V1ciAgIDzDiWNoYXA+CiAKLU5PVEU6IEFwcHV5ZXIgIDzDiWNoYXA+CXZvdXMgcGxhY2UgZW4gbW9kZSBOb3JtYWwgb3UgYW5udWxlIHVuZSBjb21tYW5kZQotICAgICAgcGFydGllbGxlbWVudCB0YXDDqWUgZG9udCB2b3VzIG5lIHZvdWRyaWV6IHBsdXMuCitOT1RFIDogQXBwdXllciAgPMOJY2hhcD4gIHZvdXMgcGxhY2UgZW4gbW9kZSBOb3JtYWwgb3UgYW5udWxlIHVuZSBjb21tYW5kZQorICAgICAgIHBhcnRpZWxsZW1lbnQgdGFww6llIGRvbnQgdm91cyBuZSB2b3VsZXogcGx1cy4KIAotUGFzc2V6IG1haW50ZW5hbnQgw6AgbGEgTGXDp29uIDIuCitQYXNzZXogbWFpbnRlbmFudCDDoCBsYSBsZcOnb24gMi4KKwogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSAgIExlw6dvbiAyLjEgOiBFRkZBQ0VNRU5UUworICAgICAgICAgICAgICAgICAgICAgICBMZcOnb24gMi4xIDogQ09NTUFOREVTIEQnRUZGQUNFTUVOVAogCiAKLQkgICAgKiogVGFwZXogIGR3ICBwb3VyIGVmZmFjZXIganVzcXUnw6AgbGEgZmluIGQndW4gbW90LiAqKgorICAgICAgICAgICAgICAgICAgICAgKiogVGFwZXogIGR3ICBwb3VyIGVmZmFjZXIgdW4gbW90LiAqKgogCiAgIDEuIEFwcHV5ZXogIDzDiWNoYXA+ICBwb3VyIMOqdHJlIHPDu3IgZCfDqnRyZSBlbiBtb2RlIE5vcm1hbC4KIApAQCAtMTQ3LDkxICsyMTAsMTM5IEBACiAKICAgMy4gUGxhY2V6IGxlIGN1cnNldXIgc3VyIGxlIGTDqWJ1dCBkJ3VuIG1vdCBxdWkgYSBiZXNvaW4gZCfDqnRyZSBlZmZhY8OpLgogCi0gIDQuIFRhcGV6ICBkdwlwb3VyIGZhaXJlIGRpc3BhcmHDrnRyZSBjZSBtb3QuCisgIDQuIFRhcGV6ICBkdyAgcG91ciBmYWlyZSBkaXNwYXJhw650cmUgY2UgbW90LgogCi1OT1RFOiBMZXMgbGV0dHJlcyAgZHcgIGFwcGFyYcOudHJvbnQgc3VyIGxhIGRlcm5pw6hyZSBsaWduZSBkZSBsJ8OpY3JhbiBsb3JzIGRlCi0gICAgICB2b3RyZSBmcmFwcGUuIFNpIHZvdXMgYXZleiBtYWwgdGFww6kgcXVlbHF1ZSBjaG9zZSwgYXBwdXlleiA8w4ljaGFwPiBldAotICAgICAgcmVjb21tZW5jZXouCitOT1RFIDogTGEgbGV0dHJlICBkICBhcHBhcmHDrnRyYSBzdXIgbGEgZGVybmnDqHJlIGxpZ25lIGRlIGwnw6ljcmFuIGxvcnMgZGUKKyAgICAgICB2b3RyZSBmcmFwcGUuIFZpbSBhdHRlbmQgcXVlIHZvdXMgdGFwaWV6ICB3IC4gU2kgdm91cyB2b3lleiB1biBhdXRyZQorICAgICAgIGNhcmFjdMOocmUgcXVlICBkICB2b3VzIGF2ZXogdGFww6kgYXV0cmUgY2hvc2UgOyBhcHB1eWV6IDzDiWNoYXA+IGV0CisgICAgICAgcmVjb21tZW5jZXouCiAKIC0tLT4gSWwgeSBhIHF1ZWxxdWVzIGRyw7RsZSBtb3RzIHF1aSBuJ29udCByaWVuIMOgIGZhaXJlIHBhcGllciBzdXIgY2V0dGUgbGlnbmUuCiAKICAgNS4gUsOpcMOpdGV6IGxlcyDDqXRhcGVzIDMgZXQgNCBqdXNxdSfDoCBjZSBxdWUgbGEgcGhyYXNlIHNvaXQgY29ycmVjdGUgZXQgYWxsZXoKICAgICAgw6AgbGEgTGXDp29uIDIuMi4KIAorCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCUxlw6dvbiAyLjIgOiBQTFVTIEQnRUZGQUNFTUVOVFMKKyAgICAgICAgICAgICAgICAgIExlw6dvbiAyLjIgOiBQTFVTIERFIENPTU1BTkRFUyBEJ0VGRkFDRU1FTlRTCiAKIAotCSAgKiogVGFwZXogIGQkCXBvdXIgZWZmYWNlciBqdXNxdSfDoCBsYSBmaW4gZGUgbGEgbGlnbmUuICoqCisgICAgICAgICAgKiogVGFwZXogIGQkICBwb3VyIGVmZmFjZXIganVzcXUnw6AgbGEgZmluIGRlIGxhIGxpZ25lLiAqKgogCiAgIDEuIEFwcHV5ZXogIDzDiWNoYXA+ICBwb3VyIMOqdHJlIHPDu3IgZCfDqnRyZSBlbiBtb2RlIE5vcm1hbC4KIAogICAyLiBEw6lwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgbGlnbmUgbWFycXXDqWUgLS0tPiBjaS1kZXNzb3VzLgogCi0gIDMuIETDqXBsYWNleiBsZSBjdXJzZXVyIGp1c3F1J8OgIGxhIGZpbiBjb3JyZWN0ZSBkZSBsYSBsaWduZQotICAgICAoQVBSw4hTIGxlIHByZW1pZXIgLiApLgorICAzLiBEw6lwbGFjZXogbGUgY3Vyc2V1ciBqdXNxdSfDoCBsYSBmaW4gZGUgbGEgbGlnbmUgY29ycmVjdGUgKEFQUsOIUyBsZQorICAgICBwcmVtaWVyIC4gKS4KIAotICA0LiBUYXBleiAgZCQJcG91ciBlZmZhY2VyIGp1c3F1J8OgIGxhIGZpbiBkZSBsYSBsaWduZS4KKyAgNC4gVGFwZXogIGQkICBwb3VyIGVmZmFjZXIganVzcXUnw6AgbGEgZmluIGRlIGxhIGxpZ25lLgogCiAtLS0+IFF1ZWxxdSd1biBhIHRhcMOpIGxhIGZpbiBkZSBjZXR0ZSBsaWduZSBkZXV4IGZvaXMuIGNldHRlIGxpZ25lIGRldXggZm9pcy4KIAogICA1LiBBbGxleiDDoCBsYSBMZcOnb24gMi4zIHBvdXIgY29tcHJlbmRyZSBjZSBxdWkgc2UgcGFzc2UuCiAKIAorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgTGXDp29uIDIuMyA6IMOAIFBST1BPUyBERVMgT1DDiVJBVEVVUlMgRVQgREVTIE1PVVZFTUVOVFMKIAogCisgIFBsdXNpZXVycyBjb21tYW5kZXMgcXVpIGNoYW5nZW50IGxlIHRleHRlIHNvbnQgY29uc3RpdHXDqWVzIGQndW4gb3DDqXJhdGV1cgorICBldCBkJ3VuIG1vdXZlbWVudC4gTGUgZm9ybWF0IHBvdXIgdW5lIGNvbW1hbmRlIGQnZWZmYWNlbWVudCBhdmVjIGwnb3DDqXJhdGV1cgorICBkICBkJ2VmZmFjZW1lbnQgZXN0IGxlIHN1aXZhbnQgOgorCisgICAgICAgIGQgICBtb3V2ZW1lbnQKKworICBPw7kgOgorICAgIGQgICAgICAgICAtIGVzdCBsJ29ww6lyYXRldXIgZCdlZmZhY2VtZW50CisgICAgbW91dmVtZW50IC0gZXN0IGxlIG1vdXZlbWVudCBzdXIgbGVxdWVsIGFnaXQgbCdvcMOpcmF0ZXVyIChsaXN0w6lzCisgICAgICAgICAgICAgICAgY2ktZGVzc291cykKKworICBVbmUgY291cnRlIGxpc3RlIGRlIG1vdXZlbWVudHMgOgorICAgIHcgLSBqdXNxdSdhdSBkw6lidXQgZHUgcHJvY2hhaW4gbW90LCBlbiBFWENMVUFOVCBzb24gcHJlbWllciBjYXJhY3TDqHJlLgorICAgIGUgLSBqdXNxdSfDoCBsYSBmaW4gZHUgbW90IGNvdXJhbnQsIGVuIEVYQ0xVQU5UIHNvbiBkZW5pZXIgY2FyYWN0w6hyZS4KKyAgICAkIC0ganVzcXUnw6AgbGEgZmluIGRlIGxhIGxpZ25lLCBlbiBJTkNMVUFOVCBzb24gZGVybmllciBjYXJhY3TDqHJlLgorCisgIEFpbnNpLCB0YXBlciAgZGUgIHZhIGVmZmFjZXIgZGVwdWlzIGxlIGN1cnNldXIganVzcXUnw6AgbGEgZmluIGR1IG1vdC4KKworTk9URSA6IExlIHNldWwgYXBwdWkgZCd1biBtb3V2ZW1lbnQgZW4gbW9kZSBOb3JtYWwsIHNhbnMgY29tbWFuZGUsIGTDqXBsYWNlIGxlCisgICAgICAgY3Vyc2V1ciBjb21tZSBpbmRpcXXDqS4KKwogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgTGXDp29uIDIuMyA6IERFUyBDT01NQU5ERVMgRVQgREVTIE9CSkVUUworICAgICAgICAgICAgTGXDp29uIDIuNCA6IFVUSUxJU0VSIFVOIFFVQU5USUZJQ0FURVVSIEFWRUMgVU4gTU9VVkVNRU5UCiAKIAotICBMZSBmb3JtYXQgZGUgbGEgY29tbWFuZGUgZCdlZmZhY2VtZW50ICBkICBlc3QgbGUgc3VpdmFudDoKKyAgICAgICAqKiBUYXBlciB1biBub21icmUgYXZhbnQgdW4gbW91dmVtZW50IGxlIHLDqXDDqHRlIGF1dGFudCBkZSBmb2lzLiAqKgogCi0JIFtub21icmVdICBkICBvYmpldAkgICBPVQkgICAgIGQJW25vbWJyZV0gIG9iamV0Ci0gIG/DuToKLSAgICBub21icmUgLSBlc3QgY29tYmllbiBkZSBmb2lzIGV4w6ljdXRlciBsYSBjb21tYW5kZSAob3B0aW9ubmVsLCBkw6lmYXV0OiAxKS4KLSAgICBkIC0gZXN0IGxhIGNvbW1hbmRlIGQnZWZmYWNlbWVudC4KLSAgICBvYmpldCAtIGVzdCBjZSBzdXIgcXVvaSBsYSBjb21tYW5kZSB2YSBvcMOpcmVyIChsaXN0ZSBjaS1kZXNzb3VzKS4KKyAgMS4gRMOpcGxhY2V6IGxlIGN1cnNldXIgYXUgZMOpYnV0IGRlIGxhIGxpZ25lIG1hcnF1w6llIC0tLT4gY2ktZGVzc291cy4KIAotICBVbmUgY291cnRlIGxpc3RlIGQnb2JqZXRzOgotICAgIHcgLSBkdSBjdXJzZXVyIGp1c3F1J8OgIGxhIGZpbiBkdSBtb3QsIHkgY29tcHJpcyBsJ2VzcGFjZSBxdWkgc3VpdC4KLSAgICBlIC0gZHUgY3Vyc2V1ciBqdXNxdSfDoCBsYSBmaW4gZHUgbW90LCBTQU5TIGwnZXNwYWNlIHF1aSBzdWl0LgotICAgICQgLSBkdSBjdXJzZXVyIGp1c3F1J8OgIGxhIGZpbiBkZSBsYSBsaWduZS4KKyAgMi4gVGFwZXogIDJ3ICBwb3VyIGTDqXBsYWNlciBsZSBjdXJzZXVyIGRlIDIgbW90cyB2ZXJzIGwnYXZhbnQuCiAKLU5PVEU6IFBvdXIgbGVzIGF2ZW50dXJldXgsIGxlIHNldWwgYXBwdWkgZCcgb2JqZXQgIGVuIG1vZGUgTm9ybWFsLCBzYW5zCi0gICAgICBjb21tYW5kZSwgZMOpcGxhY2UgbGUgY3Vyc2V1ciBjb21tZSBpbmRpcXXDqSBkYW5zIGxhIGxpc3RlIGRlcyBvYmpldHMuCisgIDMuIFRhcGV6ICAzZSAgcG91ciBkw6lwbGFjZXIgbGUgY3Vyc2V1ciDDoCBsYSBmaW4gZHUgdHJvaXNpw6htZSBtb3QgdmVycworICAgICBsJ2F2YW50LgogCisgIDQuIFRhcGV6ICAwICAoesOpcm8pIHBvdXIgZMOpcGxhY2VyIGF1IGTDqWJ1dCBkZSBsYSBsaWduZS4KIAorICA1LiBSw6lww6l0ZXogbGVzIMOpdGFwZXMgMiBldCAzIGF2ZWMgZGVzIHF1YW50aWZpY2F0ZXVycyBkaWZmw6lyZW50cy4KKworLS0tPiBDZWNpIGVzdCBqdXN0ZSB1bmUgbGlnbmUgYXZlYyBkZXMgbW90cyBvw7kgdm91cyBwb3V2ZXogdm91cyBkw6lwbGFjZXIuCisKKyAgNi4gRMOpcGxhY2V6LXZvdXMgw6AgbGEgTGXDp29uIDIuNS4KIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJIExlw6dvbiAyLjQgOiBVTkUgRVhDRVBUSU9OIMOAICdDT01NQU5ERS1PQkpFVCcKKyAgICAgICAgICAgIExlw6dvbiAyLjUgOiBVVElMSVNFUiBVTiBRVUFOVElGSUNBVEVVUiBQT1VSIEVGRkFDRVIgUExVUwogCi0JICAgICAgKiogVGFwZXoJZGQgIHBvdXIgZWZmYWNlciB1bmUgbGlnbmUgY29tcGzDqHRlLiAqKgorCisgICAgICAgKiogVGFwZXIgdW4gbm9tYnJlIGF2ZWMgdW4gb3DDqXJhdGV1ciBsZSByw6lww6h0ZSBhdXRhbnQgZGUgZm9pcy4gKioKKworICBPdXRyZSBsYSBjb21iaW5haXNvbiBkZSBsJ29ww6lyYXRldXIgZCdlZmZhY2VtZW50IGF2ZWMgdW4gZMOpcGxhY2VtZW50CisgIG1lbnRpb25uw6kgY2ktZGVzc3VzLCB2b3VzIHBvdXZleiBpbnPDqXJlciB1biBub21icmUgKHF1YW50aWZpY2F0ZXVyKQorICBwb3VyIGVmZmFjZXogZW5jb3JlIHBsdXMgOgorICAgICAgIGQgICBub21icmUgICBkw6lwbGFjZW1lbnQKKworICAxLiBEw6lwbGFjZXogbGUgY3Vyc2V1ciB2ZXJzIGxlIHByZW1pZXIgbW90IGVuIE1BSlVTQ1VMRVMgZGFucyBsYSBsaWduZQorICAgICBtYXJxdcOpZSAtLS0+LgorCisgIDIuIFRhcGV6ICBkMncgIHBvdXIgZWZmYWNlciBsZXMgZGV1eCBtb3RzIGVuIE1BSlVTQ1VMRVMuCisKKyAgMy4gUsOpcMOpdGV6IGxlcyDDqXRhcGVzIDEgZXQgMiBhdmVjIGRlcyBxdWFudGlmaWNhdGV1cnMgZGlmZsOpcmVudHMgcG91cgorICAgICBlZmZhY2VyIGxlcyBtb3RzIHN1aXZhbnRzIGVuIE1BSlVTQ1VMRVMgw6AgbCdhaWRlIGQndW5lIGNvbW1hbmRlLgorCistLS0+IENldHRlIEFCQyBERSBsaWduZSBGR0hJIEpLIExNTiBPUCBkZSBtb3RzIGVzdCBRIFJTIFRVViBuZXR0b3nDqWUuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgICAgIExlw6dvbiAyLjYgOiBPUMOJUkVaIFNVUiBERVMgTElHTkVTCisKKworICAgICAgICAgICAgICAqKiBUYXBleiAgIGRkICAgcG91ciBlZmZhY2VyIHVuZSBsaWduZSBjb21wbMOodGUuICoqCiAKICAgVnUgbGUgbm9tYnJlIGRlIGZvaXMgb8O5IGwnb24gZWZmYWNlIGRlcyBsaWduZXMgY29tcGzDqHRlcywgbGVzIGNvbmNlcHRldXJzCi0gIGRlIFZpIG9udCBkw6ljaWTDqSBxdSdpbCBzZXJhaXQgcGx1cyBmYWNpbGUgZGUgdGFwZXIgc2ltcGxlbWVudCBkZXV4IGQgw6AgbGEKLSAgc3VpdGUgcG91ciBlZmZhY2VyIHVuZSBsaWduZS4KKyAgZGUgVmkgb250IGTDqWNpZMOpIHF1J2lsIHNlcmFpdCBwbHVzIGZhY2lsZSBkZSB0YXBlciBzaW1wbGVtZW50IGRldXggIGQKKyAgcG91ciBlZmZhY2VyIHVuZSBsaWduZS4KIAogICAxLiBQbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgc2Vjb25kZSBsaWduZSBkZSBsYSBwaHJhc2UgY2ktZGVzc291cy4KLSAgMi4gVGFwZXogIGRkCXBvdXIgZWZmYWNlciBsYSBsaWduZS4KKyAgMi4gVGFwZXogIGRkICBwb3VyIGVmZmFjZXIgbGEgbGlnbmUuCiAgIDMuIE1haW50ZW5hbnQgYWxsZXogw6AgbGEgcXVhdHJpw6htZSBsaWduZS4KLSAgNC4gVGFwZXogIDJkZCAgKHJhcHBlbGV6LXZvdXMsIG5vbWJyZS1jb21tYW5kZS1vYmpldCkgcG91ciBlZmZhY2VyIGxlcwotICAgICBkZXV4IGxpZ25lcy4KKyAgNC4gVGFwZXogICAyZGQgICBwb3VyIGVmZmFjZXIgZGV1eCBsaWduZXMuCiAKLSAgICAgIDEpICBMZXMgcm9zZXMgc29udCByb3VnZXMsCi0gICAgICAyKSAgTGEgYm91ZSBjJ2VzdCBkcsO0bGUsCi0gICAgICAzKSAgTGVzIHZpb2xldHRlcyBzb250IGJsZXVlcywKLSAgICAgIDQpICBKJ2FpIHVuZSB2b2l0dXJlLAotICAgICAgNSkgIExlcyBob3Jsb2dlcyBkb25uZW50IGwnaGV1cmUsCi0gICAgICA2KSAgTGUgc3VjcmUgZXN0IGRvdXgKLSAgICAgIDcpICBUb3V0IGNvbW1lIHZvdXMuCistLS0+ICAxKSAgTGVzIHJvc2VzIHNvbnQgcm91Z2VzLAorLS0tPiAgMikgIExhIGJvdWUgYydlc3QgZHLDtGxlLAorLS0tPiAgMykgIExlcyB2aW9sZXR0ZXMgc29udCBibGV1ZXMsCistLS0+ICA0KSAgSidhaSB1bmUgdm9pdHVyZSwKKy0tLT4gIDUpICBMZXMgaG9ybG9nZXMgZG9ubmVudCBsJ2hldXJlLAorLS0tPiAgNikgIExlIHN1Y3JlIGVzdCBkb3V4CistLS0+ICA3KSAgVG91dCBjb21tZSB2b3VzLgorCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkJICAgIExlw6dvbiAyLjUgOiBMJ0FOTlVMQVRJT04KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZcOnb24gMi43IDogTCdBTk5VTEFUSU9OCiAKLQkgICAgKiogVGFwZXogIHUgIHBvdXIgYW5udWxlciBsZXMgZGVybmnDqHJlcyBjb21tYW5kZXMuICoqCi0JICAgICAgICoqIFRhcGV6ICBVICBwb3VyIHLDqWN1cMOpcmVyIHRvdXRlIHVuZSBsaWduZS4gKioKKworICAgICAgICAgICAgKiogVGFwZXogIHUgIHBvdXIgYW5udWxlciBsZXMgZGVybmnDqHJlcyBjb21tYW5kZXMuICoqCisgICAgICAgICAgICAgICAqKiBUYXBleiAgVSAgcG91ciByw6ljdXDDqXJlciB0b3V0ZSB1bmUgbGlnbmUuICoqCiAKICAgMS4gRMOpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIGxpZ25lIG1hcnF1w6llIC0tLT4gY2ktZGVzc291cyBldCBwbGFjZXotbGUgc3VyCiAgICAgIGxhIHByZW1pw6hyZSBlcnJldXIuCkBAIC0yMzksMTAgKzM1MCwxMCBAQAogICAzLiBQdWlzIHRhcGV6ICB1ICBwb3VyIGFubnVsZXIgbGEgZGVybmnDqHJlIGNvbW1hbmRlIGV4w6ljdXTDqWUuCiAgIDQuIENldHRlIGZvaXMsIGNvcnJpZ2V6IHRvdXRlcyBsZXMgZXJyZXVycyBkZSBsYSBsaWduZSBhdmVjIGxhIGNvbW1hbmRlICB4IC4KICAgNS4gUHVpcyB0YXBleiB1biAgVSAgbWFqdXNjdWxlIHBvdXIgcmVtZXR0cmUgbGEgbGlnbmUgZGFucyBzb24gw6l0YXQgaW5pdGlhbC4KLSAgNi4gUHVpcyB0YXBleiAgdSAgZGV1eC10cm9pcyBmb2lzIHBvdXIgYW5udWxlciBsZSAgVQlldCBsZXMgY29tbWFuZGVzCisgIDYuIFB1aXMgdGFwZXogIHUgIGRldXgtdHJvaXMgZm9pcyBwb3VyIGFubnVsZXIgbGUgIFUgIGV0IGxlcyBjb21tYW5kZXMKICAgICAgcHLDqWPDqWRlbnRlcy4KLSAgNy4gTWFpbnRlbmFudCB0YXBleiAgQ3RybC1SICAobWFpbnRlbmV6IGxhIHRvdWNoZSBDdHJsIGVuZm9uY8OpZSBwZW5kYW50IHF1ZQotICAgICB2b3VzIGFwcHV5ZXogc3VyIFIpIGRldXgtdHJvaXMgZm9pcyBwb3VyIHJlZmFpcmUgbGVzIGNvbW1hbmRlcyAoYW5udWxlcgorICA3LiBNYWludGVuYW50IHRhcGV6ICBDVFJMLVIgIChtYWludGVuZXogbGEgdG91Y2hlIENUUkwgZW5mb25jw6llIHBlbmRhbnQgcXVlCisgICAgIHZvdXMgYXBwdXlleiBSKSBkZXV4LXRyb2lzIGZvaXMgcG91ciByZWZhaXJlIGxlcyBjb21tYW5kZXMgKGFubnVsZXIKICAgICAgbGVzIGFubnVsYXRpb25zKS4KIAogLS0tPiBDb29ycmlnZXogbGVzIGVycmV1cnMgc3V1ciBjY2V0dGUgbGlnbmUgZXQgcmVlbWV0dGV6LWxlcyBhdnZlYyAnYW5udWxlcicuCkBAIC0yNTAsNTcgKzM2MSw2NCBAQAogICA4LiBDZSBzb250IGRlcyBjb21tYW5kZXMgdHLDqHMgdXRpbGVzLiBNYWludGVuYW50LCBhbGxleiBhdSByw6lzdW3DqSBkZSBsYQogICAgICBMZcOnb24gMi4KIAotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgICAgIFLDiVNVTcOJIERFIExBIExFw4dPTiAyCi0KLQotICAxLiBQb3VyIGVmZmFjZXIgZHUgY3Vyc2V1ciBqdXNxdSfDoCBsYSBmaW4gZCd1biBtb3QgdGFwZXo6CWR3Ci0KLSAgMi4gUG91ciBlZmZhY2VyIGR1IGN1cnNldXIganVzcXUnw6AgbGEgZmluIGQndW5lIGxpZ25lIHRhcGV6OglkJAotCi0gIDMuIFBvdXIgZWZmYWNlciB0b3V0ZSB1bmUgbGlnbmUgdGFwZXo6ICBkZAotCi0gIDQuIExlIGZvcm1hdCBkJ3VuZSBjb21tYW5kZSBlbiBtb2RlIE5vcm1hbCBlc3Q6Ci0KLSAgICAgICBbbm9tYnJlXSAgY29tbWFuZGUgIG9iamV0ICAgICBPVSAgICAgY29tbWFuZGUgIFtub21icmVdCW9iamV0Ci0gICAgIG/DuToKLSAgICAgICBub21icmUgLSBlc3QgY29tYmllbiBkZSBmb2lzIHLDqXDDqXRlciBsYSBjb21tYW5kZQotICAgICAgIGNvbW1hbmRlIC0gZXN0IGNlIHF1J2lsIGZhdXQgZmFpcmUsIHBhciBleGVtcGxlCWQgIHBvdXIgZWZmYWNlcgotICAgICAgIG9iamV0IC0gZXN0IGNlIHN1ciBxdW9pIGxhIGNvbW1hbmRlIGRldnJhaXQgYWdpciwgcGFyIGV4ZW1wbGUgdyAobW90KSwKLQkgICAgICAgJCAoanVzcXUnw6AgbGEgZmluIGRlIGxhIGxpZ25lKSwgZXRjLgotCi0gIDUuIFBvdXIgYW5udWxlciBkZXMgYWN0aW9ucyBwcsOpY8OpZGVudGVzLCB0YXBlejoJICAgICB1CSh1IG1pbnVzY3VsZSkKLSAgICAgUG91ciBhbm51bGVyIHRvdXMgbGVzIGNoYW5nZW1lbnRzIHN1ciB1bmUgbGlnbmUgdGFwZXo6ICBVCShVIG1hanVzY3VsZSkKLSAgICAgUG91ciBhbm51bGVyIGwnYW5udWxhdGlvbiB0YXBlejoJCQkgICAgIEN0cmwtUgogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSAgICAgTGXDp29uIDMuMSA6IExFIENPTExBR0UKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUsOJU1VNw4kgREUgTEEgTEXDh09OIDIKIAogCi0gICAqKiBUYXBleiAgcAlwb3VyIHBsYWNlciBhcHLDqHMgbGUgY3Vyc2V1ciBjZSBxdWkgdmllbnQgZCfDqnRyZSBlZmZhY8OpLiAqKgorICAxLiBQb3VyIGVmZmFjZXIgZHUgY3Vyc2V1ciBqdXNxdSdhdSBtb3Qgc3VpdmFudCB0YXBleiA6ICAgICAgICAgZHcKIAotICAxLiBQbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgcHJlbWnDqHJlIGxpZ25lIGR1ICJwb8OobWUiIGNpLWRlc3NvdXMuCisgIDIuIFBvdXIgZWZmYWNlciBkdSBjdXJzZXVyIGp1c3F1J8OgIGxhIGZpbiBkJ3VuZSBsaWduZSB0YXBleiA6ICAgZCQKIAotICAyLiBUYXBleiAgZGQJcG91ciBlZmZhY2VyIGxhIGxpZ25lIGV0IGxhIHBsYWNlciBkYW5zIGxlIHRhbXBvbiBkZSBWaW0uCisgIDMuIFBvdXIgZWZmYWNlciB0b3V0ZSB1bmUgbGlnbmUgdGFwZXogOiAgICAgICAgICAgICAgICAgICAgICAgICBkZAogCi0gIDMuIETDqXBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBsaWduZSBxdWkgUFLDiUPDiERFIGwnZW5kcm9pdCBvw7kgdm91cyB2b3VsZXoKLSAgICAgcmVtZXR0cmUgbGEgbGlnbmUgZWZmYWPDqWUuCisgIDQuIFBvdXIgcsOpcMOpdGVyIHVuIGTDqXBsYWNlbWVudCBham91dGV6IHVuIHF1YW50aWZpY2F0ZXVyIDogICAgICAydwogCi0gIDQuIEVuIG1vZGUgTm9ybWFsLCB0YXBleiAgcCAgcG91ciByZW1ldHRyZSBsYSBsaWduZS4KKyAgNS4gTGUgZm9ybWF0IGQndW5lIGNvbW1hbmRlIGRlIGNoYW5nZW1lbnQgZXN0IDoKKworICAgICAgIG9ww6lyYXRldXIgICBbbm9tYnJlXSAgIGTDqXBsYWNlbWVudAorCisgICAgIE/DuSA6CisgICAgICAgb3DDqXJhdGV1ciAgIC0gZXN0IGNlIHF1J2lsIGZhdXQgZmFpcmUsIGNvbW1lICBkICBwb3VyIGVmZmFjZXIuCisgICAgICAgW25vbWJyZV0gICAgLSB1biBxdWFudGlmaWNhdGV1ciBvcHRpb25uZWwgcG91ciByw6lww6l0ZXIgbGUgZMOpcGxhY2VtZW50LgorICAgICAgIGTDqXBsYWNlbWVudCAtIGTDqXBsYWNlIGxlIGxvbmcgZHUgdGV4dGUgw6Agb3DDqXJlciwgdGVsIHF1ZSAgdyAgKG1vdCksCisgICAgICAgICAgICAgICAgICAgICAkIChqdXNxdSfDoCBsYSBmaW4gZGUgbGlnbmUpLCBldGMuCisKKyAgNi4gUG91ciBzZSBkw6lwbGFjZXIgYXUgZMOpYnV0IGRlIGxpZ25lLCB1dGlsaXNleiB1biB6w6lybyA6ICAwCisKKyAgNS4gUG91ciBhbm51bGVyIGRlcyBhY3Rpb25zIHByw6ljw6lkZW50ZXMsIHRhcGV6IDogICAgICAgICAgICB1ICh1IG1pbnVzY3VsZSkKKyAgICAgUG91ciBhbm51bGVyIHRvdXMgbGVzIGNoYW5nZW1lbnRzIHN1ciB1bmUgbGlnbmUgdGFwZXogOiAgVSAoVSBtYWp1c2N1bGUpCisgICAgIFBvdXIgYW5udWxlciBsJ2FubnVsYXRpb24gdGFwZXogOiAgICAgICAgICAgICAgICAgICAgICAgIENUUkwtUgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZcOnb24gMy4xIDogTEUgQ09MTEFHRQorCisKKyAgICoqIFRhcGV6ICBwICBwb3VyIHBsYWNlciBhcHLDqHMgbGUgY3Vyc2V1ciBjZSBxdWkgdmllbnQgZCfDqnRyZSBlZmZhY8OpLiAqKgorCisgIDEuIFBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBwcmVtacOocmUgbGlnbmUgY2ktZGVzc291cyBtYXJxdcOpZSAtLS0+LgorCisgIDIuIFRhcGV6ICBkZCAgcG91ciBlZmZhY2VyIGxhIGxpZ25lIGV0IGxhIHBsYWNlciBkYW5zIHVuIHJlZ2lzdHJlIGRlIFZpbS4KKworICAzLiBEw6lwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgbGlnbmUgYykgYXUgZGVzc3VzIG/DuSB2b3VzIHZvdWxleiByZW1ldHRyZSBsYQorICAgICBsaWduZSBlZmZhY8OpZS4KKworICA0LiBFbiBtb2RlIE5vcm1hbCwgdGFwZXogICBwICAgcG91ciByZW1ldHRyZSBsYSBsaWduZSBlbiBkZXNzb3VzIGR1IGN1cnNldXIuCiAKICAgNS4gUsOpcMOpdGV6IGxlcyDDqXRhcGVzIDIgw6AgNCBwb3VyIG1ldHRyZSB0b3V0ZXMgbGVzIGxpZ25lcyBkYW5zIGxlIGJvbiBvcmRyZS4KIAotICAgICBkKSBFdCB2b3VzLCBxdSdhcHByZW5lei12b3VzID8KLSAgICAgYikgTGVzIHZpb2xldHRlcyBzb250IGJsZXVlcywKLSAgICAgYykgTCdpbnRlbGxpZ2VuY2UgcydhcHByZW5kLAotICAgICBhKSBMZXMgcm9zZXMgc29udCByb3VnZXMsCistLS0+IGQpIEV0IHZvdXMsIHF1J2FwcHJlbmV6LXZvdXMgPworLS0tPiBiKSBMZXMgdmlvbGV0dGVzIHNvbnQgYmxldWVzLAorLS0tPiBjKSBMJ2ludGVsbGlnZW5jZSBzJ2FwcHJlbmQsCistLS0+IGEpIExlcyByb3NlcyBzb250IHJvdWdlcywKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSBMZcOnb24gMy4yIDogTEUgUkVNUExBQ0VNRU5UCisgICAgICAgICAgICAgICAgICAgIExlw6dvbiAzLjIgOiBMQSBDT01NQU5ERSBERSBSRU1QTEFDRU1FTlQKIAogCi0gKiogVGFwZXogIHIgIGV0IHVuIGNhcmFjdMOocmUgcG91ciByZW1wbGFjZXIgbGUgY2FyYWN0w6hyZSBzb3VzIGxlIGN1cnNldXIuICoqCisgICAgICoqIFRhcGV6ICByeCAgcG91ciByZW1wbGFjZXIgdW4gY2FyYWN0w6hyZSBzb3VzIGxlIGN1cnNldXIgcGFyICB4IC4gKioKIAogICAxLiBEw6lwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgcHJlbWnDqHJlIGxpZ25lIG1hcnF1w6llIC0tLT4gY2ktZGVzc291cy4KIApAQCAtMzA4LDMxICs0MjYsMzIgQEAKIAogICAzLiBUYXBleiAgciAgc3VpdmkgZHUgY2FyYWN0w6hyZSBxdWkgZG9pdCBjb3JyaWdlciBsJ2VycmV1ci4KIAotICA0LiBSw6lww6l0ZXogbGVzIMOpdGFwZXMgMiBldCAzIGp1c3F1J8OgIGNlIHF1ZSBsYSBwcmVtacOocmUgbGlnbmUgc29pdCBjb3JyZWN0ZS4KKyAgNC4gUsOpcMOpdGV6IGxlcyDDqXRhcGVzIDIgZXQgMyBqdXNxdSfDoCBjZSBxdWUgbGEgcHJlbWnDqHJlIGxpZ25lIHNvaXQgw6lnYWxlCisgICAgIMOgIGxhIHNlY29uZGUuCiAKIC0tLT4gIFF1YW5kIGNldHRlIGxpZ25lIGEgw6l0w6kgc2F1dmllLCBxdWVscXUndW4gYSBsYWl0IGRlcyBmYXVuZXMgZGUgZnJhcHBlICEKIC0tLT4gIFF1YW5kIGNldHRlIGxpZ25lIGEgw6l0w6kgc2Fpc2llLCBxdWVscXUndW4gYSBmYWl0IGRlcyBmYXV0ZXMgZGUgZnJhcHBlICEKIAogICA1LiBNYWludGVuYW50LCBhbGxleiDDoCBsYSBMZcOnb24gMy4zLgogCi1OT1RFOiBOJ291YmxpZXogcGFzIHF1ZSB2b3VzIGRldnJpZXogYXBwcmVuZHJlIHBhciBsYSBwcmF0aXF1ZSwgcGFzIHBhcgotICAgICAgbcOpbW9yaXNhdGlvbi4KK05PVEUgOiBOJ291YmxpZXogcGFzIHF1ZSB2b3VzIGRldnJpZXogYXBwcmVuZHJlIHBhciBsYSBwcmF0aXF1ZSwgcGFzIHBhcgorICAgICAgIG3DqW1vcmlzYXRpb24uCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgIExlw6dvbiAzLjMgOiBMRSBDSEFOR0VNRU5UCisgICAgICAgICAgICAgICAgICAgICBMZcOnb24gMy4zIDogTCdPUMOJUkFURVVSIERFIENIQU5HRU1FTlQKIAogCi0JICAgICoqIFBvdXIgY2hhbmdlciB0b3V0IG91IHBhcnRpZSBkJ3VuIG1vdCwgdGFwZXogIGN3IC4qKgorICAgICAgICAgICAgKiogUG91ciBjaGFuZ2VyIGp1c3F1J8OgIGxhIGZpbiBkJ3VuIG1vdCwgdGFwZXogIGNlIC4qKgogCiAgIDEuIETDqXBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBwcmVtacOocmUgbGlnbmUgbWFycXXDqWUgLS0tPiBjaS1kZXNzb3VzLgogCi0gIDIuIFBsYWNleiBsZSBjdXJzZXVyIHN1ciBsZSB1IGRlIGx1aGtvLgorICAyLiBQbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGUgIHUgIGRlIGx1aGtvLgogCi0gIDMuIFRhcGV6ICBjdwlldCBjb3JyaWdleiBsZSBtb3QgKGRhbnMgbm90cmUgY2FzLCB0YXBleiAgJ2lnbmUnLikKKyAgMy4gVGFwZXogIGNlICBldCBjb3JyaWdleiBsZSBtb3QgKGRhbnMgbm90cmUgY2FzLCB0YXBleiAgJ2lnbmUnLikKIAotICA0LiBBcHB1eWV6IDzDiWNoYXA+IGV0IHBsYWNlei12b3VzIHN1ciBsJ2VycmV1ciBzdWl2YW50ZSAobGUgcHJlbWllcgotICAgICBjYXJhY3TDqHJlIHF1aSBkb2l0IMOqdHJlIGNoYW5nw6kpLgorICA0LiBBcHB1eWV6IDzDiWNoYXA+IGV0IHBsYWNlei12b3VzIHN1ciBsZSBwcm9jaGFpbiBjYXJhY3TDqHJlIHF1aSBkb2l0CisgICAgIMOqdHJlIGNoYW5nw6kpLgogCiAgIDUuIFLDqXDDqXRleiBsZXMgw6l0YXBlcyAzIGV0IDQganVzcXUnw6AgY2UgcXVlIGxhIHByZW1pw6hyZSBwaHJhc2Ugc29pdAogICAgICBpZGVudGlxdWUgw6AgbGEgc2Vjb25kZS4KQEAgLTM0MCwxNzEgKzQ1OSwxODkgQEAKIC0tLT4gQ2V0dGUgbHVoa28gY29udGllbnQgcXVlbHF1ZXMgbXlxYSBxdWkgb250IHJpY25lIGQnw6p0cmUgY2hhbnR1ZmlwLgogLS0tPiBDZXR0ZSBsaWduZSBjb250aWVudCBxdWVscXVlcyBtb3RzIHF1aSBvbnQgYmVzb2luIGQnw6p0cmUgY2hhbmfDqXMuCiAKLU5vdGV6IHF1ZSAgY3cgIGVmZmFjZSBsZSBtb3QgZXQgdm91cyBwbGFjZSBlbnN1aXRlIGVuIG1vZGUgSW5zZXJ0aW9uLgorTm90ZXogcXVlICBjZSAgZWZmYWNlIGxlIG1vdCBldCB2b3VzIHBsYWNlIGVuc3VpdGUgZW4gbW9kZSBJbnNlcnRpb24uCisKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCSAgICBMZcOnb24gMy40IDogUExVUyBERSBDSEFOR0VNRU5UUyBBVkVDIGMKKyAgICAgICAgICAgICAgICAgICAgTGXDp29uIDMuNCA6IFBMVVMgREUgQ0hBTkdFTUVOVFMgQVZFQyBjCiAKIAotICAgICoqIExlIGNoYW5nZW1lbnQgZm9uY3Rpb25uZSBhdmVjIGxlcyBtw6ptZXMgb2JqZXRzIHF1ZSBsJ2VmZmFjZW1lbnQuICoqCisgICAgKiogTCdvcMOpcmF0ZXVyIGRlIGNoYW5nZW1lbnQgZm9uY3Rpb25uZSBhdmVjIGxlcyBtw6ptZXMgZMOpcGxhY2VtZW50cworICAgICAgIHF1ZSBsJ2VmZmFjZW1lbnQuICoqCiAKLSAgMS4gTGUgY2hhbmdlbWVudCBmb25jdGlvbm5lIGRlIGxhIG3Dqm1lIG1hbmnDqHJlIHF1ZSBsJ2VmZmFjZW1lbnQuCi0gICAgIExlIGZvcm1hdCBlc3Q6CisgIDEuIEwnb3DDqXJhdGV1ciBkZSBjaGFuZ2VtZW50IGZvbmN0aW9ubmUgZGUgbGEgbcOqbWUgbWFuacOocmUgcXVlCisgICAgIGwnZWZmYWNlbWVudC4gTGUgZm9ybWF0IGVzdCA6CiAKLQkgW25vbWJyZV0gIGMgIG9iamV0CSAgIE9VCSAgICAgYwlbbm9tYnJlXSAgb2JqZXQKKyAgICAgICAgIGMgICBbbm9tYnJlXSAgIGTDqXBsYWNlbWVudAogCi0gIDIuIExlcyBvYmpldHMgc29udCDDqWdhbGVtZW50IGxlcyBtw6ptZXM6ICB3IChtb3QpLCAkIChmaW4gZGUgbGlnbmUpLCBldGMuCisgIDIuIExlcyBkw6lwbGFjZW1lbnRzIHNvbnQgaWRlbnRpcXVlcyA6ICB3IChtb3QpIGV0ICAkIChmaW4gZGUgbGlnbmUpLgogCi0gIDMuIETDqXBsYWNlei12b3VzIMOgIGxhIHByZW1pw6hyZSBsaWduZSBtYXJxdcOpZSAtLS0+IGNpLWRlc3NvdXMuCisgIDMuIETDqXBsYWNlei12b3VzIHN1ciBsYSBwcmVtacOocmUgbGlnbmUgbWFycXXDqWUgLS0tPiBjaS1kZXNzb3VzLgogCiAgIDQuIFBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBwcmVtacOocmUgZXJyZXVyLgogCi0gIDUuIFRhcGV6ICBjJAlwb3VyIGNoYW5nZXIgbGEgZmluIGRlIGxhIGxpZ25lLCByZW5kZXotbMOgIGlkZW50aXF1ZSDDoCBsYQotICAgICBzZWNvbmRlIGxpZ25lLCBwdWlzIHRhcGV6IDzDiWNoYXA+LgorICA1LiBUYXBleiAgYyQgIGV0IHRhcGV6IGxlIHJlc3RlIGRlIGxhIGxpZ25lIGFmaW4gcXUnZWxsZSBzb2l0IGlkZW50aXF1ZQorICAgICDDoCBsYSBzZWNvbmRlIGxpZ25lLCBwdWlzIHRhcGV6IDzDiWNoYXA+LgogCiAtLS0+IExhIGZpbiBkZSBjZXR0ZSBsaWduZSBkb2l0IMOqdHJlIHJlbmR1ZSBpZGVudGlxdWUgw6AgbGEgc2Vjb25kZS4KLS0tLT4gTGEgZmluIGRlIGNldHRlIGxpZ25lIGRvaXQgw6p0cmUgY29ycmlnw6llIGF2ZWMgbGEgY29tbWFuZGUJYyQgLgorLS0tPiBMYSBmaW4gZGUgY2V0dGUgbGlnbmUgZG9pdCDDqnRyZSBjb3JyaWfDqWUgYXZlYyBsYSBjb21tYW5kZSAgYyQgLgorCitOT1RFIDogIFZvdXMgcG91dmV6IHV0aWxpc2V6IGxhIHRvdWNoZSBSZXRvdXIgQXJyacOocmUgcG91ciBjb3JyaWdlciBsZXMKKyAgICAgICAgZXJyZXVycyBsb3JzcXVlIHZvdXMgdGFwZXouCisKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgICAgIFLDiVNVTcOJIERFIExBIExFw4dPTiAzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFLDiVNVTcOJIERFIExBIExFw4dPTiAzCiAKIAotICAxLiBQb3VyIHJlbWV0dHJlIGR1IHRleHRlIHF1aSB2aWVudCBkJ8OqdHJlIGVmZmFjw6ksIHRhcGV6ICBwIC4gQ2VsYSBQbGFjZSBsZQorICAxLiBQb3VyIHJlbWV0dHJlIGxlIHRleHRlIHF1aSBhIGTDqWrDoCDDqXTDqSBlZmZhY8OpLCB0YXBleiAgcCAuIENlbGEgUGxhY2UgbGUKICAgICAgdGV4dGUgZWZmYWPDqSBBUFLDiFMgbGUgY3Vyc2V1ciAoc2kgdW5lIGxpZ25lIGNvbXBsw6h0ZSBhIMOpdMOpIGVmZmFjw6llLCBlbGxlCiAgICAgIHNlcmEgcGxhY8OpZSBzb3VzIGxhIGxpZ25lIGR1IGN1cnNldXIpLgogCiAgIDIuIFBvdXIgcmVtcGxhY2VyIGxlIGNhcmFjdMOocmUgc291cyBsZSBjdXJzZXVyLCB0YXBleiAgciAgc3VpdmkgZHUgY2FyYWN0w6hyZQogICAgICBxdWkgcmVtcGxhY2VyYSBsJ29yaWdpbmFsLgogCi0gIDMuIExlIGNoYW5nZW1lbnQgdm91cyBwZXJtZXQgZGUgY2hhbmdlciBsJ29iamV0IHNww6ljaWZpw6ksIGR1IGN1cnNldXIganVzcXUnw6AKLSAgICAgbGEgZmluIGRlIGwnb2JqZXQuIFBhciBleGVtcGxlLCB0YXBleiAgY3cJcG91ciBjaGFuZ2VyIGR1IGN1cnNldXIKLSAgICAganVzcXUnw6AgbGEgZmluIGR1IG1vdCwgIGMkICBwb3VyIGNoYW5nZXIganVzcXUnw6AgbGEgZmluIGQndW5lIGxpZ25lLgorICAzLiBMJ29ww6lyYXRldXIgZGUgY2hhbmdlbWVudCB2b3VzIHBlcm1ldCBkZSBjaGFuZ2VyIGRlcHVpcyBsYSBwb3NpdGlvbiBkdQorICAgICBjdXJzZXVyIGp1c3F1J2/DuSBsZSBkw6lwbGFjZW1lbnQgdm91cyBhbcOobmUuIFBhciBleGVtcGxlLCB0YXBleiAgY2UKKyAgICAgcG91ciBjaGFuZ2VyIGR1IGN1cnNldXIganVzcXUnw6AgbGEgZmluIGR1IG1vdCwgIGMkICBwb3VyIGNoYW5nZXIganVzcXUnw6AKKyAgICAgbGEgZmluIGQndW5lIGxpZ25lLgogCi0gIDQuIExlIGZvcm1hdCBwb3VyIGxlIGNoYW5nZW1lbnQgZXN0OgorICA0LiBMZSBmb3JtYXQgcG91ciBsZSBjaGFuZ2VtZW50IGVzdCA6CiAKLQkgW25vbWJyZV0gIGMgIG9iamV0CSAgIE9VCSAgICAgYwlbbm9tYnJlXSAgb2JqZXQKKyAgICAgICAgIGMgICBbbm9tYnJlXSAgIGTDqXBsYWNlbWVudAogCiBQYXNzZXogbWFpbnRlbmFudCDDoCBsYSBsZcOnb24gc3VpdmFudGUuCiAKIAotCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgTGXDp29uIDQuMSA6IFBPU0lUSU9OIEVUIMOJVEFUIERVIEZJQ0hJRVIKKyAgICAgICAgICAgICAgIExlw6dvbiA0LjEgOiBQT1NJVElPTiBEVSBDVVJTRVVSIEVUIMOJVEFUIERVIEZJQ0hJRVIKIAogCi0gICoqIFRhcGV6IEN0cmwtRyBwb3VyIGFmZmljaGVyIHZvdHJlIHBvc2l0aW9uIGRhbnMgbGUgZmljaGllciBldCBzb24gw6l0YXQuCi0gICAgIFV0aWxpc2V6IE1hai1HIHBvdXIgdm91cyByZW5kcmUgw6AgdW5lIGxpZ25lIGRvbm7DqWUgZHUgZmljaGllci4gKioKKyAgKiogVGFwZXogQ1RSTC1HIHBvdXIgYWZmaWNoZXIgdm90cmUgcG9zaXRpb24gZGFucyBsZSBmaWNoaWVyIGV0IHNvbiDDqXRhdC4KKyAgICAgVGFwZXogIEcgIHBvdXIgdm91cyByZW5kcmUgw6AgdW5lIGxpZ25lIGRvbm7DqWUgZHUgZmljaGllci4gKioKIAotICBOb3RlOiBMaXNleiB0b3V0ZSBjZXR0ZSBsZcOnb24gYXZhbnQgZCdlZmZlY3R1ZXIgbCd1bmUgZGVzIMOpdGFwZXMgIQorTk9URSA6IExpc2V6IHRvdXRlIGNldHRlIGxlw6dvbiBhdmFudCBkJ2VmZmVjdHVlciBsJ3VuZSBkZXMgw6l0YXBlcyAhIQogCi0gIDEuIE1haW50ZW5leiBlbmZvbmPDqWUgbGEgdG91Y2hlIEN0cmwgZXQgYXBwdXlleiBzdXIgIEcgLiAgVW5lIGxpZ25lIGQnw6l0YXQKLSAgICAgdmEgYXBwYXJhw650cmUgZW4gYmFzIGRlIGwnw6ljcmFuIGF2ZWMgbGUgbm9tIGR1IGZpY2hpZXIgZXQgbGUgbnVtw6lybyBkZSBsYQotICAgICBsaWduZSBvw7kgdm91cyDDqnRlcy4gIE5vdGV6IGNlIG51bcOpcm8sIGlsIHNlcnZpcmEgbG9ycyBkZSBsJ8OpdGFwZSAzLgorICAxLiBNYWludGVuZXogZW5mb25jw6llIGxhIHRvdWNoZSBDVFJMIGV0IGFwcHV5ZXogc3VyICBnIC4gT24gYXBwZWxsZSBjZWxhCisgICAgIENUUkwtRy4gVW5lIGxpZ25lIGQnw6l0YXQgdmEgYXBwYXJhw650cmUgZW4gYmFzIGRlIGwnw6ljcmFuIGF2ZWMgbGUgbm9tCisgICAgIGR1IGZpY2hpZXIgZXQgbGUgbnVtw6lybyBkZSBsYSBsaWduZSBvw7kgdm91cyDDqnRlcy4gTm90ZXogY2UgbnVtw6lybywgaWwKKyAgICAgc2VydmlyYSBsb3JzIGRlIGwnw6l0YXBlIDMuCiAKLSAgMi4gVGFwZXogIEcgIG1hanVzY3VsZSAoTWFqLUcpIHBvdXIgdm91cyByZW5kcmUgw6AgbGEgZmluIGR1IGZpY2hpZXIuCitOT1RFIDogVm91cyBwb3V2ZXogcGV1dC3DqnRyZSB2b2lyIGxlIGN1cnNldXIgZW4gYmFzIMOgIGRyb2l0ZSBkZSBsJ8OpY3Jhbi4KKyAgICAgICBDZWNpIGFycml2ZSBxdWFuZCBsJ29wdGlvbiAncnVsZXInIGVzdCBhY3RpdsOpZSAodm9pciAgOmhlbHAgJ3J1bGVyJykKIAotICAzLiBUYXBleiBsZSBudW3DqXJvIGRlIGxhIGxpZ25lIG/DuSB2b3VzIMOpdGlleiBzdWl2aSBkZSBNYWotRy4JQ2VsYSB2b3VzCi0gICAgIHJhbcOobmVyYSDDoCBsYSBsaWduZSBvw7kgdm91cyDDqXRpZXogYXUgZMOpcGFydC4KLSAgICAgKExvcnNxdWUgdm91cyB0YXBleiBsZXMgY2hpZmZyZXMsIGlscyBuJ2FwcGFyYWlzc2VudCBQQVMgw6AgbCfDqWNyYW4pLgorICAyLiBUYXBleiAgRyAgIHBvdXIgdm91cyBkw6lwbGFjZXIgw6AgbGEgZmluIGR1IGZpY2hpZXIuCisgICAgIFRhcGV6ICBnZyAgcG91ciB2b3VzIGTDqXBsYWNlciBhdSBkw6lidXQgZHUgZmljaGllci4KKworICAzLiBUYXBleiBsZSBudW3DqXJvIGRlIGxhIGxpZ25lIG/DuSB2b3VzIMOpdGlleiBzdWl2aSBkZSAgIEcgLiBDZWxhIHZvdXMKKyAgICAgcmFtw6huZXJhIMOgIGxhIGxpZ25lIG/DuSB2b3VzIMOpdGlleiBhdSBkw6lwYXJ0IHF1YW5kIHZvdXMgYXZpZXogYXBwdXnDqQorICAgICBDVFJMLUcuCiAKICAgNC4gU2kgdm91cyB2b3VzIHNlbnRleiBwcsOqdCDDoCBmYWlyZSBjZWNpLCBlZmZlY3R1ZXogbGVzIMOpdGFwZXMgMSDDoCAzLgogCiAKLQogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgICAgTGXDp29uIDQuMiA6IExBIFJFQ0hFUkNIRQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlw6dvbiA0LjIgOiBMQSBSRUNIRVJDSEUKIAogCi0JICAqKiBUYXBleiAgLyAgc3VpdmkgZCd1biB0ZXh0ZSBwb3VyIHJlY2hlcmNoZXIgY2UgdGV4dGUuICoqCisgICAgICAgICAgKiogVGFwZXogIC8gIHN1aXZpIGQndW4gdGV4dGUgcG91ciByZWNoZXJjaGVyIGNlIHRleHRlLiAqKgogCiAgIDEuIFRhcGV6IGxlIGNhcmFjdMOocmUgIC8gIGVuIG1vZGUgTm9ybWFsLiBOb3RleiBxdWUgY2VsdWktY2kgZXQgbGUgY3Vyc2V1cgogICAgICBhcHBhcmFpc3NlbnQgZW4gYmFzIGRlIGwnw6ljcmFuLCBjb21tZSBsb3JzcXVlIGwnb24gdXRpbGlzZSAgOiAuCiAKLSAgMi4gUHVpcyB0YXBleiAnZXJycmV1dXInIDxFbnRyw6llPi4gIEMnZXN0IGxlIG1vdCBxdWUgdm91cyB2b3VsZXogcmVjaGVyY2hlci4KKyAgMi4gUHVpcyB0YXBleiAnZXJycmV1dXInIDxFbnRyw6llPi4gQydlc3QgbGUgbW90IHF1ZSB2b3VzIHZvdWxleiByZWNoZXJjaGVyLgogCi0gIDMuIFBvdXIgcmVjaGVyY2hlciDDoCBub3V2ZWF1IGxlIG3Dqm1lIHRleHRlLCB0YXBleiBzaW1wbGVtZW50CW4gLgotICAgICBQb3VyIHJlY2hlcmNoZXIgbGUgbcOqbWUgdGV4dGUgZGFucyBsYSBkaXJlY3Rpb24gb3Bwb3PDqWUsIHRhcGV6ICBNYWotTiAuCisgIDMuIFBvdXIgcmVjaGVyY2hlciDDoCBub3V2ZWF1IGxlIG3Dqm1lIHRleHRlLCB0YXBleiBzaW1wbGVtZW50ICBuIC4KKyAgICAgUG91ciByZWNoZXJjaGVyIGxlIG3Dqm1lIHRleHRlIGRhbnMgbGEgZGlyZWN0aW9uIG9wcG9zw6llLCB0YXBleiAgTiAuCiAKLSAgNC4gU2kgdm91cyB2b3VsZXogcmVjaGVyY2hlciB1biB0ZXh0ZSB2ZXJzIGxlIGhhdXQgZHUgZmljaGllciwgdXRpbGlzZXogID8KLSAgICAgw6AgbGEgcGxhY2UgZGUgIC8gLgorICA0LiBQb3VyIHJlY2hlcmNoZXIgdW5lIHBocmFzZSBkYW5zIGxhIGRpcmVjdGlvbiBvcHBvc8OpZSwgdXRpbGlzZXogID8KKyAgICAgYXUgbGlldSBkZSAgLyAuCiAKLS0tLT4gZXJyZXVyIG5lIHMnw6ljcml0IHBhcyAiZXJycmV1dXIiOyBlcnJyZXV1ciBlc3QgdW5lIGVycmV1ci4KKy0tLT4gZXJyZXVyIG5lIHMnw6ljcml0IHBhcyAiZXJycmV1dXIiIDsgZXJycmV1dXIgZXN0IHVuZSBlcnJldXIuCiAKLU5vdGU6IFF1YW5kIGxhIHJlY2hlcmNoZSBhdHRlaW50IGxhIGZpbiBkdSBmaWNoaWVyLCBlbGxlIHJlcHJlbmQgYXUgZMOpYnV0LgotCitOT1RFIDogUXVhbmQgbGEgcmVjaGVyY2hlIGF0dGVpbnQgbGEgZmluIGR1IGZpY2hpZXIsIGVsbGUgcmVwcmVuZCBhdSBkw6lidXQKKyAgICAgICBzYXVmIHNpIGwnb3B0aW9uICd3cmFwc2NhbicgZXN0IGTDqWFjdGl2w6llLgogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCSAgICBMZcOnb24gNC4zIDogUkVDSEVSQ0hFIERFUyBQQVJFTlRIw4hTRVMgQ09SUkVTUE9OREFOVEVTCisgICAgICAgICAgICBMZcOnb24gNC4zIDogUkVDSEVSQ0hFIERFUyBQQVJFTlRIw4hTRVMgQ09SUkVTUE9OREFOVEVTCiAKIAotCSAgICoqIFRhcGV6ICAlCXBvdXIgdHJvdXZlciBkZXMgKSwgXSBvdSB9IGNvcnJlc3BvbmRhbnRzLiAqKgorICAgICAgICAgICAqKiBUYXBleiAgJSAgcG91ciB0cm91dmVyIGRlcyApLCBdIG91IH0gY29ycmVzcG9uZGFudHMuICoqCiAKICAgMS4gUGxhY2V6IGxlIGN1cnNldXIgc3VyIGwndW4gZGVzICgsIFsgb3UgeyBkZSBsYSBsaWduZSBtYXJxdcOpZSAtLS0+CiAgICAgIGNpLWRlc3NvdXMuCiAKICAgMi4gUHVpcyB0YXBleiBsZSBjYXJhY3TDqHJlICAlIC4KIAotICAzLiBMZSBjdXJzZXVyIGRldnJhaXQgc2UgcGxhY2VyIHN1ciBsYSBwYXJlbnRow6hzZSBjb3JyZXNwb25kYW50ZS4KKyAgMy4gTGUgY3Vyc2V1ciBzZSBkw6lwbGFjZXJhIHN1ciBsYSBwYXJlbnRow6hzZSBvdXQgY3JvY2hldCBjb3JyZXNwb25kYW50LgogCi0gIDQuIFRhcGV6ICAlICBwb3VyIHJlcGxhY2VyIGxlIGN1cnNldXIgc3VyIGwnYXV0cmUgcGFyZW50aMOoc2UuCisgIDQuIFRhcGV6ICAlICBwb3VyIHJlcGxhY2VyIGxlIGN1cnNldXIgc3VyIGxhIHBhcmVudGjDqHNlIG91IGNyb2NoZXQKKyAgICAgY29ycmVzcG9uZGFudC4KKworICA1LiBEw6lwbGFjZXogbGUgY3Vyc2V1ciBzdXIgdW4gYXV0cmUgKCwpLFssXSx7IG91IH0gZXQgcmVnYXJkZXogY2UgcXVlCisgICAgIGZhaXQgICUgLgogCiAtLS0+IFZvaWNpICggdW5lIGxpZ25lIGRlIHRlc3QgY29udGVuYW50IGRlcyAoLCBkZXMgWyBdIGV0IGRlcyB7IH0gKSkuCiAKLU5vdGU6IENldHRlIGZvbmN0aW9ubmFsaXTDqSBlc3QgdHLDqHMgdXRpbGUgbG9ycyBkdSBkw6lib2dhZ2UgZCd1biBwcm9ncmFtbWUgcXVpCi0gICAgICBjb250aWVudCBkZXMgcGFyZW50aMOoc2VzIGTDqXPDqXF1aWxpYnLDqWVzICEKLQotCitOT1RFIDogQ2V0dGUgZm9uY3Rpb25uYWxpdMOpIGVzdCB0csOocyB1dGlsZSBsb3JzIGR1IGTDqWJvZ2FnZSBkJ3VuIHByb2dyYW1tZSBxdWkKKyAgICAgICBjb250aWVudCBkZXMgcGFyZW50aMOoc2VzIGTDqXPDqXF1aWxpYnLDqWVzICEKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkgICAgICAgTGXDp29uIDQuNCA6IFVORSBNQU5Jw4hSRSBERSBDT1JSSUdFUiBMRVMgRVJSRVVSUworICAgICAgICAgICAgICAgICAgICBMZcOnb24gNC40IDogTEEgQ09NTUFOREUgREUgU1VCU1RJVFVUSU9OCiAKIAotICAqKiBUYXBleiAgOnMvYW5jaWVuL25vdXZlYXUvZyAgcG91ciByZW1wbGFjZXIgJ2FuY2llbicgcGFyICdub3V2ZWF1Jy4gICoqCisgICAgKiogVGFwZXogIDpzL2FuY2llbi9ub3V2ZWF1L2cgIHBvdXIgcmVtcGxhY2VyICdhbmNpZW4nIHBhciAnbm91dmVhdScuICoqCiAKICAgMS4gRMOpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIGxpZ25lIG1hcnF1w6llIC0tLT4gY2ktZGVzc291cy4KIAogICAyLiBUYXBleiAgOnMvbGVlL2xlIDxFbnRyw6llPiAuIE5vdGV6IHF1ZSBjZXR0ZSBjb21tYW5kZSBjaGFuZ2Ugc2V1bGVtZW50IGxhCi0gICAgIHByZW1pw6hyZSBvY2N1cmVuY2Ugc3VyIGxhIGxpZ25lLgorICAgICBwcmVtacOocmUgb2NjdXJyZW5jZSBkZSAibGVlIiBkYW5zIGxhIGxpZ25lLgogCi0gIDMuIFB1aXMgdGFwZXogIDpzL2xlZS9sZS9nICBxdWkgb3Jkb25uZSBkZSBmYWlyZSB1bmUgc3Vic3RpdHV0aW9uIGdsb2JhbGUKLSAgICAgc3VyIGxhIGxpZ25lLiBDZWxhIGNoYW5nZSB0b3V0ZXMgbGVzIG9jY3VyZW5jZXMgc3VyIGxhIGxpZ25lCisgIDMuIFB1aXMgdGFwZXogIDpzL2xlZS9sZS9nIC4gTCdham91dCBkdSBkcmFwZWF1ICBnICBvcmRvbm5lIGRlIGZhaXJlIHVuZQorICAgICBzdWJzdGl0dXRpb24gZ2xvYmFsZSBzdXIgbGEgbGlnbmUsIGV0IGNoYW5nZSB0b3V0ZXMgbGVzIG9jY3VycmVuY2VzIGRlCisgICAgICJsZWUiIHN1ciBsYSBsaWduZS4KIAotLS0tPiBsZWUgbWVpbGxldXIgbW9tZW50IHBvdXIgcmVnYXJkZXIgbGVlcyBmbGV1cnMgZXN0IHBlbmRhbnQgbGVlIFByaW50ZW1wcy4KKy0tLT4gbGVlIG1laWxsZXVyIG1vbWVudCBwb3VyIHJlZ2FyZGVyIGxlZXMgZmxldXJzIGVzdCBwZW5kYW50IGxlZSBwcmludGVtcHMuCiAKLSAgNC4gUG91ciBjaGFuZ2VyIHRvdXRlcyBsZXMgb2NjdXJlbmNlcyBkJ3VuIHRleHRlLCBlbnRyZSBkZXV4IGxpZ25lcywKLSAgICAgdGFwZXogIDojLCNzL2FuY2llbi9ub3V2ZWF1L2cgIG/DuSAjLCMgc29udCBsZXMgbnVtw6lyb3MgZGVzIGRldXggbGlnbmVzLgotICAgICBUYXBleiAgOiVzL2FuY2llbi9ub3V2ZWF1L2cgICAgcG91ciBjaGFuZ2VyIGNoYXF1ZSBvY2N1cmVuY2UgZGFucyB0b3V0Ci0JCQkJICAgIGxlIGZpY2hpZXIuCisgIDQuIFBvdXIgY2hhbmdlciB0b3V0ZXMgbGVzIG9jY3VycmVuY2VzIGQndW4gdGV4dGUsIGVudHJlIGRldXggbGlnbmVzLAorICAgICB0YXBleiAgOiMsI3MvYW5jaWVuL25vdXZlYXUvZyAgb8O5ICMsIyBzb250IGxlcyBudW3DqXJvcyBkZSBsaWduZXMgZGUgbGEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWdlIG/DuSBsYSBzdWJzdGl0dXRpb24gZG9pdCDDqnRyZSBmYWl0ZS4KKyAgICAgVGFwZXogIDolcy9hbmNpZW4vbm91dmVhdS9nICAgIHBvdXIgY2hhbmdlciB0b3V0ZXMgbGVzIG9jY3VycmVuY2VzIGRhbnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdXQgbGUgZmljaGllci4KKyAgICAgVGFwZXogIDolcy9hbmNpZW4vbm91dmVhdS9nYyAgIHBvdXIgdHJvdXZlciB0b3V0ZXMgbGVzIG9jY3VycmVuY2VzIGRhbnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdXQgbGUgZmljaGllciBhdmVjIHVuZSBpbnZpdGUgcG91cgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlybWVyIG91IGluZmlybWVyIGNoYXF1ZSBzdWJzdGl0dXRpb24uCiAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSAgICAgUsOJU1VNw4kgREUgTEEgTEXDh09OIDQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUsOJU1VNw4kgREUgTEEgTEXDh09OIDQKIAogCi0gIDEuIEN0cmwtRyAgYWZmaWNoZSB2b3RyZSBwb3NpdGlvbiBkYW5zIGxlIGZpY2hpZXIgZXQgbCfDqXRhdCBkZSBjZWx1aS1jaS4KLSAgICAgTWFqLUcgIHZvdXMgcGxhY2Ugw6AgbGEgZmluIGR1IGZpY2hpZXIuIFVuIG51bcOpcm8gZGUgbGlnbmUgc3VpdmkgZGUgTWFqLUcKLSAgICAgdm91cyBwbGFjZSDDoCBjZXR0ZSBsaWduZS4KKyAgMS4gQ1RSTC1HICAgICAgIGFmZmljaGUgbGEgcG9zaXRpb24gZGFucyBsZSBmaWNoaWVyIGV0IGwnw6l0YXQgZGUgY2VsdWktY2kuCisgICAgICAgICAgICAgICBHICBkw6lwbGFjZSDDoCBsYSBmaW4gZHUgZmljaGllci4KKyAgICAgbm9tYnJlICAgIEcgIGTDqXBsYWNlIGF1IG51bcOpcm8gZGUgbGlnbmUuCisgICAgICAgICAgICAgIGdnICBkw6lwbGFjZSDDoCBsYSBwcmVtacOocmUgbGlnbmUuCiAKICAgMi4gVGFwZXIgIC8gIHN1aXZpIGQndW4gdGV4dGUgcmVjaGVyY2hlIGNlIHRleHRlIHZlcnMgbCdBVkFOVC4KICAgICAgVGFwZXIgID8gIHN1aXZpIGQndW4gdGV4dGUgcmVjaGVyY2hlIGNlIHRleHRlIHZlcnMgbCdBUlJJw4hSRS4KLSAgICAgQXByw6hzIHVuZSByZWNoZXJjaGUgdGFwZXoJbiAgcG91ciB0cm91dmVyIGwnb2NjdXJlbmNlIHN1aXZhbnRlIGRhbnMgbGEKLSAgICAgbcOqbWUgZGlyZWN0aW9uIG91CU1hai1OICBwb3VyIHJlY2hlcmNoZXIgZGFucyBsYSBkaXJlY3Rpb24gb3Bwb3PDqWUuCisgICAgIEFwcsOocyB1bmUgcmVjaGVyY2hlIHRhcGV6ICBuICBwb3VyIHRyb3V2ZXIgbCdvY2N1cnJlbmNlIHN1aXZhbnRlIGRhbnMgbGEKKyAgICAgbcOqbWUgZGlyZWN0aW9uIG91ICBNYWotTiAgcG91ciByZWNoZXJjaGVyIGRhbnMgbGEgZGlyZWN0aW9uIG9wcG9zw6llLgogCiAgIDMuIFRhcGVyICAlICBsb3JzcXVlIGxlIGN1cnNldXIgZXN0IHN1ciAgKCwgKSwgWywgXSwgeyBvdSB9ICBkw6lwbGFjZQogICAgICBjZWx1aS1jaSBzdXIgbGUgY2FyYWN0w6hyZSBjb3JyZXNwb25kYW50LgogCi0gIDQuIFBvdXIgcmVtcGxhY2VyIGxlIHByZW1pZXIgYWEgcGFyIGJiIHN1ciB1bmUgbGlnbmUgdGFwZXoJIDpzL2FhL2JiCi0gICAgIFBvdXIgcmVtcGxhY2VyIHRvdXMgbGVzIGFhIHBhciBiYiBzdXIgdW5lIGxpZ25lIHRhcGV6CSA6cy9hYS9iYi9nCi0gICAgIFBvdXIgcmVtcGxhY2VyIGR1IHRleHRlIGVudHJlIGRldXggbnVtw6lyb3MgZGUgbGlnbmUgdGFwZXoJIDojLCNzL2FhL2JiL2cKLSAgICAgUG91ciByZW1wbGFjZXIgdG91dGVzIGxlcyBvY2N1cmVuY2VzIGRhbnMgbGUgZmljaGllciB0YXBleiAgOiVzL2FhL2JiL2cKLSAgICAgUG91ciBkZW1hbmRlciB1bmUgY29uZmlybWF0aW9uIMOgIGNoYXF1ZSBmb2lzIGFqb3V0ZXogJ2MnCSA6JXMvYWEvYmIvZ2MKKyAgNC4gUG91ciByZW1wbGFjZXIgbGUgcHJlbWllciBhYSBwYXIgYmIgc3VyIHVuZSBsaWduZSB0YXBleiAgICAgOnMvYWEvYmIKKyAgICAgUG91ciByZW1wbGFjZXIgdG91cyBsZXMgYWEgcGFyIGJiIHN1ciB1bmUgbGlnbmUgdGFwZXogICAgICAgOnMvYWEvYmIvZworICAgICBQb3VyIHJlbXBsYWNlciBkdSB0ZXh0ZSBlbnRyZSBkZXV4IG51bcOpcm9zIGRlIGxpZ25lIHRhcGV6ICAgOiMsI3MvYWEvYmIvZworICAgICBQb3VyIHJlbXBsYWNlciB0b3V0ZXMgbGVzIG9jY3VycmVuY2VzIGRhbnMgbGUgZmljaGllciB0YXBleiA6JXMvYWEvYmIvZworICAgICBQb3VyIGRlbWFuZGVyIHVuZSBjb25maXJtYXRpb24gw6AgY2hhcXVlIGZvaXMgYWpvdXRleiAnYycgICAgOiVzL2FhL2JiL2djCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JICAgICAgTGXDp29uIDUuMSA6IENPTU1FTlQgRVjDiUNVVEVSIFVORSBDT01NQU5ERSBFWFRFUk5FCisgICAgICAgICAgICAgIExlw6dvbiA1LjEgOiBDT01NRU5UIEVYw4lDVVRFUiBVTkUgQ09NTUFOREUgRVhURVJORQogCiAKICAqKiBUYXBleiAgOiEgIHN1aXZpIGQndW5lIGNvbW1hbmRlIGV4dGVybmUgcG91ciBleMOpY3V0ZXIgY2V0dGUgY29tbWFuZGUuICoqCkBAIC01MTYsMjk0ICs2NTMsMzg2IEBACiAgICAgIG4naW1wb3J0ZSBxdWVsbGUgY29tbWFuZGUgdmFsaWRlIHBvdXIgdm90cmUgaW50ZXJwcsOpdGV1ciAoc2hlbGwpLgogCiAgIDMuIFBhciBleGVtcGxlLCB0YXBleiAgbHMgIGFwcsOocyBsZSAgISAgZXQgYXBwdXlleiA8RW50csOpZT4uIENlY2kgYWZmaWNoZXJhCi0gICAgIGxhIGxpc3RlIGRlcyBmaWNoaWVycyBkdSBkb3NzaWVyIGNvdXJhbnQsIGNvbW1lIHNpIHZvdXMgYXZpZXogdGFww6kgbGEKLSAgICAgY29tbWFuZGUgw6AgbCdpbnZpdGUgZHUgc2hlbGwuIFV0aWxpc2V6ICA6IWRpciAgc2kJOiFscyAgbmUgbWFyY2hlIHBhcy4KKyAgICAgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIGR1IHLDqXBlcnRvaXJlIGNvdXJhbnQsIGNvbW1lIHNpIHZvdXMgYXZpZXogdGFww6kgbGEKKyAgICAgY29tbWFuZGUgw6AgbCdpbnZpdGUgZHUgc2hlbGwuIFV0aWxpc2V6ICA6IWRpciAgc2kgIDohbHMgIG5lIG1hcmNoZSBwYXMuCiAKLU5vdGU6ICBJbCBlc3QgcG9zc2libGUgZCdleMOpY3V0ZXIgbidpbXBvcnRlIHF1ZWxsZSBjb21tYW5kZSBleHRlcm5lIGRlIGNldHRlCi0gICAgICAgbWFuacOocmUuCitOT1RFIDogIElsIGVzdCBwb3NzaWJsZSBkJ2V4w6ljdXRlciBuJ2ltcG9ydGUgcXVlbGxlIGNvbW1hbmRlIGV4dGVybmUgZGUgY2V0dGUKKyAgICAgICAgbWFuacOocmUsIGF2ZWMgb3Ugc2FucyBhcmd1bWVudC4KIAotTm90ZTogIFRvdXRlcyBsZXMgY29tbWFuZGVzICA6ICBkb2l2ZW50IGZpbmlyIHBhciBsYSBmcmFwcGUgZGUgPEVudHLDqWU+LgotCitOT1RFIDogIFRvdXRlcyBsZXMgY29tbWFuZGVzICA6ICBkb2l2ZW50IGZpbmlyIHBhciBsYSBmcmFwcGUgZGUgPEVudHLDqWU+LgorICAgICAgICDDgCBwYXJ0aXIgZGUgbWFpbnRlbmFudCwgbm91cyBuZSBsZSBtZW50aW9ubmVyb25zIHBsdXMuCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JIExlw6dvbiA1LjIgOiBQTFVTIERFIETDiVRBSUxTIFNVUiBMJ0VOUkVHSVNUUkVNRU5UIERFIEZJQ0hJRVJTCisgICAgICAgICBMZcOnb24gNS4yIDogUExVUyBERSBEw4lUQUlMUyBTVVIgTCdFTlJFR0lTVFJFTUVOVCBERSBGSUNISUVSUwogCiAKLSAqKiBQb3VyIGVucmVnaXN0cmVyIGxlcyBjaGFuZ2VtZW50cyBmYWl0cyBhdSBmaWNoaWVyLCB0YXBleiAgOncgRklDSElFUiAuICoqCisgKiogUG91ciBlbnJlZ2lzdHJlciBsZXMgY2hhbmdlbWVudHMgZmFpdHMgYXUgdGV4dGUsIHRhcGV6ICA6dyBGSUNISUVSIC4gKioKIAotICAxLiBUYXBleiAgOiFkaXIgIG91ICA6IWxzICBwb3VyIGF2b2lyIGxhIGxpc3RlIGRlcyBmaWNoaWVycyBkdSBkb3NzaWVyCi0gICAgIGNvdXJhbnQuIFZvdXMgc2F2ZXogZMOpasOgIHF1J2lsIGZhdXQgYXBwdXllciA8RW50csOpZT4gYXByw6hzIGNlbGEuCisgIDEuIFRhcGV6ICA6IWRpciAgb3UgIDohbHMgIHBvdXIgYXZvaXIgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIGRhbnMgbGUKKyAgICAgcsOpcGVydG9pcmUgY291cmFudC4gVm91cyBzYXZleiBkw6lqw6AgcXUnaWwgZmF1dCBhcHB1eWVyIDxFbnRyw6llPiBhcHLDqHMKKyAgICAgY2VsYS4KIAogICAyLiBDaG9pc2lzc2V6IHVuIG5vbSBkZSBmaWNoaWVyIHF1aSBuJ2V4aXN0ZSBwYXMgZW5jb3JlLCBwYXIgZXhlbXBsZSBURVNULgogCiAgIDMuIFB1aXMgdGFwZXogIDp3IFRFU1QgIChvw7kgVEVTVCBlc3QgbGUgbm9tIHF1ZSB2b3VzIGF2ZXogY2hvaXNpKS4KIAotICA0LiBDZWxhIHNhdXZlZ2FyZGUgdG91dCBsZSBmaWNoaWVyIChUdXRvcmllbCBWaW0pIHNvdXMgbGUgbm9tIFRFU1QuCi0gICAgIFBvdXIgbGUgdsOpcmlmaWVyLCB0YXBleiAgOiFkaXIgIHBvdXIgcmV2aXN1YWxpc2VyIGxlIGNvbnRlbnUgZHUgZG9zc2llci4KKyAgNC4gQ2VsYSBlbnJlZ2lzdHJlIHRvdXQgbGUgZmljaGllciAoVHV0b3JpZWwgVmltKSBzb3VzIGxlIG5vbSBURVNULgorICAgICBQb3VyIGxlIHbDqXJpZmllciwgdGFwZXogIDohZGlyICBvdSAgOiFscyAgZGUgbm91dmVhdSBwb3VyIHJldmlzdWFsaXNlcgorICAgICB2b3RyZSByw6lwZXJ0b2lyZS4KIAotTm90ZXogcXVlIHNpIHZvdXMgcXVpdHRleiBWaW0gZXQgeSByZXRvdXJuZXogYXZlYyBsZSBmaWNoaWVyIFRFU1QsIGNlbHVpLWNpCi1zZXJhIHVuZSBjb3BpZSBleGFjdGUgZHUgY291cnMgYXUgbW9tZW50IG/DuSB2b3VzIGwnYXZleiBzYXV2w6kuCitOT1RFIDogU2kgdm91cyBxdWl0dGV6IFZpbSBldCBsZSByZWTDqW1hcnJleiBkZSBub3V2ZWF1IGF2ZWMgbGUgZmljaGllciBURVNULAorICAgICAgIGNlbHVpLWNpIHNlcmEgdW5lIGNvcGllIGV4YWN0ZSBkZSBjZSBjb3VycyBhdSBtb21lbnQgb8O5IHZvdXMgbCdhdmV6CisgICAgICAgZW5yZWdpc3Ryw6kuCiAKLSAgNS4gTWFpbnRlbmFudCwgZWZmYWNleiBsZSBmaWNoaWVyIGVuIHRhcGFudCAoTVMtRE9TKTogICAgOiFkZWwgVEVTVAotCQkJCQkgICBvdSAoVW5peCk6CSAgIDohcm0gVEVTVAorICA1LiBNYWludGVuYW50LCBlZmZhY2V6IGxlIGZpY2hpZXIgZW4gdGFwYW50IChNUy1ET1MpIDogICA6IWRlbCBURVNUCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3UgKFVuaXgpIDogICAgIDohcm0gVEVTVAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICAgTGXDp29uIDUuMyA6IFVOIEVOUkVHSVNUUkVNRU5UIFPDiUxFQ1RJRgorICAgICAgICAgICAgICAgICAgTGXDp29uIDUuMyA6IFPDiUxFQ1RJT04gRFUgVEVYVEUgw4AgRU5SRUdJU1RSRVIKIAogCi0gICAgICoqIFBvdXIgZW5yZWdpc3RyZXIgdW5lIHBvcnRpb24gZGUgZmljaGllciwgdGFwZXoJOiMsI3cgRklDSElFUiAqKgorICAgICAgICAgICAgICAgICAgKiogUG91ciBlbnJlZ2lzdHJlciB1bmUgcG9ydGlvbiBkdSBmaWNoaWVyLAorICAgICAgICAgICAgICAgICAgICAgIHRhcGV6IDogICB2ICBkw6lwbGFjZW1lbnQgIDp3IEZJQ0hJRVIgICoqCiAKLSAgMS4gVGFwZXogw6Agbm91dmVhdSAgOiFkaXIgIG91ICA6IWxzICBwb3VyIHZpc3VhbGlzZXIgbGUgY29udGVudSBkdSBkb3NzaWVyCi0gICAgIGNvdXJhbnQgZXQgY2hvaXNpc3NleiB1biBub20gZGUgZmljaGllciwgdGVsIHF1ZSBURVNULgorICAxLiBEw6lwbGFjZXogbGUgY3Vyc2V1ciBzdXIgY2V0dGUgbGlnbmUuCiAKLSAgMi4gRMOpcGxhY2V6IGxlIGN1cnNldXIganVzcXUnZW4gaGF1dCBkZSBjZXR0ZSBwYWdlIGV0IHRhcGV6ICBDdHJsLUcgIHBvdXIKLSAgICAgY29ubmHDrnRyZSBsZSBudW3DqXJvIGRlIGNldHRlIGxpZ25lLiBOT1RFWiBDRSBOVU3DiVJPICEKKyAgMi4gQXBwdXlleiAgdiAgZXQgZMOpcGxhY2V6IGxlIGN1cnNldXIgdmVycyBsYSBjaW5xdWnDqG1lIGxpZ25lIHBsdXMgYmFzLgorICAgICBSZW1hcnF1ZXogcXVlIGxlIHRleHRlIGVzdCBlbiBzdXJicmlsbGFuY2UuCiAKLSAgMy4gUHVpcyByZW5kZXotdm91cyBhdSBiYXMgZGUgY2V0dGUgcGFnZSBldCB0YXBleiDDoCBub3V2ZWF1ICBDdHJsLUcgLgotICAgICBOT1RFWiDDiUdBTEVNRU5UIENFIE5VTcOJUk8gIQorICAzLiBBcHB1eWV6ICA6ICAuIEVuIGJhcyBkZSBsJ8OpY3JhbiAgOic8LCc+IHZhIGFwcGFyYcOudHJlLgogCi0gIDQuIFBvdXIgZW5yZWdpc3RyZXIgU0VVTEVNRU5UIHVuZSBwb3J0aW9uIGQndW4gZmljaGllciwgdGFwZXogIDojLCN3IFRFU1QKLSAgICAgb8O5ICMsIyBzb250IGxlcyBkZXV4IG51bcOpcm9zIHF1ZSB2b3VzIGF2ZXogbm90w6lzIChoYXV0LGJhcykgZXQgVEVTVCBlc3QKLSAgICAgbGUgbm9tIGR1IGZpY2hpZXIuCisgIDQuIFRhcGV6ICAgdyBURVNUICAsIG/DuSBURVNUIGVzdCB1biBub20gZGUgZmljaGllciBxdWkgbidleGlzdGUgcGFzLgorICAgICBWw6lyaWZpZXogcXVlIHZvdXMgdm95ZXogIDonPCwnPncgVEVTVCAgYXZhbnQgZGUgZCdhcHB1eWVyIHN1ciBFbnRyw6llLgogCi0gIDUuIFVuZSBmb2lzIGVuY29yZSwgdsOpcmlmaWV6IGxhIHByw6lzZW5jZSBkdSBmaWNoaWVyIGF2ZWMgIDohZGlyICBtYWlzIE5FCi0gICAgIEwnRUZGQUNFWiBQQVMuCisgIDUuIFZpbSB2YSBlbnJlZ2lzdHJlciBsZXMgbGlnbmVzIHPDqWxlY3Rpb25uw6llcyBkYW5zIGxlIGZpY2hpZXIgVEVTVC4KKyAgICAgVXRpbGlzZXogIDohZGlyICBvdSAgIWxzIHBvdXIgbGUgdm9pci4gTmUgbCdlZmZhY2V6IHBhcyBlbmNvcmUgIQorICAgICBOb3VzIGFsbG9ucyBsJ3V0aWxpc2VyIGRhbnMgbGEgbGXDp29uIHN1aXZhbnRlLgorCitOT1RFIDogTCdhcHB1aSBkZSAgdiAgZMOpbWFycmUgbGEgc8OpbGVjdGlvbiBWaXN1ZWxsZS4gVm91cyBwb3V2ZXogZMOpcGxhY2VyIGxlCisgICAgICAgY3Vyc2V1ciBwb3VyIGFncmFuZGlyIG91IHLDqXRyw6ljaXIgbGEgc8OpbGVjdGlvbi4gUHVpcyB2b3VzIHBvdXZlegorICAgICAgIHV0aWxpc2VyIHVuIG9ww6lyYXRldXIgcG91ciBmYWlyZSBxdWVscXVlIGNob3NlIHN1ciBsZSB0ZXh0ZS4gUGFyCisgICAgICAgZXhlbXBsZSwgIGQgIGVmZmFjZSBsZSB0ZXh0ZS4KIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJIExlw6dvbiA1LjQgOiBSw4lDVVDDiVJBVElPTiBFVCBGVVNJT04gREUgRklDSElFUlMKKyAgICAgICAgICAgICAgICAgTGXDp29uIDUuNCA6IFLDiUNVUMOJUkFUSU9OIEVUIEZVU0lPTiBERSBGSUNISUVSUwogCiAKLQkqKiBQb3VyIGluc8OpcmVyIGxlIGNvbnRlbnUgZCd1biBmaWNoaWVyLCB0YXBlegk6ciBGSUNISUVSICoqCisgICAgICAgICoqIFBvdXIgaW5zw6lyZXIgbGUgY29udGVudSBkJ3VuIGZpY2hpZXIsIHRhcGV6ICA6ciBGSUNISUVSICoqCiAKLSAgMS4gVGFwZXogIDohZGlyICBwb3VyIHbDqXJpZmllciBxdWUgdm90cmUgZmljaGllciBURVNUIGVzdCBlbmNvcmUgbMOgLgorICAxLiBQbGFjZXogbGUgY3Vyc2V1ciBqdXN0ZSBhdSBkZXNzdXMgZGUgY2V0dGUgbGlnbmUuCiAKLSAgMi4gUGxhY2V6IGxlIGN1cnNldXIgZW4gaGF1dCBkZSBjZXR0ZSBwYWdlLgorTk9URSA6ICBBcHLDqHMgYXZvaXIgZXjDqWN1dMOpIGwnw6l0YXBlIDIgdm91cyB2ZXJyZXogZHUgdGV4dGUgZGUgbGEgTGXDp29uIDUuMy4KKyAgICAgICAgUHVpcyBkw6lwbGFjZXogdm91cyB2ZXJzIGxlIGJhcyBwb3VyIHZvaXIgY2V0dGUgbGXDp29uIMOgIG5vdXZlYXUuCiAKLU5PVEU6ICBBcHLDqHMgYXZvaXIgc3VpdmkgbCfDqXRhcGUgMyB2b3VzIHZlcnJleiDDoCBsJ8OpY3JhbiBsYSBMZcOnb24gNS4zLgotICAgICAgIETDqXBsYWNlei12b3VzIHZlcnMgbGUgYmFzIGp1c3F1J8OgIHJldmVuaXIgw6AgY2V0dGUgbGXDp29uLgotCi0gIDMuIE1haW50ZW5hbnQgcsOpY3Vww6lyZXogdm90cmUgZmljaGllciBURVNUIGVuIHV0aWxpc2FudCBsYSBjb21tYW5kZSAgOnIgVEVTVAorICAyLiBNYWludGVuYW50IHLDqWN1cMOpcmV6IHZvdHJlIGZpY2hpZXIgVEVTVCBlbiB1dGlsaXNhbnQgbGEgY29tbWFuZGUgIDpyIFRFU1QKICAgICAgb8O5IFRFU1QgZXN0IGxlIG5vbSBkZSB2b3RyZSBmaWNoaWVyLgotCi1OT1RFOiAgTGUgZmljaGllciBxdWUgdm91cyByw6ljdXDDqXJleiBlc3QgcGxhY8OpIGzDoCBvw7kgc2UgdHJvdXZlIGxlIGN1cnNldXIuCisgICAgIExlIGZpY2hpZXIgcXVlIHZvdXMgcsOpY3Vww6lyZXogZXN0IHBsYWPDqSBhdSBkZXNzb3VzIGRlIGxhIGxpZ25lIGR1IGN1cnNldXIuCiAKICAgNC4gUG91ciB2w6lyaWZpZXIgcXVlIGxlIGZpY2hpZXIgYSBiaWVuIMOpdMOpIGluc8OpcsOpLCByZW1vbnRleiBldCB2w6lyaWZpZXoKICAgICAgcXUnaWwgeSBhIG1haW50ZW5hbnQgZGV1eCBjb3BpZXMgZGUgbGEgTGXDp29uIDUuMywgbCdvcmlnaW5hbGUgZXQgY2VsbGUKICAgICAgY29udGVudWUgZGFucyBsZSBmaWNoaWVyLgogCi0KLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkJICAgICBSw4lTVU3DiSBERSBMQSBMRcOHT04gNQotCi0KLSAgMS4gIDohY29tbWFuZGUgIGV4w6ljdXRlIHVuZSBjb21tYW5kZSBleHRlcm5lLgotCi0gICAgICBRdWVscXVlcyBleGVtcGxlcyBwcmF0aXF1ZXM6Ci0JKE1TLURPUykJKFVuaXgpCi0JIDohZGlyCQkgOiFscwkJIGFmZmljaGUgbGUgY29udGVudSBkdSBkb3NzaWVyIGNvdXJhbnQuCi0JIDohZGVsIEZJQ0hJRVIgICA6IXJtIEZJQ0hJRVIgICAgZWZmYWNlIEZJQ0hJRVIuCi0KLSAgMi4gIDp3IEZJQ0hJRVIgIGVucmVnaXN0cmUgbGUgZmljaGllciBWaW0gY291cmFudCBzdXIgbGUgZGlzcXVlIGF2ZWMgcG91cgotCQkgIG5vbSBGSUNISUVSLgotCi0gIDMuICA6IywjdyBGSUNISUVSICBlbnJlZ2lzdHJlIGxlcyBsaWduZXMgIyDDoCAjIGRhbnMgbGUgZmljaGllciBGSUNISUVSLgotCi0gIDQuICA6ciBGSUNISUVSICByw6ljdXDDqHJlIGxlIGZpY2hpZXIgRklDSElFUiBldCBsJ2luc8OocmUgZGFucyBsZSBmaWNoaWVyCi0JCSAgY291cmFudCDDoCBwYXJ0aXIgZGUgbGEgcG9zaXRpb24gZHUgY3Vyc2V1ci4KLQotCi0KK05PVEUgOiAgVm91cyBwb3V2ZXogYXVzc2kgbGlyZSBsYSBzb3J0aWUgZCd1bmUgY29tbWFuZGUgZXh0ZXJuZS4gUGFyIGV4ZW1wbGUsCisgICAgICAgIDpyICFscyAgbGl0IGxhIHNvcnRpZSBkZSBsYSBjb21tYW5kZSBscyBldCBsYSBwbGFjZSBzb3VzIGxhIGxpZ25lIGR1CisgICAgICAgIGN1cnNldXIuCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgICAgTGXDp29uIDYuMSA6IEwnT1VWRVJUVVJFCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFLDiVNVTcOJIERFIExBIExFw4dPTiA1CisKKworICAxLiA6IWNvbW1hbmRlICBleMOpY3V0ZSB1bmUgY29tbWFuZGUgZXh0ZXJuZS4KKworICAgICBRdWVscXVlcyBleGVtcGxlcyBwcmF0aXF1ZXMgOgorICAgICAgKE1TLURPUykgICAgICAgIChVbml4KQorICAgICAgIDohZGlyICAgICAgICAgICA6IWxzICAgICAgICAgIGFmZmljaGUgbGUgY29udGVudSBkdSByw6lwZXJ0b2lyZSBjb3VyYW50LgorICAgICAgIDohZGVsIEZJQ0hJRVIgICA6IXJtIEZJQ0hJRVIgIGVmZmFjZSBGSUNISUVSLgorCisgIDIuIDp3IEZJQ0hJRVIgIGVucmVnaXN0cmUgbGUgZmljaGllciBWaW0gY291cmFudCBzdXIgbGUgZGlzcXVlIGF2ZWMgcG91cgorICAgICAgICAgICAgICAgICAgbm9tIEZJQ0hJRVIuCisKKyAgMy4gdiAgZMOpcGxhY2VtZW50ICA6dyBGSUNISUVSIHNhdXZlZ2FyZGUgbGVzIGxpZ25lcyBkZSBsYSBzw6lsZWN0aW9uIFZpc3VlbGxlCisgICAgIGRhbnMgbGUgZmljaGllciBGSUNISUVSLgorCisgIDQuIDpyIEZJQ0hJRVIgIHLDqWN1cMOocmUgbGUgY29udGVudSBkdSBmaWNoaWVyIEZJQ0hJRVIgZXQgbCdpbnPDqHJlIHNvdXMgbGEKKyAgICAgcG9zaXRpb24gZHUgY3Vyc2V1ci4KKworICA1LiA6ciAhZGlyICBsaXQgbGEgc29ydGllIGRlIGxhIGNvbW1hbmRlIGRpciBldCBsJ2luc8OocmUgc291cyBsYSBwb3NpdGlvbgorICAgICBkdSBjdXJzZXVyLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgIExlw6dvbiA2LjEgOiBMQSBDT01NQU5ERSBEJ09VVkVSVFVSRQogCiAKICoqIFRhcGV6ICBvICBwb3VyIG91dnJpciB1bmUgbGlnbmUgc291cyBsZSBjdXJzZXVyIGV0IHkgYWxsZXIgZW4gSW5zZXJ0aW9uLiAqKgogCiAgIDEuIETDqXBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBsaWduZSBtYXJxdcOpZSAtLS0+IGNpLWRlc3NvdXMuCiAKLSAgMi4gVGFwZXogIG8gIChtaW51c2N1bGUpIHBvdXIgb3V2cmlyIHVuZSBsaWduZSBTT1VTIGxlIGN1cnNldXIgZXQgdm91cyB5Ci0gICAgIHBsYWNlciBlbiBtb2RlIEluc2VydGlvbi4KKyAgMi4gVGFwZXogbGEgbGV0dHJlICAgbyAgIG1pbnVzY3VsZSBwb3VyIG91dnJpciB1bmUgbGlnbmUgU09VUyBsZSBjdXJzZXVyIGV0CisgICAgIHZvdXMgeSBwbGFjZXIgZW4gbW9kZSBJbnNlcnRpb24uCiAKLSAgMy4gUHVpcyByZWNvcGlleiBsYSBsaWduZSBtYXJxdcOpZSAtLS0+IGV0IGFwcHV5ZXogc3VyIDzDiWNoYXA+IHBvdXIgcXVpdHRlcgotICAgICBsZSBtb2RlIEluc2VydGlvbi4KKyAgMy4gUHVpcyB0YXBleiBkdSB0ZXh0ZSBldCBhcHB1eWV6IDzDiWNoYXA+IHBvdXIgc29ydGlyIGR1IG1vZGUgSW5zZXJ0aW9uLgogCi0tLS0+IEVuIHRhcGFudAlvICBsZSBjdXJzZXVyIHNlIG1ldCBzdXIgbGEgbGlnbmUgb3V2ZXJ0ZSwgZW4gbW9kZSBJbnNlcnRpb24uCistLS0+IEVuIHRhcGFudCAgbyAgbGUgY3Vyc2V1ciBzZSBtZXQgc3VyIGxhIGxpZ25lIG91dmVydGUsIGVuIG1vZGUgSW5zZXJ0aW9uLgogCiAgIDQuIFBvdXIgb3V2cmlyIHVuZSBsaWduZSBhdSBERVNTVVMgZHUgY3Vyc2V1ciwgdGFwZXogc2ltcGxlbWVudCB1biAgTwogICAgICBtYWp1c2N1bGUsIHBsdXTDtHQgcXUndW4gIG8gIG1pbnVzY3VsZS4gRmFpdGVzIHVuIGVzc2FpIHN1ciBsYSBsaWduZQogICAgICBjaS1kZXNzb3VzLgotT3V2cmV6IHVuZSBsaWduZSBjaS1kZXNzdXMgZW4gdGFwYW50IE1BSi1PIGxvcnNxdWUgbGUgY3Vyc2V1ciBlc3QgaWNpLgogCi0KLQotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgICAgICBMZcOnb24gNi4yIDogTCdBSk9VVAotCi0KLQkgICAgKiogVGFwZXogIGEgIHBvdXIgaW5zw6lyZXIgZHUgdGV4dGUgQVBSw4hTIGxlIGN1cnNldXIuICoqCi0KLSAgMS4gUGxhY2V6IGxlIGN1cnNldXIgw6AgbGEgZmluIGRlIGxhIHByZW1pw6hyZSBsaWduZSBtYXJxdcOpZSAtLS0+IGNpLWRlc3NvdXMKLSAgICAgZW4gdGFwYW50CSQgIGVuIG1vZGUgTm9ybWFsLgotCi0gIDIuIFRhcGV6IHVuICBhICAobWludXNjdWxlKSBwb3VyIGFqb3V0ZXIgZHUgdGV4dGUgQVBSw4hTIGxlIGNhcmFjdMOocmUgc2l0dcOpCi0gICAgIHNvdXMgbGUgY3Vyc2V1ci4gKCBBICBtYWp1c2N1bGUgYWpvdXRlIGR1IHRleHRlIMOgIGxhIGZpbiBkZSBsYSBsaWduZSkuCi0KLU5vdGU6IENlY2kgw6l2aXRlIGRlIHRhcGVyICBpICwgbGUgZGVybmllciBjYXJhY3TDqHJlLCBsZSB0ZXh0ZSDDoCBpbnPDqXJlciwKLSAgICAgIDzDiWNoYXA+LCBjdXJzZXVyLcOgLWRyb2l0ZSwgZXQgZmluYWxlbWVudAl4ICwganVzdGUgcG91ciBham91dGVyIGR1Ci0gICAgICB0ZXh0ZSDDoCBsYSBmaW4gZCd1bmUgbGlnbmUgIQotCi0gIDMuIE1haW50ZW5hbnQsIGNvbXBsw6l0ZXogbGEgcHJlbWnDqHJlIGxpZ25lLiBOb3RleiDDqWdhbGVtZW50IHF1ZSBsJ2Fqb3V0IGVzdAotICAgICBpZGVudGlxdWUgYXUgbW9kZSBJbnNlcnRpb24sIGhvcm1pcyBsYSBwb3NpdGlvbiBvw7kgbGUgdGV4dGUgZXN0IGluc8OpcsOpLgotCi0tLS0+IENldHRlIGxpZ25lIHZvdXMgcGVybWV0IGRlIHByYXRpcXVlcgotLS0tPiBDZXR0ZSBsaWduZSB2b3VzIHBlcm1ldCBkZSBwcmF0aXF1ZXIgbCdham91dCBkZSB0ZXh0ZSBlbiBmaW4gZGUgbGlnbmUuCistLS0+IE91dnJleiB1bmUgbGlnbmUgY2ktZGVzc3VzIGVuIHRhcGFudCBPIGxvcnNxdWUgbGUgY3Vyc2V1ciBlc3QgaWNpLgogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQlMZcOnb24gNi4zIDogVU5FIEFVVFJFIFZFUlNJT04gRFUgUkVNUExBQ0VNRU5UCisgICAgICAgICAgICAgICAgICAgICAgICBMZcOnb24gNi4yIDogTEEgQ09NTUFOREUgRCdBSk9VVAorCisKKyAgICAgICAgICAgICoqIFRhcGV6ICBhICBwb3VyIGluc8OpcmVyIGR1IHRleHRlIEFQUsOIUyBsZSBjdXJzZXVyLiAqKgorCisgIDEuIFBsYWNleiBsZSBjdXJzZXVyIGF1IGTDqWJ1dCBkZSBsYSBsaWduZSBtYXJxdcOpZSAtLS0+IGNpLWRlc3NvdXMuCisKKyAgMi4gQXBwdXlleiAgZSAganVzcXUnw6AgY2UgcXVlIGxlIGN1cnNldXIgc29pdCBzdXIgbGEgZmluIGRlICBsaSAuCisKKyAgMy4gQXBwdXlleiAgYSAgKG1pbnVzY3VsZSkgcG91ciBham91dGVyIGR1IHRleHRlIEFQUsOIUyBsZSBjdXJzZXVyLgorCisgIDQuIENvbXBsw6l0ZXogbGUgbW90IGNvbW1lIGRhbnMgbGEgbGlnbmUgZGVzc291cy4gQXBwdXlleiA8w4ljaGFwPiBwb3VyCisgICAgIHNvcnRpciBkdSBtb2RlIEluc2VydGlvbi4KKworICA1LiBVdGlsaXNleiAgZSAgcG91ciB2b3VzIGTDqXBsYWNlciB2ZXJzIGxlIG1vdCBpbmNvbXBsZXQgc3VpdmFudCBldAorICAgICByw6lww6l0ZXogbGVzIMOpdGFwZXMgMyBldCA0LgorCistLS0+IENldHRlIGxpIHZvdXMgcGVybSBkZSBwcmF0aXEgbCdham91dCBkZSB0IGRhbnMgdW5lIGxpZ25lLgorLS0tPiBDZXR0ZSBsaWduZSB2b3VzIHBlcm1ldCBkZSBwcmF0aXF1ZXIgbCdham91dCBkZSB0ZXh0ZSBkYW5zIHVuZSBsaWduZS4KKworTk9URSA6ICBhLCBpLCBBIHZvbnQgdG91cyBkYW5zIGxlIG3Dqm1lIG1vZGUgSW5zZXJ0aW9uLCBsYSBzZXVsZSBkaWZmw6lyZW5jZQorICAgICAgICBlc3QgbCdlbmRyb2l0IG/DuSBsZXMgY2FyYWN0w6hyZXMgc29udCBpbnPDqXLDqXMuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisgICAgICAgICAgICAgICAgICAgTGXDp29uIDYuMyA6IFVORSBBVVRSRSBNQU5Jw4hSRSBERSBSRU1QTEFDRVIKIAogCiAgICAgICAgKiogVGFwZXogdW4gIFIgIG1hanVzY3VsZSBwb3VyIHJlbXBsYWNlciBwbHVzIGQndW4gY2FyYWN0w6hyZS4gKioKIAogICAxLiBEw6lwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgcHJlbWnDqHJlIGxpZ25lIG1hcnF1w6llIC0tLT4gY2ktZGVzc291cy4KKyAgICAgRMOpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxlIGTDqWJ1dCBkdSBwcmVtaWVyIHh4eCAuCiAKLSAgMi4gUGxhY2V6IGxlIGN1cnNldXIgYXUgZMOpYnV0IGR1IHByZW1pZXIgbW90IHF1aSBkaWZmw6hyZSBkZSBsYSBzZWNvbmRlIGxpZ25lCi0gICAgIG1hcnF1w6llIC0tLT4gKGxlIG1vdCAnY2VsbGUnKS4KKyAgMi4gQXBwdXlleiBtYWludGVuYW50ICBSICBldCB0YXBleiBsZSBub21icmUgZGVzc291cyBkYW5zIGxhIGRldXhpw6htZSBsaWduZSwKKyAgICAgZGUgbWFuacOocmUgw6AgcmVtcGxhY2VyIGxlIHh4eCAuCiAKLSAgMy4gUHVpcyB0YXBleiAgUiAgZXQgcmVtcGxhY2V6IGxlIHJlc3RlIGR1IHRleHRlIGRlIGxhIHByZW1pw6hyZSBsaWduZSBlbgotICAgICB0YXBhbnQgcGFyIGRlc3N1cyBjZWx1aS1jaSwgZGUgbWFuacOocmUgw6AgcmVuZHJlIGxhIHByZW1pw6hyZSBsaWduZQotICAgICBpZGVudGlxdWUgw6AgbGEgc2Vjb25kZS4KKyAgMy4gQXBwdXlleiA8w4ljaGFwPiBwb3VyIHF1aXR0ZXIgbGUgbW9kZSBSZW1wbGFjZW1lbnQuIE5vdGV6IHF1ZSBsZSByZXN0ZSBkZQorICAgICBsYSBsaWduZSBkZW1ldXJlIGluY2hhbmfDqS4KIAotLS0tPiBQb3VyIHJlbmRyZSBjZXR0ZSBsaWduZSBpZGVudGlxdWUgw6AgY2VsbGUgZHUgZGVzc291cyB1dGlsaXNleiBsZSBjbGF2aWVyLgotLS0tPiBQb3VyIHJlbmRyZSBjZXR0ZSBsaWduZSBpZGVudGlxdWUgw6AgbGEgc2Vjb25kZSwgdGFwZXogUiBldCBsYSBjb3JyZWN0aW9uLgorICA0LiBSw6lww6l0ZXogbGVzIMOpdGFwZXMgcG91ciByZW1wbGFjZXIgbGVzIHh4eCByZXN0YW50cy4KIAotICA0LiBOb3RleiBxdWUgbG9yc3F1ZSB2b3VzIGFwcHV5ZXogPMOJY2hhcD4sIGxlIHRleHRlIHF1aSBuJ2EgcGFzIGVuY29yZSDDqXTDqQotICAgICByZW1wbGFjw6kgcmVzdGUuCiAKKy0tLT4gTCdham91dCBkZSAxMjMgw6AgeHh4IGRvbm5lIHh4eC4KKy0tLT4gTCdham91dCBkZSAxMjMgw6AgNDU2IGRvbm5lIDU3OS4KKworTk9URSA6IExlIG1vZGUgUmVtcGxhY2VtZW50IGVzdCBjb21tZSBsZSBtb2RlIEluc2VydGlvbiwgbWFpcyB0b3VzIGxlcworICAgICAgIGNhcmFjdMOocmVzIHRhcMOpcyBlZmZhY2VudCB1biBjYXJhY3TDqHJlIGV4aXN0YW50LgogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICAgICAgTGXDp29uIDYuNCA6IFLDiUdMQUdFIERFUyBPUFRJT05TCisgICAgICAgICAgICAgICAgICAgICBMZcOnb24gNi40IDogQ09QSUVSIEVUIENPTExFUiBEVSBURVhURQogCiAKLSAgKiogUsOpZ2xvbnMgdW5lIG9wdGlvbiBhZmluIHF1ZSBsYSByZWNoZXJjaGUgZXQgbGEgc3Vic3RpdHV0aW9uIGlnbm9yZW50IGxhCi0gICAgIGNhc3NlIGRlcyBjYXJhY3TDqHJlcy4gKioKKyAgICoqIFV0aWxpc2V6IGwnb3DDqXJhdGV1ciAgeSAgcG91ciBjb3BpZXIgZHUgdGV4dGUgZXQgIHAgIHBvdXIgbGUgY29sbGVyICoqCiAKLSAgMS4gUmVjaGVyY2hleiAnaWdub3JlJyBlbiB0YXBhbnQgIC9pZ25vcmUgLgorICAxLiBBbGxleiDDoCBsYSBsaWduZSBtYXJxdcOpZSAtLS0+IGNpLWRlc3NvdXMgZXQgcGxhY2V6IGxlIGN1cnNldXIgYXByw6hzICJhKSIuCisKKyAgMi4gRMOpbWFycmV6IGxlIG1vZGUgVmlzdWVsIGF2ZWMgIHYgIGV0IGTDqXBsYWNleiBsZSBjdXJzZXVyIGp1c3RlIGRldmFudAorICAgICAicHJlbWllciIuCisKKyAgMy4gVGFwZXogIHkgIHBvdXIgY29waWVyIGxlIHRleHRlIGVuIHN1cmJyaWxsYW5jZS4KKworICA0LiBEw6lwbGFjZXogbGEgY3Vyc2V1ciDDoCBsYSBmaW4gZGUgbGEgbGlnbmUgc3VpdmFudGUgOiAgIGokCisKKyAgNS4gVGFwZXogIHAgIHBvdXIgY29sbGVyIGxlIHRleHRlLiBQdWlzIHRhcGV6IDogIHVuIHNlY29uZCA8w4ljaGFwPiAuCisKKyAgNi4gVXRpbGlzZXogbGUgbW9kZSBWaXN1ZWwgcG91ciBzw6lsZWN0aW9ubmVyICLDqWzDqW1lbnQiLCBjb3BpZXogbGUgYXZlYyAgeSAgLAorICAgICBkw6lwbGFjZXogdm91cyDDoCBsYSBmaW4gZGUgbGEgbGlnbmUgc3VpdmFudCBhdmVjICBqJCAgZXQgY29sbGV6IGxlIHRleHRlCisgICAgIMOgIGNldCBlbmRyb2l0IGF2ZWMgIHAgLgorCistLS0+ICBhKSBjZWNpIGVzdCBsZSBwcmVtaWVyIMOpbMOpbWVudC4KKyAgICAgIGIpCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICBMZcOnb24gNi40IDogUsOJR0xBR0UgREVTIE9QVElPTlMKKworCisgICAgKiogUsOpZ2xvbnMgdW5lIG9wdGlvbiBhZmluIHF1ZSBsYSByZWNoZXJjaGUgZXQgbGEgc3Vic3RpdHV0aW9uIGlnbm9yZSBsYQorICAgICAgIGNhc3NlIGRlcyBjYXJhY3TDqHJlcy4gKioKKworICAxLiBSZWNoZXJjaGV6ICdpZ25vcmUnIGVuIHRhcGFudCA6ICAgL2lnbm9yZSA8RW50csOpZT4KICAgICAgUsOpcMOpdGV6IGNlY2kgcGx1c2lldXJzIGZvaXMgZW4gdXRpbGlzYW50IGxhIHRvdWNoZSAgbiAuCiAKLSAgMi4gQWN0aXZleiBsJ29wdGlvbiAnaWMnIChJZ25vcmVyIGNhc3NlKSBlbiB0YXBhbnQgIDpzZXQgaWMgLgorICAyLiBBY3RpdmV6IGwnb3B0aW9uICdpYycgKGlnbm9yZXIgY2Fzc2UpIGVuIHRhcGFudCAgOnNldCBpYyAuCiAKLSAgMy4gUHVpcyBwb3Vyc3VpdmV6IHZvdHJlIHJlY2hlcmNoZSBlbiB1dGlsaXNhbnQgIG4gLgotICAgICBSw6lww6l0ZXogY2V0dGUgcmVjaGVyY2hlIHBsdXNpZXVycyBmb2lzIGF2ZWMgbGEgdG91Y2hlICBuIC4KKyAgMy4gUHVpcyBjaGVyY2hleiAnaWdub3JlJyBkZSBub3V2ZWF1IGVuIHV0aWxpc2FudCAgbiAuCisgICAgIFJlbWFycXVleiBxdWUgSWdub3JlIGV0IElHTk9SRSBzb250IG1haW50ZW5hbnQgYXVzc2kgdHJvdXbDqXMuCiAKICAgNC4gQWN0aXZleiBsZXMgb3B0aW9ucyAnaGxzZWFyY2gnIGV0ICdpbmNzZWFyY2gnIGF2ZWMgIDpzZXQgaGxzIGlzIC4KIAogICA1LiBQdWlzIHJlY29tbWVuY2V6IHVuZSByZWNoZXJjaGUsIGV0IGZhaXRlcyBiaWVuIGF0dGVudGlvbiDDoCBjZSBxdWkgc2UKLSAgICAgcHJvZHVpdDogIC9pZ25vcmUgLgorICAgICBwcm9kdWl0IDogIC9pZ25vcmUgPEVudHLDqWU+CiAKLSAgNi4gUG91ciBpbnRlcnJvbXByZSBsYSBtaXNlIGVuIHN1cmJyaWxsYW5jZSBkZXMgcsOpc3VsdGF0cywgdGFwZXo6Ci0gICAgIDpub2hsc2VhcmNoCisgIDYuIFBvdXIgZMOpc2FjdGl2ZXIgJ2lnbm9yZXIgY2Fzc2UnLCBlbnRyZXogOiAgOnNldCBub2ljCiAKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkJICAgICBSw4lTVU3DiSBERSBMQSBMRcOHT04gNgorTk9URSA6IFBvdXIgZW5sZXZlciBsYSBzdXJicmlsbGFuY2UgZGVzIHLDqXN1bHRhdHMsIGVudHJleiA6ICAgOm5vaGxzZWFyY2gKIAotCi0gIDEuIFRhcGVyICBvICBvdXZyZSB1bmUgbGlnbmUgU09VUyBsZSBjdXJzZXVyIGV0IHkgcGxhY2UgY2VsdWktY2kgZW4gbW9kZQotICAgICBJbnNlcnRpb24uIFRhcGVyIHVuICBPICBtYWp1c2N1bGUgb3V2cmUgdW5lIGxpZ25lIGF1IERFU1NVUyBkZSBsYSBsaWduZQotICAgICBvw7kgc2UgdHJvdXZlIGxlIGN1cnNldXIuCi0KLSAgMi4gVGFwZXogdW4gIGEgIHBvdXIgaW5zw6lyZXIgZHUgdGV4dGUgQVBSw4hTIGxlIGNhcmFjdMOocmUgb8O5IHNlIHRyb3V2ZSBsZQotICAgICBjdXJzZXVyLiBUYXBlciB1bglBICBtYWp1c2N1bGUgYWpvdXRlIGR1IHRleHRlIGF1dG9tYXRpcXVlbWVudCDDoCBsYSBmaW4KLSAgICAgZGUgbGEgbGlnbmUuCi0KLSAgMy4gVGFwZXIgdW4gIFIgIG1hanVzY3VsZSBhY3RpdmUgbGUgbW9kZSBSZW1wbGFjZW1lbnQganVzcXUnw6AgY2UgcXVlIGxhCi0gICAgIHRvdWNoZSAgPMOJY2hhcD4gIHNvaXQgYXBwdXnDqWUgcG91ciBlbiBzb3J0aXIuCi0KLSAgNC4gVGFwZXIgIDpzZXQgeHh4ICBhY3RpdmUgbCdvcHRpb24gJ3h4eCcuCi0KLQotCi0KLQorTk9URSA6IFNpIHZvdXMgdm91bGV6IGlnbm9yZXIgbGEgY2Fzc2UgdW5pcXVlbWVudCBwb3VyIHVuZSByZWNoZXJjaGUsIHV0aWxpc2V6CisgICAgICAgXGMgIGRhbnMgbGEgcGhyYXNlIDogICAvaWdub3JlXGMgIDxFbnRyw6llPgogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICAgIExlw6dvbiA3IDogQUNDw4lERVIgw4AgTCdBSURFIEVOIExJR05FCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFLDiVNVTcOJIERFIExBIExFw4dPTiA2CiAKLQkJICAqKiBVdGlsaXNlciBsZSBzeXN0w6htZSBkJ2FpZGUgZW4gbGlnbmUuICoqCiAKLSAgVmltIGEgdW4gc3lzdMOobWUgY29tcGxldCBkJ2FpZGUgZW4gbGlnbmUuICBQb3VyIHkgYWNjw6lkZXIsIGVzc2F5ZXogbCd1bmUgZGUKLSAgY2VzIHRyb2lzIG3DqXRob2RlczoKLQktIGFwcHV5ZXogbGEgdG91Y2hlIDxIZWxwPiAoc2kgdm91cyBlbiBhdmV6IHVuZSkKLQktIGFwcHV5ZXogbGEgdG91Y2hlIDxGMT4gKHNpIHZvdXMgZW4gYXZleiB1bmUpCi0JLSB0YXBleiAgOmhlbHAgPEVudHLDqWU+CisgIDEuIFRhcGVyICBvICBvdXZyZSB1bmUgbGlnbmUgU09VUyBsZSBjdXJzZXVyIGV0IGTDqW1hcnJlIGxlIG1vZGUgSW5zZXJ0aW9uLgorICAgICBUYXBlciAgTyAgb3V2cmUgdW5lIGxpZ25lIGF1IERFU1NVUyBkdSBjdXJzZXVyLgogCi0gIFRhcGV6ICA6cSA8RW50csOpZT4gIHBvdXIgZmVybWVyIGxhIGZlbsOqdHJlIGQnYWlkZS4KKyAgMi4gVGFwZXIgIGEgIHBvdXIgaW5zw6lyZXIgZHUgdGV4dGUgQVBSw4hTIGxlIGN1cnNldXIuCisgICAgIFRhcGVyICBBICBwb3VyIGluc8OpcmVyIGR1IHRleHRlIGFwcsOocyBsYSBmaW4gZGUgbGlnbmUuCisKKyAgMy4gVGFwZXIgIGUgIGTDqXBsYWNlIMOgIGxhIGZpbiBkdSBtb3QuCisKKyAgNC4gVGFwZXIgIHkgIGNvcGllIGR1IHRleHRlLCAgcCAgbGUgY29sbGUuCisKKyAgNS4gVGFwZXIgIFIgIG1hanVzY3VsZSBhY3RpdmUgbGUgbW9kZSBSZW1wbGFjZW1lbnQganVzcXUnw6AgY2UgcXUnIDzDiWNoYXA+CisgICAgIHNvaXQgYXBwdXnDqS4KKworICA2LiBUYXBlciAgIjpzZXQgeHh4IiAgYWN0aXZlIGwnb3B0aW9uICJ4eHgiLiBRdWVscXVlcyBvcHRpb25zIHNvbnQgOgorICAgICAgICAnaWMnICAnaW5nbm9yZWNhc2UnIHBvdXIgaWdub3JlciBsYSBjYXNzZSBsb3JzIGRlcyByZWNoZXJjaGVzLgorICAgICAgICAnaXMnICAnaW5jc2VhcmNoJyAgIHBvdXIgbW9udHJlciBsZXMgYXBwYXJpZW1lbnRzIHBhcnRpZWxzLgorICAgICAgICAnaGxzJyAnaGxzZWFyY2gnICAgIHBvdXIgbWV0dHJlIGVuIHN1cmJyaWxsYW5jZSBsZXMgYXBwYXJpZW1lbnRzLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorICAgICAgICAgICAgICAgICAgICAgICAgIExlw6dvbiA3LjEgOiBPQlRFTklSIERFIEwnQUlERQorCisKKyAgICAgICAgICAgICAgICAgICoqIFV0aWxpc2VyIGxlIHN5c3TDqG1lIGQnYWlkZSBlbiBsaWduZS4gKioKKworICBWaW0gYSB1biBzeXN0w6htZSBjb21wbGV0IGQnYWlkZSBlbiBsaWduZS4gUG91ciB5IGFjY8OpZGVyLCBlc3NheWV6IGwndW5lIGRlCisgIGNlcyB0cm9pcyBtw6l0aG9kZXMgOgorICAgICAgICAtIGFwcHV5ZXogbGEgdG91Y2hlIDxIZWxwPiAoc2kgdm91cyBlbiBhdmV6IHVuZSkKKyAgICAgICAgLSBhcHB1eWV6IGxhIHRvdWNoZSA8RjE+IChzaSB2b3VzIGVuIGF2ZXogdW5lKQorICAgICAgICAtIHRhcGV6ICA6aGVscCA8RW50csOpZT4KKworCisgIExpc2V6IGxlIHRleHRlIGRhbnMgbGEgZmVuw6p0cmUgZCdhaWRlIHBvdXIgc2F2b2lyIGNvbW1lbnQgZm9uY3Rpb25uZSBsJ2FpZGUuCisgIFRhcGV6ICBDVFJMLVcgQ1RSTC1XICAgcG91ciBzYXV0ZXIgZCd1bmUgZmVuw6p0cmUgw6AgbCdhdXRyZS4KKyAgVGFwZXogIDpxIDxFbnRyw6llPiAgICAgcG91ciBmZXJtZXIgbGEgZmVuw6p0cmUgZCdhaWRlLgogCiAgIFZvdXMgcG91dmV6IGFjY8OpZGVyIMOgIGwnYWlkZSBzdXIgw6AgcGV1IHByw6hzIG4naW1wb3J0ZSBxdWVsIHN1amV0IGVuIGRvbm5hbnQKICAgZGVzIGFyZ3VtZW50cyDDoCBsYSBjb21tYW5kZSAgOmhlbHAgLiBFc3NheWV6IHBhciBleGVtcGxlIChuJ291YmxpZXogcGFzCi0gIGQnYXBwdXllciBzdXIgPEVudHLDqWU+KToKKyAgZCdhcHB1eWVyIHN1ciA8RW50csOpZT4pIDoKIAotCTpoZWxwIHcKLQk6aGVscCBjXzxUCi0JOmhlbHAgaW5zZXJ0LWluZGV4Ci0JOmhlbHAgdXNlci1tYW51YWwKKyAgICAgICAgOmhlbHAgdworICAgICAgICA6aGVscCBjX0NUUkwtRAorICAgICAgICA6aGVscCBjXzxUCisgICAgICAgIDpoZWxwIGluc2VydC1pbmRleAorICAgICAgICA6aGVscCB1c2VyLW1hbnVhbAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICAgTGXDp29uIDggOiBDUsOJRVIgVU4gU0NSSVBUIERFIETDiU1BUlJBR0UKKyAgICAgICAgICAgICAgICAgICAgTGXDp29uIDcuMiA6IENSw4lFUiBVTiBTQ1JJUFQgREUgRMOJTUFSUkFHRQogCi0JCSAgKiogQWN0aXZlciBsZXMgZm9uY3Rpb25uYWxpdMOpcyBkZSBWaW0uICoqCisgICAgICAgICAgICAgICAgICAgKiogQWN0aXZlciBsZXMgZm9uY3Rpb25uYWxpdMOpcyBkZSBWaW0uICoqCiAKICAgVmltIGEgYmVhdWNvdXAgcGx1cyBkZSBmb25jdGlvbm5hbGl0w6lzIHF1ZSBWaSwgbWFpcyBsYSBwbHVwYXJ0IGRlIGNlbGxlcy1jaQotICBzb250IGTDqXNhY3RpdsOpZXMgcGFyIGTDqWZhdXQuICBQb3VyIGNvbW1lbmNlciDDoCBsZXMgdXRpbGlzZXIsIHZvdXMgZGV2ZXoKKyAgc29udCBkw6lzYWN0aXbDqWVzIHBhciBkw6lmYXV0LiBQb3VyIGNvbW1lbmNlciDDoCBsZXMgdXRpbGlzZXIsIHZvdXMgZGV2ZXoKICAgY3LDqWVyIHVuIGZpY2hpZXIgInZpbXJjIi4KIAotICAxLiBDb21tZW5jZXogw6Agw6lkaXRlciBsZSBmaWNoaWVyICJ2aW1yYyIuIENlY2kgZMOpcGVuZCBkZSB2b3RyZSBzeXN0w6htZToKLQk6ZWRpdCB+Ly52aW1yYwkJCXBvdXIgVW5peAotCTplZGl0ICRWSU0vX3ZpbXJjCQlwb3VyIE1TLVdpbmRvd3MKKyAgMS4gQ29tbWVuY2V6IMOgIMOpZGl0ZXIgbGUgZmljaGllciAidmltcmMiLiBDZWNpIGTDqXBlbmQgZGUgdm90cmUgc3lzdMOobWUgOgorICAgICAgICA6ZWRpdCB+Ly52aW1yYyAgICAgICAgIHBvdXIgVW5peAorICAgICAgICA6ZWRpdCAkVklNL192aW1yYyAgICAgIHBvdXIgTVMtV2luZG93cwogCi0gIDIuIEludMOpZ3JleiBtYWludGVuYW50IGxlIHRleHRlIGR1IGZpY2hpZXIgInZpbXJjIiBkJ2V4ZW1wbGU6Ci0JOnJlYWQgJFZJTVJVTlRJTUUvdmltcmNfZXhhbXBsZS52aW0KKyAgMi4gTGlzZXogbWFpbnRlbmFudCBsZSBmaWNoaWVyIGQnZXhlbXBsZSAidmltcmMiIDoKKyAgICAgICAgOnIgJFZJTVJVTlRJTUUvdmltcmNfZXhhbXBsZS52aW0KIAotICAzLiBFbnJlZ2lzdHJleiBsZSBmaWNoaWVyIGF2ZWM6Ci0JOndyaXRlCisgIDMuIEVucmVnaXN0cmV6IGxlIGZpY2hpZXIgYXZlYyA6CisgICAgICAgIDp3CiAKLSAgTGEgcHJvY2hhaW5lIGZvaXMgcXVlIHZvdXMgZMOpbWFycmVyZXogVmltLCBsZSBzdXJsaWduYWdlIHN5bnRhY3RpcXVlIHNlcmEKLSAgYWN0aXbDqS4gVm91cyBwb3V2ZXogYWpvdXRlciB0b3VzIHZvcyByw6lnbGFnZXMgcHLDqWbDqXLDqXMgZGFucyBjZSBmaWNoaWVyLgorICBMYSBwcm9jaGFpbmUgZm9pcyBxdWUgdm91cyBkw6ltYXJyZXJleiBWaW0sIGxhIGNvbG9yYXRpb24gc3ludGF4aXF1ZSBzZXJhCisgIGFjdGl2w6llLiBWb3VzIHBvdXZleiBham91dGVyIHRvdXMgdm9zIHLDqWdsYWdlcyBwcsOpZsOpcsOpcyBkYW5zIGNlIGZpY2hpZXIKKyAgInZpbXJjIi4gUG91ciBwbHVzIGQnaW5mb3JtYXRpb25zLCB0YXBleiAgOmhlbHAgdmltcmMtaW50cm8KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZcOnb24gNy4zIDogQ09NUEzDiFRFTUVOVAorCisKKyAgICAgICAgICAqKiBDb21wbMOodGVtZW50IGRlIGxpZ25lIGRlIGNvbW1hbmRlIGF2ZWMgQ1RSTC1EIGV0IDxUQUI+ICoqCisKKyAgMS4gTWV0dGV6IFZpbSBzb2l0IGVuIG1vZGUgbm9uIGNvbXBhdGlibGUgOiAgIHNldCBub2NwCisKKyAgMi4gUmVnYXJkZXogcXVlbHMgZmljaGllcnMgZXhpc3RlbnQgZGFucyBsZSByw6lwZXJ0b2lyZSA6ICAhbHMgIG91ICAhZGlyCisKKyAgMy4gVGFwZXogbGUgZMOpYnV0IGQndW5lIGNvbW1hbmRlIDogICA6ZQorCisgIDQuIEFwcHV5ZXogIENUUkwtRCAgZXQgVmltIGFmZmljaGVyYSB1bmUgbGlzdGUgZGUgY29tbWFuZGVzIHF1aSBjb21tZW5jZW50CisgICAgIHBhciAiZSIuCisKKyAgNS4gQXBwdXlleiAgPFRBQj4gIGV0IFZpbSBjb21wbMOpdGVyYSBsZSBub20gZGUgbGEgY29tbWFuZGUgOiAgIjplZGl0IgorCisgIDYuIEFqb3V0ZXogbWFpbnRlbmFudCB1biBlc3BhY2UgZXQgbGUgZMOpYnV0IGQndW4gZmljaGllciBleGlzdGFudCA6CisgICAgIDplZGl0ICBGSUMKKworICA3ICBBcHB1eWV6ICA8VEFCPi4gVmltIHZhIGNvbXBsw6l0ZXIgbGUgbm9tIChzJ2lsIGVzdCB1bmlxdWUpLgorCitOT1RFIDogTGUgY29tcGzDqHRlbWVudCBmb25jdGlvbm5lIHBvdXIgZGUgbm9tYnJldXNlIGNvbW1hbmRlcy4gRXNzYXllegorICAgICAgIGQnYXBwdXllciBDVFJMLUQgZXQgPFRBQj4uIEMnZXN0IHV0aWxlIGVuIHBhcnRpY3VsaWVyIHBvdXIgIDpoZWxwIC4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFLDiVNVTcOJIERFIExBIExFw4dPTiA3CisKKworICAxLiBUYXBleiAgOmhlbHAgIG91IGFwcHV5ZXogPEYxPiBvdSA8QWlkZT4gcG91ciBvdXZyaXIgbGEgZmVuw6p0cmUgZCdhaWRlLgorCisgIDIuIFRhcGV6ICA6aGVscCBjbWQgIHBvdXIgdHJvdXZlciBsJ2FpZGUgc3VyICBjbWQgLgorCisgIDMuIFRhcGV6ICBDVFJMLVcgQ1RSTC1XICBwb3VyIHNhdXRlciDDoCB1bmUgYXV0cmUgZmVuw6p0cmUuCisKKyAgNC4gVGFwZXogIDpxICBwb3VyIGZlcm1lciBsYSBmZW7DqnRyZSBkJ2FpZGUuCisKKyAgNS4gQ3LDqWV6IHVuIHNjcmlwdCBkZSBkw6ltYXJyYWdlIHZpbXJjIHBvdXIgY29uc2VydmVyIHZvcyByw6lnbGFnZXMgcHLDqWbDqXLDqXMuCisKKyAgNi4gUXVhbmQgdm91cyB0YXBleiB1bmUgY29tbWFuZGUgIDogIGFwcHV5ZXogQ1RSTC1EIHBvdXIgdm9pciBsZXMKKyAgICAgY29tcGzDqHRlbWVudHMgcG9zc2libGVzLiBBcHB1eWV6IDxUQUI+IHBvdXIgdXRpbGlzZXIgdW4gY29tcGzDqHRlbWVudC4KIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAotICBDZWNpIGNvbmNsdXQgbGUgVHV0b3JpZWwgVmltLiAgTGUgYnV0IMOpdGFpdCBkZSB2b3VzIGRvbm5lciB1biBicmVmIGFwZXLDp3UgZGUKKyAgQ2VjaSBjb25jbHV0IGxlIFR1dG9yaWVsIFZpbS4gTGUgYnV0IMOpdGFpdCBkZSB2b3VzIGRvbm5lciB1biBicmVmIGFwZXLDp3UgZGUKICAgbCfDqWRpdGV1ciBWaW0sIGp1c3RlIGFzc2V6IHBvdXIgdm91cyBwZXJtZXR0cmUgZCd1dGlsaXNlciBsJ8OpZGl0ZXVyCi0gIHJlbGF0aXZlbWVudCBmYWNpbGVtZW50LiAgSWwgZXN0IGxvaW4gZCfDqnRyZSBjb21wbGV0LCB2dSBxdWUgVmltIGEgYmVhdWNvdXAKLSAgYmVhdWNvdXAgcGx1cyBkZSBjb21tYW5kZXMuICBVbiBNYW51ZWwgZGUgbCd1dGlsaXNhdGV1ciBlc3QgZGlzcG9uaWJsZSBlbgotICBhbmdsYWlzOiAgOmhlbHAgdXNlci1tYW51YWwgLgorICByZWxhdGl2ZW1lbnQgZmFjaWxlbWVudC4gSWwgZXN0IGxvaW4gZCfDqnRyZSBjb21wbGV0LCB2dSBxdWUgVmltIGEgYmVhdWNvdXAKKyAgYmVhdWNvdXAgcGx1cyBkZSBjb21tYW5kZXMuIFVuIE1hbnVlbCBkZSBsJ3V0aWxpc2F0ZXVyIGVzdCBkaXNwb25pYmxlIGVuCisgIGFuZ2xhaXMgOiAgOmhlbHAgdXNlci1tYW51YWwgLgogCiAgIFBvdXIgY29udGludWVyIMOgIGTDqWNvdXZyaXIgZXQgw6AgYXBwcmVuZHJlIFZpbSwgaWwgZXhpc3RlIHVuIGxpdnJlIHRyYWR1aXQgZW4KICAgZnJhbsOnYWlzLiBJbCBwYXJsZSBwbHVzIGRlIFZpIHF1ZSBkZSBWaW0sIG1haXMgcG91cnJhIHZvdXMgw6p0cmUgdXRpbGUuCi0JTCfDqWRpdGV1ciBWaSAtIENvbGxlY3Rpb24gUHLDqWNpcyBldCBjb25jaXMgLSBwYXIgQXJub2xkIFJvYmJpbnMKLQnDiWRpdGV1cjogTydSZWlsbHkgRnJhbmNlCi0JSVNCTjogMi04NDE3Ny0xMDItNAorICAgICAgICBMJ8OpZGl0ZXVyIFZpIC0gQ29sbGVjdGlvbiBQcsOpY2lzIGV0IGNvbmNpcyAtIHBhciBBcm5vbGQgUm9iYmlucworICAgICAgICDDiWRpdGV1ciA6IE8nUmVpbGx5IEZyYW5jZQorICAgICAgICBJU0JOIDogMi04NDE3Ny0xMDItNAogCiAgIERldXggbGl2cmVzIGVuIGFuZ2xhaXMgc29udCDDqWdhbGVtZW50IG1lbnRpb25uw6lzIGRhbnMgbGEgdmVyc2lvbiBvcmlnaW5hbGUKICAgZGUgY2UgdHV0b3JpZWwsIGRvbnQgdW4gcXVpIHRyYWl0ZSBzcMOpY2lmaXF1ZW1lbnQgZGUgVmltLiBNZXJjaSBkZSB2b3VzIHkKLSAgcsOpZsOpcmVyIHNpIHZvdXMgw6p0ZXMgaW50w6lyZXNzw6kuCisgIHLDqWbDqXJlciBzaSB2b3VzIMOqdGVzIGludMOpcmVzc8Opcy4KIAogICBDZSB0dXRvcmllbCBhIMOpdMOpIMOpY3JpdCBwYXIgTWljaGFlbCBDLiBQaWVyY2UgZXQgUm9iZXJ0IEsuIFdhcmUgZGUgbCfDiWNvbGUKICAgZGVzIE1pbmVzIGR1IENvbG9yYWRvIGV0IHJlcHJlbmQgZGVzIGlkw6llcyBmb3VybmllcyBwYXIgQ2hhcmxlcyBTbWl0aCwKLSAgVW5pdmVyc3TDqSBkJ8OJdGF0IGR1IENvbG9yYWRvLiAgRS1tYWlsOiBid2FyZUBtaW5lcy5jb2xvcmFkby5lZHUuCisgIFVuaXZlcnNpdMOpIGQnw4l0YXQgZHUgQ29sb3JhZG8uIEUtbWFpbCA6IGJ3YXJlQG1pbmVzLmNvbG9yYWRvLmVkdS4KIAogICBNb2RpZmnDqSBwb3VyIFZpbSBwYXIgQnJhbSBNb29sZW5hci4KLQogICBUcmFkdWl0IGVuIEZyYW7Dp2FpcyBwYXIgQWRyaWVuIEJlYXUsIGVuIGF2cmlsIDIwMDEuCi0gIEUtbWFpbDoJdmVyc2lvbi5mcmFuY2Fpc2VAZnJlZS5mcgotICBMYXN0IENoYW5nZToJMjAwMyBNYXkgMjkKKyAgRGVybmnDqHJlcyBtaXNlcyDDoCBqb3VyIHBhciBEb21pbmlxdWUgUGVsbMOpLgorCisgIEUtbWFpbCA6ICAgICAgZG9taW5pcXVlLnBlbGxlQGdtYWlsLmNvbQorICBMYXN0IENoYW5nZSA6IDIwMDggTm92IDIzCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuaHUgYi9ydW50aW1lL3R1dG9yL3R1dG9yLmh1CmluZGV4IDg0ZTZiZDQuLjZmYjMyNzAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuaHUKKysrIGIvcnVudGltZS90dXRvci90dXRvci5odQpAQCAtMSw1ICsxLDUgQEAKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLT0gICAg3CBkIHYg9iB6IPYgbCBqIPwgayAgIGEgICBWIEkgTSAgIFQgdSB0IG8gciBiIGEgbiAgLSAgICAxLjUt9nMgIHZlcnpp8yA9PT0KKz09INwgZCB2IPYgeiD2IGwgaiD8IGsgICBhICAgViBJIE0gLSBvIGsgdCBhIHQg8yBiIGEgbiAgLSAgICAxLjUt9nMgIHZlcnpp8yAgPT0KID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIAogICAgICBBIFZpbSBlZ3kgbmFneW9uIGhhdOlrb255IHN6ZXJrZXN6dPUsIGFtZWxueWVrIHJlbmdldGVnIHV0YXPtdOFzYQpAQCAtMzgsNyArMzgsNyBAQAogICAyLiBUYXJ0c2EgbGVueW9tdmEgYSBsZWZlbOl0IChqKSwgYWtrb3IgaXNt6XRs9WRpayEKIC0tLT4gTW9zdCB0dWRqYSwgaG9neWFuIG1laGV0IGEga/Z2ZXRrZXr1IGxlY2vpcmUuCiAKLSAgMy4gQSBsZWZlbOkgZm9tYiBoYXN6buFsYXThdmFsIG1lbmplbiBhIDEuMi4gbGVja+lyZSEKKyAgMy4gQSBsZWZlbOkgZ29tYiBoYXN6buFsYXThdmFsIG1lbmplbiBhIDEuMi4gbGVja+lyZSEKIAogTWVnajogSGEgbmVtIGJpenRvcyBiZW5uZSwgbWl0IG55b21vdHQgbWVnLCBueW9tamEgbWVnIGF6IDxFU0M+LWV0LCBob2d5CiAgICAgICBub3Jt4WwgbfNkYmEga2Vy/Gxq9m4sIOlzIGlzbel0ZWxqZSBtZWcgYSBwYXJhbmNzb3QhCkBAIC02MCw4ICs2MCw4IEBACiAgICAgIEhhIG1lbnRlbmkgc3plcmV0bukgYSB24Wx0b3rhc29rYXQg6XMga2ls6XBuaSwg7XJqYToKIAkJCQk6d3EgIDxFTlRFUj4KIAotICAzLiBBbWlrb3IgYSBzaGVsbCBwcm9tcHRvdCBs4XRqYSwg7XJqYSBiZSBhIHBhcmFuY3NvdCwgYW1lbHkgZWJiZSBhCi0gICAgIHR1dG9yYmEgaG96emE6CisgIDMuIEFtaWtvciBhIHNoZWxsIHByb21wdG90IGzhdGphLCDtcmphIGJlIGEgcGFyYW5jc290LCBhbWVseSBlYmJlIGF6CisgICAgIG9rdGF082JhIGhvenphOgogICAgICBFeiB2YWzzc3rtbvtsZWc6CXZpbXR1dG9yIDxFTlRFUj4KICAgICAgTm9ybeFsaXMgZXNldGJlbiBlenQg7XJu4ToJdmltIHR1dG9yLmh1IDxFTlRFUj4KIApAQCAtMjMwLDcgKzIzMCw3IEBACiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgMi41LiAgbGVja2U6IEEgVklTU1pBVk9OwVMgKFVORE8pIFBBUkFOQ1MKKwkJICAgMi41LiAgbGVja2U6IEEgVklTU1pBVk9OwVMgKFVORE8pIFBBUkFOQ1MKIAogCiAqKiB1IGfpcGVs6XPpdmVsIHZpc3N6YXZvbmhhdPMgYXogdXRvbHPzIHBhcmFuY3MsIFUgYXogZWfpc3ogc29ydCBoZWx5cmXhbGztdGphLiAqKgpAQCAtMjQ1LDkgKzI0NSw5IEBACiAgIDcuIENUUkwtUiAoQ1RSTCBnb21iIGxlbnlvbeFzYSBtZWxsZXR0IPxzc/ZuIFItdCkgcOFyc3pvciBjc2lu4WxqYSD6anJhIGEKICAgICAgdmlzc3phdm9udCBwYXJhbmNzb2thdCAocmVkbykhCiAKLS0tLT4gSmF27e10c2QgYSBoaGli4WthYXQgZWJiYmVuIGEgc29vb3JiYW4gbWFqZCDhbGztdHNhIHZpc3N6YWFhIGF6IGVyZWRldGl0LgorLS0tPiBKYXbt7XRzYSBhIGhoaWLha2FhdCBlYmJiZW4gYSBzb29vcmJhbiBtYWpkIOFsbO10c2Egdmlzc3phYWEgYXogZXJlZGV0aXQuCiAKLSAgOC4gRXplayBuYWd5b24gaGFzem5vcyBwYXJhbmNzb2suIE1vc3QgdWdhcmpvbiBhIDIuIGxlY2tlIPZzc3plZm9nbGFs82rhcmEuCisgIDguIEV6ZWsgbmFneW9uIGhhc3pub3MgcGFyYW5jc29rLiBNb3N0IHVnb3Jqb24gYSAyLiBsZWNrZSD2c3N6ZWZvZ2xhbPNq4XJhLgogCiAKIApAQCAtMjU3LDcgKzI1Nyw3IEBACiAKICAgMS4gVPZybOlzIGEga3Vyem9ydPNsIGEgc3rzIHbpZ+lpZzogICAgZHcKIAotICAyLiBU9nJs6XMgYSBrdXJ6b3J082wgYSBzevMgduln6WlnOiAgICBkJAorICAyLiBU9nJs6XMgYSBrdXJ6b3J082wgYSBzb3Igduln6WlnOiAgICBkJAogCiAgIDMuIEVn6XN6IHNvciB09nJs6XNlOiAgICBkZAogCkBAIC0yNzUsNyArMjc1LDcgQEAKICAgICAgVmlzc3phdm9u4XNvayB2aXNzemF2b27hc2E6CSAgICAgQ1RSTC1SCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkJIDMuMS4gIGxlY2tlOiBBIFBVVCBQQVJBTkNTCisJCTMuMS4gIGxlY2tlOiBBIEJFSUxMRVNaVMlTIChQVVQpIFBBUkFOQ1MKIAogCiAgICoqIHAgIGxl/HTpc+l2ZWwgYXogdXRvbHPzbmFrIHT2cvZsdGV0IGEga3Vyem9yIHV04W4gaWxsZXN6aGV0avxrLiAqKgpAQCAtMjg0LDggKzI4NCw4IEBACiAKICAgMi4gZGQgbGX8dOlz6XZlbCB09nL2bGr8ayBhIHNvcnQg6XMgZWx06XJvbPNkaWsgYSBWaW0gcHVmZmVy6WJlbi4KIAotICAzLiBNb3pnYXNzdWsgYSBrdXJ6b3J0IEFG1kzJIGEgc29yIGb2bOksIGFob3bhIG1vemdhdG5pIHN6ZXJldG7pbmsgYQotICAgICB09nL2bHQgc29ydC4KKyAgMy4gTW96Z2Fzc3VrIGEga3Vyem9ydCBhemVs9XR0IGEgIHNvciBFTNVUVEkgc29yYmEsIGFob3bhIG1vemdhdG5pCisgICAgIHN6ZXJldG7pbmsgYSB09nL2bHQgc29ydC4KIAogICA0LiBOb3Jt4WwgbfNkYmFuIO1yanVuayAgcCAgIGJldPt0IGEgdPZy9mx0IHNvciBiZWlsbGVzenTpc+loZXouCiAKQEAgLTI5OSw3ICsyOTksNyBAQAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICAgICAgMy4yLiAgbGVja2U6IEEgUkVQTEFDRSBQQVJBTkNTCisJCSAgICAgICAzLjIuICBsZWNrZTogQVogwVTNUsFTIChSRVBMQUNFKSBQQVJBTkNTCiAKIAogKiogciAg6XMgIGEga2FyYWt0ZXJlayBsZfx06XPpdmVsIGEga3Vyem9yIGFsYXR0aSBrYXJha3RlcnQgbWVnduFsdG96dGF0anVrLiAqKgpAQCAtMzIxLDcgKzMyMSw3IEBACiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkzLjMuICBsZWNrZTogQSBDSEFOR0UgUEFSQU5DUworCQkJMy4zLiAgbGVja2U6IEEgQ1NFUkUgKENIQU5HRSkgUEFSQU5DUwogCiAKIAkgICAqKiBBIHN68yBlZ3kgculzeuluZWsgbWVnduFsdG96dGF04XPhaG96IO1yanVrOiAgY3cgLiAqKgpAQCAtNDE1LDcgKzQxNSw3IEBACiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQk0LjIuICBsZWNrZTogQSBTRUFSQ0ggUEFSQU5DUworCQkJNC4yLiAgbGVja2U6IEEgS0VSRVPJUyAoU0VBUkNIKSBQQVJBTkNTCiAKIAogICAqKiAvIG1hamQgYSBr7XbhbnQga2lmZWpleulzIGJl7XLhc+F2YWwga2VyZXNoZXRq/GsgbWVnIGEga2lmZWpleulzdC4gKioKQEAgLTQ1OSw3ICs0NTksNyBAQAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICAgICA0LjQuICBsZWNrZTogQSBISULBSyBLSUpBVs1UwVPBTkFLIEVHWSBN00RKQQorCQkgIDQuNC4gIGxlY2tlOiBBIEhJQsFLIEtJSkFWzVTBU8FOQUsgRUdZIE3TREpBCiAKIAogICAgICoqIDpzL/pqL3LpZ2kvZyBiZWfpcGVs6XPpdmVsIGF6ICf6aictcmEgY3NlculsavxrIGEgJ3LpZ2knLXQuICoqCkBAIC00NzAsMTAgKzQ3MCwxMCBAQAogICAgICBzb3JiYW4uCiAKICAgMy4gTW9zdCBlenQg7XJqdWs6CSA6cy9lZ2d5L2VnZy9nCSAgIGFtZWx5IGdsb2LhbGlzYW4gaGVseWV0dGVz7XQKLSAgICAgYSBzb3JiYW4uCisgICAgIGEgc29yYmFuLCBhemF6IG1pbmRlbiBlbPVmb3JkdWzhc3QuCiAgICAgIEV6IGEgc29yYmFuIG1pbmRlbiBlbPVmb3JkdWzhc3QgaGVseWV0dGVz7XQuCiAKLS0tLT4gZWdneSBoZWd5IG1lZ2d5LCBzemVtYmUgavZuIGVnZ3kgbeFzaWsgaGVnZ3kuCistLS0+IGVnZ3kgaGVnZ3kgbWVnZ3ksIHN6ZW1iZSBq9m4gZWdneSBt4XNpayBoZWdneS4KIAogICA0LiBL6XQgc29yIGv2evZ0dCBhIGthcmFrdGVyc29yIG1pbmRlbiBlbPVmb3JkdWzhc+FuYWsgaGVseWV0dGVz7XTpc2U6CiAgICAgIDojLCNzL3LpZ2kv+movZyAgICBhaG9sICMsIyBhIGvpdCBzb3Igc29yc3rhbWEuCkBAIC01MzAsNyArNTMwLDcgQEAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgICAgNS4yLiAgbGVja2U6IELVVkVCQkVOIEEgRsFKTE9LIM1SwVPBUtNMCisJCSA1LjIuICBsZWNrZTogQtVWRUJCRU4gQSBGwUpMT0sgzVLBU8FS00wKIAogCiAgICAgICoqIEEgZuFqbG9rIHbhbHRveuFzYWl0IO1neSDtcmhhdGp1ayBraSAgOncgRsFKTE7JVi4gKioKQEAgLTU0MiwxMiArNTQyLDEyIEBACiAKICAgMy4gzXJqYToJOncgVEVTWlQgICAoYWhvbCBURVNaVCBhIHbhbGFzenRvdHQgZuFqbG7pdikhCiAKLSAgNC4gRXogZWxtZW50aSBhIHRlbGplcyBm4WpsdCAoYSBWaW0gVHV0b3J0KSBURVNaVCBu6XZlbi4KKyAgNC4gRXogZWxtZW50aSBhIHRlbGplcyBm4WpsdCAoYSBWaW0gb2t0YXTzauF0KSBURVNaVCBu6XZlbi4KICAgICAgRWxsZW71cnrpc2vpcHAg7XJqdWsgaXNt6XQgICAgOiFkaXIgICBob2d5IGzhc3N1ayBhIGv2bnl2dOFyYXQhCiAgICAgIChGZWxmZWzpIGdvbWJiYWwgOiB1dOFuIGF6IGVs9Xr1IHV0YXPtdOFzb2sgdmlzc3phaG96aGF082FrLikKIAogTWVnajogSGEg1m4ga2ls6XBuZSBhIFZpbWL1bCDpcyDpcyB2aXNzemF06XJuZSBhIFRFU1pUIGbhamxu6XZ2ZWwsIGFra29yIGEKLSAgICAgIGbhamwgYSB0dXRvciBtZW506XNrb3JpIHBvbnRvcyBt4XNvbGF0YSBsZW5uZS4KKyAgICAgIGbhamwgYXogb2t0YXTzIG1lbnTpc2tvcmkgcG9udG9zIG3hc29sYXRhIGxlbm5lLgogCiAgIDUuIFThdm9s7XRzYSBlbCBhIGbhamx0ICAoTVMtRE9TKToJOiFkZWwgVEVTWlQKIAkJCXZhZ3kgKFVuaXgpOgk6IXJtIFRFU1pUCkBAIC02MjYsNyArNjI2LDcgQEAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSA2LjEuICBsZWNrZTogQSBPUEVOIFBBUkFOQ1MKKwkJICAgNi4xLiAgbGVja2U6IEEgTUVHTllJVMFTIChPUEVOKSBQQVJBTkNTCiAKIAogKiogbyAgYmXtcuFz4XZhbCBueWl0aGF0IGVneSD6aiBzb3J0IGEga3Vyem9yIGFsYXR0IOlzIHbhbHRoYXQgYmVzevpy8yBt82RiYSAqKgpAQCAtNjg0LDE2ICs2ODQsMTcgQEAKIAogICAxLiBNb3pnYXNzdWsgYSBrdXJ6b3J0IGF6IGVsc/UgLS0tPiBrZXpkZXT7IHNvcnJhIQogCi0gIDIuIFBsYWNlIHRoZSBjdXJzb3IgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgZmlyc3Qgd29yZCB0aGF0IGlzIGRpZmZlcmVudAotICAgICBmcm9tIHRoZSBzZWNvbmQgbGluZSBtYXJrZWQgLS0tPiAodGhlIHdvcmQgJ2xhc3QnKS4KKyAgMi4gSGVseWV6emUgYSBrdXJ6b3J0IGF6IGVsc/Ugc3rzIGVsZWrpcmUgYW1lbHkgZWx06XIgYSBt4XNvZGlrCisgICAgIC0tLT4ga2V6ZGV0+yBzb3IgdGFydGFsbeF082wgKGEgJ2F6IHV0b2xz83ZhbCcgculzenT1bCkuCiAKLSAgMy4gTm93IHR5cGUgIFIgIGFuZCByZXBsYWNlIHRoZSByZW1haW5kZXIgb2YgdGhlIHRleHQgb24gdGhlIGZpcnN0IGxpbmUgYnkKLSAgICAgdHlwaW5nIG92ZXIgdGhlIG9sZCB0ZXh0IHRvIG1ha2UgdGhlIGZpcnN0IGxpbmUgdGhlIHNhbWUgYXMgdGhlIHNlY29uZC4KKyAgMy4gTnlvbWpvbiBSIGthcmFrdGVydCDpcyDtcmphIOl0IGEgc3r2dmVnIG1hcmFk6WvhdCBheiBlbHP1IHNvcmJhbgorICAgICD6Z3ksIGhvZ3kgYSAga+l0IHNvciBlZ3llevUgbGVneWVuLgogCi0tLS0+IFRvIG1ha2UgdGhlIGZpcnN0IGxpbmUgdGhlIHNhbWUgYXMgdGhlIGxhc3Qgb24gdGhpcyBwYWdlIHVzZSB0aGUga2V5cy4KLS0tLT4gVG8gbWFrZSB0aGUgZmlyc3QgbGluZSB0aGUgc2FtZSBhcyB0aGUgc2Vjb25kLCB0eXBlIFIgYW5kIHRoZSBuZXcgdGV4dC4KKy0tLT4gQXogZWxz9SBzb3J0IHRlZ3llIGF6b25vc3PhIGF6IHV0b2xz83ZhbDogaGFzem7hbGphIGEgZ29tYm9rYXQuCistLS0+IEF6IGVsc/Ugc29ydCB0ZWd5ZSBhem9ub3Nz4SBhIG3hc29kaWtrYWw6IO1yam9uIFItdCDpcyBheiD6aiBzevZ2ZWdldC4KIAotICA0LiBOb3RlIHRoYXQgd2hlbiB5b3UgcHJlc3MgPEVTQz4gdG8gZXhpdCwgYW55IHVuYWx0ZXJlZCB0ZXh0IHJlbWFpbnMuCisgIDQuIEplZ3llenr8ayBtZWcsIGhhIDxFU0M+LWV0IG55b21vaywgYWtrb3IgYSB24Wx0b3phdGxhbnVrIGhhZ3lvdHQKKyAgICAgc3r2dmVnZWsgduFsdG96YXRsYW5vayBtYXJhZG5hay4KIAogCiAKQEAgLTcyNiwxNiArNzI3LDE2IEBACiAJCQkgICAgICAgNi4gTEVDS0Ug1lNTWkVGT0dMQUzTSkEKIAogCi0gIDEuIFR5cGluZyAgbwlvcGVucyBhIGxpbmUgQkVMT1cgdGhlIGN1cnNvciBhbmQgcGxhY2VzIHRoZSBjdXJzb3Igb24gdGhlIG9wZW4KLSAgICAgbGluZSBpbiBJbnNlcnQgbW9kZS4KLSAgICAgVHlwaW5nIGEgY2FwaXRhbCAgTyAgb3BlbnMgdGhlIGxpbmUgQUJPVkUgdGhlIGxpbmUgdGhlIGN1cnNvciBpcyBvbi4KKyAgMS4gbwliZe1y4XPhdmFsIPpqIHNvcnQgbnlpdHVuayBtZWcgYSBzb3IgQUxBVFQg6XMgYSBrdXJ6b3IgYXog+moKKyAgICAgc29yYmFuIGxlc3ogYmVzevpy4XMtbfNkYmFuLgorICAgICBOYWd5ICBPICBhIHNvciBGRUxFVFQgbnlpdCD6aiBzb3J0LCDpcyBvZGEga2Vy/GwgYSBrdXJ6b3IuCiAKLSAgMi4gVHlwZSBhbiAgYSAgdG8gaW5zZXJ0IHRleHQgQUZURVIgdGhlIGNoYXJhY3RlciB0aGUgY3Vyc29yIGlzIG9uLgotICAgICBUeXBpbmcgYSBjYXBpdGFsICBBICBhdXRvbWF0aWNhbGx5IGFwcGVuZHMgdGV4dCB0byB0aGUgZW5kIG9mIHRoZSBsaW5lLgorICAyLiBhICBiZe1y4XPhdmFsIGF6IGFrdHXhbGlzIGthcmFrdGVydPVsIFVUwU4gKGpvYmJyYSkgc3r6cmhhdHVuayBiZSBzevZ2ZWdldC4KKyAgICAgTmFneSBBICBhdXRvbWF0aWt1c2FuIGEgc29yIGxlZ3bpZ+loZXogYWRqYSBob3p64SBhIHN69nZlZ2V0LgogCi0gIDMuIFR5cGluZyBhIGNhcGl0YWwgIFIgIGVudGVycyBSZXBsYWNlIG1vZGUgdW50aWwgIDxFU0M+ICBpcyBwcmVzc2VkIHRvIGV4aXQuCisgIDMuIEEgbmFneSAgUiAgYmX8dOlz6XZlbCDhdO1y8yAocmVwbGFjZSkgbfNkYmEga2Vy/Gz8bmsgIDxFU0M+IGxlbnlvbeFz4WlnLgogCi0gIDQuIFR5cGluZyAiOnNldCB4eHgiIHNldHMgdGhlIG9wdGlvbiAieHh4IgorICA0LiAiOnNldCB4eHgiIGJl7XLhc+F2YWwgYXogInh4eCIgb3BjafMg4Wxs7XRoYXTzIGJlLgogCiAKIApAQCAtNzQ2LDcgKzc0Nyw3IEBACiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCSAgICAgICA3LiBsZWNrZTogT04tTElORSBIRUxQIFBBUkFOQ1NPSworCQkgICAgIDcuIGxlY2tlOiBBWiBPTi1MSU5FIFPaR9MgUEFSQU5DU0FJCiAKIAogCQkgICAgKiogQXogb25saW5lIHP6Z/NyZW5kc3plciBoYXN6buFsYXRhICoqCkBAIC04MDEsOCArODAyLDkgQEAKICAgdHVk82tuYWs6ICI6aGVscCB1c2VyLW1hbnVhbCIuIChlZ3llbPVyZSBuZW0gdHVkIG1hZ3lhcnVsKQogCiAgIFRvduFiYmkgbWFneWFyIG9sdmFzbml2YWzzayDpcmhldPVlayBlbCBheiBhbOFiYmkgb2xkYWxy82wuCi0gIGh0dHA6Ly91YnVudHUuaHUvaW5kZXgucGhwP3RpdGxlPVZpbQorICBodHRwOi8vd2lraS5odXAuaHUvaW5kZXgucGhwL1ZpbQogCisgIEFuZ29sIG9sdmFzbeFueW9rOgogICBGb3IgZnVydGhlciByZWFkaW5nIGFuZCBzdHVkeWluZywgdGhpcyBib29rIGlzIHJlY29tbWVuZGVkOgogCVZpbSAtIFZpIEltcHJvdmVkIC0gYnkgU3RldmUgT3VhbGxpbmUKIAlQdWJsaXNoZXI6IE5ldyBSaWRlcnMKQEAgLTgxNiw4ICs4MTgsMTMgQEAKICAgSXQgaXMgYSBnb29kIGJvb2sgdG8gZ2V0IHRvIGtub3cgYWxtb3N0IGFueXRoaW5nIHlvdSB3YW50IHRvIGRvIHdpdGggVmkuCiAgIFRoZSBzaXh0aCBlZGl0aW9uIGFsc28gaW5jbHVkZXMgaW5mb3JtYXRpb24gb24gVmltLgogCi0gIFRoaXMgdHV0b3JpYWwgd2FzIHdyaXR0ZW4gYnkgTWljaGFlbCBDLiBQaWVyY2UgYW5kIFJvYmVydCBLLiBXYXJlLAotICBDb2xvcmFkbyBTY2hvb2wgb2YgTWluZXMgdXNpbmcgaWRlYXMgc3VwcGxpZWQgYnkgQ2hhcmxlcyBTbWl0aCwKLSAgQ29sb3JhZG8gU3RhdGUgVW5pdmVyc2l0eS4gIEUtbWFpbDogYndhcmVAbWluZXMuY29sb3JhZG8uZWR1LgorICBFenQgYXogb2t0YXTzdCBNaWNoYWVsIEMuIFBpZXJjZSDpcyBSb2JlcnQgSy4gV2FyZSDtcnRhLCBhIENvbG9yYWRvCisgIFNjaG9vbCBvZiBNaW5lcyBkb2xnb3rzaSBDaGFybGVzIFNtaXRoIChDb2xvcmFkbyBTdGF0ZSBVbml2ZXJzaXR5KQorICB04W1vZ2F04XPhdmFsLgogCi0gIE1vZGlmaWVkIGZvciBWaW0gYnkgQnJhbSBNb29sZW5hYXIuCisgIEUtbWFpbDogYndhcmVAbWluZXMuY29sb3JhZG8uZWR1LgorCisgIEEgVmltaGV6IGlkb23tdG90dGEgQnJhbSBNb29sZW5hYXIuCisKKyAgTWFneWFy7XRvdHRhOiBIb3J24XRoIMFycOFkIDxob3J2YXRoLmFycGFkQHJvaWsuYm1mLmh1PiwgMjAwNi0yMDA4CisKZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuaHUuY3AxMjUwIGIvcnVudGltZS90dXRvci90dXRvci5odS5jcDEyNTAKaW5kZXggODRlNmJkNC4uNmZiMzI3MCAxMDA2NDQKLS0tIGEvcnVudGltZS90dXRvci90dXRvci5odS5jcDEyNTAKKysrIGIvcnVudGltZS90dXRvci90dXRvci5odS5jcDEyNTAKQEAgLTEsNSArMSw1IEBACiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci09ICAgINwgZCB2IPYgeiD2IGwgaiD8IGsgICBhICAgViBJIE0gICBUIHUgdCBvIHIgYiBhIG4gIC0gICAgMS41LfZzICB2ZXJ6afMgPT09Cis9PSDcIGQgdiD2IHog9iBsIGog/CBrICAgYSAgIFYgSSBNIC0gbyBrIHQgYSB0IPMgYiBhIG4gIC0gICAgMS41LfZzICB2ZXJ6afMgID09CiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAKICAgICAgQSBWaW0gZWd5IG5hZ3lvbiBoYXTpa29ueSBzemVya2VzenT1LCBhbWVsbnllayByZW5nZXRlZyB1dGFz7XThc2EKQEAgLTM4LDcgKzM4LDcgQEAKICAgMi4gVGFydHNhIGxlbnlvbXZhIGEgbGVmZWzpdCAoaiksIGFra29yIGlzbel0bPVkaWshCiAtLS0+IE1vc3QgdHVkamEsIGhvZ3lhbiBtZWhldCBhIGv2dmV0a2V69SBsZWNr6XJlLgogCi0gIDMuIEEgbGVmZWzpIGZvbWIgaGFzem7hbGF04XZhbCBtZW5qZW4gYSAxLjIuIGxlY2vpcmUhCisgIDMuIEEgbGVmZWzpIGdvbWIgaGFzem7hbGF04XZhbCBtZW5qZW4gYSAxLjIuIGxlY2vpcmUhCiAKIE1lZ2o6IEhhIG5lbSBiaXp0b3MgYmVubmUsIG1pdCBueW9tb3R0IG1lZywgbnlvbWphIG1lZyBheiA8RVNDPi1ldCwgaG9neQogICAgICAgbm9ybeFsIG3zZGJhIGtlcvxsavZuLCDpcyBpc23pdGVsamUgbWVnIGEgcGFyYW5jc290IQpAQCAtNjAsOCArNjAsOCBAQAogICAgICBIYSBtZW50ZW5pIHN6ZXJldG7pIGEgduFsdG964XNva2F0IOlzIGtpbOlwbmksIO1yamE6CiAJCQkJOndxICA8RU5URVI+CiAKLSAgMy4gQW1pa29yIGEgc2hlbGwgcHJvbXB0b3QgbOF0amEsIO1yamEgYmUgYSBwYXJhbmNzb3QsIGFtZWx5IGViYmUgYQotICAgICB0dXRvcmJhIGhvenphOgorICAzLiBBbWlrb3IgYSBzaGVsbCBwcm9tcHRvdCBs4XRqYSwg7XJqYSBiZSBhIHBhcmFuY3NvdCwgYW1lbHkgZWJiZSBhegorICAgICBva3RhdPNiYSBob3p6YToKICAgICAgRXogdmFs83N67W77bGVnOgl2aW10dXRvciA8RU5URVI+CiAgICAgIE5vcm3hbGlzIGVzZXRiZW4gZXp0IO1ybuE6CXZpbSB0dXRvci5odSA8RU5URVI+CiAKQEAgLTIzMCw3ICsyMzAsNyBAQAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkJIDIuNS4gIGxlY2tlOiBBIFZJU1NaQVZPTsFTIChVTkRPKSBQQVJBTkNTCisJCSAgIDIuNS4gIGxlY2tlOiBBIFZJU1NaQVZPTsFTIChVTkRPKSBQQVJBTkNTCiAKIAogKiogdSBn6XBlbOlz6XZlbCB2aXNzemF2b25oYXTzIGF6IHV0b2xz8yBwYXJhbmNzLCBVIGF6IGVn6XN6IHNvcnQgaGVseXJl4Wxs7XRqYS4gKioKQEAgLTI0NSw5ICsyNDUsOSBAQAogICA3LiBDVFJMLVIgKENUUkwgZ29tYiBsZW55b23hc2EgbWVsbGV0dCD8c3P2biBSLXQpIHDhcnN6b3IgY3NpbuFsamEg+mpyYSBhCiAgICAgIHZpc3N6YXZvbnQgcGFyYW5jc29rYXQgKHJlZG8pIQogCi0tLS0+IEphdu3tdHNkIGEgaGhpYuFrYWF0IGViYmJlbiBhIHNvb29yYmFuIG1hamQg4Wxs7XRzYSB2aXNzemFhYSBheiBlcmVkZXRpdC4KKy0tLT4gSmF27e10c2EgYSBoaGli4WthYXQgZWJiYmVuIGEgc29vb3JiYW4gbWFqZCDhbGztdHNhIHZpc3N6YWFhIGF6IGVyZWRldGl0LgogCi0gIDguIEV6ZWsgbmFneW9uIGhhc3pub3MgcGFyYW5jc29rLiBNb3N0IHVnYXJqb24gYSAyLiBsZWNrZSD2c3N6ZWZvZ2xhbPNq4XJhLgorICA4LiBFemVrIG5hZ3lvbiBoYXN6bm9zIHBhcmFuY3Nvay4gTW9zdCB1Z29yam9uIGEgMi4gbGVja2Ug9nNzemVmb2dsYWzzauFyYS4KIAogCiAKQEAgLTI1Nyw3ICsyNTcsNyBAQAogCiAgIDEuIFT2cmzpcyBhIGt1cnpvcnTzbCBhIHN68yB26WfpaWc6ICAgIGR3CiAKLSAgMi4gVPZybOlzIGEga3Vyem9ydPNsIGEgc3rzIHbpZ+lpZzogICAgZCQKKyAgMi4gVPZybOlzIGEga3Vyem9ydPNsIGEgc29yIHbpZ+lpZzogICAgZCQKIAogICAzLiBFZ+lzeiBzb3IgdPZybOlzZTogICAgZGQKIApAQCAtMjc1LDcgKzI3NSw3IEBACiAgICAgIFZpc3N6YXZvbuFzb2sgdmlzc3phdm9u4XNhOgkgICAgIENUUkwtUgogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSAzLjEuICBsZWNrZTogQSBQVVQgUEFSQU5DUworCQkzLjEuICBsZWNrZTogQSBCRUlMTEVTWlTJUyAoUFVUKSBQQVJBTkNTCiAKIAogICAqKiBwICBsZfx06XPpdmVsIGF6IHV0b2xz825hayB09nL2bHRldCBhIGt1cnpvciB1dOFuIGlsbGVzemhldGr8ay4gKioKQEAgLTI4NCw4ICsyODQsOCBAQAogCiAgIDIuIGRkIGxl/HTpc+l2ZWwgdPZy9mxq/GsgYSBzb3J0IOlzIGVsdOlyb2zzZGlrIGEgVmltIHB1ZmZlculiZW4uCiAKLSAgMy4gTW96Z2Fzc3VrIGEga3Vyem9ydCBBRtZMySBhIHNvciBm9mzpLCBhaG924SBtb3pnYXRuaSBzemVyZXRu6W5rIGEKLSAgICAgdPZy9mx0IHNvcnQuCisgIDMuIE1vemdhc3N1ayBhIGt1cnpvcnQgYXplbPV0dCBhICBzb3IgRUzVVFRJIHNvcmJhLCBhaG924SBtb3pnYXRuaQorICAgICBzemVyZXRu6W5rIGEgdPZy9mx0IHNvcnQuCiAKICAgNC4gTm9ybeFsIG3zZGJhbiDtcmp1bmsgIHAgICBiZXT7dCBhIHT2cvZsdCBzb3IgYmVpbGxlc3p06XPpaGV6LgogCkBAIC0yOTksNyArMjk5LDcgQEAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgICAgIDMuMi4gIGxlY2tlOiBBIFJFUExBQ0UgUEFSQU5DUworCQkgICAgICAgMy4yLiAgbGVja2U6IEFaIMFUzVLBUyAoUkVQTEFDRSkgUEFSQU5DUwogCiAKICoqIHIgIOlzICBhIGthcmFrdGVyZWsgbGX8dOlz6XZlbCBhIGt1cnpvciBhbGF0dGkga2FyYWt0ZXJ0IG1lZ3bhbHRvenRhdGp1ay4gKioKQEAgLTMyMSw3ICszMjEsNyBAQAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkJMy4zLiAgbGVja2U6IEEgQ0hBTkdFIFBBUkFOQ1MKKwkJCTMuMy4gIGxlY2tlOiBBIENTRVJFIChDSEFOR0UpIFBBUkFOQ1MKIAogCiAJICAgKiogQSBzevMgZWd5IHLpc3rpbmVrIG1lZ3bhbHRvenRhdOFz4WhveiDtcmp1azogIGN3IC4gKioKQEAgLTQxNSw3ICs0MTUsNyBAQAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkJNC4yLiAgbGVja2U6IEEgU0VBUkNIIFBBUkFOQ1MKKwkJCTQuMi4gIGxlY2tlOiBBIEtFUkVTyVMgKFNFQVJDSCkgUEFSQU5DUwogCiAKICAgKiogLyBtYWpkIGEga+124W50IGtpZmVqZXrpcyBiZe1y4XPhdmFsIGtlcmVzaGV0avxrIG1lZyBhIGtpZmVqZXrpc3QuICoqCkBAIC00NTksNyArNDU5LDcgQEAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgICAgNC40LiAgbGVja2U6IEEgSElCwUsgS0lKQVbNVMFTwU5BSyBFR1kgTdNESkEKKwkJICA0LjQuICBsZWNrZTogQSBISULBSyBLSUpBVs1UwVPBTkFLIEVHWSBN00RKQQogCiAKICAgICAqKiA6cy/6ai9y6WdpL2cgYmVn6XBlbOlz6XZlbCBheiAn+monLXJhIGNzZXLpbGr8ayBhICdy6WdpJy10LiAqKgpAQCAtNDcwLDEwICs0NzAsMTAgQEAKICAgICAgc29yYmFuLgogCiAgIDMuIE1vc3QgZXp0IO1yanVrOgkgOnMvZWdneS9lZ2cvZwkgICBhbWVseSBnbG9i4Wxpc2FuIGhlbHlldHRlc+10Ci0gICAgIGEgc29yYmFuLgorICAgICBhIHNvcmJhbiwgYXpheiBtaW5kZW4gZWz1Zm9yZHVs4XN0LgogICAgICBFeiBhIHNvcmJhbiBtaW5kZW4gZWz1Zm9yZHVs4XN0IGhlbHlldHRlc+10LgogCi0tLS0+IGVnZ3kgaGVneSBtZWdneSwgc3plbWJlIGr2biBlZ2d5IG3hc2lrIGhlZ2d5LgorLS0tPiBlZ2d5IGhlZ2d5IG1lZ2d5LCBzemVtYmUgavZuIGVnZ3kgbeFzaWsgaGVnZ3kuCiAKICAgNC4gS+l0IHNvciBr9nr2dHQgYSBrYXJha3RlcnNvciBtaW5kZW4gZWz1Zm9yZHVs4XPhbmFrIGhlbHlldHRlc+106XNlOgogICAgICA6Iywjcy9y6WdpL/pqL2cgICAgYWhvbCAjLCMgYSBr6XQgc29yIHNvcnN64W1hLgpAQCAtNTMwLDcgKzUzMCw3IEBACiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCSAgICAgIDUuMi4gIGxlY2tlOiBC1VZFQkJFTiBBIEbBSkxPSyDNUsFTwVLTTAorCQkgNS4yLiAgbGVja2U6IELVVkVCQkVOIEEgRsFKTE9LIM1SwVPBUtNMCiAKIAogICAgICAqKiBBIGbhamxvayB24Wx0b3rhc2FpdCDtZ3kg7XJoYXRqdWsga2kgIDp3IEbBSkxOyVYuICoqCkBAIC01NDIsMTIgKzU0MiwxMiBAQAogCiAgIDMuIM1yamE6CTp3IFRFU1pUICAgKGFob2wgVEVTWlQgYSB24Wxhc3p0b3R0IGbhamxu6XYpIQogCi0gIDQuIEV6IGVsbWVudGkgYSB0ZWxqZXMgZuFqbHQgKGEgVmltIFR1dG9ydCkgVEVTWlQgbul2ZW4uCisgIDQuIEV6IGVsbWVudGkgYSB0ZWxqZXMgZuFqbHQgKGEgVmltIG9rdGF082rhdCkgVEVTWlQgbul2ZW4uCiAgICAgIEVsbGVu9XJ66XNr6XBwIO1yanVrIGlzbel0ICAgIDohZGlyICAgaG9neSBs4XNzdWsgYSBr9m55dnThcmF0IQogICAgICAoRmVsZmVs6SBnb21iYmFsIDogdXThbiBheiBlbPV69SB1dGFz7XThc29rIHZpc3N6YWhvemhhdPNhay4pCiAKIE1lZ2o6IEhhINZuIGtpbOlwbmUgYSBWaW1i9Wwg6XMg6XMgdmlzc3phdOlybmUgYSBURVNaVCBm4Wpsbul2dmVsLCBha2tvciBhCi0gICAgICBm4WpsIGEgdHV0b3IgbWVudOlza29yaSBwb250b3MgbeFzb2xhdGEgbGVubmUuCisgICAgICBm4WpsIGF6IG9rdGF08yBtZW506XNrb3JpIHBvbnRvcyBt4XNvbGF0YSBsZW5uZS4KIAogICA1LiBU4XZvbO10c2EgZWwgYSBm4WpsdCAgKE1TLURPUyk6CTohZGVsIFRFU1pUCiAJCQl2YWd5IChVbml4KToJOiFybSBURVNaVApAQCAtNjI2LDcgKzYyNiw3IEBACiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQkgNi4xLiAgbGVja2U6IEEgT1BFTiBQQVJBTkNTCisJCSAgIDYuMS4gIGxlY2tlOiBBIE1FR05ZSVTBUyAoT1BFTikgUEFSQU5DUwogCiAKICoqIG8gIGJl7XLhc+F2YWwgbnlpdGhhdCBlZ3kg+mogc29ydCBhIGt1cnpvciBhbGF0dCDpcyB24Wx0aGF0IGJlc3r6cvMgbfNkYmEgKioKQEAgLTY4NCwxNiArNjg0LDE3IEBACiAKICAgMS4gTW96Z2Fzc3VrIGEga3Vyem9ydCBheiBlbHP1IC0tLT4ga2V6ZGV0+yBzb3JyYSEKIAotICAyLiBQbGFjZSB0aGUgY3Vyc29yIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGZpcnN0IHdvcmQgdGhhdCBpcyBkaWZmZXJlbnQKLSAgICAgZnJvbSB0aGUgc2Vjb25kIGxpbmUgbWFya2VkIC0tLT4gKHRoZSB3b3JkICdsYXN0JykuCisgIDIuIEhlbHllenplIGEga3Vyem9ydCBheiBlbHP1IHN68yBlbGVq6XJlIGFtZWx5IGVsdOlyIGEgbeFzb2RpaworICAgICAtLS0+IGtlemRldPsgc29yIHRhcnRhbG3hdPNsIChhICdheiB1dG9sc/N2YWwnIHLpc3p09WwpLgogCi0gIDMuIE5vdyB0eXBlICBSICBhbmQgcmVwbGFjZSB0aGUgcmVtYWluZGVyIG9mIHRoZSB0ZXh0IG9uIHRoZSBmaXJzdCBsaW5lIGJ5Ci0gICAgIHR5cGluZyBvdmVyIHRoZSBvbGQgdGV4dCB0byBtYWtlIHRoZSBmaXJzdCBsaW5lIHRoZSBzYW1lIGFzIHRoZSBzZWNvbmQuCisgIDMuIE55b21qb24gUiBrYXJha3RlcnQg6XMg7XJqYSDpdCBhIHN69nZlZyBtYXJhZOlr4XQgYXogZWxz9SBzb3JiYW4KKyAgICAg+md5LCBob2d5IGEgIGvpdCBzb3IgZWd5ZXr1IGxlZ3llbi4KIAotLS0tPiBUbyBtYWtlIHRoZSBmaXJzdCBsaW5lIHRoZSBzYW1lIGFzIHRoZSBsYXN0IG9uIHRoaXMgcGFnZSB1c2UgdGhlIGtleXMuCi0tLS0+IFRvIG1ha2UgdGhlIGZpcnN0IGxpbmUgdGhlIHNhbWUgYXMgdGhlIHNlY29uZCwgdHlwZSBSIGFuZCB0aGUgbmV3IHRleHQuCistLS0+IEF6IGVsc/Ugc29ydCB0ZWd5ZSBhem9ub3Nz4SBheiB1dG9sc/N2YWw6IGhhc3pu4WxqYSBhIGdvbWJva2F0LgorLS0tPiBBeiBlbHP1IHNvcnQgdGVneWUgYXpvbm9zc+EgYSBt4XNvZGlra2FsOiDtcmpvbiBSLXQg6XMgYXog+mogc3r2dmVnZXQuCiAKLSAgNC4gTm90ZSB0aGF0IHdoZW4geW91IHByZXNzIDxFU0M+IHRvIGV4aXQsIGFueSB1bmFsdGVyZWQgdGV4dCByZW1haW5zLgorICA0LiBKZWd5ZXp6/GsgbWVnLCBoYSA8RVNDPi1ldCBueW9tb2ssIGFra29yIGEgduFsdG96YXRsYW51ayBoYWd5b3R0CisgICAgIHN69nZlZ2VrIHbhbHRvemF0bGFub2sgbWFyYWRuYWsuCiAKIAogCkBAIC03MjYsMTYgKzcyNywxNiBAQAogCQkJICAgICAgIDYuIExFQ0tFINZTU1pFRk9HTEFM00pBCiAKIAotICAxLiBUeXBpbmcgIG8Jb3BlbnMgYSBsaW5lIEJFTE9XIHRoZSBjdXJzb3IgYW5kIHBsYWNlcyB0aGUgY3Vyc29yIG9uIHRoZSBvcGVuCi0gICAgIGxpbmUgaW4gSW5zZXJ0IG1vZGUuCi0gICAgIFR5cGluZyBhIGNhcGl0YWwgIE8gIG9wZW5zIHRoZSBsaW5lIEFCT1ZFIHRoZSBsaW5lIHRoZSBjdXJzb3IgaXMgb24uCisgIDEuIG8JYmXtcuFz4XZhbCD6aiBzb3J0IG55aXR1bmsgbWVnIGEgc29yIEFMQVRUIOlzIGEga3Vyem9yIGF6IPpqCisgICAgIHNvcmJhbiBsZXN6IGJlc3r6cuFzLW3zZGJhbi4KKyAgICAgTmFneSAgTyAgYSBzb3IgRkVMRVRUIG55aXQg+mogc29ydCwg6XMgb2RhIGtlcvxsIGEga3Vyem9yLgogCi0gIDIuIFR5cGUgYW4gIGEgIHRvIGluc2VydCB0ZXh0IEFGVEVSIHRoZSBjaGFyYWN0ZXIgdGhlIGN1cnNvciBpcyBvbi4KLSAgICAgVHlwaW5nIGEgY2FwaXRhbCAgQSAgYXV0b21hdGljYWxseSBhcHBlbmRzIHRleHQgdG8gdGhlIGVuZCBvZiB0aGUgbGluZS4KKyAgMi4gYSAgYmXtcuFz4XZhbCBheiBha3R14WxpcyBrYXJha3RlcnT1bCBVVMFOIChqb2JicmEpIHN6+nJoYXR1bmsgYmUgc3r2dmVnZXQuCisgICAgIE5hZ3kgQSAgYXV0b21hdGlrdXNhbiBhIHNvciBsZWd26WfpaGV6IGFkamEgaG96euEgYSBzevZ2ZWdldC4KIAotICAzLiBUeXBpbmcgYSBjYXBpdGFsICBSICBlbnRlcnMgUmVwbGFjZSBtb2RlIHVudGlsICA8RVNDPiAgaXMgcHJlc3NlZCB0byBleGl0LgorICAzLiBBIG5hZ3kgIFIgIGJl/HTpc+l2ZWwg4XTtcvMgKHJlcGxhY2UpIG3zZGJhIGtlcvxs/G5rICA8RVNDPiBsZW55b23hc+FpZy4KIAotICA0LiBUeXBpbmcgIjpzZXQgeHh4IiBzZXRzIHRoZSBvcHRpb24gInh4eCIKKyAgNC4gIjpzZXQgeHh4IiBiZe1y4XPhdmFsIGF6ICJ4eHgiIG9wY2nzIOFsbO10aGF08yBiZS4KIAogCiAKQEAgLTc0Niw3ICs3NDcsNyBAQAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICAgICAgNy4gbGVja2U6IE9OLUxJTkUgSEVMUCBQQVJBTkNTT0sKKwkJICAgICA3LiBsZWNrZTogQVogT04tTElORSBT2kfTIFBBUkFOQ1NBSQogCiAKIAkJICAgICoqIEF6IG9ubGluZSBz+mfzcmVuZHN6ZXIgaGFzem7hbGF0YSAqKgpAQCAtODAxLDggKzgwMiw5IEBACiAgIHR1ZPNrbmFrOiAiOmhlbHAgdXNlci1tYW51YWwiLiAoZWd5ZWz1cmUgbmVtIHR1ZCBtYWd5YXJ1bCkKIAogICBUb3bhYmJpIG1hZ3lhciBvbHZhc25pdmFs82sg6XJoZXT1ZWsgZWwgYXogYWzhYmJpIG9sZGFscvNsLgotICBodHRwOi8vdWJ1bnR1Lmh1L2luZGV4LnBocD90aXRsZT1WaW0KKyAgaHR0cDovL3dpa2kuaHVwLmh1L2luZGV4LnBocC9WaW0KIAorICBBbmdvbCBvbHZhc23hbnlvazoKICAgRm9yIGZ1cnRoZXIgcmVhZGluZyBhbmQgc3R1ZHlpbmcsIHRoaXMgYm9vayBpcyByZWNvbW1lbmRlZDoKIAlWaW0gLSBWaSBJbXByb3ZlZCAtIGJ5IFN0ZXZlIE91YWxsaW5lCiAJUHVibGlzaGVyOiBOZXcgUmlkZXJzCkBAIC04MTYsOCArODE4LDEzIEBACiAgIEl0IGlzIGEgZ29vZCBib29rIHRvIGdldCB0byBrbm93IGFsbW9zdCBhbnl0aGluZyB5b3Ugd2FudCB0byBkbyB3aXRoIFZpLgogICBUaGUgc2l4dGggZWRpdGlvbiBhbHNvIGluY2x1ZGVzIGluZm9ybWF0aW9uIG9uIFZpbS4KIAotICBUaGlzIHR1dG9yaWFsIHdhcyB3cml0dGVuIGJ5IE1pY2hhZWwgQy4gUGllcmNlIGFuZCBSb2JlcnQgSy4gV2FyZSwKLSAgQ29sb3JhZG8gU2Nob29sIG9mIE1pbmVzIHVzaW5nIGlkZWFzIHN1cHBsaWVkIGJ5IENoYXJsZXMgU21pdGgsCi0gIENvbG9yYWRvIFN0YXRlIFVuaXZlcnNpdHkuICBFLW1haWw6IGJ3YXJlQG1pbmVzLmNvbG9yYWRvLmVkdS4KKyAgRXp0IGF6IG9rdGF083QgTWljaGFlbCBDLiBQaWVyY2Ug6XMgUm9iZXJ0IEsuIFdhcmUg7XJ0YSwgYSBDb2xvcmFkbworICBTY2hvb2wgb2YgTWluZXMgZG9sZ29682kgQ2hhcmxlcyBTbWl0aCAoQ29sb3JhZG8gU3RhdGUgVW5pdmVyc2l0eSkKKyAgdOFtb2dhdOFz4XZhbC4KIAotICBNb2RpZmllZCBmb3IgVmltIGJ5IEJyYW0gTW9vbGVuYWFyLgorICBFLW1haWw6IGJ3YXJlQG1pbmVzLmNvbG9yYWRvLmVkdS4KKworICBBIFZpbWhleiBpZG9t7XRvdHRhIEJyYW0gTW9vbGVuYWFyLgorCisgIE1hZ3lhcu10b3R0YTogSG9yduF0aCDBcnDhZCA8aG9ydmF0aC5hcnBhZEByb2lrLmJtZi5odT4sIDIwMDYtMjAwOAorCmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLmh1LnV0Zi04IGIvcnVudGltZS90dXRvci90dXRvci5odS51dGYtOAppbmRleCBiNjQxNTVmLi5lYzQ4NmQ5IDEwMDY0NAotLS0gYS9ydW50aW1lL3R1dG9yL3R1dG9yLmh1LnV0Zi04CisrKyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuaHUudXRmLTgKQEAgLTEsNSArMSw1IEBACiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci09ICAgIMOcIGQgdiDDtiB6IMO2IGwgaiDDvCBrICAgYSAgIFYgSSBNICAgVCB1IHQgbyByIGIgYSBuICAtICAgIDEuNS3DtnMgIHZlcnppw7MgPT09Cis9PSDDnCBkIHYgw7YgeiDDtiBsIGogw7wgayAgIGEgICBWIEkgTSAtIG8gayB0IGEgdCDDsyBiIGEgbiAgLSAgICAxLjUtw7ZzICB2ZXJ6acOzICA9PQogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogCiAgICAgIEEgVmltIGVneSBuYWd5b24gaGF0w6lrb255IHN6ZXJrZXN6dMWRLCBhbWVsbnllayByZW5nZXRlZyB1dGFzw610w6FzYQpAQCAtMzgsNyArMzgsNyBAQAogICAyLiBUYXJ0c2EgbGVueW9tdmEgYSBsZWZlbMOpdCAoaiksIGFra29yIGlzbcOpdGzFkWRpayEKIC0tLT4gTW9zdCB0dWRqYSwgaG9neWFuIG1laGV0IGEga8O2dmV0a2V6xZEgbGVja8OpcmUuCiAKLSAgMy4gQSBsZWZlbMOpIGZvbWIgaGFzem7DoWxhdMOhdmFsIG1lbmplbiBhIDEuMi4gbGVja8OpcmUhCisgIDMuIEEgbGVmZWzDqSBnb21iIGhhc3puw6FsYXTDoXZhbCBtZW5qZW4gYSAxLjIuIGxlY2vDqXJlIQogCiBNZWdqOiBIYSBuZW0gYml6dG9zIGJlbm5lLCBtaXQgbnlvbW90dCBtZWcsIG55b21qYSBtZWcgYXogPEVTQz4tZXQsIGhvZ3kKICAgICAgIG5vcm3DoWwgbcOzZGJhIGtlcsO8bGrDtm4sIMOpcyBpc23DqXRlbGplIG1lZyBhIHBhcmFuY3NvdCEKQEAgLTYwLDggKzYwLDggQEAKICAgICAgSGEgbWVudGVuaSBzemVyZXRuw6kgYSB2w6FsdG96w6Fzb2thdCDDqXMga2lsw6lwbmksIMOtcmphOgogCQkJCTp3cSAgPEVOVEVSPgogCi0gIDMuIEFtaWtvciBhIHNoZWxsIHByb21wdG90IGzDoXRqYSwgw61yamEgYmUgYSBwYXJhbmNzb3QsIGFtZWx5IGViYmUgYQotICAgICB0dXRvcmJhIGhvenphOgorICAzLiBBbWlrb3IgYSBzaGVsbCBwcm9tcHRvdCBsw6F0amEsIMOtcmphIGJlIGEgcGFyYW5jc290LCBhbWVseSBlYmJlIGF6CisgICAgIG9rdGF0w7NiYSBob3p6YToKICAgICAgRXogdmFsw7NzesOtbsWxbGVnOgl2aW10dXRvciA8RU5URVI+CiAgICAgIE5vcm3DoWxpcyBlc2V0YmVuIGV6dCDDrXJuw6E6CXZpbSB0dXRvci5odSA8RU5URVI+CiAKQEAgLTIzMCw3ICsyMzAsNyBAQAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkJIDIuNS4gIGxlY2tlOiBBIFZJU1NaQVZPTsOBUyAoVU5ETykgUEFSQU5DUworCQkgICAyLjUuICBsZWNrZTogQSBWSVNTWkFWT07DgVMgKFVORE8pIFBBUkFOQ1MKIAogCiAqKiB1IGfDqXBlbMOpc8OpdmVsIHZpc3N6YXZvbmhhdMOzIGF6IHV0b2xzw7MgcGFyYW5jcywgVSBheiBlZ8Opc3ogc29ydCBoZWx5cmXDoWxsw610amEuICoqCkBAIC0yNDUsOSArMjQ1LDkgQEAKICAgNy4gQ1RSTC1SIChDVFJMIGdvbWIgbGVueW9tw6FzYSBtZWxsZXR0IMO8c3PDtm4gUi10KSBww6Fyc3pvciBjc2luw6FsamEgw7pqcmEgYQogICAgICB2aXNzemF2b250IHBhcmFuY3Nva2F0IChyZWRvKSEKIAotLS0tPiBKYXbDrcOtdHNkIGEgaGhpYsOha2FhdCBlYmJiZW4gYSBzb29vcmJhbiBtYWpkIMOhbGzDrXRzYSB2aXNzemFhYSBheiBlcmVkZXRpdC4KKy0tLT4gSmF2w63DrXRzYSBhIGhoaWLDoWthYXQgZWJiYmVuIGEgc29vb3JiYW4gbWFqZCDDoWxsw610c2Egdmlzc3phYWEgYXogZXJlZGV0aXQuCiAKLSAgOC4gRXplayBuYWd5b24gaGFzem5vcyBwYXJhbmNzb2suIE1vc3QgdWdhcmpvbiBhIDIuIGxlY2tlIMO2c3N6ZWZvZ2xhbMOzasOhcmEuCisgIDguIEV6ZWsgbmFneW9uIGhhc3pub3MgcGFyYW5jc29rLiBNb3N0IHVnb3Jqb24gYSAyLiBsZWNrZSDDtnNzemVmb2dsYWzDs2rDoXJhLgogCiAKIApAQCAtMjU3LDcgKzI1Nyw3IEBACiAKICAgMS4gVMO2cmzDqXMgYSBrdXJ6b3J0w7NsIGEgc3rDsyB2w6lnw6lpZzogICAgZHcKIAotICAyLiBUw7ZybMOpcyBhIGt1cnpvcnTDs2wgYSBzesOzIHbDqWfDqWlnOiAgICBkJAorICAyLiBUw7ZybMOpcyBhIGt1cnpvcnTDs2wgYSBzb3IgdsOpZ8OpaWc6ICAgIGQkCiAKICAgMy4gRWfDqXN6IHNvciB0w7ZybMOpc2U6ICAgIGRkCiAKQEAgLTI3NSw3ICsyNzUsNyBAQAogICAgICBWaXNzemF2b27DoXNvayB2aXNzemF2b27DoXNhOgkgICAgIENUUkwtUgogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSAzLjEuICBsZWNrZTogQSBQVVQgUEFSQU5DUworCQkzLjEuICBsZWNrZTogQSBCRUlMTEVTWlTDiVMgKFBVVCkgUEFSQU5DUwogCiAKICAgKiogcCAgbGXDvHTDqXPDqXZlbCBheiB1dG9sc8OzbmFrIHTDtnLDtmx0ZXQgYSBrdXJ6b3IgdXTDoW4gaWxsZXN6aGV0asO8ay4gKioKQEAgLTI4NCw4ICsyODQsOCBAQAogCiAgIDIuIGRkIGxlw7x0w6lzw6l2ZWwgdMO2csO2bGrDvGsgYSBzb3J0IMOpcyBlbHTDqXJvbMOzZGlrIGEgVmltIHB1ZmZlcsOpYmVuLgogCi0gIDMuIE1vemdhc3N1ayBhIGt1cnpvcnQgQUbDlkzDiSBhIHNvciBmw7Zsw6ksIGFob3bDoSBtb3pnYXRuaSBzemVyZXRuw6luayBhCi0gICAgIHTDtnLDtmx0IHNvcnQuCisgIDMuIE1vemdhc3N1ayBhIGt1cnpvcnQgYXplbMWRdHQgYSAgc29yIEVMxZBUVEkgc29yYmEsIGFob3bDoSBtb3pnYXRuaQorICAgICBzemVyZXRuw6luayBhIHTDtnLDtmx0IHNvcnQuCiAKICAgNC4gTm9ybcOhbCBtw7NkYmFuIMOtcmp1bmsgIHAgICBiZXTFsXQgYSB0w7Zyw7ZsdCBzb3IgYmVpbGxlc3p0w6lzw6loZXouCiAKQEAgLTI5OSw3ICsyOTksNyBAQAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICAgICAgMy4yLiAgbGVja2U6IEEgUkVQTEFDRSBQQVJBTkNTCisJCSAgICAgICAzLjIuICBsZWNrZTogQVogw4FUw41Sw4FTIChSRVBMQUNFKSBQQVJBTkNTCiAKIAogKiogciAgw6lzICBhIGthcmFrdGVyZWsgbGXDvHTDqXPDqXZlbCBhIGt1cnpvciBhbGF0dGkga2FyYWt0ZXJ0IG1lZ3bDoWx0b3p0YXRqdWsuICoqCkBAIC0zMjEsNyArMzIxLDcgQEAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCTMuMy4gIGxlY2tlOiBBIENIQU5HRSBQQVJBTkNTCisJCQkzLjMuICBsZWNrZTogQSBDU0VSRSAoQ0hBTkdFKSBQQVJBTkNTCiAKIAogCSAgICoqIEEgc3rDsyBlZ3kgcsOpc3rDqW5layBtZWd2w6FsdG96dGF0w6Fzw6Fob3ogw61yanVrOiAgY3cgLiAqKgpAQCAtNDE1LDcgKzQxNSw3IEBACiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCQk0LjIuICBsZWNrZTogQSBTRUFSQ0ggUEFSQU5DUworCQkJNC4yLiAgbGVja2U6IEEgS0VSRVPDiVMgKFNFQVJDSCkgUEFSQU5DUwogCiAKICAgKiogLyBtYWpkIGEga8OtdsOhbnQga2lmZWplesOpcyBiZcOtcsOhc8OhdmFsIGtlcmVzaGV0asO8ayBtZWcgYSBraWZlamV6w6lzdC4gKioKQEAgLTQ1OSw3ICs0NTksNyBAQAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgotCQkgICAgICA0LjQuICBsZWNrZTogQSBISULDgUsgS0lKQVbDjVTDgVPDgU5BSyBFR1kgTcOTREpBCisJCSAgNC40LiAgbGVja2U6IEEgSElCw4FLIEtJSkFWw41Uw4FTw4FOQUsgRUdZIE3Dk0RKQQogCiAKICAgICAqKiA6cy/DumovcsOpZ2kvZyBiZWfDqXBlbMOpc8OpdmVsIGF6ICfDumonLXJhIGNzZXLDqWxqw7xrIGEgJ3LDqWdpJy10LiAqKgpAQCAtNDcwLDEwICs0NzAsMTAgQEAKICAgICAgc29yYmFuLgogCiAgIDMuIE1vc3QgZXp0IMOtcmp1azoJIDpzL2VnZ3kvZWdnL2cJICAgYW1lbHkgZ2xvYsOhbGlzYW4gaGVseWV0dGVzw610Ci0gICAgIGEgc29yYmFuLgorICAgICBhIHNvcmJhbiwgYXpheiBtaW5kZW4gZWzFkWZvcmR1bMOhc3QuCiAgICAgIEV6IGEgc29yYmFuIG1pbmRlbiBlbMWRZm9yZHVsw6FzdCBoZWx5ZXR0ZXPDrXQuCiAKLS0tLT4gZWdneSBoZWd5IG1lZ2d5LCBzemVtYmUgasO2biBlZ2d5IG3DoXNpayBoZWdneS4KKy0tLT4gZWdneSBoZWdneSBtZWdneSwgc3plbWJlIGrDtm4gZWdneSBtw6FzaWsgaGVnZ3kuCiAKICAgNC4gS8OpdCBzb3Iga8O2esO2dHQgYSBrYXJha3RlcnNvciBtaW5kZW4gZWzFkWZvcmR1bMOhc8OhbmFrIGhlbHlldHRlc8OtdMOpc2U6CiAgICAgIDojLCNzL3LDqWdpL8O6ai9nICAgIGFob2wgIywjIGEga8OpdCBzb3Igc29yc3rDoW1hLgpAQCAtNTMwLDcgKzUzMCw3IEBACiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCSAgICAgIDUuMi4gIGxlY2tlOiBCxZBWRUJCRU4gQSBGw4FKTE9LIMONUsOBU8OBUsOTTAorCQkgNS4yLiAgbGVja2U6IELFkFZFQkJFTiBBIEbDgUpMT0sgw41Sw4FTw4FSw5NMCiAKIAogICAgICAqKiBBIGbDoWpsb2sgdsOhbHRvesOhc2FpdCDDrWd5IMOtcmhhdGp1ayBraSAgOncgRsOBSkxOw4lWLiAqKgpAQCAtNTQyLDEyICs1NDIsMTIgQEAKIAogICAzLiDDjXJqYToJOncgVEVTWlQgICAoYWhvbCBURVNaVCBhIHbDoWxhc3p0b3R0IGbDoWpsbsOpdikhCiAKLSAgNC4gRXogZWxtZW50aSBhIHRlbGplcyBmw6FqbHQgKGEgVmltIFR1dG9ydCkgVEVTWlQgbsOpdmVuLgorICA0LiBFeiBlbG1lbnRpIGEgdGVsamVzIGbDoWpsdCAoYSBWaW0gb2t0YXTDs2rDoXQpIFRFU1pUIG7DqXZlbi4KICAgICAgRWxsZW7FkXJ6w6lza8OpcHAgw61yanVrIGlzbcOpdCAgICA6IWRpciAgIGhvZ3kgbMOhc3N1ayBhIGvDtm55dnTDoXJhdCEKICAgICAgKEZlbGZlbMOpIGdvbWJiYWwgOiB1dMOhbiBheiBlbMWResWRIHV0YXPDrXTDoXNvayB2aXNzemFob3poYXTDs2FrLikKIAogTWVnajogSGEgw5ZuIGtpbMOpcG5lIGEgVmltYsWRbCDDqXMgw6lzIHZpc3N6YXTDqXJuZSBhIFRFU1pUIGbDoWpsbsOpdnZlbCwgYWtrb3IgYQotICAgICAgZsOhamwgYSB0dXRvciBtZW50w6lza29yaSBwb250b3MgbcOhc29sYXRhIGxlbm5lLgorICAgICAgZsOhamwgYXogb2t0YXTDsyBtZW50w6lza29yaSBwb250b3MgbcOhc29sYXRhIGxlbm5lLgogCiAgIDUuIFTDoXZvbMOtdHNhIGVsIGEgZsOhamx0ICAoTVMtRE9TKToJOiFkZWwgVEVTWlQKIAkJCXZhZ3kgKFVuaXgpOgk6IXJtIFRFU1pUCkBAIC02MjYsNyArNjI2LDcgQEAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCSA2LjEuICBsZWNrZTogQSBPUEVOIFBBUkFOQ1MKKwkJICAgNi4xLiAgbGVja2U6IEEgTUVHTllJVMOBUyAoT1BFTikgUEFSQU5DUwogCiAKICoqIG8gIGJlw61yw6Fzw6F2YWwgbnlpdGhhdCBlZ3kgw7pqIHNvcnQgYSBrdXJ6b3IgYWxhdHQgw6lzIHbDoWx0aGF0IGJlc3rDunLDsyBtw7NkYmEgKioKQEAgLTY4NCwxNiArNjg0LDE3IEBACiAKICAgMS4gTW96Z2Fzc3VrIGEga3Vyem9ydCBheiBlbHPFkSAtLS0+IGtlemRldMWxIHNvcnJhIQogCi0gIDIuIFBsYWNlIHRoZSBjdXJzb3IgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgZmlyc3Qgd29yZCB0aGF0IGlzIGRpZmZlcmVudAotICAgICBmcm9tIHRoZSBzZWNvbmQgbGluZSBtYXJrZWQgLS0tPiAodGhlIHdvcmQgJ2xhc3QnKS4KKyAgMi4gSGVseWV6emUgYSBrdXJ6b3J0IGF6IGVsc8WRIHN6w7MgZWxlasOpcmUgYW1lbHkgZWx0w6lyIGEgbcOhc29kaWsKKyAgICAgLS0tPiBrZXpkZXTFsSBzb3IgdGFydGFsbcOhdMOzbCAoYSAnYXogdXRvbHPDs3ZhbCcgcsOpc3p0xZFsKS4KIAotICAzLiBOb3cgdHlwZSAgUiAgYW5kIHJlcGxhY2UgdGhlIHJlbWFpbmRlciBvZiB0aGUgdGV4dCBvbiB0aGUgZmlyc3QgbGluZSBieQotICAgICB0eXBpbmcgb3ZlciB0aGUgb2xkIHRleHQgdG8gbWFrZSB0aGUgZmlyc3QgbGluZSB0aGUgc2FtZSBhcyB0aGUgc2Vjb25kLgorICAzLiBOeW9tam9uIFIga2FyYWt0ZXJ0IMOpcyDDrXJqYSDDqXQgYSBzesO2dmVnIG1hcmFkw6lrw6F0IGF6IGVsc8WRIHNvcmJhbgorICAgICDDumd5LCBob2d5IGEgIGvDqXQgc29yIGVneWV6xZEgbGVneWVuLgogCi0tLS0+IFRvIG1ha2UgdGhlIGZpcnN0IGxpbmUgdGhlIHNhbWUgYXMgdGhlIGxhc3Qgb24gdGhpcyBwYWdlIHVzZSB0aGUga2V5cy4KLS0tLT4gVG8gbWFrZSB0aGUgZmlyc3QgbGluZSB0aGUgc2FtZSBhcyB0aGUgc2Vjb25kLCB0eXBlIFIgYW5kIHRoZSBuZXcgdGV4dC4KKy0tLT4gQXogZWxzxZEgc29ydCB0ZWd5ZSBhem9ub3Nzw6EgYXogdXRvbHPDs3ZhbDogaGFzem7DoWxqYSBhIGdvbWJva2F0LgorLS0tPiBBeiBlbHPFkSBzb3J0IHRlZ3llIGF6b25vc3PDoSBhIG3DoXNvZGlra2FsOiDDrXJqb24gUi10IMOpcyBheiDDumogc3rDtnZlZ2V0LgogCi0gIDQuIE5vdGUgdGhhdCB3aGVuIHlvdSBwcmVzcyA8RVNDPiB0byBleGl0LCBhbnkgdW5hbHRlcmVkIHRleHQgcmVtYWlucy4KKyAgNC4gSmVneWV6esO8ayBtZWcsIGhhIDxFU0M+LWV0IG55b21vaywgYWtrb3IgYSB2w6FsdG96YXRsYW51ayBoYWd5b3R0CisgICAgIHN6w7Z2ZWdlayB2w6FsdG96YXRsYW5vayBtYXJhZG5hay4KIAogCiAKQEAgLTcyNiwxNiArNzI3LDE2IEBACiAJCQkgICAgICAgNi4gTEVDS0Ugw5ZTU1pFRk9HTEFMw5NKQQogCiAKLSAgMS4gVHlwaW5nICBvCW9wZW5zIGEgbGluZSBCRUxPVyB0aGUgY3Vyc29yIGFuZCBwbGFjZXMgdGhlIGN1cnNvciBvbiB0aGUgb3BlbgotICAgICBsaW5lIGluIEluc2VydCBtb2RlLgotICAgICBUeXBpbmcgYSBjYXBpdGFsICBPICBvcGVucyB0aGUgbGluZSBBQk9WRSB0aGUgbGluZSB0aGUgY3Vyc29yIGlzIG9uLgorICAxLiBvCWJlw61yw6Fzw6F2YWwgw7pqIHNvcnQgbnlpdHVuayBtZWcgYSBzb3IgQUxBVFQgw6lzIGEga3Vyem9yIGF6IMO6agorICAgICBzb3JiYW4gbGVzeiBiZXN6w7pyw6FzLW3Ds2RiYW4uCisgICAgIE5hZ3kgIE8gIGEgc29yIEZFTEVUVCBueWl0IMO6aiBzb3J0LCDDqXMgb2RhIGtlcsO8bCBhIGt1cnpvci4KIAotICAyLiBUeXBlIGFuICBhICB0byBpbnNlcnQgdGV4dCBBRlRFUiB0aGUgY2hhcmFjdGVyIHRoZSBjdXJzb3IgaXMgb24uCi0gICAgIFR5cGluZyBhIGNhcGl0YWwgIEEgIGF1dG9tYXRpY2FsbHkgYXBwZW5kcyB0ZXh0IHRvIHRoZSBlbmQgb2YgdGhlIGxpbmUuCisgIDIuIGEgIGJlw61yw6Fzw6F2YWwgYXogYWt0dcOhbGlzIGthcmFrdGVydMWRbCBVVMOBTiAoam9iYnJhKSBzesO6cmhhdHVuayBiZSBzesO2dmVnZXQuCisgICAgIE5hZ3kgQSAgYXV0b21hdGlrdXNhbiBhIHNvciBsZWd2w6lnw6loZXogYWRqYSBob3p6w6EgYSBzesO2dmVnZXQuCiAKLSAgMy4gVHlwaW5nIGEgY2FwaXRhbCAgUiAgZW50ZXJzIFJlcGxhY2UgbW9kZSB1bnRpbCAgPEVTQz4gIGlzIHByZXNzZWQgdG8gZXhpdC4KKyAgMy4gQSBuYWd5ICBSICBiZcO8dMOpc8OpdmVsIMOhdMOtcsOzIChyZXBsYWNlKSBtw7NkYmEga2Vyw7xsw7xuayAgPEVTQz4gbGVueW9tw6Fzw6FpZy4KIAotICA0LiBUeXBpbmcgIjpzZXQgeHh4IiBzZXRzIHRoZSBvcHRpb24gInh4eCIKKyAgNC4gIjpzZXQgeHh4IiBiZcOtcsOhc8OhdmFsIGF6ICJ4eHgiIG9wY2nDsyDDoWxsw610aGF0w7MgYmUuCiAKIAogCkBAIC03NDYsNyArNzQ3LDcgQEAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJICAgICAgIDcuIGxlY2tlOiBPTi1MSU5FIEhFTFAgUEFSQU5DU09LCisJCSAgICAgNy4gbGVja2U6IEFaIE9OLUxJTkUgU8OaR8OTIFBBUkFOQ1NBSQogCiAKIAkJICAgICoqIEF6IG9ubGluZSBzw7pnw7NyZW5kc3plciBoYXN6bsOhbGF0YSAqKgpAQCAtODAxLDggKzgwMiw5IEBACiAgIHR1ZMOza25hazogIjpoZWxwIHVzZXItbWFudWFsIi4gKGVneWVsxZFyZSBuZW0gdHVkIG1hZ3lhcnVsKQogCiAgIFRvdsOhYmJpIG1hZ3lhciBvbHZhc25pdmFsw7NrIMOpcmhldMWRZWsgZWwgYXogYWzDoWJiaSBvbGRhbHLDs2wuCi0gIGh0dHA6Ly91YnVudHUuaHUvaW5kZXgucGhwP3RpdGxlPVZpbQorICBodHRwOi8vd2lraS5odXAuaHUvaW5kZXgucGhwL1ZpbQogCisgIEFuZ29sIG9sdmFzbcOhbnlvazoKICAgRm9yIGZ1cnRoZXIgcmVhZGluZyBhbmQgc3R1ZHlpbmcsIHRoaXMgYm9vayBpcyByZWNvbW1lbmRlZDoKIAlWaW0gLSBWaSBJbXByb3ZlZCAtIGJ5IFN0ZXZlIE91YWxsaW5lCiAJUHVibGlzaGVyOiBOZXcgUmlkZXJzCkBAIC04MTYsOCArODE4LDEzIEBACiAgIEl0IGlzIGEgZ29vZCBib29rIHRvIGdldCB0byBrbm93IGFsbW9zdCBhbnl0aGluZyB5b3Ugd2FudCB0byBkbyB3aXRoIFZpLgogICBUaGUgc2l4dGggZWRpdGlvbiBhbHNvIGluY2x1ZGVzIGluZm9ybWF0aW9uIG9uIFZpbS4KIAotICBUaGlzIHR1dG9yaWFsIHdhcyB3cml0dGVuIGJ5IE1pY2hhZWwgQy4gUGllcmNlIGFuZCBSb2JlcnQgSy4gV2FyZSwKLSAgQ29sb3JhZG8gU2Nob29sIG9mIE1pbmVzIHVzaW5nIGlkZWFzIHN1cHBsaWVkIGJ5IENoYXJsZXMgU21pdGgsCi0gIENvbG9yYWRvIFN0YXRlIFVuaXZlcnNpdHkuICBFLW1haWw6IGJ3YXJlQG1pbmVzLmNvbG9yYWRvLmVkdS4KKyAgRXp0IGF6IG9rdGF0w7N0IE1pY2hhZWwgQy4gUGllcmNlIMOpcyBSb2JlcnQgSy4gV2FyZSDDrXJ0YSwgYSBDb2xvcmFkbworICBTY2hvb2wgb2YgTWluZXMgZG9sZ296w7NpIENoYXJsZXMgU21pdGggKENvbG9yYWRvIFN0YXRlIFVuaXZlcnNpdHkpCisgIHTDoW1vZ2F0w6Fzw6F2YWwuCiAKLSAgTW9kaWZpZWQgZm9yIFZpbSBieSBCcmFtIE1vb2xlbmFhci4KKyAgRS1tYWlsOiBid2FyZUBtaW5lcy5jb2xvcmFkby5lZHUuCisKKyAgQSBWaW1oZXogaWRvbcOtdG90dGEgQnJhbSBNb29sZW5hYXIuCisKKyAgTWFneWFyw610b3R0YTogSG9ydsOhdGggw4FycMOhZCA8aG9ydmF0aC5hcnBhZEByb2lrLmJtZi5odT4sIDIwMDYtMjAwOAorCmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLmphLmV1YyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuamEuZXVjCmluZGV4IGYwNDNlNDIuLjUxMzQzOTMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuamEuZXVjCisrKyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuamEuZXVjCkBAIC0yNTcsNyArMjU3LDcgQEAKIAogICAgICAgKiogsr+y86TiudSkpKS/pKS3q6Tqytakt6TOpeKhvKW3peel86TOwbCky7/0w82k8qW/paSl16S3pN6kuaGjICoqCiAKLSAgMS4gsMqyvKTOIC0tLT4gpMi8qKS1pOykv7bIpM7A6MaspMulq6G8pb2l66TysNzGsKS3pN6kuaGjCisgIDEuILDKsrykziAtLS0+IKTIvKiktaTspL+51KTOwOjGrKTLpauhvKW9peuk8rDcxrCkt6TepLmhowogCiAgIDIuIDJkdyCk8qW/paSl16S3pMbDsbjsMqTEyqyw3MawpLek3qS5oaMKIApAQCAtNzQxLDcgKzc0MSw3IEBACiAKICAgICAgICoqIKWrobylvaXrpM68oaTOsMzD1qSrpOmlxqWtpbmlyKTyxMmyw6S5pOuky6TPIGEgpMilv6Wkpdekt6TepLkgKioKIAotICAxLiClq6G8pb2l66TyIC0tLT4gpMe8qKS1pOykv7bIpNiw3MawpLek3qS3pOekpqGjCisgIDEuIKWrobylvaXrpPIgLS0tPiCkx7yopLWk7KS/udSk2LDcxrCkt6TepLek56SmoaMKIAogICAyLiBlIKTysqGkt6TGIGxpIKTOvarDvMn0pN6kx6WrobylvaXrpPKw3MawpLek3qS5oaMKIApAQCAtNzY0LDcgKzc2NCw3IEBACiAKIAkgICoqIDHKuLv6sMq+5aTyw9akrbS5pKik66TLpM/C58q4u/qkziBSIKTIpb+lpKXXpLek3qS3pOekpiAqKgogCi0gIDEuILDKsrykziAtLS0+IKTIvKiktaTspL+2yKTLpauhvKW9peuk8rDcxrCkt6TepLmho7rHvemkziB4eHggpM7A6MaspMuw3MawpLcKKyAgMS4gsMqyvKTOIC0tLT4gpMi8qKS1pOykv7nUpMulq6G8pb2l66TysNzGsKS3pN6kuaGjuse96aTOIHh4eCCkzsDoxqyky7DcxrCktwogICAgICCk3qS5oaMKIAogICAyLiBSIKTysqGkt6TGoaIyudTM3KTOv/TDzaTypb+lpKXXpLmk66SzpMikx6GieHh4IKSsw9a0uaS1pOyk3qS5oaMKZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuamEuc2ppcyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuamEuc2ppcwppbmRleCAzYmIzYzJjLi43YmUyMTIwIDEwMDY0NAotLS0gYS9ydW50aW1lL3R1dG9yL3R1dG9yLmphLnNqaXMKKysrIGIvcnVudGltZS90dXRvci90dXRvci5qYS5zamlzCkBAIC0yNTcsNyArMjU3LDcgQEAKIAogICAgICAgKiogib2J8YLgjXOCooK9gqKMSoLoldSCtYLMg4KBW4NWg4eDk4LMkU+CyZCUkmyC8INeg0ODdoK1gtyCt4FCICoqCiAKLSAgMS4giMiJuoLMIC0tLT4ggsaOpoKzguqCvYvGgsyQ5pOqgsmDSoFbg1yDi4LwiNqTroK1gtyCt4FCCisgIDEuIIjIibqCzCAtLS0+IILGjqaCs4Lqgr2Nc4LMkOaTqoLJg0qBW4Ncg4uC8Ijak66CtYLcgreBQgogCiAgIDIuIDJkdyCC8INeg0ODdoK1gsSSUIzqMoLClaqI2pOugrWC3IK3gUIKIApAQCAtNzQxLDcgKzc0MSw3IEBACiAKICAgICAgICoqIINKgVuDXIOLgsyOn4LMiMqSdYKpgueDZYNMg1iDZ4LwkseJwYK3gumCyYLNIGEggsaDXoNDg3aCtYLcgrcgKioKIAotICAxLiCDSoFbg1yDi4LwIC0tLT4ggsWOpoKzguqCvYvGgtaI2pOugrWC3IK1guWCpIFCCisgIDEuIINKgVuDXIOLgvAgLS0tPiCCxY6mgrOC6oK9jXOC1ojak66CtYLcgrWC5YKkgUIKIAogICAyLiBlIILwiZ+CtYLEIGxpIILMj0mSW5WUgtyCxYNKgVuDXIOLgvCI2pOugrWC3IK3gUIKIApAQCAtNzY0LDcgKzc2NCw3IEBACiAKIAkgICoqIDGVto6aiMiP44LwknWCq4q3gqaC6YLJgs2R5ZW2jpqCzCBSIILGg16DQ4N2grWC3IK1guWCpCAqKgogCi0gIDEuIIjIibqCzCAtLS0+IILGjqaCs4Lqgr2LxoLJg0qBW4Ncg4uC8Ijak66CtYLcgreBQo3Fj4mCzCB4eHgggsyQ5pOqgsmI2pOugrUKKyAgMS4giMiJuoLMIC0tLT4ggsaOpoKzguqCvY1zgsmDSoFbg1yDi4LwiNqTroK1gtyCt4FCjcWPiYLMIHh4eCCCzJDmk6qCyYjak66CtQogICAgICCC3IK3gUIKIAogICAyLiBSIILwiZ+CtYLEgUEyjXOW2oLMkJSSbILwg16DQ4N2greC6YKxgsaCxYFBeHh4IIKqknWKt4KzguqC3IK3gUIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuamEudXRmLTggYi9ydW50aW1lL3R1dG9yL3R1dG9yLmphLnV0Zi04CmluZGV4IGUxMmNkNjkuLjk1ZTEwOGUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuamEudXRmLTgKKysrIGIvcnVudGltZS90dXRvci90dXRvci5qYS51dGYtOApAQCAtMjU3LDcgKzI1Nyw3IEBACiAKICAgICAgICoqIOS9leWbnuOCguihjOOBhOOBn+OBhOe5sOOCiui/lOOBl+OBruODouODvOOCt+ODp+ODs+OBruWJjeOBq+aVsOWApOOCkuOCv+OCpOODl+OBl+OBvuOBmeOAgiAqKgogCi0gIDEuIOS7peS4i+OBriAtLS0+IOOBqOekuuOBleOCjOOBn+alreOBruWFiOmgreOBq+OCq+ODvOOCveODq+OCkuenu+WLleOBl+OBvuOBmeOAggorICAxLiDku6XkuIvjga4gLS0tPiDjgajnpLrjgZXjgozjgZ/ooYzjga7lhYjpoK3jgavjgqvjg7zjgr3jg6vjgpLnp7vli5XjgZfjgb7jgZnjgIIKIAogICAyLiAyZHcg44KS44K/44Kk44OX44GX44Gm5Y2Y6KqeMuOBpOWIhuenu+WLleOBl+OBvuOBmeOAggogCkBAIC03NDEsNyArNzQxLDcgQEAKIAogICAgICAgKiog44Kr44O844K944Or44Gu5qyh44Gu5L2N572u44GL44KJ44OG44Kt44K544OI44KS6L+95Yqg44GZ44KL44Gr44GvIGEg44Go44K/44Kk44OX44GX44G+44GZICoqCiAKLSAgMS4g44Kr44O844K944Or44KSIC0tLT4g44Gn56S644GV44KM44Gf5qWt44G456e75YuV44GX44G+44GX44KH44GG44CCCisgIDEuIOOCq+ODvOOCveODq+OCkiAtLS0+IOOBp+ekuuOBleOCjOOBn+ihjOOBuOenu+WLleOBl+OBvuOBl+OCh+OBhuOAggogCiAgIDIuIGUg44KS5oq844GX44GmIGxpIOOBrue1guerr+mDqOOBvuOBp+OCq+ODvOOCveODq+OCkuenu+WLleOBl+OBvuOBmeOAggogCkBAIC03NjQsNyArNzY0LDcgQEAKIAogCSAgKiogMeaWh+Wtl+S7peS4iuOCkue9ruOBjeaPm+OBiOOCi+OBq+OBr+Wkp+aWh+Wtl+OBriBSIOOBqOOCv+OCpOODl+OBl+OBvuOBl+OCh+OBhiAqKgogCi0gIDEuIOS7peS4i+OBriAtLS0+IOOBqOekuuOBleOCjOOBn+alreOBq+OCq+ODvOOCveODq+OCkuenu+WLleOBl+OBvuOBmeOAguacgOWIneOBriB4eHgg44Gu5YWI6aCt44Gr56e75YuV44GXCisgIDEuIOS7peS4i+OBriAtLS0+IOOBqOekuuOBleOCjOOBn+ihjOOBq+OCq+ODvOOCveODq+OCkuenu+WLleOBl+OBvuOBmeOAguacgOWIneOBriB4eHgg44Gu5YWI6aCt44Gr56e75YuV44GXCiAgICAgIOOBvuOBmeOAggogCiAgIDIuIFIg44KS5oq844GX44Gm44CBMuihjOebruOBruaVsOWApOOCkuOCv+OCpOODl+OBmeOCi+OBk+OBqOOBp+OAgXh4eCDjgYznva7mj5vjgZXjgozjgb7jgZnjgIIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvdHV0b3IubmIgYi9ydW50aW1lL3R1dG9yL3R1dG9yLm5iCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE3MTc4ZGYKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLm5iCkBAIC0wLDAgKzEsOTczIEBACis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cis9IFYgZSBsIGsgbyBtIG0gZSBuICAgdCBpIGwgICBpIG4gbiBmIPggciBpIG4gZyBlIG4gICBpICAgViBpIG0gIC0tICBWZXIuIDEuNyA9Cis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKyAgICAgVmltIGVyIGVuIG1lZ2V0IGtyYWZ0aWcgZWRpdG9yIG1lZCBtYW5nZSBrb21tYW5kb2VyLCBhbHQgZm9yIG1hbmdlIHRpbCDlCisgICAgIGt1bm5lIGflIGdqZW5ub20gYWxsZSBpIGVuIGlubmb4cmluZyBzb20gZGVubmUuIERlbiBlciBiZXJlZ25ldCBw5SDlCisgICAgIHNldHRlIGRlZyBpbm4gaSBicnVrZW4gYXYgbm9rIGtvbW1hbmRvZXIgc+UgZHUgdmlsIHbmcmUgaSBzdGFuZCB0aWwgbGV0dAorICAgICDlIGt1bm5lIGJydWtlIFZpbSBzb20gZW4gZWRpdG9yIHRpbCBhbGxlIGZvcm3lbC4KKworICAgICBUaWRlbiBzb20ga3JldmVzIGZvciDlIGflIGdqZW5ub20gZGVubmUgaW5uZvhyaW5nZW4gdGFyIGNhLiAyNS0zMAorICAgICBtaW51dHRlciwgYXZoZW5naWcgYXYgaHZvciBteWUgdGlkIGR1IGJydWtlciB0aWwgZWtzcGVyaW1lbnRlcmluZy4KKworICAgICBNRVJLOgorICAgICBLb21tYW5kb2VuZSBpIGxla3Nqb25lbmUgdmlsIG1vZGlmaXNlcmUgdGVrc3Rlbi4gTGFnIGVuIGtvcGkgYXYgZGVubmUKKyAgICAgZmlsZW4gc29tIGR1IGthbiD4dmUgZGVnIHDlIChodmlzIGR1IGtq+HJ0ZSCrdmltdHV0b3K7LWtvbW1hbmRvZW4sIGVyCisgICAgIGRldHRlIGFsbGVyZWRlIGVuIGtvcGkpLgorCisgICAgIERldCBlciB2aWt0aWcg5SBodXNrZSBhdCBkZW5uZSBpbm5m+HJpbmdlbiBlciBiZXJlZ25ldCBw5SBs5nJpbmcgZ2plbm5vbQorICAgICBicnVrLiBEZXQgYmV0eXIgYXQgZHUgbeUgdXRm+HJlIGtvbW1hbmRvZW5lIGZvciDlIGzmcmUgZGVtIHNraWtrZWxpZy4KKyAgICAgSHZpcyBkdSBiYXJlIGxlc2VyIHRla3N0ZW4sIHZpbCBkdSBnbGVtbWUga29tbWFuZG9lbmUhCisKKyAgICAgRvhyc3QgYXYgYWx0LCBzamVrayBhdCCrQ2FwcyBMb2NruyBJS0tFIGVyIGFrdGl2IG9nIHRyeWtrIKtquy10YXN0ZW4gZm9yCisgICAgIOUgZmx5dHRlIG1hcmv4cmVuIGhlbHQgdGlsIGxla3Nqb24gMS4xIGZ5bGxlciBza2plcm1lbi4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgICBMZWtzam9uIDEuMTogIEZMWVRUSU5HIEFWIE1BUkvYUkVOCisKKworICAgICAgICoqIEZvciDlIGZseXR0ZSBtYXJr+HJlbiwgdHJ5a2sgdGFzdGVuZSBoLCBqLCBrLCBsIHNvbSB2aXN0LiAqKgorCSAgICAgXgorCSAgICAgawkJVGlwczogaC10YXN0ZW4gZXIgdGlsIHZlbnN0cmUgb2cgZmx5dHRlciB0aWwgdmVuc3RyZS4KKyAgICAgICA8IGgJIGwgPgkgICAgICBsLXRhc3RlbiBlciB0aWwgaPh5cmUgb2cgZmx5dHRlciB0aWwgaPh5cmUuCisJICAgICBqCQkgICAgICBqLXRhc3RlbiBzZXIgdXQgc29tIGVuIHBpbCBzb20gcGVrZXIgbmVkb3Zlci4KKwkgICAgIHYKKyAgMS4gRmx5dHQgbWFya/hyZW4gcnVuZHQgcOUgc2tqZXJtZW4gdGlsIGR1IGhhciBm5XR0IGRldCBpbm4gaSBmaW5ncmVuZS4KKworICAyLiBIb2xkIGlubmUgbmVkb3ZlcnRhc3RlbiAoaikgdGlsIGRlbiByZXBldGVyZXIuCisgICAgIE7lIHZldCBkdSBodm9yZGFuIGR1IGJldmVnZXIgZGVnIHRpbCBuZXN0ZSBsZWtzam9uLgorCisgIDMuIEflIHRpbCBsZWtzam9uIDEuMiB2ZWQgaGplbHAgYXYgbmVkb3ZlcnRhc3Rlbi4KKworTWVyazogSHZpcyBkdSBibGlyIHVzaWtrZXIgcOUgbm9lIGR1IGhhciBza3JldmV0LCB0cnlrayA8RVNDPiBmb3Ig5SBn5SB0aWwKKyAgICAgIG5vcm1hbG1vZHVzLiBTa3JpdiBkZXJldHRlciBrb21tYW5kb2VuIGR1IPhuc2tldCBw5SBueXR0LgorCitNZXJrOiBQaWx0YXN0ZW5lIHNrYWwgb2dz5SB2aXJrZS4gTWVuIHZlZCDlIGJydWtlIGhqa2wgdmlsIGR1IHbmcmUgaSBzdGFuZCB0aWwKKyAgICAgIOUgYmV2ZWdlIG1hcmv4cmVuIG15ZSByYXNrZXJlIG7lciBkdSBlciBibGl0dCB2YW50IHRpbCBkZXQuIEhlbHQgc2FudCEKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIExla3Nqb24gMS4yOiBBVlNMVVRURSBWSU0KKworCisgICEhIE1FUks6IEb4ciBkdSB1dGb4cmVyIG5vZW4gYXYgcHVua3RlbmUgbmVkZW5mb3IsIGxlcyBoZWxlIGxla3Nqb25lbiEhCisKKyAgMS4gVHJ5a2sgPEVTQz4tdGFzdGVuIChmb3Ig5SBmb3JzaWtyZSBkZWcgb20gYXQgZHUgZXIgaSBub3JtYWxtb2R1cykuCisKKyAgMi4gU2tyaXY6CTpxISA8RU5URVI+LgorICAgICBEZXR0ZSBhdnNsdXR0ZXIgZWRpdG9yZW4gb2cgRk9SS0FTVEVSIGFsbGUgZm9yYW5kcmluZ2VyIHNvbSBkdSBoYXIgZ2pvcnQuCisKKyAgMy4gTuVyIGR1IHNlciBrb21tYW5kb2xpbmplbiBpIHNrYWxsZXQsIHNrcml2IGtvbW1hbmRvZW4gc29tIHN0YXJ0ZXQgZGVubmUKKyAgICAgaW5uZvhyaW5nZW4uIERlbiBlcjogICB2aW10dXRvciA8RU5URVI+CisKKyAgNC4gSHZpcyBkdSBlciBzaWtrZXIgcOUgYXQgZHUgaHVza2VyIGRldHRlLCB1dGb4ciBwdW5rdGVuZSAxIHRpbCAzIGZvciDlCisgICAgIGF2c2x1dHRlIG9nIHN0YXJ0ZSBlZGl0b3JlbiBw5SBueXR0LgorCitNRVJLOiAgOnEhIDxFTlRFUj4gIGZvcmthc3RlciBhbGxlIGZvcmFuZHJpbmdlciBzb20gZHUgZ2pvcmRlLiBJIGz4cGV0IGF2IG5vZW4KKyAgICAgICBm5SBsZWtzam9uZXIgdmlsIGR1IGzmcmUgaHZvcmRhbiBkdSBsYWdyZXIgZm9yYW5kcmluZ2VuZSB0aWwgZW4gZmlsLgorCisgIDUuIEZseXR0IG1hcmv4cmVuIG5lZCB0aWwgbGVrc2pvbiAxLjMuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSBMZWtzam9uIDEuMzogUkVESUdFUklORyBBViBURUtTVCAtLSBTTEVUVElORworCisKKwkgICAgICoqIFRyeWtrICB4ICBmb3Ig5SBzbGV0dGUgdGVnbmV0IHVuZGVyIG1hcmv4cmVuLiAqKgorCisgIDEuIEZseXR0IG1hcmv4cmVuIHRpbCBkZW4gZvhyc3RlIGxpbmplbiBtZXJrZXQgbWVkICAtLS0+LgorCisgIDIuIEZvciDlIG9yZG5lIGZlaWxlbmUgcOUgbGluamVuLCBmbHl0dCBtYXJr+HJlbiB0aWwgZGVuIGVyIG9wcOUgdGVnbmV0IHNvbQorICAgICBza2FsIHNsZXR0ZXMuCisKKyAgMy4gVHJ5a2sgdGFzdGVuICB4ICBmb3Ig5SBzbGV0dGUgZGV0IHX4bnNrZWRlIHRlZ25ldC4KKworICA0LiBSZXBldGVyIHB1bmt0IDIgdGlsIDQgdGlsIHNldG5pbmdlbiBlciBsaWsgZGVuIHNvbSBlciB1bmRlci4KKworLS0tPiBIZXNzc3Rlbm5ubiBicnJy5XNudWRkZGRlIGlpIGdhYWF0YS4KKy0tLT4gSGVzdGVuIGJy5XNudWRkZSBpIGdhdGEuCisKKyAgNS4gTuUgc29tIGxpbmplbiBlciBrb3JyZWt0LCBn5SB0aWwgbGVrc2pvbiAxLjQuCisKK01FUks6IE7lciBkdSBn5XIgZ2plbm5vbSBpbm5m+HJpbmdlbiwgaWtrZSBiYXJlIHBy+HYg5SBodXNrZSBrb21tYW5kb2VuZSwgbWVuCisgICAgICBicnVrIGRlbSBoZWx0IHRpbCBkZSBzaXR0ZXIuCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQlMZWtzam9uIDEuNDogUkVESUdFUklORyBBViBURUtTVCAtLSBJTk5TRVRUSU5HCisKKworCQkgICAgKiogVHJ5a2sgIGkgIGZvciDlIHNldHRlIGlubiB0ZWtzdC4gKioKKworICAxLiBGbHl0dCBtYXJr+HJlbiB0aWwgZGVuIGb4cnN0ZSBsaW5qZW4gc29tIGVyIG1lcmtldCBtZWQgLS0tPi4KKworICAyLiBGb3Ig5SBnavhyZSBkZW4gZvhyc3RlIGxpbmplbiBsaWsgZGVuIGFuZHJlLCBmbHl0dCBtYXJr+HJlbiB0aWwgZGVuIHN05XIKKyAgICAgcOUgdGVnbmV0IEVUVEVSIHBvc2lzam9uZW4gZGVyIHRla3N0ZW4gc2thbCBzZXR0ZXMgaW5uLgorCisgIDMuIFRyeWtrICBpICBvZyBza3JpdiBpbm4gdGVrc3RlbiBzb20gbWFuZ2xlci4KKworICA0LiBFdHRlcmh2ZXJ0IHNvbSBodmVyIGZlaWwgZXIgZmlrc2V0LCB0cnlrayA8RVNDPiBmb3Ig5SByZXR1cm5lcmUgdGlsCisgICAgIG5vcm1hbG1vZHVzLiBSZXBldGVyIHB1bmt0IDIgdGlsIDQgdGlsIHNldG5pbmdlbiBlciBrb3JyZWt0LgorCistLS0+IERldCBlciB0a3N0IHNvbSBtbmdsciAuCistLS0+IERldCBlciBnYW5za2UgbXllIHRla3N0IHNvbSBtYW5nbGVyIGhlci4KKworICA1LiBO5XIgZHUgZvhsZXIgZGVnIGtvbWZvcnRhYmVsIG1lZCDlIHNldHRlIGlubiB0ZWtzdCwgZ+UgdGlsIG9wcHN1bW1lcmluZ2VuCisgICAgIG5lZGVuZm9yLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQlMZWtzam9uIDEuNTogUkVESUdFUklORyBBViBURUtTVCAtLSBMRUdHRSBUSUwKKworCisJCSAgICAqKiBUcnlrayAgQSAgZm9yIOUgbGVnZ2UgdGlsIHRla3N0LiAqKgorCisgIDEuIEZseXR0IG1hcmv4cmVuIHRpbCBkZW4gZvhyc3RlIGxpbmplbiBuZWRlbmZvciBtZXJrZXQgLS0tPi4KKyAgICAgRGV0IGhhciBpa2tlIG5vZSDlIHNpIGh2b3IgbWFya/hyZW4gZXIgcGxhc3NlcnQgcOUgZGVuIGxpbmplbi4KKworICAyLiBUcnlrayAgQSAgb2cgc2tyaXYgaW5uIGRldCBzb20gc2thbCBsZWdnZXMgdGlsLgorCisgIDMuIE7lciB0ZWtzdGVuIGVyIGxhZ3QgdGlsLCB0cnlrayA8RVNDPiBmb3Ig5SByZXR1cm5lcmUgdGlsIG5vcm1hbG1vZHVzZW4uCisKKyAgNC4gRmx5dHQgbWFya/hyZW4gdGlsIGRlbiBhbmRyZSBsaW5qZW4gbWFya2VydCBtZWQgLS0tPiBvZyByZXBldGVyIHN0ZWcgMiBvZworICAgICAzIGZvciDlIHJlcGFyZXJlIGRlbm5lIHNldG5pbmdlbi4KKworLS0tPiBEZXQgbWFuZ2xlciBub2UgdGVrc3QgcAorICAgICBEZXQgbWFuZ2xlciBub2UgdGVrc3QgcOUgZGVubmUgbGluamVuLgorLS0tPiBEZXQgbWFuZ2xlciBvZ3PlIGxpdHQgdGVrCisgICAgIERldCBtYW5nbGVyIG9nc+UgbGl0dCB0ZWtzdCBw5SBkZW5uZSBsaW5qZW4uCisKKyAgNS4gTuVyIGR1IGb4bGVyIGF0IGR1IGJlaGVyc2tlciDlIGxlZ2dlIHRpbCB0ZWtzdCwgZ+UgdGlsIGxla3Nqb24gMS42LgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSBMZWtzam9uIDEuNjogUkVESUdFUkUgRU4gRklMCisKKworCSAgICAgICAqKiBCcnVrCTp3cSAgZm9yIOUgbGFncmUgZW4gZmlsIG9nIGF2c2x1dHRlLiAqKgorCisgICEhIE1FUks6IEb4ciBkdSB1dGb4cmVyIG5vZW4gYXYgc3RlZ2VuZSBuZWRlbmZvciwgbGVzIGhlbGUgZGVubmUgbGVrc2pvbmVuISEKKworICAxLiBBdnNsdXR0IGRlbm5lIGlubmb4cmluZ2VuIHNvbSBkdSBnam9yZGUgaSBsZWtzam9uIDEuMjogIDpxIQorCisgIDIuIFNrcml2IGRlbm5lIGtvbW1hbmRvZW4gcOUga29tbWFuZG9saW5qYTogIHZpbSB0dXRvciA8RU5URVI+CisgICAgIKt2aW27IGVyIGtvbW1hbmRvZW4gZm9yIOUgc3RhcnRlIFZpbS1lZGl0b3Jlbiwgq3R1dG9yuyBlciBuYXZuZXQgcOUgZmlsYQorICAgICBzb20gZHUgdmlsIHJlZGlnZXJlLiBCcnVrIGVuIGZpbCBzb20ga2FuIGZvcmFuZHJlcy4KKworICAzLiBTZXR0IGlubiBvZyBzbGV0dCB0ZWtzdCBzb20gZHUgbOZydGUgaSBkZSBmb3JlZ+VlbmRlIGxla3Nqb25lbmUuCisKKyAgNC4gTGFncmUgZmlsZW4gbWVkIGZvcmFuZHJpbmdlbmUgb2cgYXZzbHV0dCBWaW0gbWVkOgk6d3EgPEVOVEVSPgorCisgIDUuIFN0YXJ0IGlubmb4cmluZ2VuIHDlIG55dHQgb2cgZmx5dHQgbmVkIHRpbCBvcHBzdW1tZXJpbmdlbiBzb20gZvhsZ2VyLgorCisgIDYuIEV0dGVyIOUgaGEgbGVzdCBvZyBmb3JzdOV0dCBzdGVnZW5lIG92ZW5mb3I6IFNldHQgaSBnYW5nLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICBPUFBTVU1NRVJJTkcgQVYgTEVLU0pPTiAxCisKKworICAxLiBNYXJr+HJlbiBiZXZlZ2VzIHZlZCBoamVscCBhdiBwaWx0YXN0ZW5lIGVsbGVyIGhqa2wtdGFzdGVuZS4KKwkgaCAodmVuc3RyZSkJIGogKG5lZCkgICAgIGsgKG9wcCkJIGwgKGj4eXJlKQorCisgIDIuIEZvciDlIHN0YXJ0ZSBWaW0gZnJhIHNrYWxsLWtvbW1hbmRvbGluamVuLCBza3JpdjoJdmltIEZJTE5BVk4gPEVOVEVSPgorCisgIDMuIEZvciDlIGF2c2x1dHRlIFZpbSwgc2tyaXY6ICA8RVNDPiA6cSEgPEVOVEVSPiAgZm9yIOUgZm9ya2FzdGUgZW5kcmluZ2VyLgorCQkgICBFTExFUiBza3JpdjogIDxFU0M+IDp3cSA8RU5URVI+ICBmb3Ig5SBsYWdyZSBmb3JhbmRyaW5nZW5lLgorCisgIDQuIEZvciDlIHNsZXR0ZSB0ZWduZXQgdW5kZXIgbWFya/hyZW4sIHRyeWtrOiAgeAorCisgIDUuIEZvciDlIHNldHRlIGlubiBlbGxlciBsZWdnZSB0aWwgdGVrc3QsIHRyeWtrOgorCSBpICAgIHNrcml2IGlubnNhdHQgdGVrc3QgIDxFU0M+CXNldHQgaW5uIGb4ciBtYXJr+HJlbgorCSBBICAgIHNrcml2IHRpbGxhZ3QgdGVrc3QgIDxFU0M+CWxlZ2cgdGlsIHDlIHNsdXR0ZW4gYXYgbGluamVuCisKK01FUks6IE7lciBkdSB0cnlra2VyIDxFU0M+IGflciBkdSB0aWwgbm9ybWFsbW9kdXMgZWxsZXIgZHUgYXZicnl0ZXIgZW4gdfhuc2tldAorICAgICAgb2cgZGVsdmlzIGZ1bGxm+HJ0IGtvbW1hbmRvLgorCisgIE7lIGthbiBkdSBn5SB2aWRlcmUgdGlsIGxla3Nqb24gMi4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQlMZWtzam9uIDIuMTogU0xFVFRFS09NTUFORE9FUgorCisKKwkJICAgICoqIFRyeWtrICBkdyAgZm9yIOUgc2xldHRlIGV0IG9yZC4gKioKKworICAxLiBUcnlrayA8RVNDPiBmb3Ig5SB25nJlIHNpa2tlciBw5SBhdCBkdSBlciBpIG5vcm1hbG1vZHVzLgorCisgIDIuIEZseXR0IG1hcmv4cmVuIHRpbCBkZW4gZvhyc3RlIGxpbmplbiBuZWRlbmZvciBtZXJrZXQgLS0tPi4KKworICAzLiBGbHl0dCBtYXJr+HJlbiB0aWwgYmVneW5uZWxzZW4gYXYgb3JkZXQgc29tIHNrYWwgc2xldHRlcy4KKworICA0LiBUcnlrayAgZHcJb2cgb3JkZXQgdmlsIGZvcnN2aW5uZS4KKworTUVSSzogQm9rc3RhdmVuICBkICB2aWwga29tbWUgdGlsIHN5bmUgcOUgZGVuIG5lZGVyc3RlIGxpbmplbiBw5SBza2plcm1lbiBu5XIKKyAgICAgIGR1IHNrcml2ZXIgZGVuLiBWaW0gdmVudGVyIHDlIGF0IGR1IHNrYWwgc2tyaXZlIHcgLiBIdmlzIGR1IHNlciBldCBhbm5ldAorICAgICAgdGVnbiBlbm4JZCAgaGFyIGR1IHNrcmV2ZXQgbm9lIGZlaWw7IHRyeWtrIDxFU0M+IG9nIHN0YXJ0IHDlIG55dHQuCisKKy0tLT4gRGV0IGVyIGFndXJrIHRyZSBvcmQgZXBsZSBzb20gaWtrZSBo+HJlciBw5nJlIGhqZW1tZSBpIGRlbm5lIHNldG5pbmdlbi4KKy0tLT4gRGV0IGVyIHRyZSBvcmQgc29tIGlra2UgaPhyZXIgaGplbW1lIGkgZGVubmUgc2V0bmluZ2VuLgorCisgIDUuIFJlcGV0ZXIgcHVua3QgMyBvZyA0IHRpbCBkZW4gZvhyc3RlIHNldG5pbmdlbiBlciBsaWsgZGVuIGFuZHJlLiBH5QorICAgICBkZXJldHRlciB0aWwgbGVrc2pvbiAyLjIuCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICBMZWtzam9uIDIuMjogRkxFUkUgU0xFVFRFS09NTUFORE9FUgorCisKKwkgICAgICoqIFRyeWtrICBkJCAgZm9yIOUgc2xldHRlIHRpbCBzbHV0dGVuIGF2IGxpbmplbi4gKioKKworICAxLiBUcnlrayA8RVNDPiBmb3Ig5SB25nJlIHNpa2tlciBw5SBhdCBkdSBlciBpIG5vcm1hbG1vZHVzLgorCisgIDIuIEZseXR0IG1hcmv4cmVuIHRpbCBsaW5qZW4gbmVkZW5mb3IgbWVya2V0IC0tLT4uCisKKyAgMy4gRmx5dHQgbWFya/hyZW4gdGlsIHB1bmt0ZXQgZGVyIGxpbmplbiBza2FsIGt1dHRlcyAoRVRURVIgZvhyc3RlIHB1bmt0dW0pLgorCisgIDQuIFRyeWtrICBkJAlmb3Ig5SBzbGV0dGUgYWx0IHRpbCBzbHV0dGVuIGF2IGxpbmplbi4KKworLS0tPiBOb2VuIHNrcmV2IHNsdXR0ZW4gcOUgbGluamVuIGVuIGdhbmcgZm9yIG15ZS4gbGluamVuIGVuIGdhbmcgZm9yIG15ZS4KKworICA1LiBH5SB0aWwgbGVrc2pvbiAyLjMgZm9yIOUgZm9yc3TlIGh2YSBzb20gc2tqZXIuCisKKworCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgTGVrc2pvbiAyLjM6IE9NIE9QRVJBVE9SRVIgT0cgQkVWRUdFTFNFUgorCisKKyAgTWFuZ2Uga29tbWFuZG9lciBzb20gZm9yYW5kcmVyIHRla3N0ZW4gZXIgbGFnZXQgdXQgaSBmcmEgZW4gb3BlcmF0b3Igb2cgZW4KKyAgYmV2ZWdlbHNlLiBGb3JtYXRldCBmb3IgZW4gc2xldHRla29tbWFuZG8gbWVkIHNsZXR0ZW9wZXJhdG9yZW4gIGQgIGVyOgorCisJZCAgIGJldmVnZWxzZQorCisgIERlcjoKKyAgICBkCSAgICAgIC0gZXIgc2xldHRlb3BlcmF0b3Jlbi4KKyAgICBiZXZlZ2Vsc2UgLSBlciBodmEgb3BlcmF0b3JlbiB2aWwgb3BlcmUgcOUgKGxpc3RldCBuZWRlbmZvcikuCisKKyAgRW4ga29ydCBsaXN0ZSBtZWQgYmV2ZWdlbHNlcjoKKyAgICB3IC0gdGlsIHN0YXJ0ZW4gYXYgZGV0IG5lc3RlIG9yZGV0LCBVTk5UQVRUIGRldCBm+HJzdGUgdGVnbmV0LgorICAgIGUgLSB0aWwgc2x1dHRlbiBhdiBkZXQgbuV25nJlbmRlIG9yZGV0LCBJTktMVURFUlQgZGV0IHNpc3RlIHRlZ25ldC4KKyAgICAkIC0gdGlsIHNsdXR0ZW4gYXYgbGluamVuLCBJTktMVURFUlQgZGV0IHNpc3RlIHRlZ25ldC4KKworICBWZWQg5SBza3JpdmUJZGUgIHZpbCBhbHRz5SBhbHQgZnJhIG1hcmv4cmVuIHRpbCBzbHV0dGVuIGF2IG9yZGV0IGJsaQorICBzbGV0dGV0LgorCitNRVJLOiAgVmVkIOUgc2tyaXZlIGt1biBiZXZlZ2Vsc2VuIGkgbm9ybWFsbW9kdXNlbiB1dGVuIGVuIG9wZXJhdG9yIHZpbAorICAgICAgIG1hcmv4cmVuIGZseXR0ZXMgc29tIHNwZXNpZmlzZXJ0Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSBMRUtTSk9OIDIuNDogQlJVSyBBViBURUxMRVIgRk9SIEVOIEJFVkVHRUxTRQorCisKKyAqKiBWZWQg5SBza3JpdmUgZXQgdGFsbCBmb3JhbiBlbiBiZXZlZ2Vsc2UgcmVwZXRlcmVyIGRlbiBz5SBtYW5nZSBnYW5nZXIuICoqCisKKyAgMS4gRmx5dHQgbWFya/hyZW4gdGlsIHN0YXJ0ZW4gYXYgbGluamVuIG1hcmtlcnQgLS0tPiBuZWRlbmZvci4KKworICAyLiBTa3JpdiAgMncJZm9yIOUgZmx5dHRlIG1hcmv4cmVuIHRvIG9yZCBmcmFtb3Zlci4KKworICAzLiBTa3JpdiAgM2UJZm9yIOUgZmx5dHRlIG1hcmv4cmVuIGZyYW1vdmVyIHRpbCBzbHV0dGVuIGF2IGRldCB0cmVkamUKKyAgICAgb3JkZXQuCisKKyAgNC4gU2tyaXYgIDAgIChudWxsKSBmb3Ig5SBmbHl0dGUgdGlsIHN0YXJ0ZW4gYXYgbGluamVuLgorCisgIDUuIFJlcGV0ZXIgc3RlZyAyIG9nIDMgbWVkIGZvcnNramVsbGlnZSB0YWxsLgorCistLS0+IERldHRlIGVyIGVuIGxpbmplIG1lZCBub2VuIG9yZCBzb20gZHUga2FuIGJldmVnZSBkZWcgcnVuZHQgcOUuCisKKyAgNi4gR+UgdmlkZXJlIHRpbCBsZWtzam9uIDIuNS4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgTGVrc2pvbiAyLjU6IEJSVUsgQVYgQU5UQUxMIEZPUiDFIFNMRVRURSBNRVIKKworCisgICAgICoqIEV0IHRhbGwgc2FtbWVuIG1lZCBlbiBvcGVyYXRvciByZXBldGVyZXIgZGVuIHPlIG1hbmdlIGdhbmdlci4gKioKKworICBJIGtvbWJpbmFzam9uZW4gbWVkIHNsZXR0ZW9wZXJhdG9yZW4gb2cgZW4gYmV2ZWdlbHNlIG5ldm50IG92ZW5mb3Igc2V0dGVyIGR1CisgIGlubiBhbnRhbGwgZvhyIGJldmVnZWxzZW4gZm9yIOUgc2xldHRlIG1lcjoKKwkgZCAgbnVtbWVyICBiZXZlZ2Vsc2UKKworICAxLiBGbHl0dCBtYXJr+HJlbiB0aWwgZGV0IGb4cnN0ZSBvcmRldCBtZWQgU1RPUkUgQk9LU1RBVkVSIHDlIGxpbmplbiBtYXJrZXJ0CisgICAgIG1lZCAtLS0+LgorCisgIDIuIFNrcml2ICAyZHcgIGZvciDlIHNsZXR0ZSBkZSB0byBvcmRlbmUgbWVkIHN0b3JlIGJva3N0YXZlci4KKworICAzLiBSZXBldGVyIHN0ZWcgMSBvZyAyIG1lZCBmb3Jza2plbGxpbmcgYW50YWxsIGZvciDlIHNsZXR0ZSBkZSBldHRlcmb4bGdlbmRlCisgICAgIG9yZGVuZSBzb20gaGFyIHN0b3JlIGJva3N0YXZlci4KKworLS0tPiBEZW5uZSBBQkMgREUgbGluamVuIEZHSEkgSksgTE1OIE9QIGVyIG7lIFEgUlMgVFVWIGxpdHQgbWVyIGxlc2Jhci4KKworTUVSSzogRXQgYW50YWxsIG1lbGxvbSBvcGVyYXRvcmVuICBkICBvZyBiZXZlZ2Vsc2VuIHZpcmtlciBw5SBzYW1tZSBt5XRlIHNvbSDlCisgICAgICBicnVrZSBiZXZlZ2Vsc2VuIHV0ZW4gZW4gb3BlcmF0b3IuCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJTGVrc2pvbiAyLjY6IE9QRVJFUkUgUMUgTElOSkVSCisKKworCQkgKiogVHJ5a2sgIGRkICBmb3Ig5SBzbGV0dGUgZW4gaGVsIGxpbmplLiAqKgorCisgIFDlIGdydW5uIGF2IGF0IHNsZXR0aW5nIGF2IGxpbmplciBlciBteWUgYnJ1a3QsIGZhbnQgdXR2aWtsZXJuZSBhdiBWaSB1dCBhdAorICBkZXQgdmlsIHbmcmUgbGV0dGVyZSDlIHJldHQgb2cgc2xldHQgdHJ5a2tlIHRvIGQtZXIgZm9yIOUgc2xldHRlIGVuIGxpbmplLgorCisgIDEuIEZseXR0IG1hcmv4cmVuIHRpbCBkZW4gYW5kcmUgbGluamVuIGkgdmVyc2V0IG5lZGVuZm9yLgorICAyLiBUcnlrayAgZGQJIOUgc2xldHRlIGxpbmplbi4KKyAgMy4gRmx5dHQgZGVyZXR0ZXIgdGlsIGRlbiBmamVyZGUgbGluamVuLgorICA0LiBUcnlrayAgMmRkICBmb3Ig5SBzbGV0dGUgdG8gbGluamVyLgorCistLS0+ICAxKSBSb3NlciBlciBy+GRlLAorLS0tPiAgMikgR2r4cm1lIGVyIGf4eSwKKy0tLT4gIDMpIEZpb2xlciBlciBibOUsCistLS0+ICA0KSBKZWcgaGFyIGVuIGJpbCwKKy0tLT4gIDUpIEtsb2trZXIgdmlzZXIgdGlkZW4sCistLS0+ICA2KSBEcnVlciBlciBz+HRlCistLS0+ICA3KSBPZyBkdSBlciBsaWtlc+UuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQlMZWtzam9uIDIuNzogQU5HUkUtS09NTUFORE9FTgorCisKKyAgKiogVHJ5a2sgIHUgIGZvciDlIGFuZ3JlIHNpc3RlIGtvbW1hbmRvLCAgVSAgZm9yIOUgZmlrc2UgZW4gaGVsIGxpbmplLiAqKgorCisgIDEuIEZseXR0IG1hcmv4cmVuIHRpbCBsaW5qZW4gbmVkZW5mb3IgbWVya2V0IC0tLT4gb2cgcGxhc3NlciBkZW4gcOUgZGVuCisgICAgIGb4cnN0ZSBmZWlsZW4uCisgIDIuIFRyeWtrICB4ICBmb3Ig5SBzbGV0dGUgZGV0IGb4cnN0ZSB1+G5za2VkZSB0ZWduZXQuCisgIDMuIFRyeWtrIHPlICB1ICBmb3Ig5SBhbmdyZSBkZW4gc2lzdGUgdXRm+HJ0ZSBrb21tYW5kb2VuLgorICA0LiBEZXJldHRlciBvcmRuZXIgZHUgYWxsZSBmZWlsZW5lIHDlIGxpbmplbmUgdmVkIOUgYnJ1a2Uga29tbWFuZG9lbgl4ICAuCisgIDUuIFRyeWtrIG7lIGVuIHN0b3IgIFUgIGZvciDlIHNldHRlIGxpbmplbiB0aWxiYWtlIHRpbCBkZXQgZGVuIHZhcgorICAgICBvcmlnaW5hbHQuCisgIDYuIFRyeWtrICB1ICBub2VuIGdhbmdlciBmb3Ig5SBhbmdyZQlVICBvZyBmb3JlZ+VlbmRlIGtvbW1hbmRvZXIuCisgIDcuIERlcmV0dGVyIHRyeWtrZXIgZHUgIENUUkwtUiAgKGhvbGQgQ1RSTCBuZWRlIG1lbnMgZHUgdHJ5a2tlciBSKSBub2VuCisgICAgIGdhbmdlciBmb3Ig5SBnamVub3BwcmV0dGUga29tbWFuZG9lbmUgKG9tZ2r4cmUgYW5ncmVrb21tYW5kb2VuZSkuCisKKy0tLT4gUlJlcGFyZXIgZmVpaWxlbmUgcOXlIGRlbm5lIGxpbm5uamVuIG9vZyBlcnNzc3RhdHQgZGVtIG1lZWQgYW5ncmUuCisKKyAgOC4gRGV0dGUgZXIgbWVnZXQgbnl0dGlnZSBrb21tYW5kb2VyLiBO5SBrYW4gZHUgZ+UgdGlsIG9wcHN1bW1lcmluZ2VuIGF2CisgICAgIGxla3Nqb24gMi4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgT1BQU1VNTUVSSU5HIEFWIExFS1NKT04gMgorCisKKyAgMS4gRm9yIOUgc2xldHRlIGZyYSBtYXJr+HJlbiBmcmFtIHRpbCBkZXQgbmVzdGUgb3JkZXQsIHRyeWtrOiAgZHcKKyAgMi4gRm9yIOUgc2xldHRlIGZyYSBtYXJr+HJlbiB0aWwgc2x1dHRlbiBhdiBlbiBsaW5qZSwgdHJ5a2s6CWQkCisgIDMuIEZvciDlIHNsZXR0ZSBlbiBoZWwgbGluamUsIHRyeWtrOglkZAorCisgIDQuIEZvciDlIHJlcGV0ZXJlIGVuIGJldmVnZWxzZSwgc2V0dCBldCBudW1tZXIgZm9yYW46ICAydworICA1LiBGb3JtYXRldCBmb3IgZW4gZm9yYW5kcmluZ3Nrb21tYW5kbyBlcjoKKwkgICAgICAgb3BlcmF0b3IgIFtudW1tZXJdICBiZXZlZ2Vsc2UKKyAgICAgZGVyOgorICAgICAgIG9wZXJhdG9yICAtIGh2YSBzb20gc2thbCBnavhyZXMsIGYuZWtzLglkICBmb3Ig5SBzbGV0dGUKKyAgICAgICBbbnVtbWVyXSAgLSBldCB2YWxnZnJpdHQgYW50YWxsIGZvciDlIHJlcGV0ZXJlIGJldmVnZWxzZW4KKyAgICAgICBiZXZlZ2Vsc2UgLSBodmEga29tbWFuZG9lbiBza2FsIG9wZXJlcmUgcOUsIGVrc2VtcGVsdmlzCXcgIChvcmQpLAorCQkgICAkICAodGlsIHNsdXR0ZW4gYXYgbGluamVuKSBvZyBz5SB2aWRlcmUuCisKKyAgNi4gRm9yIOUgZ+UgdGlsIHN0YXJ0ZW4gYXYgZW4gbGluamUsIGJydWsgZW4gbnVsbDogIDAKKworICA3LiBGb3Ig5SBhbmdyZSB0aWRsaWdlcmUgZW5kcmluZ2VyLCBza3JpdjoJCXUgIChsaXRlbiB1KQorICAgICBGb3Ig5SBhbmdyZSBhbGxlIGZvcmFuZHJpbmdlciBw5SBlbiBsaW5qZSwgc2tyaXY6CVUgIChzdG9yIFUpCisgICAgIEZvciDlIG9tZ2r4cmUgYW5ncmluZ2VuLCB0cnlrazoJCQlDVFJMLVIKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgIExla3Nqb24gMy4xOiCrTElNIElOTrstS09NTUFORE9FTgorCisKKyAgICAqKiBUcnlrayAgcCAgZm9yIOUgbGltZSBpbm4gdGlkbGlnZXJlIHNsZXR0ZXQgdGVrc3QgZXR0ZXIgbWFya/hyZW4gKioKKworICAxLiBGbHl0dCBtYXJr+HJlbiB0aWwgZGVuIGb4cnN0ZSBsaW5qZW4gbWVkIC0tLT4gbmVkZW5mb3IuCisKKyAgMi4gVHJ5a2sgIGRkCWZvciDlIHNsZXR0ZSBsaW5qZW4gb2cgbGFncmUgZGVuIGkgZXQgVmltLXJlZ2lzdGVyLgorCisgIDMuIEZseXR0IG1hcmv4cmVuIHRpbCBjKS1saW5qZW4sIE9WRVIgcG9zaXNqb25lbiBsaW5qZW4gc2thbCBzZXR0ZXMgaW5uLgorCisgIDQuIFRyeWtrICBwICBmb3Ig5SBsZWdnZSBsaW5qZW4gdW5kZXIgbWFya/hyZW4uCisKKyAgNS4gUmVwZXRlciBwdW5rdCAyIHRpbCA0IGhlbHQgdGlsIGxpbmplbmUgZXIgaSByaWt0aWcgcmVra2Vm+GxnZS4KKworLS0tPiBkKSBLYW4gZHUgb2dz5SBs5nJlPworLS0tPiBiKSBGaW9sZXIgZXIgYmzlLAorLS0tPiBjKSBJbnRlbGxpZ2VucyBt5SBs5nJlcywKKy0tLT4gYSkgUm9zZXIgZXIgcvhkZSwKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgICBMZWtzam9uIDMuMjogq0VSU1RBVFS7LUtPTU1BTkRPRU4KKworCisJICoqIFRyeWtrICByeCAgZm9yIOUgZXJzdGF0dGUgdGVnbmV0IHVuZGVyIG1hcmv4cmVuIG1lZCB4LiAqKgorCisgIDEuIEZseXR0IG1hcmv4cmVuIHRpbCBkZW4gZvhyc3RlIGxpbmplbiBuZWRlbmZvciBtZXJrZXQgLS0tPi4KKworICAyLiBGbHl0dCBtYXJr+HJlbiBz5SBkZW4gc3TlciBvcHDlIGRlbiBm+HJzdGUgZmVpbGVuLgorCisgIDMuIFRyeWtrICByICBvZyBkZXJldHRlciB0ZWduZXQgc29tIHNrYWwgduZyZSBkZXIuCisKKyAgNC4gUmVwZXRlciBwdW5rdCAyIG9nIDMgdGlsIGRlbiBm+HJzdGUgbGluamVuIGVyIGxpayBkZW4gYW5kcmUuCisKKy0tLT4gRGEgZGZubmUgbHluanhuIGJsZSB6a3JldmV0LCB2YXIgZGV0IG74ZW4gc29tIHRqeWtrZXQgZmVpdGUgdGFzdGVyIQorLS0tPiBEYSBkZW5uZSBsaW5qZW4gYmxlIHNrcmV2ZXQsIHZhciBkZXQgbm9lbiBzb20gdHJ5a2tldCBmZWlsZSB0YXN0ZXIhCisKKyAgNS4gR+UgdmlkZXJlIHRpbCBsZWtzam9uIDMuMi4KKworTUVSSzogSHVzayBhdCBkdSBi+HIgbOZyZSB2ZWQg5SBCUlVLRSwgaWtrZSBwdWdnZS4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgICBMZWtzam9uIDMuMzogq0ZPUkFORFJFuy1PUEVSQVRPUkVOCisKKworCSAgICoqIEZvciDlIGZvcmFuZHJlIHRpbCBzbHV0dGVuIGF2IGV0IG9yZCwgdHJ5a2sgIGNlIC4gKioKKworICAxLiBGbHl0dCBtYXJr+HJlbiB0aWwgZGVuIGb4cnN0ZSBsaW5qZW4gbmVkZW5mb3Igc29tIGVyIG1lcmtldCAtLS0+LgorCisgIDIuIFBsYXNzZXIgbWFya/hyZW4gcOUgIHUgIGkgq2x1Ymp3crsuCisKKyAgMy4gVHJ5a2sgIGNlCW9nIGRldCBrb3JyZWt0ZSBvcmRldCAoaSBkZXR0ZSB0aWxmZWxsZXQsIHNrcml2IKtpbmplbrspLgorCisgIDQuIFRyeWtrIDxFU0M+IG9nIGflIHRpbCBkZXQgbmVzdGUgdGVnbmV0IHNvbSBza2FsIGZvcmFuZHJlcy4KKworICA1LiBSZXBldGVyIHB1bmt0IDMgb2cgNCBoZWx0IHRpbCBkZW4gZvhyc3RlIHNldG5pbmdlbiBlciBsaWsgZGVuIGFuZHJlLgorCistLS0+IERlbm5lIGx1Ymp3ciBoYXIgbm9lbiB3Z2ggc29tIG3lIGZvcmt35XAgbWVkIKtmb3Lma3pyeWFzuy1rb21tYW5kb2VuLgorLS0tPiBEZW5uZSBsaW5qZW4gaGFyIG5vZW4gb3JkIHNvbSBt5SBmb3JhbmRyZXMgbWVkIKtmb3JhbmRyZbsta29tbWFuZG9lbi4KKworVuZyIG9wcG1lcmtzb20gcOUgYXQgIGNlICBzbGV0dGVyIG9yZGV0IG9nIGflciBpbm4gaSBpbm5zZXR0aW5nc21vZHVzLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCUxla3Nqb24gMy40OiBGTEVSRSBGT1JBTkRSSU5HRVIgVkVEIEJSVUsgQVYgYworCisKKyAqKiBGb3JhbmRyaW5nc2tvbW1hbmRvZW4gYmxpciBicnVrdCBtZWQgZGUgc2FtbWUgYmV2ZWdlbHNlciBzb20gq3NsZXR0uy4gKioKKworICAxLiBGb3JhbmRyaW5nc29wZXJhdG9yZW4gZnVuZ2VyZXIgcOUgc2FtbWUgbeV0ZSBzb20gq3NsZXR0uy4gRm9ybWF0ZXQgZXI6CisKKwkgYyAgICBbbnVtbWVyXQkgYmV2ZWdlbHNlCisKKyAgMi4gQmV2ZWdlbHNlbmUgZXIgZGUgc2FtbWUsIHNvbSBmb3IgZWtzZW1wZWwJdyAgKG9yZCkgb2cgICQJKHNsdXR0ZW4gYXYgZW4KKyAgICAgbGluamUpLgorCisgIDMuIEflIHRpbCBkZW4gZvhyc3RlIGxpbmplbiBuZWRlbmZvciBzb20gZXIgbWVya2V0IC0tLT4uCisKKyAgNC4gRmx5dHQgbWFya/hyZW4gdGlsIGRlbiBm+HJzdGUgZmVpbGVuLgorCisgIDUuIFNrcml2ICBjJAlvZyBza3JpdiByZXN0ZW4gYXYgbGluamVuIGxpayBkZW4gYW5kcmUgb2cgdHJ5a2sgPEVTQz4uCisKKy0tLT4gU2x1dHRlbiBw5SBkZW5uZSBsaW5qZW4gdHJlbmdlciBsaXR0IGhqZWxwIGZvciDlIGdq+HJlIGRlbiBsaWsgZGVuIG5lc3RlLgorLS0tPiBTbHV0dGVuIHDlIGRlbm5lIGxpbmplbiB0cmVuZ2VyIOUgYmxpIHJldHRldCB2ZWQgYnJ1ayBhdiBjJC1rb21tYW5kb2VuLgorCitNRVJLOiBEdSBrYW4gYnJ1a2Ugc2xldHRldGFzdGVuIGZvciDlIHJldHRlIGZlaWwgbWVucyBkdSBza3JpdmVyLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIE9QUFNVTU1FUklORyBBViBMRUtTSk9OIDMKKworCisgIDEuIEZvciDlIGxlZ2dlIHRpbGJha2UgdGVrc3Qgc29tIG5ldHRvcHAgZXIgYmxpdHQgc2xldHRldCwgdHJ5a2sgIHAgIC4gRGV0dGUKKyAgICAgbGltZXIgaW5uIGRlbiBzbGV0dGVkZSB0ZWtzdGVuIEVUVEVSIG1hcmv4cmVuIChodmlzIGVuIGxpbmplIGJsZSBzbGV0dGV0CisgICAgIHZpbCBkZW4gYmxpIGxpbXQgaW5uIHDlIGxpbmplbiB1bmRlciBtYXJr+HJlbikuCisKKyAgMi4gRm9yIOUgZXJzdGF0dGUgZXQgdGVnbiB1bmRlciBtYXJr+HJlbiwgdHJ5a2sgIHIgIG9nIGRlcmV0dGVyIHRlZ25ldCBzb20KKyAgICAgZHUgdmlsIGhhIGRlci4KKworICAzLiBGb3JhbmRyaW5nc29wZXJhdG9yZW4gbGFyIGRlZyBmb3JhbmRyZSBmcmEgbWFya/hyZW4gdGlsIGRpdCBiZXZlZ2Vsc2VuCisgICAgIHRhciBkZWcuIERldCB2aWwgc2ksIHNrcml2ICBjZSAgZm9yIOUgZm9yYW5kcmUgZnJhIG1hcmv4cmVuIHRpbCBzbHV0dGVuCisgICAgIGF2IG9yZGV0LAljJCAgZm9yIOUgZm9yYW5kcmUgdGlsIHNsdXR0ZW4gYXYgbGluamVuLgorCisgIDQuIEZvcm1hdGV0IGZvciCrZm9yYW5kcmW7IGVyOgorCisJIGMgICBbbnVtbWVyXQliZXZlZ2Vsc2UKKworTuUga2FuIGR1IGflIHRpbCBuZXN0ZSBsZWtzam9uLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJICAgICBMZWtzam9uIDQuMTogUE9TSVNKT05FUklORyBBViBNQVJL2FJFTiBPRyBGSUxTVEFUVVMKKworCSoqIFRyeWtrIENUUkwtRyBmb3Ig5SB2aXNlIHBvc2lzam9uZW4gaSBmaWxlbiBvZyBmaWxzdGF0dXNlbi4KKwkgICBUcnlrayAgRyAgZm9yIOUgZ+UgdGlsIGVuIHNwZXNpZmlrayBsaW5qZSBpIGZpbGVuLiAqKgorCisgIE1lcms6IExlcyBoZWxlIGxla3Nqb25lbiBm+HIgZHUgdXRm+HJlciBub2VuIGF2IHB1bmt0ZW5lIQorCisgIDEuIEhvbGQgbmVkZSBDdHJsLXRhc3RlbiBvZyB0cnlrayAgZwkuIFZpIGthbGxlciBkZXR0ZSBDVFJMLUcuIEVuIG1lbGRpbmcKKyAgICAgdmlsIGtvbW1lIHRpbCBzeW5lIHDlIGJ1bm5lbiBhdiBza2plcm1lbiBtZWQgZmlsbmF2bmV0IG9nIHBvc2lzam9uZW4gaQorICAgICBmaWxlbi4gSHVzayBsaW5qZW51bW1lcmV0IGZvciBicnVrIGkgc3RlZyAzLgorCitNZXJrOiBEdSBrYW4gc2UgbWFya/hycG9zaXNqb25lbiBpIG5lZGVyc3RlIGj4eXJlIGhq+HJuZSBhdiBza2plcm1lbi4gRGV0dGUKKyAgICAgIHNramVyIG7lciCrcnVsZXK7LXZhbGdldCBlciBzYXR0IChmb3JrbGFydCBpIGxla3Nqb24gNikuCisKKyAgMi4gVHJ5a2sgIEcgIGZvciDlIGflIHRpbCBidW5uZW4gYXYgZmlsZW4uCisgICAgIFNrcml2ICBnZwlmb3Ig5SBn5SB0aWwgYmVneW5uZWxzZW4gYXYgZmlsZW4uCisKKyAgMy4gU2tyaXYgaW5uIGxpbmplbnVtbWVyZXQgZHUgdmFyIHDlIG9nIGRlcmV0dGVyICBHIC4gRGV0dGUgdmlsIGb4cmUgZGVnCisgICAgIHRpbGJha2UgdGlsIGxpbmplbiBkdSB2YXIgcOUgZGEgZHUgZvhyc3QgdHJ5a2tldCBDVFJMLUcuCisKKyAgNC4gVXRm+HIgc3RlZyAxIHRpbCAzIGh2aXMgZHUgZvhsZXIgZGVnIHNpa2tlciBw5SBwcm9zZWR5cmVuLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSBMZWtzam9uIDQuMjogU9hLRUtPTU1BTkRPRU4KKworICAgICAgKiogU2tyaXYJLyAgZXR0ZXJmdWxndCBhdiBlbiBz+Gtlc3RyZW5nIHNvbSBkdSB2aWwgbGV0ZSBldHRlci4gKioKKworICAxLiBUcnlrayAgLyAgbuVyIGR1IGVyIGkgbm9ybWFsbW9kdXNlbi4gTGVnZyBtZXJrZSB0aWwgYXQgc2ty5XN0cmVrZW4gb2cKKyAgICAgbWFya/hyZW4ga29tbWVyIHRpbCBzeW5lIHDlIGJ1bm5lbiBhdiBza2plcm1lbiBpIGxpa2hldCBtZWQKKyAgICAgqzq7LWtvbW1hbmRvZW5lLgorCisgIDIuIFNrcml2IKtmZWVlaWlsuyBvZyB0cnlrayA8RU5URVI+LiBEZXR0ZSBlciB0ZWtzdGVuIGR1IHZpbCBsZXRlIGV0dGVyLgorCisgIDMuIEZvciDlIGZpbm5lIG5lc3RlIGZvcmVrb21zdCBhdiBz+Gtlc3RyZW5nZW4sIHRyeWtrICBuIC4KKyAgICAgRm9yIOUgbGV0ZSBldHRlciBzYW1tZSBz+GtldGVrc3RlbiBpIG1vdHNhdHQgcmV0bmluZywgdHJ5a2sgIE4gLgorCisgIDQuIEZvciDlIGxldGUgZXR0ZXIgZW4gdGVrc3QgYmFrb3ZlciBpIGZpbGVuLCBicnVrICA/ICBpc3RlZGVuZm9yICAvCS4KKworICA1LiBGb3Ig5SBn5SB0aWxiYWtlIHRpbCBkZXIgZHUga29tIGZyYSwgdHJ5a2sgIENUUkwtTyAgKEhvbGQgQ3RybCBuZWRlIG1lbnMKKyAgICAgZHUgdHJ5a2tlciBib2tzdGF2ZW4gIG8gKS4gUmVwZXRlciBmb3Ig5SBn5SBlbmRhIGxlbmdyZSB0aWxiYWtlLiBDVFJMLUkKKyAgICAgZ+VyIGZyYW1vdmVyLgorCistLS0+IKtmZWVlaWlsuyBlciBpa2tlIG3ldGVuIOUgc2tyaXZlIKtmZWlsuyBw5SwgZmVlZWlpbCBlciBoZWx0IGZlaWwuCitNZXJrOiBO5XIgc/hraW5nZW4gbuVyIHNsdXR0ZW4gYXYgZmlsZW4sIHZpbCBkZW4gZm9ydHNldHRlIGZyYSBzdGFydGVuIHVubnRhdHQKKyAgICAgIGh2aXMgq3dyYXBzY2Fuuy12YWxnZXQgZXIgcmVzYXR0Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgIExla3Nqb24gNC4zOiBGSU5OIFNBTVNWQVJFTkRFIFBBUkVOVEVTRVIKKworCisJICAqKiBUcnlrayAgJSAgZm9yIOUgZmlubmUgZW4gc2Ftc3ZhcmVuZGUgKSwgXSBlbGxlciB9IC4gKioKKworICAxLiBQbGFzc2VyIG1hcmv4cmVuIHDlIGVuICgsIFsgZWxsZXIgeyBw5SBsaW5qZW4gbmVkZW5mb3IgbWVya2V0IC0tLT4uCisKKyAgMi4gVHJ5a2sgICUgIC4KKworICAzLiBNYXJr+HJlbiB2aWwgZ+UgdGlsIGRlbiBzYW1zdmFyZW5kZSBwYXJlbnRlc2VuIGVsbGVyIGhha2VwYXJlbnRlc2VuLgorCisgIDQuIFRyeWtrICAlICBmb3Ig5SBmbHl0dGUgbWFya/hyZW4gdGlsIGRlbiBhbmRyZSBzYW1zdmFyZW5kZSBwYXJlbnRlc2VuLgorCisgIDUuIEZseXR0IG1hcmv4cmVuIHRpbCBlbiBhbm5lbiAoLCApLCBbLCBdLCB7IGVsbGVyIH0gb2cgc2UgaHZhICAlICBnavhyLgorCistLS0+IERldHRlICggZXIgZW4gdGVzdGxpbmplIG1lZCAoLCBbIF0gb2cgeyB9IGkgZGVuICkpLgorCitNZXJrOiBEZXR0ZSBlciB2ZWxkaWcgbnl0dGlnIHRpbCBmZWlsc/hraW5nIGkgcHJvZ3JhbW1lciBzb20gaGFyIHViYWxhbnNlcnQKKyAgICAgIGFudGFsbCBwYXJlbnRlc2VyIQorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgICBMZWtzam9uIDQuNDogRVJTVEFUVC1LT01NQU5ET0VOCisKKworCSoqIFNrcml2ICA6cy9nYW1tZWwvbnkvZyAgZm9yIOUgZXJzdGF0dGUgq2dhbW1lbLsgbWVkIKtuebsuICoqCisKKyAgMS4gRmx5dHQgbWFya/hyZW4gdGlsIGxpbmplbiBuZWRlbmZvciBzb20gZXIgbWVya2V0IG1lZCAtLS0+LgorCisgIDIuIFNrcml2ICA6cy9kZWVuL2Rlbi8gPEVOVEVSPiAgLiBMZWdnIG1lcmtlIHRpbCBhdCBkZW5uZSBrb21tYW5kb2VuIGJhcmUKKyAgICAgZm9yYW5kcmVyIGRlbiBm+HJzdGUgZm9yZWtvbXN0ZW4gYXYgq2RlZW67IHDlIGxpbmplbi4KKworICAzLiBTa3JpdiAgOnMvZGVlbi9kZW4vZyAuIE7lciBnLWZsYWdnZXQgbGVnZ2VzIHRpbCwgYmV0eXIgZGV0dGUgZ2xvYmFsCisgICAgIGVyc3RhdG5pbmcgcOUgbGluamVuIG9nIGVyc3RhdHRlciBhbGxlIGZvcmVrb21zdGVyIGF2IKtkZWVuuyBw5SBsaW5qZW4uCisKKy0tLT4gZGVlbiBzb20ga2FuIGthc3RlIGRlZW4gdHluZ3N0ZSBzdGVpbmVuIGxlbmdzdCBlciBkZWVuIGJlc3RlCisKKyAgNC4gRm9yIOUgZXJzdGF0dGUgYWxsZSBmb3Jla29tc3RlciBhdiBlbiB0ZWtzdHN0cmVuZyBtZWxsb20gdG8gbGluamVyLAorICAgICBza3JpdiAgOiMsI3MvZ2FtbWVsL255L2cgIGRlciAjLCMgZXIgbGluamVudW1yZW5lIHDlIGRlIHRvIGxpbmplbmUgZm9yCisJCQkgICAgICAgbGluamVvbXLlZGV0IGVyc3RhdG5pbmdlbiBza2FsIGdq+HJlcy4KKyAgICAgU2tyaXYgIDolcy9nYW1tZWwvbnkvZyAgICBmb3Ig5SBlcnN0YXR0ZSB0ZWtzdCBpIGhlbGUgZmlsZW4uCisgICAgIFNrcml2ICA6JXMvZ2FtbWVsL255L2djICAgZm9yIOUgZmlubmUgYWxsZSBmb3Jla29tc3RlciBpIGhlbGUgZmlsZW4sIG9nCisJCQkgICAgICAgZGVyZXR0ZXIgc3D4cnJlIG9tIHRla3N0ZW4gc2thbCBlcnN0YXR0ZXMgZWxsZXIKKwkJCSAgICAgICBpa2tlLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIE9QUFNVTU1FUklORyBBViBMRUtTSk9OIDQKKworCisgIDEuIEN0cmwtRyB2aXNlciBu5XbmcmVuZGUgcG9zaXNqb24gaSBmaWxlbiBvZyBmaWxzdGF0dXNlbi4KKwkgICAgIEcJZ+VyIHRpbCBzbHV0dGVuIGF2IGZpbGVuLgorICAgICBudW1tZXIgIEcJZ+VyIHRpbCBkZXQgbGluamVudW1tZXJldC4KKwkgICAgZ2cJZ+VyIHRpbCBkZW4gZvhyc3RlIGxpbmplbi4KKworICAyLiBTa3JpdiAgLyAgZXR0ZXJmdWxndCBhdiBlbiBz+GtldGVrc3QgZm9yIOUgbGV0ZSBGUkFNT1ZFUiBldHRlciB0ZWtzdGVuLgorICAgICBTa3JpdiAgPyAgZXR0ZXJmdWxndCBhdiBlbiBz+GtldGVrc3QgZm9yIOUgbGV0ZSBCQUtPVkVSIGV0dGVyIHRla3N0ZW4uCisgICAgIEV0dGVyIGV0IHP4ayBrYW4gZHUgdHJ5a2tlICBuICBmb3Ig5SBmaW5uZSBuZXN0ZSBmb3Jla29tc3QgaSBkZW4gc2FtbWUKKyAgICAgcmV0bmluZ2VuIGVsbGVyICBOICBmb3Ig5SBsZXRlIGkgbW90c2F0dCByZXRuaW5nLgorICAgICBDVFJMLU8gdGFyIGRlZyB0aWxiYWtlIHRpbCBnYW1sZSBwb3Npc2pvbmVyLCBDVFJMLUkgdGlsIG55ZXJlIHBvc2lzam9uZXIuCisKKyAgMy4gU2tyaXYgICUgIG7lciBtYXJr+HJlbiBzdOVyIHDlIGVuICgsICksIFssIF0sIHsgZWxsZXIgfSBmb3Ig5SBmaW5uZSBkZW4KKyAgICAgc29tIHNhbXN2YXJlci4KKworICA0LiBFcnN0YXR0ZSCrZ2FtbWVsuyBtZWQgZvhyc3RlIKtuebsgcOUgZW4gbGluamU6ICA6cy9nYW1tZWwvbnkKKyAgICAgRXJzdGF0dGUgYWxsZSCrZ2FtbWVsuyBtZWQgq255uyBw5SBlbiBsaW5qZTogICAgOnMvZ2FtbWVsL255L2cKKyAgICAgRXJzdGF0dGUgdGVrc3QgbWVsbG9tIHRvIGxpbmplbnVtcmU6CSAgICAgOiMsI3MvZ2FtbWVsL255L2cKKyAgICAgRXJzdGF0dGUgYWxsZSBmb3Jla29tc3RlciBpIGVuIGZpbDoJICAgICA6JXMvZ2FtbWVsL255L2cKKyAgICAgRm9yIOUgZ29ka2plbm5lIGh2ZXIgZXJzdGF0bmluZywgbGVnZyB0aWwgq2O7OiAgOiVzL2dhbW1lbC9ueS9nYworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJICAgICAgIExla3Nqb24gNS4xOiBIVk9SREFOIFVURthSRSBFTiBFS1NURVJOIEtPTU1BTkRPCisKKworICAgICoqIFNrcml2ICA6ISAgZXR0ZXJmdWxndCBhdiBlbiBla3N0ZXJuIGtvbW1hbmRvIGZvciDlIHV0ZvhyZSBkZW5uZS4gKioKKworICAxLiBTa3JpdiBkZW4gdmVsa2plbnRlIGtvbW1hbmRvZW4gIDoJIGZvciDlIHBsYXNzZXJlIG1hcmv4cmVuIHDlIGJ1bm5lbiBhdgorICAgICBza2plcm1lbi4gRGV0dGUgbGFyIGRlZyBza3JpdmUgZW4ga29tbWFuZG9saW5qZWtvbW1hbmRvLgorCisgIDIuIE7lIGthbiBkdSBza3JpdmUgdGVnbmV0ICAhICAuIERldHRlIGxhciBkZWcgdXRm+HJlIGVuIGh2aWxrZW4gc29tIGhlbHN0CisgICAgIGVrc3Rlcm4ga29tbWFuZG8uCisKKyAgMy4gU29tIGV0IGVrc2VtcGVsLCBza3JpdiAgbHMgIGV0dGVyIHV0cm9wc3RlZ25ldCBvZyB0cnlrayA8RU5URVI+LiBEdSB2aWwKKyAgICAgbuUgZuUgZW4gbGlzdGUgb3ZlciBmaWxlbmUgaSBrYXRhbG9nZW4sIGFra3VyYXQgc29tIG9tIGR1IGhhZGRlIGtq+HJ0CisgICAgIGtvbW1hbmRvZW4gZGlyZWt0ZSBmcmEga29tbWFuZG9saW5qZW4gaSBza2FsbGV0LiBFbGxlciBicnVrICA6IWRpciAgaHZpcworICAgICCrbHO7IGlra2Ugdmlya2VyLgorCitNRVJLOiBEZXQgZXIgbXVsaWcg5SBravhyZSBhbGxlIGVrc3Rlcm5lIGtvbW1hbmRvZXIgcOUgZGVubmUgbeV0ZW4sIG9nc+UgbWVkCisgICAgICBwYXJhbWV0ZXJlLgorCitNRVJLOiBBbGxlIKs6uy1rb21tYW5kb2VyIG3lIGF2c2x1dHRlcyBtZWQgPEVOVEVSPi4gRnJhIGRldHRlIHB1bmt0ZXQgZXIgZGV0CisgICAgICBpa2tlIGFsbHRpZCB2aSBuZXZuZXIgZGV0LgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICBMZWtzam9uIDUuMjogTUVSIE9NIExBR1JJTkcgQVYgRklMRVIKKworCisgICAgICAqKiBGb3Ig5SBsYWdyZSBlbmRyaW5nZW5lIGdqb3J0IGkgZW4gdGVrc3QsIHNrcml2ICA6dyBGSUxOQVZOLiAqKgorCisgIDEuIFNrcml2ICA6IWRpciAgZWxsZXIgIDohbHMJZm9yIOUgZuUgZW4gbGlzdGUgb3ZlciBmaWxlbmUgaSBrYXRhbG9nZW4uIER1CisgICAgIHZldCBhbGxlcmVkZSBhdCBkdSBt5SB0cnlra2UgPEVOVEVSPiBldHRlciBkZXR0ZS4KKworICAyLiBWZWxnIGV0IGZpbG5hdm4gcOUgZW4gZmlsIHNvbSBpa2tlIGZpbm5lcywgc29tIGZvciBla3NlbXBlbCAgVEVTVCAuCisKKyAgMy4gU2tyaXYgIDp3IFRFU1QgIChkZXIgVEVTVCBlciBmaWxuYXZuZXQgZHUgdmVsZ2VyKS4KKworICA0LiBEZXR0ZSBsYWdyZXIgaGVsZSBmaWxlbiAoZGVubmUgaW5uZvhyaW5nZW4pIHVuZGVyIG5hdm5ldCBURVNUIC4gRm9yIOUKKyAgICAgc2pla2tlIGRldHRlLCBza3JpdiAgOiFkaXIgIGVsbGVyCTohbHMgIGlnamVuIGZvciDlIHNlIGlubmhvbGRldCBhdgorICAgICBrYXRhbG9nZW4uCisKK01lcms6IEh2aXMgZHUgbuUgaGFkZGUgYXZzbHV0dGV0IFZpbSBvZyBzdGFydGV0IHDlIG55dHQgaWdqZW4gbWVkIKt2aW0gVEVTVLssCisgICAgICB2aWxsZSBmaWxlbiB25nJ0IGVuIGVrc2FrdCBrb3BpIGF2IGlubmb4cmluZ2VuIGRhIGR1IGxhZ3JldCBkZW4uCisKKyAgNS4gRmplcm4gZmlsZW4gdmVkIOUgc2tyaXZlICA6IXJtIFRFU1QgIGh2aXMgZHUgZXIgcOUgZXQgVW5peC1saWduZW5kZQorICAgICBvcGVyYXRpdnN5c3RlbSwgZWxsZXIgIDohZGVsIFRFU1QJaHZpcyBkdSBicnVrZXIgTVMtRE9TLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgTGVrc2pvbiA1LjM6IFZFTEdFIFRFS1NUIFNPTSBTS0FMIExBR1JFUworCisKKyAgICAgKiogRm9yIOUgbGFncmUgZW4gZGVsIGF2IGVuIGZpbCwgc2tyaXYgIHYJYmV2ZWdlbHNlICA6dyBGSUxOQVZOICoqCisKKyAgMS4gRmx5dHQgbWFya/hyZW4gdGlsIGRlbm5lIGxpbmplbi4KKworICAyLiBUcnlrayAgdiAgb2cgZmx5dHQgbWFya/hyZW4gdGlsIGRldCBmZW10ZSBlbGVtZW50ZXQgbmVkZW5mb3IuIExlZ2cgbWVya2UKKyAgICAgdGlsIGF0IHRla3N0ZW4gYmxpciBtYXJrZXJ0LgorCisgIDMuIFRyeWtrICA6ICAoa29sb24pLiBQ5SBidW5uZW4gYXYgc2tqZXJtZW4gdmlsICA6JzwsJz4gIGtvbW1lIHRpbCBzeW5lLgorCisgIDQuIFRyeWtrICB3IFRFU1QgICwgZGVyIFRFU1QgZXIgZXQgZmlsbmF2biBzb20gaWtrZSBmaW5uZXMgZW5kYS4gS29udHJvbGxlcgorICAgICBhdCBkdSBzZXIJOic8LCc+dyBURVNUICBm+HIgZHUgdHJ5a2tlciBFbnRlci4KKworICA1LiBWaW0gdmlsIHNrcml2ZSBkZSB2YWxndGUgbGluamVuZSB0aWwgZmlsZW4gVEVTVC4gQnJ1ayAgOiFkaXIgIGVsbGVyICAhbHMKKyAgICAgZm9yIOUgc2UgZGVuLiBJa2tlIHNsZXR0IGRlbiBlbmRhISBWaSB2aWwgYnJ1a2UgZGVuIGkgbmVzdGUgbGVrc2pvbi4KKworTUVSSzogVmVkIOUgdHJ5a2tlICB2ICBzdGFydGVzIHZpc3VlbHQgdmFsZy4gRHUga2FuIGZseXR0ZSBtYXJr+HJlbiBydW5kdCBmb3IKKyAgICAgIOUgZ2r4cmUgZGV0IHZhbGd0ZSBvbXLlZGV0IHN0+HJyZSBlbGxlciBtaW5kcmUuIERlcmV0dGVyIGthbiBkdSBicnVrZSBlbgorICAgICAgb3BlcmF0b3IgZm9yIOUgZ2r4cmUgbm9lIG1lZCB0ZWtzdGVuLiBGb3IgZWtzZW1wZWwgc2xldHRlciAgZCAgdGVrc3Rlbi4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCUxla3Nqb24gNS40OiBIRU5USU5HIE9HIFNBTU1FTlNMxUlORyBBViBGSUxFUgorCisKKyAqKiBGb3Ig5SBsZXNlIGlubiBlbiBhbm5lbiBmaWwgaW5uIGkgbuV25nJlbmRlIGJ1ZmZlciwgc2tyaXYgIDpyIEZJTE5BVk4gICoqCisKKyAgMS4gUGxhc3NlciBtYXJr+HJlbiBsaWtlIG92ZXIgZGVubmUgbGluamVuLgorCitNRVJLOiBFdHRlciDlIGhhIHV0ZvhydCBzdGVnIDIgdmlsIGR1IHNlIHRla3N0ZW4gZnJhIGxla3Nqb24gNS4zLiBH5SBkZXJldHRlcgorICAgICAgTkVEIGZvciDlIHNlIGRlbm5lIGxla3Nqb25lbiBpZ2plbi4KKworICAyLiBIZW50IFRFU1QtZmlsZW4gdmVkIOUgYnJ1a2Uga29tbWFuZG9lbiAgOnIgVEVTVCAgZGVyIFRFU1QgZXIgbmF2bmV0IHDlCisgICAgIGZpbGVuIGR1IGJydWt0ZS4gRmlsZW4gZHUgaGVudGVyIGJsaXIgcGxhc3NlcnQgbmVkZW5mb3IgbWFya/hybGluamVuLgorCisgIDMuIEZvciDlIHNqZWtrZSBhdCBmaWxlbiBibGUgaGVudGV0LCBn5SB0aWxiYWtlIG9nIHNlIGF0IGRldCBlciB0byBrb3BpZXIgYXYKKyAgICAgbGVrc2pvbiA1LjMsIG9yaWdpbmFsZW4gb2cgZGVubmUgdmVyc2pvbmVuLgorCitNRVJLOiBEdSBrYW4gb2dz5SBsZXNlIHV0ZGF0YWVuZSBhdiBlbiBla3N0ZXJuIGtvbW1hbmRvLiBGb3IgZWtzZW1wZWwsCTpyICFscworICAgICAgbGVzZXIgdXRkYXRhZW5lIGF2IGxzLWtvbW1hbmRvZW4gb2cgbGVnZ2VyIGRlbSBuZWRlbmZvciBtYXJr+HJlbi4KKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIE9QUFNVTU1FUklORyBBViBMRUtTSk9OIDUKKworCisgIDEuICA6IWtvbW1hbmRvICB1dGb4cmVyIGVuIGVrc3Rlcm4ga29tbWFuZGlvLgorCisgICAgICBOb2VuIG55dHRpZ2UgZWtzZW1wbGVyIGVyOgorCSAoTVMtRE9TKQkgIChVbml4KQorCSAgOiFkaXIJCSAgIDohbHMJCSAgLSBMaXN0IGZpbGVuZSBpIGthdGFsb2dlbi4KKwkgIDohZGVsIEZJTE5BVk4gICAgOiFybSBGSUxOQVZOICAgLSBTbGV0dCBmaWxlbiBGSUxOQVZOLgorCisgIDIuICA6dyBGSUxOQVZOICBza3JpdmVyIGRlbiBu5XbmcmVuZGUgVmltLWZpbGVuIGRpc2tlbiBtZWQgbmF2bmV0IEZJTE5BVk4gLgorCisgIDMuICB2ICBiZXZlZ2Vsc2UgIDp3IEZJTE5BVk4JbGFncmVyIGRlIHZpc3VlbHQgdmFsZ3RlIGxpbmplbmUgdGlsIGZpbGVuCisgICAgIEZJTE5BVk4uCisKKyAgNC4gIDpyIEZJTE5BVk4gIGhlbnRlciBmaWxlbiBGSUxOQVZOIG9nIGxlZ2dlciBkZW4gaW5uIG5lZGVuZm9yIG1hcmv4cmVuLgorCisgIDUuICA6ciAhZGlyICBsZXNlciB1dGRhdGFlbmUgZnJhIKtkaXK7LWtvbW1hbmRvZW4gb2cgbGVnZ2VyIGRlbSBuZWRlbmZvcgorICAgICBtYXJr+HJwb3Npc2pvbmVuLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgTGVrc2pvbiA2LjE6IKvFUE5FIExJTkpFuy1LT01NQU5ET0VOCisKKworICAgICoqIFNrcml2ICBvICBmb3Ig5SCr5XBuZSBvcHC7IGZvciBlbiBueSBsaW5qZSBldHRlciBtYXJr+HJlbiBvZyBn5SB0aWwKKyAgICAgICBpbm5zZXR0aW5nc21vZHVzICoqCisKKyAgMS4gRmx5dHQgbWFya/hyZW4gdGlsIGxpbmplbiBuZWRlbmZvciBtZXJrZXQgLS0tPi4KKworICAyLiBTa3JpdiAgbyAgKGxpdGVuIG8pIGZvciDlIOVwbmUgb3BwIGVuIGxpbmplIE5FREVORk9SIG1hcmv4cmVuIG9nIGflIGlubiBpCisgICAgIGlubnNldHRpbmdzbW9kdXMuCisKKyAgMy4gU2tyaXYgbGl0dCB0ZWtzdCBvZyB0cnlrayA8RVNDPiBmb3Ig5SBn5SB1dCBhdiBpbm5zZXR0aW5nc21vZHVzZW4uCisKKy0tLT4gRXR0ZXIgYXQgIG8gIGVyIHNrcmV2ZXQgYmxpciBtYXJr+HJlbiBwbGFzc2VydCBw5SBkZW4gdG9tbWUgbGluamVuLgorCisgIDQuIEZvciDlIOVwbmUgZW4gbnkgbGluamUgT1ZFUiBtYXJr+HJlbiwgdHJ5a2sgcmV0dCBvZyBzbGV0dCBlbiBzdG9yCU8KKyAgICAgaXN0ZWRlbmZvciBlbiBsaXRlbiAgbyAuIFBy+HYgZGV0dGUgcOUgbGluamVuIG5lZGVuZm9yLgorCistLS0+IExhZyBueSBsaW5qZSBvdmVyIGRlbm5lIHZlZCDlIHRyeWtrZSBPIG1lbnMgbWFya/hyZW4gZXIgcOUgZGVubmUgbGluamVuLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgIExla3Nqb24gNi4yOiCrTEVHRyBUSUy7LUtPTU1BTkRPRU4KKworCisJICAgICoqIFNrcml2ICBhICBmb3Ig5SBsZWdnZSB0aWwgdGVrc3QgRVRURVIgbWFya/hyZW4uICoqCisKKyAgMS4gRmx5dHQgbWFya/hyZW4gdGlsIHN0YXJ0ZW4gYXYgbGluamVuIG1lcmtldCAtLS0+IG5lZGVuZm9yLgorCisgIDIuIFRyeWtrICBlICB0aWwgbWFya/hyZW4gZXIgcOUgc2x1dHRlbiBhdiCrbGm7LgorCisgIDMuIFRyeWtrICBhICAobGl0ZW4gYSkgZm9yIOUgbGVnZ2UgdGlsIHRla3N0IEVUVEVSIG1hcmv4cmVuLgorCisgIDQuIEZ1bGxm+HIgb3JkZXQgc+VubiBzb20gcOUgbGluamVuIG5lZGVuZm9yLiBUcnlrayA8RVNDPiBmb3Ig5SBn5SB1dCBhdgorICAgICBpbm5zZXR0aW5nc21vZHVzZW4uCisKKyAgNS4gQnJ1ayAgZSAgZm9yIOUgZ+UgdGlsIGRldCBuZXN0ZSB1ZnVsbHN0ZW5kaWdlIG9yZGV0IG9nIHJlcGV0ZXIgc3RlZyAzIG9nCisgICAgIDQuCisKKy0tLT4gRGVubmUgbGkgbGFyIGRlZyD4dmUgcOUg5SBsZWcgdGlsIHRlayBw5SBlbiBsaW5qZS4KKy0tLT4gRGVubmUgbGluamVuIGxhciBkZWcg+HZlIHDlIOUgbGVnZ2UgdGlsIHRla3N0IHDlIGVuIGxpbmplLgorCitNZXJrOiBhLCBpIG9nIEEgZ+VyIGFsbGUgdGlsIGRlbiBzYW1tZSBpbm5zZXR0aW5nc21vZHVzZW4sIGRlbiBlbmVzdGUKKyAgICAgIGZvcnNramVsbGVuIGVyIGh2b3IgdGVnbmVuZSBibGlyIHNhdHQgaW5uLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgIExla3Nqb24gNi4zOiBFTiBBTk5FTiBNxVRFIMUgRVJTVEFUVEUgUMUKKworCisJICAgKiogU2tyaXYgZW4gc3RvciAgUglmb3Ig5SBlcnN0YXR0ZSBtZXIgZW5uIGV0dCB0ZWduLiAqKgorCisgIDEuIEZseXR0IG1hcmv4cmVuIHRpbCBkZW4gZvhyc3RlIGxpbmplbiBuZWRlbmZvciBtZXJrZXQgLS0tPi4gRmx5dHQgbWFya/hyZW4KKyAgICAgdGlsIGJlZ3lubmVsc2VuIGF2IGRlbiBm+HJzdGUgq3h4eLstZW4uCisKKyAgMi4gVHJ5a2sgIFIgIG9nIHNrcml2IGlubiB0YWxsZXQgc29tIHN05XIgbmVkZW5mb3IgcOUgZGVuIGFuZHJlIGxpbmplbiBz5QorICAgICBkZXQgZXJzdGF0dGVyIHh4eC4KKworICAzLiBUcnlrayA8RVNDPiBmb3Ig5SBn5SB1dCBhdiBlcnN0YXRuaW5nc21vZHVzZW4uIExlZ2cgbWVya2UgdGlsIGF0IHJlc3RlbgorICAgICBhdiBsaW5qZW4gZm9yYmxpciB1Zm9yYW5kcmV0LgorCisgIDQuIFJlcGV0ZXIgc3RlZ2VuZSBmb3Ig5SBlcnN0YXR0ZSBkZW4gZ2plbnbmcmVuZGUgeHh4LgorCistLS0+IFZlZCDlIGxlZ2dlIDEyMyB0aWwgeHh4IGblciB2aSB4eHguCistLS0+IFZlZCDlIGxlZ2dlIDEyMyB0aWwgNDU2IGblciB2aSA1NzkuCisKK01FUks6IEVyc3RhdG5pbmdzbW9kdXMgZXIgbGlrIGluc2V0dGluZ3Ntb2R1cywgbWVuIGh2ZXJ0IHRlZ24gc29tIHNrcml2ZXMKKyAgICAgIGVyc3RhdHRlciBldCBla3Npc3RlcmVuZGUgdGVnbi4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICBMZWtzam9uIDYuNDogS09QSUVSRSBPRyBMSU1FIElOTiBURUtTVAorCisKKyAgICAqKiBCcnVrIHktb3BlcmF0b3JlbiBmb3Ig5SBrb3BpZXJlIHRla3N0IG9nICBwICBmb3Ig5SBsaW1lIGRlbiBpbm4gKioKKworICAxLiBH5SB0aWwgbGluamVuIG1lcmtldCAtLS0+IG5lZGVuZm9yIG9nIHBsYXNzZXIgbWFya/hyZW4gZXR0ZXIgq2Epuy4KKworICAyLiBH5SBpbm4gaSB2aXN1ZWxsIG1vZHVzIG1lZCAgdiAgb2cgZmx5dHQgbWFya/hyZW4gdGlsIGxpa2UgZvhyIKtm+HJzdGW7LgorCisgIDMuIFRyeWtrICB5ICBmb3Ig5SBrb3BpZXJlIChlbmdlbHNrOiCreWFua7spIGRlbiB1dGhldmVkZSB0ZWtzdGVuLgorCisgIDQuIEZseXR0IG1hcmv4cmVuIHRpbCBzbHV0dGVuIGF2IGRlbiBuZXN0ZSBsaW5qZW46ICBqJAorCisgIDUuIFRyeWtrICBwICBmb3Ig5SBsaW1lIGlubiB0ZWtzdGVuLiBUcnlrayBkZXJldHRlcjoJYSBhbmRyZSA8RVNDPiAuCisKKyAgNi4gQnJ1ayB2aXN1ZWxsIG1vZHVzIGZvciDlIHZlbGdlIKsgdmFsZ2V0LrssIGtvcGllciBkZXQgbWVkCXkgLCBn5SB0aWwKKyAgICAgc2x1dHRlbiBhdiBkZW4gbmVzdGUgbGluamVuIG1lZCAgaiQgIG9nIGxlZ2cgaW5uIHRla3N0ZW4gZGVyIG1lZCAgcCAuCisKKy0tLT4gYSkgRGV0dGUgZXIgZGV0IGb4cnN0ZSB2YWxnZXQuCisgICAgIGIpCisKK01lcms6IER1IGthbiBvZ3PlIGJydWtlICB5ICBzb20gZW4gb3BlcmF0b3I7ICB5dyAga29waWVyZXIgZXR0IG9yZC4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICAgIExla3Nqb24gNi41OiBTRVRUIFZBTEcKKworCisgICoqIFNldHQgZXQgdmFsZyBz5SBz+GsgZWxsZXIgZXJzdGF0bmluZyBpZ25vcmVyZXIgc3RvcmUvc23lIGJva3N0YXZlci4gKioKKworICAxLiBMZXQgZXR0ZXIgq2lnbm9yZbsgdmVkIOUgc2tyaXZlOiAgL2lnbm9yZSA8RU5URVI+CisgICAgIFJlcGV0ZXIgZmxlcmUgZ2FuZ2VyIHZlZCDlIHRyeWtrZQluIC4KKworICAyLiBTZXR0IKtpY7stdmFsZ2V0IChJZ25vcmUgQ2FzZSkgdmVkIOUgc2tyaXZlOiAgOnNldCBpYworCisgIDMuIFP4ayBldHRlciCraWdub3JluyBpZ2plbiB2ZWQg5SB0cnlra2UgIG4gLgorICAgICBMZWdnIG1lcmtlIHRpbCBhdCBi5WRlIKtJZ25vcmW7IG9nIKtJR05PUkW7IGJsaXIgZnVubmV0LgorCisgIDQuIFNldHQgq2hsc2VhcmNouy0gb2cgq2luY3NlYXJjaLstdmFsZ2VuZTogIDpzZXQgaGxzIGlzCisKKyAgNS4gU2tyaXYgc/hrZWtvbW1hbmRvZW4gaWdqZW4gb2cgc2UgaHZhIHNvbSBza2plcjogIC9pZ25vcmUgPEVOVEVSPgorCisgIDYuIEZvciDlIHNs5SBhdiBpZ25vcmVyaW5nIGF2IHN0b3JlL3Nt5SBib2tzdGF2ZXIsIHNrcml2OiAgOnNldCBub2ljCisKK01lcms6IEZvciDlIGZqZXJuZSB1dGhldmluZ2VuIGF2IHRyZWZmLCBza3JpdjoJOm5vaGxzZWFyY2gKK01lcms6IEh2aXMgZHUgdmlsIGlnbm9yZXJlIHN0b3JlL3Nt5SBib2tzdGF2ZXIgZm9yIGt1biBlbiBz+Gtla29tbWFuZG8sIGJydWsKKyAgICAgIFxjICBpIHV0dHJ5a2tldDoJL2lnbm9yZVxjIDxFTlRFUj4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICBPUFBTVU1NRVJJTkcgQVYgTEVLU0pPTiA2CisKKyAgMS4gVHJ5a2sgIG8gIGZvciDlIGxlZ2dlIHRpbCBlbiBsaW5qZSBORURFTkZPUiBtYXJr+HJlbiBvZyBn5SBpbm4gaQorICAgICBpbm5zZXR0aW5nc21vZHVzLgorICAgICBUcnlrayAgTyAgZm9yIOUg5XBuZSBlbiBsaW5qZSBPVkVSIG1hcmv4cmVuLgorCisgIDIuIFNrcml2ICBhICBmb3Ig5SBzZXR0ZSBpbm4gdGVrc3QgRVRURVIgbWFya/hyZW4uCisgICAgIFNrcml2ICBBICBmb3Ig5SBzZXR0ZSBpbm4gdGVrc3QgZXR0ZXIgc2x1dHRlbiBhdiBsaW5qZW4uCisKKyAgMy4gS29tbWFuZG9lbiAgZSAgZ+VyIHRpbCBzbHV0dGVuIGF2IGV0IG9yZC4KKworICA0LiBPcGVyYXRvcmVuICB5ICAoq3lhbmu7KSBrb3BpZXJlciB0ZWtzdCwgIHAgICircGFzdGW7KSBsaW1lciBkZW4gaW5uLgorCisgIDUuIFZlZCDlIHRyeWtrZSAgUiAgZ+VyIGR1IGlubiBpIGVyc3RhdG5pbmdzbW9kdXMgaGVsdCB0aWwgIDxFU0M+ICB0cnlra2VzLgorCisgIDYuIFNrcml2IKs6c2V0IHh4eLsgZm9yIOUgc2V0dGUgdmFsZ2V0IKt4eHi7LiBOb2VuIHZhbGcgZXI6CisJq2ljuyCraWdub3JlY2FzZbsJaWdub3JlciBzdG9yZS9zbeUgYm9rc3RhdmVyIHVuZGVyIHP4aworCatpc7sgq2luY3NlYXJjaLsJdmlzIGRlbHZpc2UgdHJlZmYgZm9yIGVuIHP4a2V0ZWtzdAorCatobHO7IKtobHNlYXJjaLsJdXRoZXYgYWxsZSBz+GtldHJlZmYKKworICA3LiBMZWdnIHRpbCCrbm+7IGZvcmFuIHZhbGdldCBmb3Ig5SBzbOUgZGV0IGF2OiAgOnNldCBub2ljCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICAgIExla3Nqb24gNy4xOiBGxSBISkVMUAorCisKKwkJICAgKiogQnJ1ayBkZXQgaW5uZWJ5Z2RlIGhqZWxwZXN5c3RlbWV0LiAqKgorCisgIFZpbSBoYXIgZXQgb21mYXR0ZW5kZSBpbm5lYnlnZ2V0IGhqZWxwZXN5c3RlbS4gRm9yIOUgc3RhcnRlIGRldCwgcHL4diBlbiBhdgorICBkaXNzZSBt5XRlbmU6CisgICAgLSBUcnlrayBIamVscC10YXN0ZW4gKGh2aXMgZHUgaGFyIGVuKQorICAgIC0gVHJ5a2sgRjEtdGFzdGVuIChodmlzIGR1IGhhciBlbikKKyAgICAtIFNrcml2ICA6aGVscCA8RU5URVI+CisKKyAgTGVzIHRla3N0ZW4gaSBoamVscGV2aW5kdWV0IGZvciDlIGZpbm5lIHV0IGh2b3JkYW4gaGplbHBlbiB2aXJrZXIuCisgIFNrcml2ICBDVFJMLVcgQ1RSTC1XCWZvciDlIGhvcHBlIGZyYSBldCB2aW5kdSB0aWwgZXQgYW5uZXQKKyAgU2tyaXYgIDpxIDxFTlRFUj4JZm9yIOUgbHVra2UgaGplbHBldmluZHVldC4KKworICBEdSBrYW4gZuUgaGplbHAgZm9yIG9tdHJlbnQgYWxsZSB0ZW1hZXIgb20gVmltIHZlZCDlIHNrcml2ZSBldCBwYXJhbWV0ZXIgdGlsCisgIKs6aGVscLsta29tbWFuZG9lbi4gUHL4diBkaXNzZSAoaWtrZSBnbGVtIOUgdHJ5a2tlIDxFTlRFUj4pOgorCisgICAgOmhlbHAgdworICAgIDpoZWxwIGNfQ1RSTC1ECisgICAgOmhlbHAgaW5zZXJ0LWluZGV4CisgICAgOmhlbHAgdXNlci1tYW51YWwKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgIExla3Nqb24gNy4yOiBMQUcgRVQgT1BQU1RBUlRTU0tSSVBUCisKKworCQkJKiogU2zlIHDlIGZ1bmtzam9uZXIgaSBWaW0gKioKKworICBWaW0gaGFyIG1hbmdlIGZsZXJlIGZ1bmtzam9uZXIgZW5uIFZpLCBtZW4gZmxlc3RlcGFydGVuIGF2IGRlbSBlciBzbOV0dCBhdgorICBzb20gc3RhbmRhcmQuIEZvciDlIGJlZ3lubmUg5SBicnVrZSBmbGVyZSBmdW5rc2pvbmVyIG3lIGR1IGxhZ2UgZW4KKyAgq3ZpbXJjuy1maWwuCisKKyAgMS4gU3RhcnQgcmVkaWdlcmluZ2VuIGF2IKt2aW1yY7stZmlsZW4uIERldHRlIGF2aGVuZ2VyIGF2IHN5c3RlbWV0IGRpdHQ6CisJOmUgfi8udmltcmMJICBmb3IgVW5peAorCTplICRWSU0vX3ZpbXJjCSAgZm9yIE1TIFdpbmRvd3MKKworICAyLiBMZXMgaW5uIGVrc2VtcGVsZmlsZW4gZm9yIKt2aW1yY7s6CisJOnIgJFZJTVJVTlRJTUUvdmltcmNfZXhhbXBsZS52aW0KKworICAzLiBMYWdyZSBmaWxlbiBtZWQ6CisJOncKKworICBOZXN0ZSBnYW5nIGR1IHN0YXJ0ZXIgVmltIHZpbCBkZW4gYnJ1a2Ugc3ludGFrcy11dGhldmluZy4gRHUga2FuIGxlZ2dlIHRpbAorICBhbGxlIGRpbmUgZm9yZXRydWtuZSBvcHBzZXR0IGkgZGVubmUgq3ZpbXJjuy1maWxlbi4KKyAgRm9yIG1lciBpbmZvcm1hc2pvbiwgc2tyaXYgIDpoZWxwIHZpbXJjLWludHJvCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgIExla3Nqb24gNy4zOiBGVUxMRthSSU5HCisKKworCSAgICAgICoqIEtvbW1hbmRvbGluamVmdWxsZvhyaW5nIG1lZCBDVFJMLUQgb2cgPFRBQj4gKioKKworICAxLiBW5nIgc2lra2VyIHDlIGF0IFZpbSBpa2tlIGVyIGkgVmkta29tcGF0aWJlbCBtb2R1czogIDpzZXQgbm9jcAorCisgIDIuIFNlIGh2aWxrZSBmaWxlciBzb20gZXIgaSBrYXRhbG9nZW46ICA6IWxzCWVsbGVyICA6IWRpcgorCisgIDMuIFNrcml2IHN0YXJ0ZW4gcOUgZW4ga29tbWFuZG86ICA6ZQorCisgIDQuIFRyeWtrICBDVFJMLUQgIG9nIFZpbSB2aWwgdmlzZSBlbiBsaXN0ZSBvdmVyIGtvbW1hbmRvZXIgc29tIHN0YXJ0ZXIgbWVkCisgICAgIKtluy4KKworICA1LiBUcnlrayAgPFRBQj4gIG9nIFZpbSB2aWwgZnVsbGb4cmUga29tbWFuZG9uYXZuZXQgdGlsIKs6ZWRpdLsuCisKKyAgNi4gTGVnZyB0aWwgZXQgbWVsbG9tcm9tIG9nIHN0YXJ0ZW4gcOUgZXQgZWtzaXN0ZXJlbmRlIGZpbG5hdm46ICA6ZWRpdCBGSUwKKworICA3LiBUcnlrayA8VEFCPi4gVmltIHZpbCBmdWxsZvhyZSBuYXZuZXQgKGh2aXMgZGV0IGVyIHVuaWt0KS4KKworTUVSSzogRnVsbGb4cmluZyBmdW5nZXJlciBmb3IgbWFuZ2Uga29tbWFuZG9lci4gUHL4diB2ZWQg5SB0cnlra2UgQ1RSTC1EIG9nCisgICAgICA8VEFCPi4gRGV0IGVyIHNwZXNpZWx0IG55dHRpZyBmb3IgYnJ1ayBzYW1tZW4gbWVkICA6aGVscCAuCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgT1BQU1VNTUVSSU5HIEFWIExFS1NKT04gNworCisKKyAgMS4gU2tyaXYgIDpoZWxwICBlbGxlciB0cnlrayA8RjE+IGVsbGVyIDxIZWxwPiBmb3Ig5SDlcG5lIGV0IGhqZWxwZXZpbmR1LgorCisgIDIuIFNrcml2ICA6aGVscCBrb21tYW5kbyAgZm9yIOUgZuUgaGplbHAgb20gIGtvbW1hbmRvIC4KKworICAzLiBUcnlrayAgQ1RSTC1XIENUUkwtVyAgZm9yIOUgaG9wcGUgdGlsIGV0IGFubmV0IHZpbmR1LgorCisgIDQuIFRyeWtrICA6cQlmb3Ig5SBsdWtrZSBoamVscGV2aW5kdWV0LgorCisgIDUuIE9wcHJldHQgZXQgdmltcmMtb3Bwc3RhcnRzc2tyaXB0IGZvciDlIGxhZ3JlIGZhdm9yaXR0dmFsZ2VuZSBkaW5lLgorCisgIDYuIE7lciBkdSBza3JpdmVyIGVuIKs6uy1rb21tYW5kbywgdHJ5a2sgQ1RSTC1EIGZvciDlIHNlIG11bGlnZQorICAgICBmdWxsZvhyaW5nZXIuIFRyeWtrIDxUQUI+IGZvciDlIGJydWtlIGVuIGZ1bGxm+HJpbmcuCisKKworCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCisgIEhlciBzbHV0dGVyIGlubmb4cmluZ2VuIGkgVmltLiBEZW4gdmFyIG1lbnQgc29tIGVuIHJhc2sgb3ZlcnNpa3Qgb3ZlcgorICBlZGl0b3JlbiwgYWtrdXJhdCBub2sgdGlsIOUgbGEgZGVnIHNldHRlIGkgZ2FuZyBtZWQgZW5rZWwgYnJ1ay4gRGVuIGVyIHDlCisgIGxhbmd0IG7mciBrb21wbGV0dCwgZGEgVmltIGhhciBtYW5nZSBmbGVyZSBrb21tYW5kb2VyLiBMZXMgYnJ1a3NhbnZpc25pbmdlbgorICB2ZWQg5SBza3JpdmUJOmhlbHAgdXNlci1tYW51YWwgIC4KKworICBGb3IgdmlkZXJlIGxlc2luZyBvZyBzdHVkaWVyLCBrYW4gZGVubmUgYm9rZW4gYW5iZWZhbGVzOgorICAgICAgq1ZpbSAtIFZpIEltcHJvdmVkuyBhdiBTdGV2ZSBPdWFsbGluZQorICAgICAgVXRnaXZlcjogTmV3IFJpZGVycworICBEZW4gZvhyc3RlIGJva2VuIHNvbSBlciBmdWxsdCBvZyBoZWx0IGRlZGlzZXJ0IHRpbCBWaW0uIFNwZXNpZWx0IG55dHRpZyBmb3IKKyAgbnliZWd5bm5lcmUuIElubmVob2xkZXIgbWFuZ2UgZWtzZW1wbGVyIG9nIGlsbHVzdHJhc2pvbmVyLgorICBTZSBodHRwOi8vaWNjZi1ob2xsYW5kLm9yZy9jbGljazUuaHRtbAorCisgIERlbm5lIGJva2VuIGVyIGVsZHJlIG9nIGhhbmRsZXIgbWVyIG9tIFZpIGVubiBWaW0sIG1lbiBhbmJlZmFsZXMgb2dz5ToKKyAgICAgIKtMZWFybmluZyB0aGUgVmkgRWRpdG9yuyBhdiBMaW5kYSBMYW1iCisgICAgICBVdGdpdmVyOiBPJ1JlaWxseSAmIEFzc29jaWF0ZXMgSW5jLgorICBEZXQgZXIgZW4gZ29kIGJvayBmb3Ig5SBm5SB2aXRlIG9tdHJlbnQgaHZhIHNvbSBoZWxzdCBvbSBWaS4KKyAgRGVuIHNqZXR0ZSB1dGdhdmVuIGlubmVob2xkZXIgb2dz5SBpbmZvcm1hc2pvbiBvbSBWaW0uCisKKyAgRGVubmUgaW5uZvhyaW5nZW4gZXIgc2tyZXZldCBhdiBNaWNoYWVsIEMuIFBpZXJjZSBvZyBSb2JlcnQgSy4gV2FyZSwKKyAgQ29sb3JhZG8gU2Nob29sIG9mIE1pbmVzIG1lZCBpZOllciBhdiBDaGFybGVzIFNtaXRoLCBDb2xvcmFkbyBTdGF0ZQorICBVbml2ZXJzaXR5LiBFLW1haWw6IGJ3YXJlQG1pbmVzLmNvbG9yYWRvLmVkdSAuCisKKyAgTW9kaWZpc2VydCBmb3IgVmltIGF2IEJyYW0gTW9vbGVuYWFyLgorICBPdmVyc2F0dCBhdiDYeXZpbmQgQS4gSG9sbS4gRS1tYWlsOiB2aW10dXRvciBfQVRfIHN1bmJhc2Uub3JnCisgIElkOiB0dXRvci5ubyA0MDYgMjAwNy0wMy0xOCAyMjo0ODozNlogc3VubnkKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cit2aW06IHNldCB0cz04IDoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvdHV0b3IubmIudXRmLTggYi9ydW50aW1lL3R1dG9yL3R1dG9yLm5iLnV0Zi04Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE3ODI2YjcKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLm5iLnV0Zi04CkBAIC0wLDAgKzEsOTczIEBACis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cis9IFYgZSBsIGsgbyBtIG0gZSBuICAgdCBpIGwgICBpIG4gbiBmIMO4IHIgaSBuIGcgZSBuICAgaSAgIFYgaSBtICAtLSAgVmVyLiAxLjcgPQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisgICAgIFZpbSBlciBlbiBtZWdldCBrcmFmdGlnIGVkaXRvciBtZWQgbWFuZ2Uga29tbWFuZG9lciwgYWx0IGZvciBtYW5nZSB0aWwgw6UKKyAgICAga3VubmUgZ8OlIGdqZW5ub20gYWxsZSBpIGVuIGlubmbDuHJpbmcgc29tIGRlbm5lLiBEZW4gZXIgYmVyZWduZXQgcMOlIMOlCisgICAgIHNldHRlIGRlZyBpbm4gaSBicnVrZW4gYXYgbm9rIGtvbW1hbmRvZXIgc8OlIGR1IHZpbCB2w6ZyZSBpIHN0YW5kIHRpbCBsZXR0CisgICAgIMOlIGt1bm5lIGJydWtlIFZpbSBzb20gZW4gZWRpdG9yIHRpbCBhbGxlIGZvcm3DpWwuCisKKyAgICAgVGlkZW4gc29tIGtyZXZlcyBmb3Igw6UgZ8OlIGdqZW5ub20gZGVubmUgaW5uZsO4cmluZ2VuIHRhciBjYS4gMjUtMzAKKyAgICAgbWludXR0ZXIsIGF2aGVuZ2lnIGF2IGh2b3IgbXllIHRpZCBkdSBicnVrZXIgdGlsIGVrc3BlcmltZW50ZXJpbmcuCisKKyAgICAgTUVSSzoKKyAgICAgS29tbWFuZG9lbmUgaSBsZWtzam9uZW5lIHZpbCBtb2RpZmlzZXJlIHRla3N0ZW4uIExhZyBlbiBrb3BpIGF2IGRlbm5lCisgICAgIGZpbGVuIHNvbSBkdSBrYW4gw7h2ZSBkZWcgcMOlIChodmlzIGR1IGtqw7hydGUgwqt2aW10dXRvcsK7LWtvbW1hbmRvZW4sIGVyCisgICAgIGRldHRlIGFsbGVyZWRlIGVuIGtvcGkpLgorCisgICAgIERldCBlciB2aWt0aWcgw6UgaHVza2UgYXQgZGVubmUgaW5uZsO4cmluZ2VuIGVyIGJlcmVnbmV0IHDDpSBsw6ZyaW5nIGdqZW5ub20KKyAgICAgYnJ1ay4gRGV0IGJldHlyIGF0IGR1IG3DpSB1dGbDuHJlIGtvbW1hbmRvZW5lIGZvciDDpSBsw6ZyZSBkZW0gc2tpa2tlbGlnLgorICAgICBIdmlzIGR1IGJhcmUgbGVzZXIgdGVrc3RlbiwgdmlsIGR1IGdsZW1tZSBrb21tYW5kb2VuZSEKKworICAgICBGw7hyc3QgYXYgYWx0LCBzamVrayBhdCDCq0NhcHMgTG9ja8K7IElLS0UgZXIgYWt0aXYgb2cgdHJ5a2sgwqtqwrstdGFzdGVuIGZvcgorICAgICDDpSBmbHl0dGUgbWFya8O4cmVuIGhlbHQgdGlsIGxla3Nqb24gMS4xIGZ5bGxlciBza2plcm1lbi4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgICBMZWtzam9uIDEuMTogIEZMWVRUSU5HIEFWIE1BUkvDmFJFTgorCisKKyAgICAgICAqKiBGb3Igw6UgZmx5dHRlIG1hcmvDuHJlbiwgdHJ5a2sgdGFzdGVuZSBoLCBqLCBrLCBsIHNvbSB2aXN0LiAqKgorCSAgICAgXgorCSAgICAgawkJVGlwczogaC10YXN0ZW4gZXIgdGlsIHZlbnN0cmUgb2cgZmx5dHRlciB0aWwgdmVuc3RyZS4KKyAgICAgICA8IGgJIGwgPgkgICAgICBsLXRhc3RlbiBlciB0aWwgaMO4eXJlIG9nIGZseXR0ZXIgdGlsIGjDuHlyZS4KKwkgICAgIGoJCSAgICAgIGotdGFzdGVuIHNlciB1dCBzb20gZW4gcGlsIHNvbSBwZWtlciBuZWRvdmVyLgorCSAgICAgdgorICAxLiBGbHl0dCBtYXJrw7hyZW4gcnVuZHQgcMOlIHNramVybWVuIHRpbCBkdSBoYXIgZsOldHQgZGV0IGlubiBpIGZpbmdyZW5lLgorCisgIDIuIEhvbGQgaW5uZSBuZWRvdmVydGFzdGVuIChqKSB0aWwgZGVuIHJlcGV0ZXJlci4KKyAgICAgTsOlIHZldCBkdSBodm9yZGFuIGR1IGJldmVnZXIgZGVnIHRpbCBuZXN0ZSBsZWtzam9uLgorCisgIDMuIEfDpSB0aWwgbGVrc2pvbiAxLjIgdmVkIGhqZWxwIGF2IG5lZG92ZXJ0YXN0ZW4uCisKK01lcms6IEh2aXMgZHUgYmxpciB1c2lra2VyIHDDpSBub2UgZHUgaGFyIHNrcmV2ZXQsIHRyeWtrIDxFU0M+IGZvciDDpSBnw6UgdGlsCisgICAgICBub3JtYWxtb2R1cy4gU2tyaXYgZGVyZXR0ZXIga29tbWFuZG9lbiBkdSDDuG5za2V0IHDDpSBueXR0LgorCitNZXJrOiBQaWx0YXN0ZW5lIHNrYWwgb2dzw6Ugdmlya2UuIE1lbiB2ZWQgw6UgYnJ1a2UgaGprbCB2aWwgZHUgdsOmcmUgaSBzdGFuZCB0aWwKKyAgICAgIMOlIGJldmVnZSBtYXJrw7hyZW4gbXllIHJhc2tlcmUgbsOlciBkdSBlciBibGl0dCB2YW50IHRpbCBkZXQuIEhlbHQgc2FudCEKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIExla3Nqb24gMS4yOiBBVlNMVVRURSBWSU0KKworCisgICEhIE1FUks6IEbDuHIgZHUgdXRmw7hyZXIgbm9lbiBhdiBwdW5rdGVuZSBuZWRlbmZvciwgbGVzIGhlbGUgbGVrc2pvbmVuISEKKworICAxLiBUcnlrayA8RVNDPi10YXN0ZW4gKGZvciDDpSBmb3JzaWtyZSBkZWcgb20gYXQgZHUgZXIgaSBub3JtYWxtb2R1cykuCisKKyAgMi4gU2tyaXY6CTpxISA8RU5URVI+LgorICAgICBEZXR0ZSBhdnNsdXR0ZXIgZWRpdG9yZW4gb2cgRk9SS0FTVEVSIGFsbGUgZm9yYW5kcmluZ2VyIHNvbSBkdSBoYXIgZ2pvcnQuCisKKyAgMy4gTsOlciBkdSBzZXIga29tbWFuZG9saW5qZW4gaSBza2FsbGV0LCBza3JpdiBrb21tYW5kb2VuIHNvbSBzdGFydGV0IGRlbm5lCisgICAgIGlubmbDuHJpbmdlbi4gRGVuIGVyOiAgIHZpbXR1dG9yIDxFTlRFUj4KKworICA0LiBIdmlzIGR1IGVyIHNpa2tlciBww6UgYXQgZHUgaHVza2VyIGRldHRlLCB1dGbDuHIgcHVua3RlbmUgMSB0aWwgMyBmb3Igw6UKKyAgICAgYXZzbHV0dGUgb2cgc3RhcnRlIGVkaXRvcmVuIHDDpSBueXR0LgorCitNRVJLOiAgOnEhIDxFTlRFUj4gIGZvcmthc3RlciBhbGxlIGZvcmFuZHJpbmdlciBzb20gZHUgZ2pvcmRlLiBJIGzDuHBldCBhdiBub2VuCisgICAgICAgZsOlIGxla3Nqb25lciB2aWwgZHUgbMOmcmUgaHZvcmRhbiBkdSBsYWdyZXIgZm9yYW5kcmluZ2VuZSB0aWwgZW4gZmlsLgorCisgIDUuIEZseXR0IG1hcmvDuHJlbiBuZWQgdGlsIGxla3Nqb24gMS4zLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgTGVrc2pvbiAxLjM6IFJFRElHRVJJTkcgQVYgVEVLU1QgLS0gU0xFVFRJTkcKKworCisJICAgICAqKiBUcnlrayAgeCAgZm9yIMOlIHNsZXR0ZSB0ZWduZXQgdW5kZXIgbWFya8O4cmVuLiAqKgorCisgIDEuIEZseXR0IG1hcmvDuHJlbiB0aWwgZGVuIGbDuHJzdGUgbGluamVuIG1lcmtldCBtZWQgIC0tLT4uCisKKyAgMi4gRm9yIMOlIG9yZG5lIGZlaWxlbmUgcMOlIGxpbmplbiwgZmx5dHQgbWFya8O4cmVuIHRpbCBkZW4gZXIgb3Bww6UgdGVnbmV0IHNvbQorICAgICBza2FsIHNsZXR0ZXMuCisKKyAgMy4gVHJ5a2sgdGFzdGVuICB4ICBmb3Igw6Ugc2xldHRlIGRldCB1w7huc2tlZGUgdGVnbmV0LgorCisgIDQuIFJlcGV0ZXIgcHVua3QgMiB0aWwgNCB0aWwgc2V0bmluZ2VuIGVyIGxpayBkZW4gc29tIGVyIHVuZGVyLgorCistLS0+IEhlc3NzdGVubm5uIGJycnLDpXNudWRkZGRlIGlpIGdhYWF0YS4KKy0tLT4gSGVzdGVuIGJyw6VzbnVkZGUgaSBnYXRhLgorCisgIDUuIE7DpSBzb20gbGluamVuIGVyIGtvcnJla3QsIGfDpSB0aWwgbGVrc2pvbiAxLjQuCisKK01FUks6IE7DpXIgZHUgZ8OlciBnamVubm9tIGlubmbDuHJpbmdlbiwgaWtrZSBiYXJlIHByw7h2IMOlIGh1c2tlIGtvbW1hbmRvZW5lLCBtZW4KKyAgICAgIGJydWsgZGVtIGhlbHQgdGlsIGRlIHNpdHRlci4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCUxla3Nqb24gMS40OiBSRURJR0VSSU5HIEFWIFRFS1NUIC0tIElOTlNFVFRJTkcKKworCisJCSAgICAqKiBUcnlrayAgaSAgZm9yIMOlIHNldHRlIGlubiB0ZWtzdC4gKioKKworICAxLiBGbHl0dCBtYXJrw7hyZW4gdGlsIGRlbiBmw7hyc3RlIGxpbmplbiBzb20gZXIgbWVya2V0IG1lZCAtLS0+LgorCisgIDIuIEZvciDDpSBnasO4cmUgZGVuIGbDuHJzdGUgbGluamVuIGxpayBkZW4gYW5kcmUsIGZseXR0IG1hcmvDuHJlbiB0aWwgZGVuIHN0w6VyCisgICAgIHDDpSB0ZWduZXQgRVRURVIgcG9zaXNqb25lbiBkZXIgdGVrc3RlbiBza2FsIHNldHRlcyBpbm4uCisKKyAgMy4gVHJ5a2sgIGkgIG9nIHNrcml2IGlubiB0ZWtzdGVuIHNvbSBtYW5nbGVyLgorCisgIDQuIEV0dGVyaHZlcnQgc29tIGh2ZXIgZmVpbCBlciBmaWtzZXQsIHRyeWtrIDxFU0M+IGZvciDDpSByZXR1cm5lcmUgdGlsCisgICAgIG5vcm1hbG1vZHVzLiBSZXBldGVyIHB1bmt0IDIgdGlsIDQgdGlsIHNldG5pbmdlbiBlciBrb3JyZWt0LgorCistLS0+IERldCBlciB0a3N0IHNvbSBtbmdsciAuCistLS0+IERldCBlciBnYW5za2UgbXllIHRla3N0IHNvbSBtYW5nbGVyIGhlci4KKworICA1LiBOw6VyIGR1IGbDuGxlciBkZWcga29tZm9ydGFiZWwgbWVkIMOlIHNldHRlIGlubiB0ZWtzdCwgZ8OlIHRpbCBvcHBzdW1tZXJpbmdlbgorICAgICBuZWRlbmZvci4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJTGVrc2pvbiAxLjU6IFJFRElHRVJJTkcgQVYgVEVLU1QgLS0gTEVHR0UgVElMCisKKworCQkgICAgKiogVHJ5a2sgIEEgIGZvciDDpSBsZWdnZSB0aWwgdGVrc3QuICoqCisKKyAgMS4gRmx5dHQgbWFya8O4cmVuIHRpbCBkZW4gZsO4cnN0ZSBsaW5qZW4gbmVkZW5mb3IgbWVya2V0IC0tLT4uCisgICAgIERldCBoYXIgaWtrZSBub2Ugw6Ugc2kgaHZvciBtYXJrw7hyZW4gZXIgcGxhc3NlcnQgcMOlIGRlbiBsaW5qZW4uCisKKyAgMi4gVHJ5a2sgIEEgIG9nIHNrcml2IGlubiBkZXQgc29tIHNrYWwgbGVnZ2VzIHRpbC4KKworICAzLiBOw6VyIHRla3N0ZW4gZXIgbGFndCB0aWwsIHRyeWtrIDxFU0M+IGZvciDDpSByZXR1cm5lcmUgdGlsIG5vcm1hbG1vZHVzZW4uCisKKyAgNC4gRmx5dHQgbWFya8O4cmVuIHRpbCBkZW4gYW5kcmUgbGluamVuIG1hcmtlcnQgbWVkIC0tLT4gb2cgcmVwZXRlciBzdGVnIDIgb2cKKyAgICAgMyBmb3Igw6UgcmVwYXJlcmUgZGVubmUgc2V0bmluZ2VuLgorCistLS0+IERldCBtYW5nbGVyIG5vZSB0ZWtzdCBwCisgICAgIERldCBtYW5nbGVyIG5vZSB0ZWtzdCBww6UgZGVubmUgbGluamVuLgorLS0tPiBEZXQgbWFuZ2xlciBvZ3PDpSBsaXR0IHRlaworICAgICBEZXQgbWFuZ2xlciBvZ3PDpSBsaXR0IHRla3N0IHDDpSBkZW5uZSBsaW5qZW4uCisKKyAgNS4gTsOlciBkdSBmw7hsZXIgYXQgZHUgYmVoZXJza2VyIMOlIGxlZ2dlIHRpbCB0ZWtzdCwgZ8OlIHRpbCBsZWtzam9uIDEuNi4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgTGVrc2pvbiAxLjY6IFJFRElHRVJFIEVOIEZJTAorCisKKwkgICAgICAgKiogQnJ1awk6d3EgIGZvciDDpSBsYWdyZSBlbiBmaWwgb2cgYXZzbHV0dGUuICoqCisKKyAgISEgTUVSSzogRsO4ciBkdSB1dGbDuHJlciBub2VuIGF2IHN0ZWdlbmUgbmVkZW5mb3IsIGxlcyBoZWxlIGRlbm5lIGxla3Nqb25lbiEhCisKKyAgMS4gQXZzbHV0dCBkZW5uZSBpbm5mw7hyaW5nZW4gc29tIGR1IGdqb3JkZSBpIGxla3Nqb24gMS4yOiAgOnEhCisKKyAgMi4gU2tyaXYgZGVubmUga29tbWFuZG9lbiBww6Uga29tbWFuZG9saW5qYTogIHZpbSB0dXRvciA8RU5URVI+CisgICAgIMKrdmltwrsgZXIga29tbWFuZG9lbiBmb3Igw6Ugc3RhcnRlIFZpbS1lZGl0b3Jlbiwgwqt0dXRvcsK7IGVyIG5hdm5ldCBww6UgZmlsYQorICAgICBzb20gZHUgdmlsIHJlZGlnZXJlLiBCcnVrIGVuIGZpbCBzb20ga2FuIGZvcmFuZHJlcy4KKworICAzLiBTZXR0IGlubiBvZyBzbGV0dCB0ZWtzdCBzb20gZHUgbMOmcnRlIGkgZGUgZm9yZWfDpWVuZGUgbGVrc2pvbmVuZS4KKworICA0LiBMYWdyZSBmaWxlbiBtZWQgZm9yYW5kcmluZ2VuZSBvZyBhdnNsdXR0IFZpbSBtZWQ6CTp3cSA8RU5URVI+CisKKyAgNS4gU3RhcnQgaW5uZsO4cmluZ2VuIHDDpSBueXR0IG9nIGZseXR0IG5lZCB0aWwgb3Bwc3VtbWVyaW5nZW4gc29tIGbDuGxnZXIuCisKKyAgNi4gRXR0ZXIgw6UgaGEgbGVzdCBvZyBmb3JzdMOldHQgc3RlZ2VuZSBvdmVuZm9yOiBTZXR0IGkgZ2FuZy4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgT1BQU1VNTUVSSU5HIEFWIExFS1NKT04gMQorCisKKyAgMS4gTWFya8O4cmVuIGJldmVnZXMgdmVkIGhqZWxwIGF2IHBpbHRhc3RlbmUgZWxsZXIgaGprbC10YXN0ZW5lLgorCSBoICh2ZW5zdHJlKQkgaiAobmVkKSAgICAgayAob3BwKQkgbCAoaMO4eXJlKQorCisgIDIuIEZvciDDpSBzdGFydGUgVmltIGZyYSBza2FsbC1rb21tYW5kb2xpbmplbiwgc2tyaXY6CXZpbSBGSUxOQVZOIDxFTlRFUj4KKworICAzLiBGb3Igw6UgYXZzbHV0dGUgVmltLCBza3JpdjogIDxFU0M+IDpxISA8RU5URVI+ICBmb3Igw6UgZm9ya2FzdGUgZW5kcmluZ2VyLgorCQkgICBFTExFUiBza3JpdjogIDxFU0M+IDp3cSA8RU5URVI+ICBmb3Igw6UgbGFncmUgZm9yYW5kcmluZ2VuZS4KKworICA0LiBGb3Igw6Ugc2xldHRlIHRlZ25ldCB1bmRlciBtYXJrw7hyZW4sIHRyeWtrOiAgeAorCisgIDUuIEZvciDDpSBzZXR0ZSBpbm4gZWxsZXIgbGVnZ2UgdGlsIHRla3N0LCB0cnlrazoKKwkgaSAgICBza3JpdiBpbm5zYXR0IHRla3N0ICA8RVNDPglzZXR0IGlubiBmw7hyIG1hcmvDuHJlbgorCSBBICAgIHNrcml2IHRpbGxhZ3QgdGVrc3QgIDxFU0M+CWxlZ2cgdGlsIHDDpSBzbHV0dGVuIGF2IGxpbmplbgorCitNRVJLOiBOw6VyIGR1IHRyeWtrZXIgPEVTQz4gZ8OlciBkdSB0aWwgbm9ybWFsbW9kdXMgZWxsZXIgZHUgYXZicnl0ZXIgZW4gdcO4bnNrZXQKKyAgICAgIG9nIGRlbHZpcyBmdWxsZsO4cnQga29tbWFuZG8uCisKKyAgTsOlIGthbiBkdSBnw6UgdmlkZXJlIHRpbCBsZWtzam9uIDIuCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJTGVrc2pvbiAyLjE6IFNMRVRURUtPTU1BTkRPRVIKKworCisJCSAgICAqKiBUcnlrayAgZHcgIGZvciDDpSBzbGV0dGUgZXQgb3JkLiAqKgorCisgIDEuIFRyeWtrIDxFU0M+IGZvciDDpSB2w6ZyZSBzaWtrZXIgcMOlIGF0IGR1IGVyIGkgbm9ybWFsbW9kdXMuCisKKyAgMi4gRmx5dHQgbWFya8O4cmVuIHRpbCBkZW4gZsO4cnN0ZSBsaW5qZW4gbmVkZW5mb3IgbWVya2V0IC0tLT4uCisKKyAgMy4gRmx5dHQgbWFya8O4cmVuIHRpbCBiZWd5bm5lbHNlbiBhdiBvcmRldCBzb20gc2thbCBzbGV0dGVzLgorCisgIDQuIFRyeWtrICBkdwlvZyBvcmRldCB2aWwgZm9yc3Zpbm5lLgorCitNRVJLOiBCb2tzdGF2ZW4gIGQgIHZpbCBrb21tZSB0aWwgc3luZSBww6UgZGVuIG5lZGVyc3RlIGxpbmplbiBww6Ugc2tqZXJtZW4gbsOlcgorICAgICAgZHUgc2tyaXZlciBkZW4uIFZpbSB2ZW50ZXIgcMOlIGF0IGR1IHNrYWwgc2tyaXZlIHcgLiBIdmlzIGR1IHNlciBldCBhbm5ldAorICAgICAgdGVnbiBlbm4JZCAgaGFyIGR1IHNrcmV2ZXQgbm9lIGZlaWw7IHRyeWtrIDxFU0M+IG9nIHN0YXJ0IHDDpSBueXR0LgorCistLS0+IERldCBlciBhZ3VyayB0cmUgb3JkIGVwbGUgc29tIGlra2UgaMO4cmVyIHDDpnJlIGhqZW1tZSBpIGRlbm5lIHNldG5pbmdlbi4KKy0tLT4gRGV0IGVyIHRyZSBvcmQgc29tIGlra2UgaMO4cmVyIGhqZW1tZSBpIGRlbm5lIHNldG5pbmdlbi4KKworICA1LiBSZXBldGVyIHB1bmt0IDMgb2cgNCB0aWwgZGVuIGbDuHJzdGUgc2V0bmluZ2VuIGVyIGxpayBkZW4gYW5kcmUuIEfDpQorICAgICBkZXJldHRlciB0aWwgbGVrc2pvbiAyLjIuCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICBMZWtzam9uIDIuMjogRkxFUkUgU0xFVFRFS09NTUFORE9FUgorCisKKwkgICAgICoqIFRyeWtrICBkJCAgZm9yIMOlIHNsZXR0ZSB0aWwgc2x1dHRlbiBhdiBsaW5qZW4uICoqCisKKyAgMS4gVHJ5a2sgPEVTQz4gZm9yIMOlIHbDpnJlIHNpa2tlciBww6UgYXQgZHUgZXIgaSBub3JtYWxtb2R1cy4KKworICAyLiBGbHl0dCBtYXJrw7hyZW4gdGlsIGxpbmplbiBuZWRlbmZvciBtZXJrZXQgLS0tPi4KKworICAzLiBGbHl0dCBtYXJrw7hyZW4gdGlsIHB1bmt0ZXQgZGVyIGxpbmplbiBza2FsIGt1dHRlcyAoRVRURVIgZsO4cnN0ZSBwdW5rdHVtKS4KKworICA0LiBUcnlrayAgZCQJZm9yIMOlIHNsZXR0ZSBhbHQgdGlsIHNsdXR0ZW4gYXYgbGluamVuLgorCistLS0+IE5vZW4gc2tyZXYgc2x1dHRlbiBww6UgbGluamVuIGVuIGdhbmcgZm9yIG15ZS4gbGluamVuIGVuIGdhbmcgZm9yIG15ZS4KKworICA1LiBHw6UgdGlsIGxla3Nqb24gMi4zIGZvciDDpSBmb3JzdMOlIGh2YSBzb20gc2tqZXIuCisKKworCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgTGVrc2pvbiAyLjM6IE9NIE9QRVJBVE9SRVIgT0cgQkVWRUdFTFNFUgorCisKKyAgTWFuZ2Uga29tbWFuZG9lciBzb20gZm9yYW5kcmVyIHRla3N0ZW4gZXIgbGFnZXQgdXQgaSBmcmEgZW4gb3BlcmF0b3Igb2cgZW4KKyAgYmV2ZWdlbHNlLiBGb3JtYXRldCBmb3IgZW4gc2xldHRla29tbWFuZG8gbWVkIHNsZXR0ZW9wZXJhdG9yZW4gIGQgIGVyOgorCisJZCAgIGJldmVnZWxzZQorCisgIERlcjoKKyAgICBkCSAgICAgIC0gZXIgc2xldHRlb3BlcmF0b3Jlbi4KKyAgICBiZXZlZ2Vsc2UgLSBlciBodmEgb3BlcmF0b3JlbiB2aWwgb3BlcmUgcMOlIChsaXN0ZXQgbmVkZW5mb3IpLgorCisgIEVuIGtvcnQgbGlzdGUgbWVkIGJldmVnZWxzZXI6CisgICAgdyAtIHRpbCBzdGFydGVuIGF2IGRldCBuZXN0ZSBvcmRldCwgVU5OVEFUVCBkZXQgZsO4cnN0ZSB0ZWduZXQuCisgICAgZSAtIHRpbCBzbHV0dGVuIGF2IGRldCBuw6V2w6ZyZW5kZSBvcmRldCwgSU5LTFVERVJUIGRldCBzaXN0ZSB0ZWduZXQuCisgICAgJCAtIHRpbCBzbHV0dGVuIGF2IGxpbmplbiwgSU5LTFVERVJUIGRldCBzaXN0ZSB0ZWduZXQuCisKKyAgVmVkIMOlIHNrcml2ZQlkZSAgdmlsIGFsdHPDpSBhbHQgZnJhIG1hcmvDuHJlbiB0aWwgc2x1dHRlbiBhdiBvcmRldCBibGkKKyAgc2xldHRldC4KKworTUVSSzogIFZlZCDDpSBza3JpdmUga3VuIGJldmVnZWxzZW4gaSBub3JtYWxtb2R1c2VuIHV0ZW4gZW4gb3BlcmF0b3IgdmlsCisgICAgICAgbWFya8O4cmVuIGZseXR0ZXMgc29tIHNwZXNpZmlzZXJ0Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSBMRUtTSk9OIDIuNDogQlJVSyBBViBURUxMRVIgRk9SIEVOIEJFVkVHRUxTRQorCisKKyAqKiBWZWQgw6Ugc2tyaXZlIGV0IHRhbGwgZm9yYW4gZW4gYmV2ZWdlbHNlIHJlcGV0ZXJlciBkZW4gc8OlIG1hbmdlIGdhbmdlci4gKioKKworICAxLiBGbHl0dCBtYXJrw7hyZW4gdGlsIHN0YXJ0ZW4gYXYgbGluamVuIG1hcmtlcnQgLS0tPiBuZWRlbmZvci4KKworICAyLiBTa3JpdiAgMncJZm9yIMOlIGZseXR0ZSBtYXJrw7hyZW4gdG8gb3JkIGZyYW1vdmVyLgorCisgIDMuIFNrcml2ICAzZQlmb3Igw6UgZmx5dHRlIG1hcmvDuHJlbiBmcmFtb3ZlciB0aWwgc2x1dHRlbiBhdiBkZXQgdHJlZGplCisgICAgIG9yZGV0LgorCisgIDQuIFNrcml2ICAwICAobnVsbCkgZm9yIMOlIGZseXR0ZSB0aWwgc3RhcnRlbiBhdiBsaW5qZW4uCisKKyAgNS4gUmVwZXRlciBzdGVnIDIgb2cgMyBtZWQgZm9yc2tqZWxsaWdlIHRhbGwuCisKKy0tLT4gRGV0dGUgZXIgZW4gbGluamUgbWVkIG5vZW4gb3JkIHNvbSBkdSBrYW4gYmV2ZWdlIGRlZyBydW5kdCBww6UuCisKKyAgNi4gR8OlIHZpZGVyZSB0aWwgbGVrc2pvbiAyLjUuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJIExla3Nqb24gMi41OiBCUlVLIEFWIEFOVEFMTCBGT1Igw4UgU0xFVFRFIE1FUgorCisKKyAgICAgKiogRXQgdGFsbCBzYW1tZW4gbWVkIGVuIG9wZXJhdG9yIHJlcGV0ZXJlciBkZW4gc8OlIG1hbmdlIGdhbmdlci4gKioKKworICBJIGtvbWJpbmFzam9uZW4gbWVkIHNsZXR0ZW9wZXJhdG9yZW4gb2cgZW4gYmV2ZWdlbHNlIG5ldm50IG92ZW5mb3Igc2V0dGVyIGR1CisgIGlubiBhbnRhbGwgZsO4ciBiZXZlZ2Vsc2VuIGZvciDDpSBzbGV0dGUgbWVyOgorCSBkICBudW1tZXIgIGJldmVnZWxzZQorCisgIDEuIEZseXR0IG1hcmvDuHJlbiB0aWwgZGV0IGbDuHJzdGUgb3JkZXQgbWVkIFNUT1JFIEJPS1NUQVZFUiBww6UgbGluamVuIG1hcmtlcnQKKyAgICAgbWVkIC0tLT4uCisKKyAgMi4gU2tyaXYgIDJkdyAgZm9yIMOlIHNsZXR0ZSBkZSB0byBvcmRlbmUgbWVkIHN0b3JlIGJva3N0YXZlci4KKworICAzLiBSZXBldGVyIHN0ZWcgMSBvZyAyIG1lZCBmb3Jza2plbGxpbmcgYW50YWxsIGZvciDDpSBzbGV0dGUgZGUgZXR0ZXJmw7hsZ2VuZGUKKyAgICAgb3JkZW5lIHNvbSBoYXIgc3RvcmUgYm9rc3RhdmVyLgorCistLS0+IERlbm5lIEFCQyBERSBsaW5qZW4gRkdISSBKSyBMTU4gT1AgZXIgbsOlIFEgUlMgVFVWIGxpdHQgbWVyIGxlc2Jhci4KKworTUVSSzogRXQgYW50YWxsIG1lbGxvbSBvcGVyYXRvcmVuICBkICBvZyBiZXZlZ2Vsc2VuIHZpcmtlciBww6Ugc2FtbWUgbcOldGUgc29tIMOlCisgICAgICBicnVrZSBiZXZlZ2Vsc2VuIHV0ZW4gZW4gb3BlcmF0b3IuCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJTGVrc2pvbiAyLjY6IE9QRVJFUkUgUMOFIExJTkpFUgorCisKKwkJICoqIFRyeWtrICBkZCAgZm9yIMOlIHNsZXR0ZSBlbiBoZWwgbGluamUuICoqCisKKyAgUMOlIGdydW5uIGF2IGF0IHNsZXR0aW5nIGF2IGxpbmplciBlciBteWUgYnJ1a3QsIGZhbnQgdXR2aWtsZXJuZSBhdiBWaSB1dCBhdAorICBkZXQgdmlsIHbDpnJlIGxldHRlcmUgw6UgcmV0dCBvZyBzbGV0dCB0cnlra2UgdG8gZC1lciBmb3Igw6Ugc2xldHRlIGVuIGxpbmplLgorCisgIDEuIEZseXR0IG1hcmvDuHJlbiB0aWwgZGVuIGFuZHJlIGxpbmplbiBpIHZlcnNldCBuZWRlbmZvci4KKyAgMi4gVHJ5a2sgIGRkCSDDpSBzbGV0dGUgbGluamVuLgorICAzLiBGbHl0dCBkZXJldHRlciB0aWwgZGVuIGZqZXJkZSBsaW5qZW4uCisgIDQuIFRyeWtrICAyZGQgIGZvciDDpSBzbGV0dGUgdG8gbGluamVyLgorCistLS0+ICAxKSBSb3NlciBlciByw7hkZSwKKy0tLT4gIDIpIEdqw7hybWUgZXIgZ8O4eSwKKy0tLT4gIDMpIEZpb2xlciBlciBibMOlLAorLS0tPiAgNCkgSmVnIGhhciBlbiBiaWwsCistLS0+ICA1KSBLbG9ra2VyIHZpc2VyIHRpZGVuLAorLS0tPiAgNikgRHJ1ZXIgZXIgc8O4dGUKKy0tLT4gIDcpIE9nIGR1IGVyIGxpa2Vzw6UuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQlMZWtzam9uIDIuNzogQU5HUkUtS09NTUFORE9FTgorCisKKyAgKiogVHJ5a2sgIHUgIGZvciDDpSBhbmdyZSBzaXN0ZSBrb21tYW5kbywgIFUgIGZvciDDpSBmaWtzZSBlbiBoZWwgbGluamUuICoqCisKKyAgMS4gRmx5dHQgbWFya8O4cmVuIHRpbCBsaW5qZW4gbmVkZW5mb3IgbWVya2V0IC0tLT4gb2cgcGxhc3NlciBkZW4gcMOlIGRlbgorICAgICBmw7hyc3RlIGZlaWxlbi4KKyAgMi4gVHJ5a2sgIHggIGZvciDDpSBzbGV0dGUgZGV0IGbDuHJzdGUgdcO4bnNrZWRlIHRlZ25ldC4KKyAgMy4gVHJ5a2sgc8OlICB1ICBmb3Igw6UgYW5ncmUgZGVuIHNpc3RlIHV0ZsO4cnRlIGtvbW1hbmRvZW4uCisgIDQuIERlcmV0dGVyIG9yZG5lciBkdSBhbGxlIGZlaWxlbmUgcMOlIGxpbmplbmUgdmVkIMOlIGJydWtlIGtvbW1hbmRvZW4JeCAgLgorICA1LiBUcnlrayBuw6UgZW4gc3RvciAgVSAgZm9yIMOlIHNldHRlIGxpbmplbiB0aWxiYWtlIHRpbCBkZXQgZGVuIHZhcgorICAgICBvcmlnaW5hbHQuCisgIDYuIFRyeWtrICB1ICBub2VuIGdhbmdlciBmb3Igw6UgYW5ncmUJVSAgb2cgZm9yZWfDpWVuZGUga29tbWFuZG9lci4KKyAgNy4gRGVyZXR0ZXIgdHJ5a2tlciBkdSAgQ1RSTC1SICAoaG9sZCBDVFJMIG5lZGUgbWVucyBkdSB0cnlra2VyIFIpIG5vZW4KKyAgICAgZ2FuZ2VyIGZvciDDpSBnamVub3BwcmV0dGUga29tbWFuZG9lbmUgKG9tZ2rDuHJlIGFuZ3Jla29tbWFuZG9lbmUpLgorCistLS0+IFJSZXBhcmVyIGZlaWlsZW5lIHDDpcOlIGRlbm5lIGxpbm5uamVuIG9vZyBlcnNzc3RhdHQgZGVtIG1lZWQgYW5ncmUuCisKKyAgOC4gRGV0dGUgZXIgbWVnZXQgbnl0dGlnZSBrb21tYW5kb2VyLiBOw6Uga2FuIGR1IGfDpSB0aWwgb3Bwc3VtbWVyaW5nZW4gYXYKKyAgICAgbGVrc2pvbiAyLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICBPUFBTVU1NRVJJTkcgQVYgTEVLU0pPTiAyCisKKworICAxLiBGb3Igw6Ugc2xldHRlIGZyYSBtYXJrw7hyZW4gZnJhbSB0aWwgZGV0IG5lc3RlIG9yZGV0LCB0cnlrazogIGR3CisgIDIuIEZvciDDpSBzbGV0dGUgZnJhIG1hcmvDuHJlbiB0aWwgc2x1dHRlbiBhdiBlbiBsaW5qZSwgdHJ5a2s6CWQkCisgIDMuIEZvciDDpSBzbGV0dGUgZW4gaGVsIGxpbmplLCB0cnlrazoJZGQKKworICA0LiBGb3Igw6UgcmVwZXRlcmUgZW4gYmV2ZWdlbHNlLCBzZXR0IGV0IG51bW1lciBmb3JhbjogIDJ3CisgIDUuIEZvcm1hdGV0IGZvciBlbiBmb3JhbmRyaW5nc2tvbW1hbmRvIGVyOgorCSAgICAgICBvcGVyYXRvciAgW251bW1lcl0gIGJldmVnZWxzZQorICAgICBkZXI6CisgICAgICAgb3BlcmF0b3IgIC0gaHZhIHNvbSBza2FsIGdqw7hyZXMsIGYuZWtzLglkICBmb3Igw6Ugc2xldHRlCisgICAgICAgW251bW1lcl0gIC0gZXQgdmFsZ2ZyaXR0IGFudGFsbCBmb3Igw6UgcmVwZXRlcmUgYmV2ZWdlbHNlbgorICAgICAgIGJldmVnZWxzZSAtIGh2YSBrb21tYW5kb2VuIHNrYWwgb3BlcmVyZSBww6UsIGVrc2VtcGVsdmlzCXcgIChvcmQpLAorCQkgICAkICAodGlsIHNsdXR0ZW4gYXYgbGluamVuKSBvZyBzw6UgdmlkZXJlLgorCisgIDYuIEZvciDDpSBnw6UgdGlsIHN0YXJ0ZW4gYXYgZW4gbGluamUsIGJydWsgZW4gbnVsbDogIDAKKworICA3LiBGb3Igw6UgYW5ncmUgdGlkbGlnZXJlIGVuZHJpbmdlciwgc2tyaXY6CQl1ICAobGl0ZW4gdSkKKyAgICAgRm9yIMOlIGFuZ3JlIGFsbGUgZm9yYW5kcmluZ2VyIHDDpSBlbiBsaW5qZSwgc2tyaXY6CVUgIChzdG9yIFUpCisgICAgIEZvciDDpSBvbWdqw7hyZSBhbmdyaW5nZW4sIHRyeWtrOgkJCUNUUkwtUgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgTGVrc2pvbiAzLjE6IMKrTElNIElOTsK7LUtPTU1BTkRPRU4KKworCisgICAgKiogVHJ5a2sgIHAgIGZvciDDpSBsaW1lIGlubiB0aWRsaWdlcmUgc2xldHRldCB0ZWtzdCBldHRlciBtYXJrw7hyZW4gKioKKworICAxLiBGbHl0dCBtYXJrw7hyZW4gdGlsIGRlbiBmw7hyc3RlIGxpbmplbiBtZWQgLS0tPiBuZWRlbmZvci4KKworICAyLiBUcnlrayAgZGQJZm9yIMOlIHNsZXR0ZSBsaW5qZW4gb2cgbGFncmUgZGVuIGkgZXQgVmltLXJlZ2lzdGVyLgorCisgIDMuIEZseXR0IG1hcmvDuHJlbiB0aWwgYyktbGluamVuLCBPVkVSIHBvc2lzam9uZW4gbGluamVuIHNrYWwgc2V0dGVzIGlubi4KKworICA0LiBUcnlrayAgcCAgZm9yIMOlIGxlZ2dlIGxpbmplbiB1bmRlciBtYXJrw7hyZW4uCisKKyAgNS4gUmVwZXRlciBwdW5rdCAyIHRpbCA0IGhlbHQgdGlsIGxpbmplbmUgZXIgaSByaWt0aWcgcmVra2Vmw7hsZ2UuCisKKy0tLT4gZCkgS2FuIGR1IG9nc8OlIGzDpnJlPworLS0tPiBiKSBGaW9sZXIgZXIgYmzDpSwKKy0tLT4gYykgSW50ZWxsaWdlbnMgbcOlIGzDpnJlcywKKy0tLT4gYSkgUm9zZXIgZXIgcsO4ZGUsCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgTGVrc2pvbiAzLjI6IMKrRVJTVEFUVMK7LUtPTU1BTkRPRU4KKworCisJICoqIFRyeWtrICByeCAgZm9yIMOlIGVyc3RhdHRlIHRlZ25ldCB1bmRlciBtYXJrw7hyZW4gbWVkIHguICoqCisKKyAgMS4gRmx5dHQgbWFya8O4cmVuIHRpbCBkZW4gZsO4cnN0ZSBsaW5qZW4gbmVkZW5mb3IgbWVya2V0IC0tLT4uCisKKyAgMi4gRmx5dHQgbWFya8O4cmVuIHPDpSBkZW4gc3TDpXIgb3Bww6UgZGVuIGbDuHJzdGUgZmVpbGVuLgorCisgIDMuIFRyeWtrICByICBvZyBkZXJldHRlciB0ZWduZXQgc29tIHNrYWwgdsOmcmUgZGVyLgorCisgIDQuIFJlcGV0ZXIgcHVua3QgMiBvZyAzIHRpbCBkZW4gZsO4cnN0ZSBsaW5qZW4gZXIgbGlrIGRlbiBhbmRyZS4KKworLS0tPiBEYSBkZm5uZSBseW5qeG4gYmxlIHprcmV2ZXQsIHZhciBkZXQgbsO4ZW4gc29tIHRqeWtrZXQgZmVpdGUgdGFzdGVyIQorLS0tPiBEYSBkZW5uZSBsaW5qZW4gYmxlIHNrcmV2ZXQsIHZhciBkZXQgbm9lbiBzb20gdHJ5a2tldCBmZWlsZSB0YXN0ZXIhCisKKyAgNS4gR8OlIHZpZGVyZSB0aWwgbGVrc2pvbiAzLjIuCisKK01FUks6IEh1c2sgYXQgZHUgYsO4ciBsw6ZyZSB2ZWQgw6UgQlJVS0UsIGlra2UgcHVnZ2UuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgTGVrc2pvbiAzLjM6IMKrRk9SQU5EUkXCuy1PUEVSQVRPUkVOCisKKworCSAgICoqIEZvciDDpSBmb3JhbmRyZSB0aWwgc2x1dHRlbiBhdiBldCBvcmQsIHRyeWtrICBjZSAuICoqCisKKyAgMS4gRmx5dHQgbWFya8O4cmVuIHRpbCBkZW4gZsO4cnN0ZSBsaW5qZW4gbmVkZW5mb3Igc29tIGVyIG1lcmtldCAtLS0+LgorCisgIDIuIFBsYXNzZXIgbWFya8O4cmVuIHDDpSAgdSAgaSDCq2x1Ymp3csK7LgorCisgIDMuIFRyeWtrICBjZQlvZyBkZXQga29ycmVrdGUgb3JkZXQgKGkgZGV0dGUgdGlsZmVsbGV0LCBza3JpdiDCq2luamVuwrspLgorCisgIDQuIFRyeWtrIDxFU0M+IG9nIGfDpSB0aWwgZGV0IG5lc3RlIHRlZ25ldCBzb20gc2thbCBmb3JhbmRyZXMuCisKKyAgNS4gUmVwZXRlciBwdW5rdCAzIG9nIDQgaGVsdCB0aWwgZGVuIGbDuHJzdGUgc2V0bmluZ2VuIGVyIGxpayBkZW4gYW5kcmUuCisKKy0tLT4gRGVubmUgbHViandyIGhhciBub2VuIHdnaCBzb20gbcOlIGZvcmt3w6VwIG1lZCDCq2ZvcsOma3pyeWFzwrsta29tbWFuZG9lbi4KKy0tLT4gRGVubmUgbGluamVuIGhhciBub2VuIG9yZCBzb20gbcOlIGZvcmFuZHJlcyBtZWQgwqtmb3JhbmRyZcK7LWtvbW1hbmRvZW4uCisKK1bDpnIgb3BwbWVya3NvbSBww6UgYXQgIGNlICBzbGV0dGVyIG9yZGV0IG9nIGfDpXIgaW5uIGkgaW5uc2V0dGluZ3Ntb2R1cy4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQlMZWtzam9uIDMuNDogRkxFUkUgRk9SQU5EUklOR0VSIFZFRCBCUlVLIEFWIGMKKworCisgKiogRm9yYW5kcmluZ3Nrb21tYW5kb2VuIGJsaXIgYnJ1a3QgbWVkIGRlIHNhbW1lIGJldmVnZWxzZXIgc29tIMKrc2xldHTCuy4gKioKKworICAxLiBGb3JhbmRyaW5nc29wZXJhdG9yZW4gZnVuZ2VyZXIgcMOlIHNhbW1lIG3DpXRlIHNvbSDCq3NsZXR0wrsuIEZvcm1hdGV0IGVyOgorCisJIGMgICAgW251bW1lcl0JIGJldmVnZWxzZQorCisgIDIuIEJldmVnZWxzZW5lIGVyIGRlIHNhbW1lLCBzb20gZm9yIGVrc2VtcGVsCXcgIChvcmQpIG9nICAkCShzbHV0dGVuIGF2IGVuCisgICAgIGxpbmplKS4KKworICAzLiBHw6UgdGlsIGRlbiBmw7hyc3RlIGxpbmplbiBuZWRlbmZvciBzb20gZXIgbWVya2V0IC0tLT4uCisKKyAgNC4gRmx5dHQgbWFya8O4cmVuIHRpbCBkZW4gZsO4cnN0ZSBmZWlsZW4uCisKKyAgNS4gU2tyaXYgIGMkCW9nIHNrcml2IHJlc3RlbiBhdiBsaW5qZW4gbGlrIGRlbiBhbmRyZSBvZyB0cnlrayA8RVNDPi4KKworLS0tPiBTbHV0dGVuIHDDpSBkZW5uZSBsaW5qZW4gdHJlbmdlciBsaXR0IGhqZWxwIGZvciDDpSBnasO4cmUgZGVuIGxpayBkZW4gbmVzdGUuCistLS0+IFNsdXR0ZW4gcMOlIGRlbm5lIGxpbmplbiB0cmVuZ2VyIMOlIGJsaSByZXR0ZXQgdmVkIGJydWsgYXYgYyQta29tbWFuZG9lbi4KKworTUVSSzogRHUga2FuIGJydWtlIHNsZXR0ZXRhc3RlbiBmb3Igw6UgcmV0dGUgZmVpbCBtZW5zIGR1IHNrcml2ZXIuCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgT1BQU1VNTUVSSU5HIEFWIExFS1NKT04gMworCisKKyAgMS4gRm9yIMOlIGxlZ2dlIHRpbGJha2UgdGVrc3Qgc29tIG5ldHRvcHAgZXIgYmxpdHQgc2xldHRldCwgdHJ5a2sgIHAgIC4gRGV0dGUKKyAgICAgbGltZXIgaW5uIGRlbiBzbGV0dGVkZSB0ZWtzdGVuIEVUVEVSIG1hcmvDuHJlbiAoaHZpcyBlbiBsaW5qZSBibGUgc2xldHRldAorICAgICB2aWwgZGVuIGJsaSBsaW10IGlubiBww6UgbGluamVuIHVuZGVyIG1hcmvDuHJlbikuCisKKyAgMi4gRm9yIMOlIGVyc3RhdHRlIGV0IHRlZ24gdW5kZXIgbWFya8O4cmVuLCB0cnlrayAgciAgb2cgZGVyZXR0ZXIgdGVnbmV0IHNvbQorICAgICBkdSB2aWwgaGEgZGVyLgorCisgIDMuIEZvcmFuZHJpbmdzb3BlcmF0b3JlbiBsYXIgZGVnIGZvcmFuZHJlIGZyYSBtYXJrw7hyZW4gdGlsIGRpdCBiZXZlZ2Vsc2VuCisgICAgIHRhciBkZWcuIERldCB2aWwgc2ksIHNrcml2ICBjZSAgZm9yIMOlIGZvcmFuZHJlIGZyYSBtYXJrw7hyZW4gdGlsIHNsdXR0ZW4KKyAgICAgYXYgb3JkZXQsCWMkICBmb3Igw6UgZm9yYW5kcmUgdGlsIHNsdXR0ZW4gYXYgbGluamVuLgorCisgIDQuIEZvcm1hdGV0IGZvciDCq2ZvcmFuZHJlwrsgZXI6CisKKwkgYyAgIFtudW1tZXJdCWJldmVnZWxzZQorCitOw6Uga2FuIGR1IGfDpSB0aWwgbmVzdGUgbGVrc2pvbi4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCSAgICAgTGVrc2pvbiA0LjE6IFBPU0lTSk9ORVJJTkcgQVYgTUFSS8OYUkVOIE9HIEZJTFNUQVRVUworCisJKiogVHJ5a2sgQ1RSTC1HIGZvciDDpSB2aXNlIHBvc2lzam9uZW4gaSBmaWxlbiBvZyBmaWxzdGF0dXNlbi4KKwkgICBUcnlrayAgRyAgZm9yIMOlIGfDpSB0aWwgZW4gc3Blc2lmaWtrIGxpbmplIGkgZmlsZW4uICoqCisKKyAgTWVyazogTGVzIGhlbGUgbGVrc2pvbmVuIGbDuHIgZHUgdXRmw7hyZXIgbm9lbiBhdiBwdW5rdGVuZSEKKworICAxLiBIb2xkIG5lZGUgQ3RybC10YXN0ZW4gb2cgdHJ5a2sgIGcJLiBWaSBrYWxsZXIgZGV0dGUgQ1RSTC1HLiBFbiBtZWxkaW5nCisgICAgIHZpbCBrb21tZSB0aWwgc3luZSBww6UgYnVubmVuIGF2IHNramVybWVuIG1lZCBmaWxuYXZuZXQgb2cgcG9zaXNqb25lbiBpCisgICAgIGZpbGVuLiBIdXNrIGxpbmplbnVtbWVyZXQgZm9yIGJydWsgaSBzdGVnIDMuCisKK01lcms6IER1IGthbiBzZSBtYXJrw7hycG9zaXNqb25lbiBpIG5lZGVyc3RlIGjDuHlyZSBoasO4cm5lIGF2IHNramVybWVuLiBEZXR0ZQorICAgICAgc2tqZXIgbsOlciDCq3J1bGVywrstdmFsZ2V0IGVyIHNhdHQgKGZvcmtsYXJ0IGkgbGVrc2pvbiA2KS4KKworICAyLiBUcnlrayAgRyAgZm9yIMOlIGfDpSB0aWwgYnVubmVuIGF2IGZpbGVuLgorICAgICBTa3JpdiAgZ2cJZm9yIMOlIGfDpSB0aWwgYmVneW5uZWxzZW4gYXYgZmlsZW4uCisKKyAgMy4gU2tyaXYgaW5uIGxpbmplbnVtbWVyZXQgZHUgdmFyIHDDpSBvZyBkZXJldHRlciAgRyAuIERldHRlIHZpbCBmw7hyZSBkZWcKKyAgICAgdGlsYmFrZSB0aWwgbGluamVuIGR1IHZhciBww6UgZGEgZHUgZsO4cnN0IHRyeWtrZXQgQ1RSTC1HLgorCisgIDQuIFV0ZsO4ciBzdGVnIDEgdGlsIDMgaHZpcyBkdSBmw7hsZXIgZGVnIHNpa2tlciBww6UgcHJvc2VkeXJlbi4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgTGVrc2pvbiA0LjI6IFPDmEtFS09NTUFORE9FTgorCisgICAgICAqKiBTa3JpdgkvICBldHRlcmZ1bGd0IGF2IGVuIHPDuGtlc3RyZW5nIHNvbSBkdSB2aWwgbGV0ZSBldHRlci4gKioKKworICAxLiBUcnlrayAgLyAgbsOlciBkdSBlciBpIG5vcm1hbG1vZHVzZW4uIExlZ2cgbWVya2UgdGlsIGF0IHNrcsOlc3RyZWtlbiBvZworICAgICBtYXJrw7hyZW4ga29tbWVyIHRpbCBzeW5lIHDDpSBidW5uZW4gYXYgc2tqZXJtZW4gaSBsaWtoZXQgbWVkCisgICAgIMKrOsK7LWtvbW1hbmRvZW5lLgorCisgIDIuIFNrcml2IMKrZmVlZWlpbMK7IG9nIHRyeWtrIDxFTlRFUj4uIERldHRlIGVyIHRla3N0ZW4gZHUgdmlsIGxldGUgZXR0ZXIuCisKKyAgMy4gRm9yIMOlIGZpbm5lIG5lc3RlIGZvcmVrb21zdCBhdiBzw7hrZXN0cmVuZ2VuLCB0cnlrayAgbiAuCisgICAgIEZvciDDpSBsZXRlIGV0dGVyIHNhbW1lIHPDuGtldGVrc3RlbiBpIG1vdHNhdHQgcmV0bmluZywgdHJ5a2sgIE4gLgorCisgIDQuIEZvciDDpSBsZXRlIGV0dGVyIGVuIHRla3N0IGJha292ZXIgaSBmaWxlbiwgYnJ1ayAgPyAgaXN0ZWRlbmZvciAgLwkuCisKKyAgNS4gRm9yIMOlIGfDpSB0aWxiYWtlIHRpbCBkZXIgZHUga29tIGZyYSwgdHJ5a2sgIENUUkwtTyAgKEhvbGQgQ3RybCBuZWRlIG1lbnMKKyAgICAgZHUgdHJ5a2tlciBib2tzdGF2ZW4gIG8gKS4gUmVwZXRlciBmb3Igw6UgZ8OlIGVuZGEgbGVuZ3JlIHRpbGJha2UuIENUUkwtSQorICAgICBnw6VyIGZyYW1vdmVyLgorCistLS0+IMKrZmVlZWlpbMK7IGVyIGlra2UgbcOldGVuIMOlIHNrcml2ZSDCq2ZlaWzCuyBww6UsIGZlZWVpaWwgZXIgaGVsdCBmZWlsLgorTWVyazogTsOlciBzw7hraW5nZW4gbsOlciBzbHV0dGVuIGF2IGZpbGVuLCB2aWwgZGVuIGZvcnRzZXR0ZSBmcmEgc3RhcnRlbiB1bm50YXR0CisgICAgICBodmlzIMKrd3JhcHNjYW7Cuy12YWxnZXQgZXIgcmVzYXR0Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgIExla3Nqb24gNC4zOiBGSU5OIFNBTVNWQVJFTkRFIFBBUkVOVEVTRVIKKworCisJICAqKiBUcnlrayAgJSAgZm9yIMOlIGZpbm5lIGVuIHNhbXN2YXJlbmRlICksIF0gZWxsZXIgfSAuICoqCisKKyAgMS4gUGxhc3NlciBtYXJrw7hyZW4gcMOlIGVuICgsIFsgZWxsZXIgeyBww6UgbGluamVuIG5lZGVuZm9yIG1lcmtldCAtLS0+LgorCisgIDIuIFRyeWtrICAlICAuCisKKyAgMy4gTWFya8O4cmVuIHZpbCBnw6UgdGlsIGRlbiBzYW1zdmFyZW5kZSBwYXJlbnRlc2VuIGVsbGVyIGhha2VwYXJlbnRlc2VuLgorCisgIDQuIFRyeWtrICAlICBmb3Igw6UgZmx5dHRlIG1hcmvDuHJlbiB0aWwgZGVuIGFuZHJlIHNhbXN2YXJlbmRlIHBhcmVudGVzZW4uCisKKyAgNS4gRmx5dHQgbWFya8O4cmVuIHRpbCBlbiBhbm5lbiAoLCApLCBbLCBdLCB7IGVsbGVyIH0gb2cgc2UgaHZhICAlICBnasO4ci4KKworLS0tPiBEZXR0ZSAoIGVyIGVuIHRlc3RsaW5qZSBtZWQgKCwgWyBdIG9nIHsgfSBpIGRlbiApKS4KKworTWVyazogRGV0dGUgZXIgdmVsZGlnIG55dHRpZyB0aWwgZmVpbHPDuGtpbmcgaSBwcm9ncmFtbWVyIHNvbSBoYXIgdWJhbGFuc2VydAorICAgICAgYW50YWxsIHBhcmVudGVzZXIhCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgIExla3Nqb24gNC40OiBFUlNUQVRULUtPTU1BTkRPRU4KKworCisJKiogU2tyaXYgIDpzL2dhbW1lbC9ueS9nICBmb3Igw6UgZXJzdGF0dGUgwqtnYW1tZWzCuyBtZWQgwqtuecK7LiAqKgorCisgIDEuIEZseXR0IG1hcmvDuHJlbiB0aWwgbGluamVuIG5lZGVuZm9yIHNvbSBlciBtZXJrZXQgbWVkIC0tLT4uCisKKyAgMi4gU2tyaXYgIDpzL2RlZW4vZGVuLyA8RU5URVI+ICAuIExlZ2cgbWVya2UgdGlsIGF0IGRlbm5lIGtvbW1hbmRvZW4gYmFyZQorICAgICBmb3JhbmRyZXIgZGVuIGbDuHJzdGUgZm9yZWtvbXN0ZW4gYXYgwqtkZWVuwrsgcMOlIGxpbmplbi4KKworICAzLiBTa3JpdiAgOnMvZGVlbi9kZW4vZyAuIE7DpXIgZy1mbGFnZ2V0IGxlZ2dlcyB0aWwsIGJldHlyIGRldHRlIGdsb2JhbAorICAgICBlcnN0YXRuaW5nIHDDpSBsaW5qZW4gb2cgZXJzdGF0dGVyIGFsbGUgZm9yZWtvbXN0ZXIgYXYgwqtkZWVuwrsgcMOlIGxpbmplbi4KKworLS0tPiBkZWVuIHNvbSBrYW4ga2FzdGUgZGVlbiB0eW5nc3RlIHN0ZWluZW4gbGVuZ3N0IGVyIGRlZW4gYmVzdGUKKworICA0LiBGb3Igw6UgZXJzdGF0dGUgYWxsZSBmb3Jla29tc3RlciBhdiBlbiB0ZWtzdHN0cmVuZyBtZWxsb20gdG8gbGluamVyLAorICAgICBza3JpdiAgOiMsI3MvZ2FtbWVsL255L2cgIGRlciAjLCMgZXIgbGluamVudW1yZW5lIHDDpSBkZSB0byBsaW5qZW5lIGZvcgorCQkJICAgICAgIGxpbmplb21yw6VkZXQgZXJzdGF0bmluZ2VuIHNrYWwgZ2rDuHJlcy4KKyAgICAgU2tyaXYgIDolcy9nYW1tZWwvbnkvZyAgICBmb3Igw6UgZXJzdGF0dGUgdGVrc3QgaSBoZWxlIGZpbGVuLgorICAgICBTa3JpdiAgOiVzL2dhbW1lbC9ueS9nYyAgIGZvciDDpSBmaW5uZSBhbGxlIGZvcmVrb21zdGVyIGkgaGVsZSBmaWxlbiwgb2cKKwkJCSAgICAgICBkZXJldHRlciBzcMO4cnJlIG9tIHRla3N0ZW4gc2thbCBlcnN0YXR0ZXMgZWxsZXIKKwkJCSAgICAgICBpa2tlLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIE9QUFNVTU1FUklORyBBViBMRUtTSk9OIDQKKworCisgIDEuIEN0cmwtRyB2aXNlciBuw6V2w6ZyZW5kZSBwb3Npc2pvbiBpIGZpbGVuIG9nIGZpbHN0YXR1c2VuLgorCSAgICAgRwlnw6VyIHRpbCBzbHV0dGVuIGF2IGZpbGVuLgorICAgICBudW1tZXIgIEcJZ8OlciB0aWwgZGV0IGxpbmplbnVtbWVyZXQuCisJICAgIGdnCWfDpXIgdGlsIGRlbiBmw7hyc3RlIGxpbmplbi4KKworICAyLiBTa3JpdiAgLyAgZXR0ZXJmdWxndCBhdiBlbiBzw7hrZXRla3N0IGZvciDDpSBsZXRlIEZSQU1PVkVSIGV0dGVyIHRla3N0ZW4uCisgICAgIFNrcml2ICA/ICBldHRlcmZ1bGd0IGF2IGVuIHPDuGtldGVrc3QgZm9yIMOlIGxldGUgQkFLT1ZFUiBldHRlciB0ZWtzdGVuLgorICAgICBFdHRlciBldCBzw7hrIGthbiBkdSB0cnlra2UgIG4gIGZvciDDpSBmaW5uZSBuZXN0ZSBmb3Jla29tc3QgaSBkZW4gc2FtbWUKKyAgICAgcmV0bmluZ2VuIGVsbGVyICBOICBmb3Igw6UgbGV0ZSBpIG1vdHNhdHQgcmV0bmluZy4KKyAgICAgQ1RSTC1PIHRhciBkZWcgdGlsYmFrZSB0aWwgZ2FtbGUgcG9zaXNqb25lciwgQ1RSTC1JIHRpbCBueWVyZSBwb3Npc2pvbmVyLgorCisgIDMuIFNrcml2ICAlICBuw6VyIG1hcmvDuHJlbiBzdMOlciBww6UgZW4gKCwgKSwgWywgXSwgeyBlbGxlciB9IGZvciDDpSBmaW5uZSBkZW4KKyAgICAgc29tIHNhbXN2YXJlci4KKworICA0LiBFcnN0YXR0ZSDCq2dhbW1lbMK7IG1lZCBmw7hyc3RlIMKrbnnCuyBww6UgZW4gbGluamU6ICA6cy9nYW1tZWwvbnkKKyAgICAgRXJzdGF0dGUgYWxsZSDCq2dhbW1lbMK7IG1lZCDCq255wrsgcMOlIGVuIGxpbmplOiAgICA6cy9nYW1tZWwvbnkvZworICAgICBFcnN0YXR0ZSB0ZWtzdCBtZWxsb20gdG8gbGluamVudW1yZToJICAgICA6Iywjcy9nYW1tZWwvbnkvZworICAgICBFcnN0YXR0ZSBhbGxlIGZvcmVrb21zdGVyIGkgZW4gZmlsOgkgICAgIDolcy9nYW1tZWwvbnkvZworICAgICBGb3Igw6UgZ29ka2plbm5lIGh2ZXIgZXJzdGF0bmluZywgbGVnZyB0aWwgwqtjwrs6ICA6JXMvZ2FtbWVsL255L2djCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkgICAgICAgTGVrc2pvbiA1LjE6IEhWT1JEQU4gVVRGw5hSRSBFTiBFS1NURVJOIEtPTU1BTkRPCisKKworICAgICoqIFNrcml2ICA6ISAgZXR0ZXJmdWxndCBhdiBlbiBla3N0ZXJuIGtvbW1hbmRvIGZvciDDpSB1dGbDuHJlIGRlbm5lLiAqKgorCisgIDEuIFNrcml2IGRlbiB2ZWxramVudGUga29tbWFuZG9lbiAgOgkgZm9yIMOlIHBsYXNzZXJlIG1hcmvDuHJlbiBww6UgYnVubmVuIGF2CisgICAgIHNramVybWVuLiBEZXR0ZSBsYXIgZGVnIHNrcml2ZSBlbiBrb21tYW5kb2xpbmpla29tbWFuZG8uCisKKyAgMi4gTsOlIGthbiBkdSBza3JpdmUgdGVnbmV0ICAhICAuIERldHRlIGxhciBkZWcgdXRmw7hyZSBlbiBodmlsa2VuIHNvbSBoZWxzdAorICAgICBla3N0ZXJuIGtvbW1hbmRvLgorCisgIDMuIFNvbSBldCBla3NlbXBlbCwgc2tyaXYgIGxzICBldHRlciB1dHJvcHN0ZWduZXQgb2cgdHJ5a2sgPEVOVEVSPi4gRHUgdmlsCisgICAgIG7DpSBmw6UgZW4gbGlzdGUgb3ZlciBmaWxlbmUgaSBrYXRhbG9nZW4sIGFra3VyYXQgc29tIG9tIGR1IGhhZGRlIGtqw7hydAorICAgICBrb21tYW5kb2VuIGRpcmVrdGUgZnJhIGtvbW1hbmRvbGluamVuIGkgc2thbGxldC4gRWxsZXIgYnJ1ayAgOiFkaXIgIGh2aXMKKyAgICAgwqtsc8K7IGlra2Ugdmlya2VyLgorCitNRVJLOiBEZXQgZXIgbXVsaWcgw6Uga2rDuHJlIGFsbGUgZWtzdGVybmUga29tbWFuZG9lciBww6UgZGVubmUgbcOldGVuLCBvZ3PDpSBtZWQKKyAgICAgIHBhcmFtZXRlcmUuCisKK01FUks6IEFsbGUgwqs6wrsta29tbWFuZG9lciBtw6UgYXZzbHV0dGVzIG1lZCA8RU5URVI+LiBGcmEgZGV0dGUgcHVua3RldCBlciBkZXQKKyAgICAgIGlra2UgYWxsdGlkIHZpIG5ldm5lciBkZXQuCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgIExla3Nqb24gNS4yOiBNRVIgT00gTEFHUklORyBBViBGSUxFUgorCisKKyAgICAgICoqIEZvciDDpSBsYWdyZSBlbmRyaW5nZW5lIGdqb3J0IGkgZW4gdGVrc3QsIHNrcml2ICA6dyBGSUxOQVZOLiAqKgorCisgIDEuIFNrcml2ICA6IWRpciAgZWxsZXIgIDohbHMJZm9yIMOlIGbDpSBlbiBsaXN0ZSBvdmVyIGZpbGVuZSBpIGthdGFsb2dlbi4gRHUKKyAgICAgdmV0IGFsbGVyZWRlIGF0IGR1IG3DpSB0cnlra2UgPEVOVEVSPiBldHRlciBkZXR0ZS4KKworICAyLiBWZWxnIGV0IGZpbG5hdm4gcMOlIGVuIGZpbCBzb20gaWtrZSBmaW5uZXMsIHNvbSBmb3IgZWtzZW1wZWwgIFRFU1QgLgorCisgIDMuIFNrcml2ICA6dyBURVNUICAoZGVyIFRFU1QgZXIgZmlsbmF2bmV0IGR1IHZlbGdlcikuCisKKyAgNC4gRGV0dGUgbGFncmVyIGhlbGUgZmlsZW4gKGRlbm5lIGlubmbDuHJpbmdlbikgdW5kZXIgbmF2bmV0IFRFU1QgLiBGb3Igw6UKKyAgICAgc2pla2tlIGRldHRlLCBza3JpdiAgOiFkaXIgIGVsbGVyCTohbHMgIGlnamVuIGZvciDDpSBzZSBpbm5ob2xkZXQgYXYKKyAgICAga2F0YWxvZ2VuLgorCitNZXJrOiBIdmlzIGR1IG7DpSBoYWRkZSBhdnNsdXR0ZXQgVmltIG9nIHN0YXJ0ZXQgcMOlIG55dHQgaWdqZW4gbWVkIMKrdmltIFRFU1TCuywKKyAgICAgIHZpbGxlIGZpbGVuIHbDpnJ0IGVuIGVrc2FrdCBrb3BpIGF2IGlubmbDuHJpbmdlbiBkYSBkdSBsYWdyZXQgZGVuLgorCisgIDUuIEZqZXJuIGZpbGVuIHZlZCDDpSBza3JpdmUgIDohcm0gVEVTVCAgaHZpcyBkdSBlciBww6UgZXQgVW5peC1saWduZW5kZQorICAgICBvcGVyYXRpdnN5c3RlbSwgZWxsZXIgIDohZGVsIFRFU1QJaHZpcyBkdSBicnVrZXIgTVMtRE9TLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgTGVrc2pvbiA1LjM6IFZFTEdFIFRFS1NUIFNPTSBTS0FMIExBR1JFUworCisKKyAgICAgKiogRm9yIMOlIGxhZ3JlIGVuIGRlbCBhdiBlbiBmaWwsIHNrcml2ICB2CWJldmVnZWxzZSAgOncgRklMTkFWTiAqKgorCisgIDEuIEZseXR0IG1hcmvDuHJlbiB0aWwgZGVubmUgbGluamVuLgorCisgIDIuIFRyeWtrICB2ICBvZyBmbHl0dCBtYXJrw7hyZW4gdGlsIGRldCBmZW10ZSBlbGVtZW50ZXQgbmVkZW5mb3IuIExlZ2cgbWVya2UKKyAgICAgdGlsIGF0IHRla3N0ZW4gYmxpciBtYXJrZXJ0LgorCisgIDMuIFRyeWtrICA6ICAoa29sb24pLiBQw6UgYnVubmVuIGF2IHNramVybWVuIHZpbCAgOic8LCc+ICBrb21tZSB0aWwgc3luZS4KKworICA0LiBUcnlrayAgdyBURVNUICAsIGRlciBURVNUIGVyIGV0IGZpbG5hdm4gc29tIGlra2UgZmlubmVzIGVuZGEuIEtvbnRyb2xsZXIKKyAgICAgYXQgZHUgc2VyCTonPCwnPncgVEVTVCAgZsO4ciBkdSB0cnlra2VyIEVudGVyLgorCisgIDUuIFZpbSB2aWwgc2tyaXZlIGRlIHZhbGd0ZSBsaW5qZW5lIHRpbCBmaWxlbiBURVNULiBCcnVrICA6IWRpciAgZWxsZXIgICFscworICAgICBmb3Igw6Ugc2UgZGVuLiBJa2tlIHNsZXR0IGRlbiBlbmRhISBWaSB2aWwgYnJ1a2UgZGVuIGkgbmVzdGUgbGVrc2pvbi4KKworTUVSSzogVmVkIMOlIHRyeWtrZSAgdiAgc3RhcnRlcyB2aXN1ZWx0IHZhbGcuIER1IGthbiBmbHl0dGUgbWFya8O4cmVuIHJ1bmR0IGZvcgorICAgICAgw6UgZ2rDuHJlIGRldCB2YWxndGUgb21yw6VkZXQgc3TDuHJyZSBlbGxlciBtaW5kcmUuIERlcmV0dGVyIGthbiBkdSBicnVrZSBlbgorICAgICAgb3BlcmF0b3IgZm9yIMOlIGdqw7hyZSBub2UgbWVkIHRla3N0ZW4uIEZvciBla3NlbXBlbCBzbGV0dGVyICBkICB0ZWtzdGVuLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJTGVrc2pvbiA1LjQ6IEhFTlRJTkcgT0cgU0FNTUVOU0zDhUlORyBBViBGSUxFUgorCisKKyAqKiBGb3Igw6UgbGVzZSBpbm4gZW4gYW5uZW4gZmlsIGlubiBpIG7DpXbDpnJlbmRlIGJ1ZmZlciwgc2tyaXYgIDpyIEZJTE5BVk4gICoqCisKKyAgMS4gUGxhc3NlciBtYXJrw7hyZW4gbGlrZSBvdmVyIGRlbm5lIGxpbmplbi4KKworTUVSSzogRXR0ZXIgw6UgaGEgdXRmw7hydCBzdGVnIDIgdmlsIGR1IHNlIHRla3N0ZW4gZnJhIGxla3Nqb24gNS4zLiBHw6UgZGVyZXR0ZXIKKyAgICAgIE5FRCBmb3Igw6Ugc2UgZGVubmUgbGVrc2pvbmVuIGlnamVuLgorCisgIDIuIEhlbnQgVEVTVC1maWxlbiB2ZWQgw6UgYnJ1a2Uga29tbWFuZG9lbiAgOnIgVEVTVCAgZGVyIFRFU1QgZXIgbmF2bmV0IHDDpQorICAgICBmaWxlbiBkdSBicnVrdGUuIEZpbGVuIGR1IGhlbnRlciBibGlyIHBsYXNzZXJ0IG5lZGVuZm9yIG1hcmvDuHJsaW5qZW4uCisKKyAgMy4gRm9yIMOlIHNqZWtrZSBhdCBmaWxlbiBibGUgaGVudGV0LCBnw6UgdGlsYmFrZSBvZyBzZSBhdCBkZXQgZXIgdG8ga29waWVyIGF2CisgICAgIGxla3Nqb24gNS4zLCBvcmlnaW5hbGVuIG9nIGRlbm5lIHZlcnNqb25lbi4KKworTUVSSzogRHUga2FuIG9nc8OlIGxlc2UgdXRkYXRhZW5lIGF2IGVuIGVrc3Rlcm4ga29tbWFuZG8uIEZvciBla3NlbXBlbCwJOnIgIWxzCisgICAgICBsZXNlciB1dGRhdGFlbmUgYXYgbHMta29tbWFuZG9lbiBvZyBsZWdnZXIgZGVtIG5lZGVuZm9yIG1hcmvDuHJlbi4KKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIE9QUFNVTU1FUklORyBBViBMRUtTSk9OIDUKKworCisgIDEuICA6IWtvbW1hbmRvICB1dGbDuHJlciBlbiBla3N0ZXJuIGtvbW1hbmRpby4KKworICAgICAgTm9lbiBueXR0aWdlIGVrc2VtcGxlciBlcjoKKwkgKE1TLURPUykJICAoVW5peCkKKwkgIDohZGlyCQkgICA6IWxzCQkgIC0gTGlzdCBmaWxlbmUgaSBrYXRhbG9nZW4uCisJICA6IWRlbCBGSUxOQVZOICAgIDohcm0gRklMTkFWTiAgIC0gU2xldHQgZmlsZW4gRklMTkFWTi4KKworICAyLiAgOncgRklMTkFWTiAgc2tyaXZlciBkZW4gbsOldsOmcmVuZGUgVmltLWZpbGVuIGRpc2tlbiBtZWQgbmF2bmV0IEZJTE5BVk4gLgorCisgIDMuICB2ICBiZXZlZ2Vsc2UgIDp3IEZJTE5BVk4JbGFncmVyIGRlIHZpc3VlbHQgdmFsZ3RlIGxpbmplbmUgdGlsIGZpbGVuCisgICAgIEZJTE5BVk4uCisKKyAgNC4gIDpyIEZJTE5BVk4gIGhlbnRlciBmaWxlbiBGSUxOQVZOIG9nIGxlZ2dlciBkZW4gaW5uIG5lZGVuZm9yIG1hcmvDuHJlbi4KKworICA1LiAgOnIgIWRpciAgbGVzZXIgdXRkYXRhZW5lIGZyYSDCq2RpcsK7LWtvbW1hbmRvZW4gb2cgbGVnZ2VyIGRlbSBuZWRlbmZvcgorICAgICBtYXJrw7hycG9zaXNqb25lbi4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgIExla3Nqb24gNi4xOiDCq8OFUE5FIExJTkpFwrstS09NTUFORE9FTgorCisKKyAgICAqKiBTa3JpdiAgbyAgZm9yIMOlIMKrw6VwbmUgb3BwwrsgZm9yIGVuIG55IGxpbmplIGV0dGVyIG1hcmvDuHJlbiBvZyBnw6UgdGlsCisgICAgICAgaW5uc2V0dGluZ3Ntb2R1cyAqKgorCisgIDEuIEZseXR0IG1hcmvDuHJlbiB0aWwgbGluamVuIG5lZGVuZm9yIG1lcmtldCAtLS0+LgorCisgIDIuIFNrcml2ICBvICAobGl0ZW4gbykgZm9yIMOlIMOlcG5lIG9wcCBlbiBsaW5qZSBORURFTkZPUiBtYXJrw7hyZW4gb2cgZ8OlIGlubiBpCisgICAgIGlubnNldHRpbmdzbW9kdXMuCisKKyAgMy4gU2tyaXYgbGl0dCB0ZWtzdCBvZyB0cnlrayA8RVNDPiBmb3Igw6UgZ8OlIHV0IGF2IGlubnNldHRpbmdzbW9kdXNlbi4KKworLS0tPiBFdHRlciBhdCAgbyAgZXIgc2tyZXZldCBibGlyIG1hcmvDuHJlbiBwbGFzc2VydCBww6UgZGVuIHRvbW1lIGxpbmplbi4KKworICA0LiBGb3Igw6Ugw6VwbmUgZW4gbnkgbGluamUgT1ZFUiBtYXJrw7hyZW4sIHRyeWtrIHJldHQgb2cgc2xldHQgZW4gc3RvcglPCisgICAgIGlzdGVkZW5mb3IgZW4gbGl0ZW4gIG8gLiBQcsO4diBkZXR0ZSBww6UgbGluamVuIG5lZGVuZm9yLgorCistLS0+IExhZyBueSBsaW5qZSBvdmVyIGRlbm5lIHZlZCDDpSB0cnlra2UgTyBtZW5zIG1hcmvDuHJlbiBlciBww6UgZGVubmUgbGluamVuLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgIExla3Nqb24gNi4yOiDCq0xFR0cgVElMwrstS09NTUFORE9FTgorCisKKwkgICAgKiogU2tyaXYgIGEgIGZvciDDpSBsZWdnZSB0aWwgdGVrc3QgRVRURVIgbWFya8O4cmVuLiAqKgorCisgIDEuIEZseXR0IG1hcmvDuHJlbiB0aWwgc3RhcnRlbiBhdiBsaW5qZW4gbWVya2V0IC0tLT4gbmVkZW5mb3IuCisKKyAgMi4gVHJ5a2sgIGUgIHRpbCBtYXJrw7hyZW4gZXIgcMOlIHNsdXR0ZW4gYXYgwqtsacK7LgorCisgIDMuIFRyeWtrICBhICAobGl0ZW4gYSkgZm9yIMOlIGxlZ2dlIHRpbCB0ZWtzdCBFVFRFUiBtYXJrw7hyZW4uCisKKyAgNC4gRnVsbGbDuHIgb3JkZXQgc8Olbm4gc29tIHDDpSBsaW5qZW4gbmVkZW5mb3IuIFRyeWtrIDxFU0M+IGZvciDDpSBnw6UgdXQgYXYKKyAgICAgaW5uc2V0dGluZ3Ntb2R1c2VuLgorCisgIDUuIEJydWsgIGUgIGZvciDDpSBnw6UgdGlsIGRldCBuZXN0ZSB1ZnVsbHN0ZW5kaWdlIG9yZGV0IG9nIHJlcGV0ZXIgc3RlZyAzIG9nCisgICAgIDQuCisKKy0tLT4gRGVubmUgbGkgbGFyIGRlZyDDuHZlIHDDpSDDpSBsZWcgdGlsIHRlayBww6UgZW4gbGluamUuCistLS0+IERlbm5lIGxpbmplbiBsYXIgZGVnIMO4dmUgcMOlIMOlIGxlZ2dlIHRpbCB0ZWtzdCBww6UgZW4gbGluamUuCisKK01lcms6IGEsIGkgb2cgQSBnw6VyIGFsbGUgdGlsIGRlbiBzYW1tZSBpbm5zZXR0aW5nc21vZHVzZW4sIGRlbiBlbmVzdGUKKyAgICAgIGZvcnNramVsbGVuIGVyIGh2b3IgdGVnbmVuZSBibGlyIHNhdHQgaW5uLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgIExla3Nqb24gNi4zOiBFTiBBTk5FTiBNw4VURSDDhSBFUlNUQVRURSBQw4UKKworCisJICAgKiogU2tyaXYgZW4gc3RvciAgUglmb3Igw6UgZXJzdGF0dGUgbWVyIGVubiBldHQgdGVnbi4gKioKKworICAxLiBGbHl0dCBtYXJrw7hyZW4gdGlsIGRlbiBmw7hyc3RlIGxpbmplbiBuZWRlbmZvciBtZXJrZXQgLS0tPi4gRmx5dHQgbWFya8O4cmVuCisgICAgIHRpbCBiZWd5bm5lbHNlbiBhdiBkZW4gZsO4cnN0ZSDCq3h4eMK7LWVuLgorCisgIDIuIFRyeWtrICBSICBvZyBza3JpdiBpbm4gdGFsbGV0IHNvbSBzdMOlciBuZWRlbmZvciBww6UgZGVuIGFuZHJlIGxpbmplbiBzw6UKKyAgICAgZGV0IGVyc3RhdHRlciB4eHguCisKKyAgMy4gVHJ5a2sgPEVTQz4gZm9yIMOlIGfDpSB1dCBhdiBlcnN0YXRuaW5nc21vZHVzZW4uIExlZ2cgbWVya2UgdGlsIGF0IHJlc3RlbgorICAgICBhdiBsaW5qZW4gZm9yYmxpciB1Zm9yYW5kcmV0LgorCisgIDQuIFJlcGV0ZXIgc3RlZ2VuZSBmb3Igw6UgZXJzdGF0dGUgZGVuIGdqZW52w6ZyZW5kZSB4eHguCisKKy0tLT4gVmVkIMOlIGxlZ2dlIDEyMyB0aWwgeHh4IGbDpXIgdmkgeHh4LgorLS0tPiBWZWQgw6UgbGVnZ2UgMTIzIHRpbCA0NTYgZsOlciB2aSA1NzkuCisKK01FUks6IEVyc3RhdG5pbmdzbW9kdXMgZXIgbGlrIGluc2V0dGluZ3Ntb2R1cywgbWVuIGh2ZXJ0IHRlZ24gc29tIHNrcml2ZXMKKyAgICAgIGVyc3RhdHRlciBldCBla3Npc3RlcmVuZGUgdGVnbi4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICBMZWtzam9uIDYuNDogS09QSUVSRSBPRyBMSU1FIElOTiBURUtTVAorCisKKyAgICAqKiBCcnVrIHktb3BlcmF0b3JlbiBmb3Igw6Uga29waWVyZSB0ZWtzdCBvZyAgcCAgZm9yIMOlIGxpbWUgZGVuIGlubiAqKgorCisgIDEuIEfDpSB0aWwgbGluamVuIG1lcmtldCAtLS0+IG5lZGVuZm9yIG9nIHBsYXNzZXIgbWFya8O4cmVuIGV0dGVyIMKrYSnCuy4KKworICAyLiBHw6UgaW5uIGkgdmlzdWVsbCBtb2R1cyBtZWQgIHYgIG9nIGZseXR0IG1hcmvDuHJlbiB0aWwgbGlrZSBmw7hyIMKrZsO4cnN0ZcK7LgorCisgIDMuIFRyeWtrICB5ICBmb3Igw6Uga29waWVyZSAoZW5nZWxzazogwqt5YW5rwrspIGRlbiB1dGhldmVkZSB0ZWtzdGVuLgorCisgIDQuIEZseXR0IG1hcmvDuHJlbiB0aWwgc2x1dHRlbiBhdiBkZW4gbmVzdGUgbGluamVuOiAgaiQKKworICA1LiBUcnlrayAgcCAgZm9yIMOlIGxpbWUgaW5uIHRla3N0ZW4uIFRyeWtrIGRlcmV0dGVyOglhIGFuZHJlIDxFU0M+IC4KKworICA2LiBCcnVrIHZpc3VlbGwgbW9kdXMgZm9yIMOlIHZlbGdlIMKrIHZhbGdldC7Cuywga29waWVyIGRldCBtZWQJeSAsIGfDpSB0aWwKKyAgICAgc2x1dHRlbiBhdiBkZW4gbmVzdGUgbGluamVuIG1lZCAgaiQgIG9nIGxlZ2cgaW5uIHRla3N0ZW4gZGVyIG1lZCAgcCAuCisKKy0tLT4gYSkgRGV0dGUgZXIgZGV0IGbDuHJzdGUgdmFsZ2V0LgorICAgICBiKQorCitNZXJrOiBEdSBrYW4gb2dzw6UgYnJ1a2UgIHkgIHNvbSBlbiBvcGVyYXRvcjsgIHl3ICBrb3BpZXJlciBldHQgb3JkLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgICAgTGVrc2pvbiA2LjU6IFNFVFQgVkFMRworCisKKyAgKiogU2V0dCBldCB2YWxnIHPDpSBzw7hrIGVsbGVyIGVyc3RhdG5pbmcgaWdub3JlcmVyIHN0b3JlL3Ntw6UgYm9rc3RhdmVyLiAqKgorCisgIDEuIExldCBldHRlciDCq2lnbm9yZcK7IHZlZCDDpSBza3JpdmU6ICAvaWdub3JlIDxFTlRFUj4KKyAgICAgUmVwZXRlciBmbGVyZSBnYW5nZXIgdmVkIMOlIHRyeWtrZQluIC4KKworICAyLiBTZXR0IMKraWPCuy12YWxnZXQgKElnbm9yZSBDYXNlKSB2ZWQgw6Ugc2tyaXZlOiAgOnNldCBpYworCisgIDMuIFPDuGsgZXR0ZXIgwqtpZ25vcmXCuyBpZ2plbiB2ZWQgw6UgdHJ5a2tlICBuIC4KKyAgICAgTGVnZyBtZXJrZSB0aWwgYXQgYsOlZGUgwqtJZ25vcmXCuyBvZyDCq0lHTk9SRcK7IGJsaXIgZnVubmV0LgorCisgIDQuIFNldHQgwqtobHNlYXJjaMK7LSBvZyDCq2luY3NlYXJjaMK7LXZhbGdlbmU6ICA6c2V0IGhscyBpcworCisgIDUuIFNrcml2IHPDuGtla29tbWFuZG9lbiBpZ2plbiBvZyBzZSBodmEgc29tIHNramVyOiAgL2lnbm9yZSA8RU5URVI+CisKKyAgNi4gRm9yIMOlIHNsw6UgYXYgaWdub3JlcmluZyBhdiBzdG9yZS9zbcOlIGJva3N0YXZlciwgc2tyaXY6ICA6c2V0IG5vaWMKKworTWVyazogRm9yIMOlIGZqZXJuZSB1dGhldmluZ2VuIGF2IHRyZWZmLCBza3JpdjoJOm5vaGxzZWFyY2gKK01lcms6IEh2aXMgZHUgdmlsIGlnbm9yZXJlIHN0b3JlL3Ntw6UgYm9rc3RhdmVyIGZvciBrdW4gZW4gc8O4a2Vrb21tYW5kbywgYnJ1aworICAgICAgXGMgIGkgdXR0cnlra2V0OgkvaWdub3JlXGMgPEVOVEVSPgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIE9QUFNVTU1FUklORyBBViBMRUtTSk9OIDYKKworICAxLiBUcnlrayAgbyAgZm9yIMOlIGxlZ2dlIHRpbCBlbiBsaW5qZSBORURFTkZPUiBtYXJrw7hyZW4gb2cgZ8OlIGlubiBpCisgICAgIGlubnNldHRpbmdzbW9kdXMuCisgICAgIFRyeWtrICBPICBmb3Igw6Ugw6VwbmUgZW4gbGluamUgT1ZFUiBtYXJrw7hyZW4uCisKKyAgMi4gU2tyaXYgIGEgIGZvciDDpSBzZXR0ZSBpbm4gdGVrc3QgRVRURVIgbWFya8O4cmVuLgorICAgICBTa3JpdiAgQSAgZm9yIMOlIHNldHRlIGlubiB0ZWtzdCBldHRlciBzbHV0dGVuIGF2IGxpbmplbi4KKworICAzLiBLb21tYW5kb2VuICBlICBnw6VyIHRpbCBzbHV0dGVuIGF2IGV0IG9yZC4KKworICA0LiBPcGVyYXRvcmVuICB5ICAowqt5YW5rwrspIGtvcGllcmVyIHRla3N0LCAgcCAgKMKrcGFzdGXCuykgbGltZXIgZGVuIGlubi4KKworICA1LiBWZWQgw6UgdHJ5a2tlICBSICBnw6VyIGR1IGlubiBpIGVyc3RhdG5pbmdzbW9kdXMgaGVsdCB0aWwgIDxFU0M+ICB0cnlra2VzLgorCisgIDYuIFNrcml2IMKrOnNldCB4eHjCuyBmb3Igw6Ugc2V0dGUgdmFsZ2V0IMKreHh4wrsuIE5vZW4gdmFsZyBlcjoKKwnCq2ljwrsgwqtpZ25vcmVjYXNlwrsJaWdub3JlciBzdG9yZS9zbcOlIGJva3N0YXZlciB1bmRlciBzw7hrCisJwqtpc8K7IMKraW5jc2VhcmNowrsJdmlzIGRlbHZpc2UgdHJlZmYgZm9yIGVuIHPDuGtldGVrc3QKKwnCq2hsc8K7IMKraGxzZWFyY2jCuwl1dGhldiBhbGxlIHPDuGtldHJlZmYKKworICA3LiBMZWdnIHRpbCDCq25vwrsgZm9yYW4gdmFsZ2V0IGZvciDDpSBzbMOlIGRldCBhdjogIDpzZXQgbm9pYworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgICBMZWtzam9uIDcuMTogRsOFIEhKRUxQCisKKworCQkgICAqKiBCcnVrIGRldCBpbm5lYnlnZGUgaGplbHBlc3lzdGVtZXQuICoqCisKKyAgVmltIGhhciBldCBvbWZhdHRlbmRlIGlubmVieWdnZXQgaGplbHBlc3lzdGVtLiBGb3Igw6Ugc3RhcnRlIGRldCwgcHLDuHYgZW4gYXYKKyAgZGlzc2UgbcOldGVuZToKKyAgICAtIFRyeWtrIEhqZWxwLXRhc3RlbiAoaHZpcyBkdSBoYXIgZW4pCisgICAgLSBUcnlrayBGMS10YXN0ZW4gKGh2aXMgZHUgaGFyIGVuKQorICAgIC0gU2tyaXYgIDpoZWxwIDxFTlRFUj4KKworICBMZXMgdGVrc3RlbiBpIGhqZWxwZXZpbmR1ZXQgZm9yIMOlIGZpbm5lIHV0IGh2b3JkYW4gaGplbHBlbiB2aXJrZXIuCisgIFNrcml2ICBDVFJMLVcgQ1RSTC1XCWZvciDDpSBob3BwZSBmcmEgZXQgdmluZHUgdGlsIGV0IGFubmV0CisgIFNrcml2ICA6cSA8RU5URVI+CWZvciDDpSBsdWtrZSBoamVscGV2aW5kdWV0LgorCisgIER1IGthbiBmw6UgaGplbHAgZm9yIG9tdHJlbnQgYWxsZSB0ZW1hZXIgb20gVmltIHZlZCDDpSBza3JpdmUgZXQgcGFyYW1ldGVyIHRpbAorICDCqzpoZWxwwrsta29tbWFuZG9lbi4gUHLDuHYgZGlzc2UgKGlra2UgZ2xlbSDDpSB0cnlra2UgPEVOVEVSPik6CisKKyAgICA6aGVscCB3CisgICAgOmhlbHAgY19DVFJMLUQKKyAgICA6aGVscCBpbnNlcnQtaW5kZXgKKyAgICA6aGVscCB1c2VyLW1hbnVhbAorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgTGVrc2pvbiA3LjI6IExBRyBFVCBPUFBTVEFSVFNTS1JJUFQKKworCisJCQkqKiBTbMOlIHDDpSBmdW5rc2pvbmVyIGkgVmltICoqCisKKyAgVmltIGhhciBtYW5nZSBmbGVyZSBmdW5rc2pvbmVyIGVubiBWaSwgbWVuIGZsZXN0ZXBhcnRlbiBhdiBkZW0gZXIgc2zDpXR0IGF2CisgIHNvbSBzdGFuZGFyZC4gRm9yIMOlIGJlZ3lubmUgw6UgYnJ1a2UgZmxlcmUgZnVua3Nqb25lciBtw6UgZHUgbGFnZSBlbgorICDCq3ZpbXJjwrstZmlsLgorCisgIDEuIFN0YXJ0IHJlZGlnZXJpbmdlbiBhdiDCq3ZpbXJjwrstZmlsZW4uIERldHRlIGF2aGVuZ2VyIGF2IHN5c3RlbWV0IGRpdHQ6CisJOmUgfi8udmltcmMJICBmb3IgVW5peAorCTplICRWSU0vX3ZpbXJjCSAgZm9yIE1TIFdpbmRvd3MKKworICAyLiBMZXMgaW5uIGVrc2VtcGVsZmlsZW4gZm9yIMKrdmltcmPCuzoKKwk6ciAkVklNUlVOVElNRS92aW1yY19leGFtcGxlLnZpbQorCisgIDMuIExhZ3JlIGZpbGVuIG1lZDoKKwk6dworCisgIE5lc3RlIGdhbmcgZHUgc3RhcnRlciBWaW0gdmlsIGRlbiBicnVrZSBzeW50YWtzLXV0aGV2aW5nLiBEdSBrYW4gbGVnZ2UgdGlsCisgIGFsbGUgZGluZSBmb3JldHJ1a25lIG9wcHNldHQgaSBkZW5uZSDCq3ZpbXJjwrstZmlsZW4uCisgIEZvciBtZXIgaW5mb3JtYXNqb24sIHNrcml2ICA6aGVscCB2aW1yYy1pbnRybworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgICBMZWtzam9uIDcuMzogRlVMTEbDmFJJTkcKKworCisJICAgICAgKiogS29tbWFuZG9saW5qZWZ1bGxmw7hyaW5nIG1lZCBDVFJMLUQgb2cgPFRBQj4gKioKKworICAxLiBWw6ZyIHNpa2tlciBww6UgYXQgVmltIGlra2UgZXIgaSBWaS1rb21wYXRpYmVsIG1vZHVzOiAgOnNldCBub2NwCisKKyAgMi4gU2UgaHZpbGtlIGZpbGVyIHNvbSBlciBpIGthdGFsb2dlbjogIDohbHMJZWxsZXIgIDohZGlyCisKKyAgMy4gU2tyaXYgc3RhcnRlbiBww6UgZW4ga29tbWFuZG86ICA6ZQorCisgIDQuIFRyeWtrICBDVFJMLUQgIG9nIFZpbSB2aWwgdmlzZSBlbiBsaXN0ZSBvdmVyIGtvbW1hbmRvZXIgc29tIHN0YXJ0ZXIgbWVkCisgICAgIMKrZcK7LgorCisgIDUuIFRyeWtrICA8VEFCPiAgb2cgVmltIHZpbCBmdWxsZsO4cmUga29tbWFuZG9uYXZuZXQgdGlsIMKrOmVkaXTCuy4KKworICA2LiBMZWdnIHRpbCBldCBtZWxsb21yb20gb2cgc3RhcnRlbiBww6UgZXQgZWtzaXN0ZXJlbmRlIGZpbG5hdm46ICA6ZWRpdCBGSUwKKworICA3LiBUcnlrayA8VEFCPi4gVmltIHZpbCBmdWxsZsO4cmUgbmF2bmV0IChodmlzIGRldCBlciB1bmlrdCkuCisKK01FUks6IEZ1bGxmw7hyaW5nIGZ1bmdlcmVyIGZvciBtYW5nZSBrb21tYW5kb2VyLiBQcsO4diB2ZWQgw6UgdHJ5a2tlIENUUkwtRCBvZworICAgICAgPFRBQj4uIERldCBlciBzcGVzaWVsdCBueXR0aWcgZm9yIGJydWsgc2FtbWVuIG1lZCAgOmhlbHAgLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIE9QUFNVTU1FUklORyBBViBMRUtTSk9OIDcKKworCisgIDEuIFNrcml2ICA6aGVscCAgZWxsZXIgdHJ5a2sgPEYxPiBlbGxlciA8SGVscD4gZm9yIMOlIMOlcG5lIGV0IGhqZWxwZXZpbmR1LgorCisgIDIuIFNrcml2ICA6aGVscCBrb21tYW5kbyAgZm9yIMOlIGbDpSBoamVscCBvbSAga29tbWFuZG8gLgorCisgIDMuIFRyeWtrICBDVFJMLVcgQ1RSTC1XICBmb3Igw6UgaG9wcGUgdGlsIGV0IGFubmV0IHZpbmR1LgorCisgIDQuIFRyeWtrICA6cQlmb3Igw6UgbHVra2UgaGplbHBldmluZHVldC4KKworICA1LiBPcHByZXR0IGV0IHZpbXJjLW9wcHN0YXJ0c3NrcmlwdCBmb3Igw6UgbGFncmUgZmF2b3JpdHR2YWxnZW5lIGRpbmUuCisKKyAgNi4gTsOlciBkdSBza3JpdmVyIGVuIMKrOsK7LWtvbW1hbmRvLCB0cnlrayBDVFJMLUQgZm9yIMOlIHNlIG11bGlnZQorICAgICBmdWxsZsO4cmluZ2VyLiBUcnlrayA8VEFCPiBmb3Igw6UgYnJ1a2UgZW4gZnVsbGbDuHJpbmcuCisKKworCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCisgIEhlciBzbHV0dGVyIGlubmbDuHJpbmdlbiBpIFZpbS4gRGVuIHZhciBtZW50IHNvbSBlbiByYXNrIG92ZXJzaWt0IG92ZXIKKyAgZWRpdG9yZW4sIGFra3VyYXQgbm9rIHRpbCDDpSBsYSBkZWcgc2V0dGUgaSBnYW5nIG1lZCBlbmtlbCBicnVrLiBEZW4gZXIgcMOlCisgIGxhbmd0IG7DpnIga29tcGxldHQsIGRhIFZpbSBoYXIgbWFuZ2UgZmxlcmUga29tbWFuZG9lci4gTGVzIGJydWtzYW52aXNuaW5nZW4KKyAgdmVkIMOlIHNrcml2ZQk6aGVscCB1c2VyLW1hbnVhbCAgLgorCisgIEZvciB2aWRlcmUgbGVzaW5nIG9nIHN0dWRpZXIsIGthbiBkZW5uZSBib2tlbiBhbmJlZmFsZXM6CisgICAgICDCq1ZpbSAtIFZpIEltcHJvdmVkwrsgYXYgU3RldmUgT3VhbGxpbmUKKyAgICAgIFV0Z2l2ZXI6IE5ldyBSaWRlcnMKKyAgRGVuIGbDuHJzdGUgYm9rZW4gc29tIGVyIGZ1bGx0IG9nIGhlbHQgZGVkaXNlcnQgdGlsIFZpbS4gU3Blc2llbHQgbnl0dGlnIGZvcgorICBueWJlZ3lubmVyZS4gSW5uZWhvbGRlciBtYW5nZSBla3NlbXBsZXIgb2cgaWxsdXN0cmFzam9uZXIuCisgIFNlIGh0dHA6Ly9pY2NmLWhvbGxhbmQub3JnL2NsaWNrNS5odG1sCisKKyAgRGVubmUgYm9rZW4gZXIgZWxkcmUgb2cgaGFuZGxlciBtZXIgb20gVmkgZW5uIFZpbSwgbWVuIGFuYmVmYWxlcyBvZ3PDpToKKyAgICAgIMKrTGVhcm5pbmcgdGhlIFZpIEVkaXRvcsK7IGF2IExpbmRhIExhbWIKKyAgICAgIFV0Z2l2ZXI6IE8nUmVpbGx5ICYgQXNzb2NpYXRlcyBJbmMuCisgIERldCBlciBlbiBnb2QgYm9rIGZvciDDpSBmw6Ugdml0ZSBvbXRyZW50IGh2YSBzb20gaGVsc3Qgb20gVmkuCisgIERlbiBzamV0dGUgdXRnYXZlbiBpbm5laG9sZGVyIG9nc8OlIGluZm9ybWFzam9uIG9tIFZpbS4KKworICBEZW5uZSBpbm5mw7hyaW5nZW4gZXIgc2tyZXZldCBhdiBNaWNoYWVsIEMuIFBpZXJjZSBvZyBSb2JlcnQgSy4gV2FyZSwKKyAgQ29sb3JhZG8gU2Nob29sIG9mIE1pbmVzIG1lZCBpZMOpZXIgYXYgQ2hhcmxlcyBTbWl0aCwgQ29sb3JhZG8gU3RhdGUKKyAgVW5pdmVyc2l0eS4gRS1tYWlsOiBid2FyZUBtaW5lcy5jb2xvcmFkby5lZHUgLgorCisgIE1vZGlmaXNlcnQgZm9yIFZpbSBhdiBCcmFtIE1vb2xlbmFhci4KKyAgT3ZlcnNhdHQgYXYgw5h5dmluZCBBLiBIb2xtLiBFLW1haWw6IHZpbXR1dG9yIF9BVF8gc3VuYmFzZS5vcmcKKyAgSWQ6IHR1dG9yLm5vIDQwNiAyMDA3LTAzLTE4IDIyOjQ4OjM2WiBzdW5ueQorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KK3ZpbTogc2V0IHRzPTggOgpkaWZmIC0tZ2l0IGEvcnVudGltZS90dXRvci90dXRvci5wbCBiL3J1bnRpbWUvdHV0b3IvdHV0b3IucGwKaW5kZXggNGFlNTM1NS4uOTZhYTQ1YyAxMDA2NDQKLS0tIGEvcnVudGltZS90dXRvci90dXRvci5wbAorKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLnBsCkBAIC0yLDkgKzIsOSBAQAogPSAgICBXIGkgdCBhIGogICB3ICAgdCB1IHQgbyByIGkgYSBsIHUgICBWIEkgTSAtIGEgICAgICAtICAgIFdlcnNqYSAgMS43LiAgICAgPQogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogCi0gICAgIFZpbSB0byBwb3Tqv255IGVkeXRvciwga3TzcnkgcG9zaWFkYSB3aWVsZSBwb2xlY2XxLCB6Ynl0IGR1v28gYnkKKyAgICAgVmltIHRvIHBvdOq/bnkgZWR5dG9yLCBrdPNyeSBwb3NpYWRhIHdpZWxlIHBvbGVjZfEsIHpieXQgZHW/bywgYnkKICAgICAgd3lqYbZuaeYgamUgd3N6eXN0a2llIHcgdHltIHR1dG9yaWFsdS4gVGVuIHByemV3b2RuaWsgbWEgbmF1Y3p55gotICAgICBDaeogcG9zs3VnaXdh5iBzaeogd3lzdGFyY3pharFjbyB3aWVsb21hIGtvbWVuZGFtaSBiebYgbfNnsyCzYXR3bworICAgICBDaeogcG9zs3VnaXdh5iBzaeogd3lzdGFyY3pharFjbyB3aWVsb21hIGtvbWVuZGFtaSwgYnm2IG3zZ7Mgs2F0d28KICAgICAgdb95d2HmIFZpbWEgamFrbyBlZHl0b3JhIG9n82xuZWdvIHByemV6bmFjemVuaWEuCiAKICAgICAgQ3phcyBwb3RyemVibnkgbmEgdWtv8WN6ZW5pZSB0dXRvcmlhbGEgdG8gMjUgZG8gMzAgbWludXQgaSB6YWxlv3kKQEAgLTEzLDE0ICsxMywxNCBAQAogCSBVV0FHQToKIAkgUG9sZWNlbmlhIHd5a29ueXdhbmUgdyBjemFzaWUgbGVrY2ppIHptb2R5ZmlrdWqxIHRla3N0LiBacvNiCiAJIHdjemW2bmllaiBrb3Bp6iB0ZWdvIHBsaWt1IGRvIOZ3aWN6ZfEgKGpltmxpIHphY3qxs2W2IGtvbWVuZLEKLQkgInZpbXR1dG9yIiB0byBqdb8gcHJhY3VqZXN6IG5hIGtvcGlpKS4KKwkgInZpbXR1dG9yIiwgdG8ganW/IHByYWN1amVzeiBuYSBrb3BpaSkuCiAKLQkgUGFtaep0YWogv2UgcHJ6ZXdvZG5payB0ZW4gem9zdGGzIHphcHJvamVrdG93YW55IGRvIG5hdWtpIHBvcHJ6ZXoKLQkg5ndpY3plbmlhLiBPem5hY3phIHRvLCC/ZSBtdXNpc3ogd3lrb255d2HmIHBvbGVjZW5pYSBieSBuYXVjennmIHNp6iBpY2gKLQkgcHJhd2lks293by4gSmW2bGkgYupkemllc3ogamVkeW5pZSBjenl0YbMgdGVrc3Qgc3p5YmtvIHphcG9tbmlzeiB3aWVsZQorCSBQYW1p6nRhaiwgv2UgcHJ6ZXdvZG5payB0ZW4gem9zdGGzIHphcHJvamVrdG93YW55IGRvIG5hdWtpIHBvcHJ6ZXoKKwkg5ndpY3plbmlhLiBPem5hY3phIHRvLCC/ZSBtdXNpc3ogd3lrb255d2HmIHBvbGVjZW5pYSwgYnkgbmF1Y3p55iBzaeogaWNoCisJIHByYXdpZLNvd28uIEpltmxpIGLqZHppZXN6IGplZHluaWUgY3p5dGGzIHRla3N0LCBzenlia28gemFwb21uaXN6IHdpZWxlCiAJIHBvbGVjZfEhCiAKLSAgICAgVGVyYXogdXBld25paiBzaeosIL9lIG5pZSBtYXN6IHdjabZuaep0ZWdvIENhcHNMb2NrYSBpIHdjaXNrYWogIGoKKyAgICAgVGVyYXogdXBld25paiBzaeosIL9lIG5pZSBtYXN6IHdjabZuaep0ZWdvIENhcHMgTG9ja2EgaSB3Y2lza2FqICBqCiAgICAgIHRhayBks3VnbyBkb3Dza2kgTGVrY2phIDEuMS4gbmllIHd5cGWzbmkgY2Gza293aWNpZSBla3JhbnUuCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpAQCAtNDAsMjggKzQwLDI4IEBACiAKICAgMy4gVb95d2FqsWMgc3RyemGza2kgdyBk87MgcHJ6ZWpkvCBkbyBuYXN06nBuZWogbGVrY2ppLgogCi1Vd2FnYTogSmW2bGkgbmllIGplc3RltiBwZXdpZW4gY3plZ2+2IGNvIHdwaXNhs2W2LCB3Y2m2bmlqIDxFU0M+IGJ5IHdy82Np5iBkbworVXdhZ2E6IEpltmxpIG5pZSBqZXN0ZbYgcGV3aWVuIGN6ZWdvtiBjbyB3cGlzYbNltiwgd2Nptm5paiA8RVNDPiwgYnkgd3LzY2nmIGRvCiAgICAgICAgdHJ5YnUgTm9ybWFsLiBXdGVkeSBwb3d083J6IHBvbGVjZW5pZS4KIAogVXdhZ2E6IEtsYXdpc3plIGt1cnNvcmEgdGFrv2UgcG93aW5ueSBkemlhs2HmLCBhbGUgdb95d2FqsWMgIGhqa2wgIGLqZHppZXN6Ci0gICAgICAgdyBzdGFuaWUgcG9ydXN6YeYgc2nqIG8gd2llbGUgc3p5YmNpZWogamFrIHNp6iB0eWxrbyBwcnp5end5Y3phaXN6LgorICAgICAgIHcgc3RhbmllIHBvcnVzemHmIHNp6iBvIHdpZWxlIHN6eWJjaWVqLCBqYWsgc2nqIHR5bGtvIHByenl6d3ljemFpc3ouCiAgICAgICAgTmFwcmF3ZOohCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkgICAgTGVrY2phIDEuMi46IFdZQ0hPRFpFTklFIFogVklNLWEKIAotICEhIFVXQUdBOiBQcnplZCB3eWtvbmFuaWVtIGpha2llZ29rb2x3aWVrIHBvbGVjZW5pYSBwcnplY3p5dGFqIGNhs7EgbGVrY2rqLiEhCisgISEgVVdBR0E6IFByemVkIHd5a29uYW5pZW0gamFraWVnb2tvbHdpZWsgcG9sZWNlbmlhIHByemVjenl0YWogY2GzsSBsZWtjauogISEKIAogICAxLiBXY2m2bmlqIDxFU0M+IChhYnkgdXBld25p5iBzaeosIL9lIGplc3RltiB3IHRyeWJpZSBOb3JtYWwpLgogICAyLiBXcGlzejoJCQk6cSE8RU5URVI+LgotICAgICBUbyBzcG93b2R1amUgd3lqtmNpZSB6IGVkeXRvcmEgUE9SWlVDQUqhQyB3c3plbGtpZSB6bWlhbnkgamFraWUKLSAgICAgemSxv3mzZbYgenJvYmnmLiBKZbZsaSBjaGNlc3ogemFwYW1p6nRh5iB6bWlhbnkgaSB3eWq25gorICAgICBUbyBzcG93b2R1amUgd3lqtmNpZSB6IGVkeXRvcmEgUE9SWlVDQUqhQyB3c3plbGtpZSB6bWlhbnksIGpha2llCisgICAgIHpksb95s2W2IHpyb2Jp5i4gSmW2bGkgY2hjZXN6IHphcGFtaep0YeYgem1pYW55IGkgd3lqtuYsCiAgICAgIHdwaXN6OgkJCTp3cTxFTlRFUj4KIAogICAzLiBLaWVkeSB3aWR6aXN6IHpuYWsgemFjaOp0eSBwb3ezb2tpIHdwaXN6IGtvbWVuZOosIL9lYnkgd3LzY2nmCiAgICAgIGRvIHR1dG9yaWFsYS4gQ3p5bGk6CXZpbXR1dG9yPEVOVEVSPgogCi0gIDQuIEpltmxpIGNoY2VzeiB6YXBhbWnqdGHmIHBvbGVjZW5pYSwgd3lrb25haiBrcm9raSAxLiBkbyAzLiBhYnkKKyAgNC4gSmW2bGkgY2hjZXN6IHphcGFtaep0YeYgcG9sZWNlbmlhLCB3eWtvbmFqIGtyb2tpIDEuIGRvIDMuLCBhYnkKICAgICAgd3lqtuYgaSB3cvNjaeYgZG8gZWR5dG9yYS4KIAogVVdBR0E6IDpxITxFTlRFUj4gcG9yenVjYSB3c3plbGtpZSB6bWlhbnkgamFraWUgenJvYmmzZbYuIFcgbmFzdOpwbnljaApAQCAtODUsNyArODUsNyBAQAogCiAtLS0+IEtrcm93YSBwcnJ6ZXNrb2N6ebNhIHBycnpleiBrc2lp6r95Y2MuCiAKLSAgNS4gVGVyYXoga2llZHkgemRhbmllIGplc3QgcG9wcmF3aW9uZSBwcnplamS8IGRvIExla2NqaSAxLjQuCisgIDUuIFRlcmF6LCBraWVkeSB6ZGFuaWUgamVzdCBwb3ByYXdpb25lLCBwcnplamS8IGRvIExla2NqaSAxLjQuCiAKIFVXQUdBOiBVY3ogc2nqIHByemV6IOZ3aWN6ZW5pZSwgbmllIHdrdXdhbmllLgogCkBAIC0xMDEsMTggKzEwMSwxOCBAQAogCiAgIDEuIFByemVuaWW2IGt1cnNvciBkbyBwaWVyd3N6ZWogbGluaWkgcG9uab9laiBvem5hY3pvbmVqIC0tLT4uCiAKLSAgMi4gQWJ5IHBvcHJhd2nmIHBpZXJ3c3p5IHdpZXJzeiwgdXN0YXcga3Vyc29yIG5hIHBpZXJ3c3p5bSB6bmFrdSBQTyB0eW0KKyAgMi4gQWJ5IHBvcHJhd2nmIHBpZXJ3c3p5IHdpZXJzeiwgdXN0YXcga3Vyc29yIG5hIHBpZXJ3c3p5bSB6bmFrdSBQTyB0eW0sCiAgICAgIGdkemllIHRla3N0IG1hIGJ55iB3c3Rhd2lvbnkuCiAKICAgMy4gV2Nptm5paiAgaSAgYSBuYXN06nBuaWUgd3Bpc3oga29uaWVjem5lIHBvcHJhd2tpLgogCi0gIDQuIFBvIHBvcHJhd2llbml1IGKz6mR1IHdjabZuaWogPEVTQz4gYnkgd3LzY2nmIGRvIHRyeWJ1IE5vcm1hbC4KLSAgICAgUG93dGFyemFqIGtyb2tpIDIuIGRvIDQuIGFieSBwb3ByYXdp5iBjYbNlIHpkYW5pZS4KKyAgNC4gUG8gcG9wcmF3aWVuaXUgYrPqZHUgd2Nptm5paiA8RVNDPiwgYnkgd3LzY2nmIGRvIHRyeWJ1IE5vcm1hbC4KKyAgICAgUG93dGFyemFqIGtyb2tpIDIuIGRvIDQuLCBhYnkgcG9wcmF3aeYgY2GzZSB6ZGFuaWUuCiAKIC0tLT4gVyB0ZWogYnJramUgdHJvY2jqIC4KIC0tLT4gVyB0ZWogbGluaWkgYnJha3VqZSB0cm9jaOogdGVrc3R1LgogCi0gIDUuIEtpZWR5IGN6dWplc3ogc2nqIHN3b2JvZG5pZSB3c3Rhd2lharFjIHRla3N0IHByemVqZLwgZG8KKyAgNS4gS2llZHkgY3p1amVzeiBzaeogc3dvYm9kbmllIHdzdGF3aWFqsWMgdGVrc3QsIHByemVqZLwgZG8KICAgICAgcG9kc3Vtb3dhbmlhIHBvbmm/ZWouCiAKIApAQCAtMTI5LDcgKzEyOSw3IEBACiAKICAgMy4gS2llZHkgdGVrc3Qgem9zdGGzIGRvZGFueSwgd2Nptm5paiA8RVNDPiBpIHdy8+YgZG8gdHJ5YnUgTm9ybWFsbmVnby4KIAotICA0LiBQcnplbmlltiBrdXJzb3IgZG8gZHJ1Z2llaiBsaW5paSBvem5hY3pvbmVqIC0tLT4gaSBwb3d083J6IGtyb2tpIDIgaSAzCisgIDQuIFByemVuaWW2IGt1cnNvciBkbyBkcnVnaWVqIGxpbmlpIG96bmFjem9uZWogLS0tPiBpIHBvd3Tzcnoga3Jva2kgMi4gaSAzLiwKICAgICAgYWJ5IHBvcHJhd2nmIHpkYW5pZS4KIAogLS0tPiBCcmFrdWplIHR1IHRybwpAQCAtMTM3LDI3ICsxMzcsMjcgQEAKIC0tLT4gVHUgdGW/IHRyb2No6iBicmEKICAgICAgVHUgdGW/IHRyb2No6iBicmFrdWplLgogCi0gIDUuIEtpZWR5IGp1vyB1dHJ3YWxps2W2IOZ3aWN6ZW5pZSBwcnplamS8IGRvIGxla2NqaSAxLjYuCisgIDUuIEtpZWR5IGp1vyB1dHJ3YWxps2W2IOZ3aWN6ZW5pZSwgcHJ6ZWpkvCBkbyBsZWtjamkgMS42LgogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAkJCSAgTGVrY2phIDEuNi46IEVEWUNKQSBQTElLVQogCiAJCSAgKiogVb95aiAgOndxICBhYnkgemFwaXNh5iBwbGlrIGkgd3lqtuYuICoqCiAKLSAgICEhIFVXQUdBOiB6YW5pbSB3eWtvbmFzeiBqYWtpZWtvbHdpZWsgcG9sZWNlbmlhIHByemVjenlhaiBjYbOxIGxla2Nq6iAhIQorICAgISEgVVdBR0E6IHphbmltIHd5a29uYXN6IGpha2lla29sd2llayBwb2xlY2VuaWEgcHJ6ZWN6eXRhaiBjYbOxIGxla2Nq6iAhIQogCiAgIDEuIFpha2/xY3ogdHV0b3JpYWwgdGFrIGphayB3IGxla2NqaSAxLjIuOiAgOnEhCi0gICAgIEx1YiBqZbZsaSBtYXN6IGRvc3TqcCBkbyBpbm5lZ28gdGVybWluYWxhIHpy82Iga29sZWpuZSBrcm9raSB0YW0uCisgICAgIGx1YiwgamW2bGkgbWFzeiBkb3N06nAgZG8gaW5uZWdvIHRlcm1pbmFsYSwgd3lrb25haiBrb2xlam5lIGtyb2tpIHRhbS4KIAogICAyLiBXIHBvd7NvY2Ugd3lkYWogcG9sZWNlbmllOiAgdmltIHR1dG9yPEVOVEVSPgotICAgICAidmltIiBqZXN0IHBvbGVjZW5pZW0gdXJ1Y2hhbWlharFjeW0gZWR5dG9yIFZpbS4gJ3R1dG9yJyB0byBuYXp3YSBwbGlrdQotICAgICBqYWtpIGNoY2VzeiBlZHl0b3dh5i4gVb95aiBwbGlrdSBqYWtpIG1vv2Ugem9zdGHmIHptaWVuaW9ueS4KKyAgICAgInZpbSIgamVzdCBwb2xlY2VuaWVtIHVydWNoYW1pYWqxY3ltIGVkeXRvciBWaW0uICd0dXRvcicgdG8gbmF6d2EgcGxpa3UsCisgICAgIGpha2kgY2hjZXN6IGVkeXRvd2HmLiBVv3lqIHBsaWt1LCBrdPNyeSBtb79lIHpvc3Rh5iB6bWllbmlvbnkuCiAKLSAgMy4gRG9kYWogaSB1c3XxIHRla3N0IHRhayBqYWsgc2nqIG5hdWN6ebNltiB3IHBvcHJ6ZWRuaWNoIGxla2NqYWNoLgorICAzLiBEb2RhaiBpIHVzdfEgdGVrc3QgdGFrLCBqYWsgc2nqIG5hdWN6ebNltiB3IHBvcHJ6ZWRuaWNoIGxla2NqYWNoLgogCiAgIDQuIFphcGlzeiBwbGlrIHplIHptaWFuYW1pIGkgb3B1tuYgVmltYTogIDp3cTxFTlRFUj4KIAotICA1LiBKZbZsaSB6YWtv8WN6ebNltiB2aW10dXRvciB3IGtyb2t1IDEuIHVydWNob20gZ28gcG9ub3duaWUgaSBwcnplamS8CisgIDUuIEpltmxpIHpha2/xY3p5s2W2IHZpbXR1dG9yIHcga3Jva3UgMS4sIHVydWNob20gZ28gcG9ub3duaWUgaSBwcnplamS8CiAgICAgIGRvIHBvZHN1bW93YW5pYSBwb25pv2VqLgogCiAgIDYuIFBvIHByemVjenl0YW5pdSB3c3p5c3RraWNoIGtyb2vzdyBpIGljaCB6cm96dW1pZW5pdTogd3lrb25haiBqZS4KQEAgLTE2OCwxNCArMTY4LDE0IEBACiAgIDEuIFBvcnVzemFzeiBrdXJzb3JlbSB1v3l3YWqxYyAic3RyemGzZWsiIGkga2xhd2lzenkgIGhqa2wgLgogICAgICAgIGggKHcgbGV3bykJIGogKHcgZPOzKQkgayAoZG8gZ/NyeSkJCWwgKHcgcHJhd28pCiAKLSAgMi4gQnkgd2VqtuYgZG8gVmltYSAoeiBwb3ezb2tpKSB3cGlzejoKKyAgMi4gQnkgd2VqtuYgZG8gVmltYSwgKHogcG93s29raSkgd3Bpc3o6CiAJCQkgICAgdmltIE5BWldBX1BMSUtVPEVOVEVSPgogCi0gIDMuIEJ5IHd5arbmIHogVmltYSB3cGlzejoKLQkJCSAgICA8RVNDPiA6cSE8RU5URVI+ICBieSB1c3VusWMgd3N6eXN0a2llIHptaWFueS4KKyAgMy4gQnkgd3lqtuYgeiBWaW1hLCB3cGlzejoKKwkJCSAgICA8RVNDPiA6cSE8RU5URVI+ICBieSB1c3VuseYgd3N6eXN0a2llIHptaWFueS4KIAkgICAgIExVQjoJICAgIDxFU0M+IDp3cTxFTlRFUj4gIGJ5IHptaWFueSB6YWNob3dh5i4KIAotICA0LiBCeSB1c3VuseYgem5hayBwb2Qga3Vyc29yZW0gd2Nptm5pajogIHgKKyAgNC4gQnkgdXN1brHmIHpuYWsgcG9kIGt1cnNvcmVtLCB3Y2m2bmlqOiAgeAogCiAgIDUuIEJ5IHdzdGF3aeYgdGVrc3QgcHJ6ZWQga3Vyc29yZW0gbHViIGRvZGHmOgogCWkgICB3cGlzeiB0ZWtzdCAgIDxFU0M+ICAgICAgICAgd3N0YXdpIHByemVkIGt1cnNvcmVtCkBAIC0xODksMTggKzE4OSwxOCBAQAogCQkgIExla2NqYSAyLjEuOiBQT0xFQ0VOSUUgREVMRVRFICh1c3V3YW5pZSkKIAogCi0JCSAgICAgICoqIFdwaXN6ICBkdyAgYnkgdXN1brFjIHd5cmF6LiAqKgorCQkgICAgICAqKiBXcGlzeiAgZHcgIGJ5IHVzdW6x5iB3eXJhei4gKioKIAotICAxLiBXY2m2bmlqICA8RVNDPiAgYnkgdXBld25p5iBzaeosIL9lIGplc3RltiB3IHRyeWJpZSBOb3JtYWwuCisgIDEuIFdjabZuaWogIDxFU0M+LCBieSB1cGV3bmnmIHNp6iwgv2UgamVzdGW2IHcgdHJ5YmllIE5vcm1hbC4KIAogICAyLiBQcnplbmlltiBrdXJzb3IgZG8gbGluaWkgcG9uab9laiBvem5hY3pvbmVqIC0tLT4uCiAKLSAgMy4gUHJ6ZXN18SBrdXJzb3IgbmEgcG9jerF0ZWsgd3lyYXp1LCBrdPNyZSBjaGNlc3ogdXN1brHmLgorICAzLiBQcnplc3XxIGt1cnNvciBuYSBwb2N6sXRlayB3eXJhenUsIGt083J5IGNoY2VzeiB1c3VuseYuCiAKICAgNC4gV3Bpc3ogICBkdyAgIGJ5IHVzdW6x5iB3eXJhei4KIAogICBVV0FHQTogTGl0ZXJhICBkICBwb2phd2kgc2nqIG5hIGRvbGUgZWtyYW51LiBWaW0gY3pla2EgbmEgd3Bpc2FuaWUgIHcgLgotCSBKZbZsaSB6b2JhY3p5c3ogaW5ueSB6bmFrIG96bmFjemEgdG8sIL9lIHdwaXNhs2W2IGNvtiC8bGUsIHdjabZuaWoKKwkgSmW2bGkgem9iYWN6eXN6IGlubnkgem5haywgb3puYWN6YSB0bywgv2Ugd3Bpc2GzZbYgY2+2ILxsZTsgd2Nptm5pagogCSA8RVNDPiBpIHphY3puaWogb2QgcG9jerF0a3UuCiAKIC0tLT4gSmVzdCB0dSBwYXLqIHBhcGllciB3eXJhevN3LCBrdPNyZSBrYW1pZfEgbmllIG5hbGW/sSBkbyBub795Y2UgdGVnbyB6ZGFuaWEuCkBAIC0yMjUsNyArMjI1LDcgQEAKIC0tLT4gS3RvtiB3cGlzYbMga29uaWVjIHRlZ28gemRhbmlhIGR3dWtyb3RuaWUuIHpkYW5pYSBkd3Vrcm90bmllLgogCiAKLSAgNS4gUHJ6ZWpkvCBkbyBMZWtjamkgMi4zLiBieSB6cm96dW1pZeYgY28gc2nqIHN0YbNvLgorICA1LiBQcnplamS8IGRvIExla2NqaSAyLjMuLCBieSB6cm96dW1pZeYgY28gc2nqIHN0YbNvLgogCiAKIApAQCAtMjM1LDEyICsyMzUsMTIgQEAKIAkJICAgICBMZWtjamEgMi4zLjogTyBPUEVSQVRPUkFDSCBJIFJVQ0hBQ0gKIAogCi0gIFdpZWxlIHBvbGVjZfEgem1pZW5pYWqxY3ljaCB0ZWtzdCBzsSB6s2+/b25lIHogb3BlcmF0b3JhIGkgcnVjaHUuCi0gIEZvcm1hdCBkbGEgcG9sZWNlbmlhIHVzdXdharFjZWdvIHogb3BlcmF0b3JlbSAgZCAgamVzdCB0YWtpOgorICBXaWVsZSBwb2xlY2XxIHptaWVuaWFqsWN5Y2ggdGVrc3QgamVzdCB6s2+/b255Y2ggeiBvcGVyYXRvcmEgaSBydWNodS4KKyAgRm9ybWF0IGRsYSBwb2xlY2VuaWEgdXN1d2FqsWNlZ28geiBvcGVyYXRvcmVtICBkICBqZXN0IG5hc3TqcHVqsWN5OgogCiAJICAgIGQgIHJ1Y2gKIAotICBHZHppZToKKyAgZ2R6aWU6CiAgICBkICAgICAgLSBvcGVyYXRvciB1c3V3YW5pYS4KICAgIHJ1Y2ggICAtIG5hIGN6eW0gcG9sZWNlbmllIGLqZHppZSB3eWtvbnl3YW5lIChsaXN0YSBwb25pv2VqKS4KIApAQCAtMjUyLDcgKzI1Miw3IEBACiBXIHRlbiBzcG9z82Igd3Bpc2FuaWUgIGRlICB1c3VuaWUgem5ha2kgb2Qga3Vyc29yYSBkbyBrb/FjYSB3eXJhenUuCiAKIFVXQUdBOiBXcGlzYW5pZSB0eWxrbyBydWNodSB3IHRyeWJpZSBOb3JtYWwgYmV6IG9wZXJhdG9yYSBwcnplbmllc2llIGt1cnNvcgotICAgICAgIHRhayBqYWsgdG8gb2tyZbZsb25vLgorICAgICAgIHRhaywgamFrIHRvIG9rcmW2bG9uby4KIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAJCSAgICBMZWtjamEgMi40LjogVa9ZQ0lFIE1OT69OSUtBIERMQSBSVUNIVQpAQCAtMjY2LDMyICsyNjYsMzIgQEAKIAogICAzLiBXcGlzeiAgM2UgIGFieSBwcnplbmlltuYga3Vyc29yIGRvIGtv8WNhIHRyemVjaWVnbyB3eXJhenUgdyBwcnrzZC4KIAotICA0LiBXcGlzeiAgMCAgKHplcm8pIGFieSBwcnplbmlltuYga3Vyc29yIGRvIHBvY3qxdGt1IGxpbmlpLgorICA0LiBXcGlzeiAgMCAgKHplcm8pLCBhYnkgcHJ6ZW5pZbbmIGt1cnNvciBuYSBwb2N6sXRlayBsaW5paS4KIAogICA1LiBQb3d083J6IGtyb2tpIDIuIGkgMy4geiBpbm55bWkgbGljemJhbWkuCiAKIAotIC0tLT4gVG8gamVzdCB6d3lrs3kgd2llcnN6IHogd3lyYXphbWkgcG8ga3TzcnljaCBtb79lc3ogc2nqIHBvcnVzemHmLgorIC0tLT4gVG8gamVzdCB6d3lrs3kgd2llcnN6IHogd3lyYXphbWksIHBvIGt083J5Y2ggbW+/ZXN6IHNp6iBwb3J1c3ph5i4KIAogICA2LiBQcnplamS8IGRvIGxla2NqaSAyLjUuCiAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJTGVrY2phIDIuNS46IFWvWUNJRSBNTk+vTklLQSBCWSBXScpDRUogVVNVTqHGCisJCUxla2NqYSAyLjUuOiBVr1lDSUUgTU5Pr05JS0EsIEJZIFdJykNFSiBVU1VOocYKIAogCiAgICAgKiogV3Bpc2FuaWUgbGljemJ5IHogb3BlcmF0b3JlbSBwb3d0YXJ6YSBnbyBvZHBvd2llZG5psSBpbG+25iByYXp5LiAqKgogCiAgIFcgd3m/ZWogd3Nwb21uaWFuZWoga29tYmluYWNqaSBvcGVyYXRvcmEgdXN1d2FuaWEgaSBydWNodSBwb2RhaiBtbm+/bmlrCi0gIHByemVkIHJ1Y2hlbSBieSB3aepjZWogdXN1brHmOgorICBwcnplZCBydWNoZW0sIGJ5IHdp6mNlaiB1c3VuseY6CiAJZCAgbGljemJhICBydWNoCiAKICAgMS4gUHJ6ZW5pZbYga3Vyc29yIGRvIHBpZXJ3c3plZ28gd3lyYXp1IEtBUElUQUxJS0FNSSB3IGxpbmlpIHphem5hY3pvbmVqIC0tLT4uCiAKICAgMi4gV3Bpc3ogIDJkdyAgYWJ5IHVzdW6x5iBkd2Egd3lyYXp5IEtBUElUQUxJS0FNSS4KIAotICAzLiBQb3d0YXJ6YWoga3Jva2kgMS4gaSAyLiB6IGlubnltaSBtbm+/bmlrYW1pIGFieSB1c3VuseYga29sZWpuZSB3eXJhenkKKyAgMy4gUG93dGFyemFqIGtyb2tpIDEuIGkgMi4geiBpbm55bWkgbW5vv25pa2FtaSwgYWJ5IHVzdW6x5iBrb2xlam5lIHd5cmF6eQogICAgICBLQVBJVEFMSUtBTUkgamVkbnltIHBvbGVjZW5pZW0KIAogLS0tPiB0YSBBU0QgV0UgbGluaWEgUVdFIEFTREYgWlhDViBGRyB3eXJhevN3IHpvc3Rhs2EgRVJUIEZHSCBDRiBvY3p5c3pjem9uYS4KQEAgLTMxMiw3ICszMTIsNyBAQAogICAxLiBQcnplbmlltiBrdXJzb3IgZG8gZHJ1Z2llZ28gemRhbmlhIHogd2llcnN6eWthIHBvbmm/ZWouCiAgIDIuIFdwaXN6ICBkZCAgYWJ5IHVzdW6x5iB3aWVyc3ouCiAgIDMuIFRlcmF6IHByemVuaWW2IHNp6iBkbyBjendhcnRlZ28gd2llcnN6YS4KLSAgNC4gV3Bpc3ogIDJkZCAgYWJ5IHVzdW6xYyBkd2Egd2llcnN6ZS4KKyAgNC4gV3Bpc3ogIDJkZCAgYWJ5IHVzdW6x5iBkd2Egd2llcnN6ZS4KIAogLS0tPiAgMSkgIFLzv2Ugc7EgY3plcndvbmUsCiAtLS0+ICAyKSAgQrNvdG8gamVzdCBmYWpuZSwKQEAgLTMzNSwxMiArMzM1LDEyIEBACiAgIDIuIFdwaXN6ICB4ICBhYnkgdXN1brHmIHBpZXJ3c3p5IG5pZWNoY2lhbnkgem5hay4KICAgMy4gVGVyYXogd2Nptm5paiAgdSAgYWJ5IGNvZm6x5iBza3V0a2kgb3N0YXRuaWVnbyBwb2xlY2VuaWEuCiAgIDQuIFR5bSByYXplbSBwb3ByYXcgd3N6eXN0a2llIGKz6mR5IHcgbGluaWkgdb95d2FqsWMgcG9sZWNlbmlhICB4IC4KLSAgNS4gVGVyYXogd2Nptm5paiB3aWVsa2llIFUgYWJ5IHByenl3cvNjaeYgbGluaeogZG8gb3J5Z2luYWxuZWdvIHN0YW51LgotICA2LiBUZXJheiB3Y2m2bmlqICB1ICBraWxrYSByYXp5IGJ5IGNvZm6x5iAgVSAgaSBwb3ByemVkbmllIHBvbGVjZW5pYS4KKyAgNS4gVGVyYXogd2Nptm5paiB3aWVsa2llICBVICBhYnkgcHJ6eXdy82Np5iBsaW5p6iBkbyBvcnlnaW5hbG5lZ28gc3RhbnUuCisgIDYuIFRlcmF6IHdjabZuaWogIHUgIGtpbGthIHJhenksIGJ5IGNvZm6x5iAgVSAgaSBwb3ByemVkbmllIHBvbGVjZW5pYS4KICAgNy4gVGVyYXogd3Bpc3ogQ1RSTC1SICh0cnp5bWFqIHLzd25vY3pltm5pZSB3Y2m2bmnqdGUga2xhd2lzemUgQ1RSTCBpIFIpCiAgICAgIGtpbGthIHJhenksIGJ5IGNvZm6x5iBjb2ZuaepjaWEuCiAKLS0tLT4gUG9vcHJhdyBibOpkeXl5IHcgdGVlaiBsaW5paWkgaSB6YWFtaWll8SBqZSBwcnJ6ZXogY29vZm5pai4KKy0tLT4gUG9vcHJhdyBis+pkeXl5IHcgdGVlaiBsaW5paWkgaSB6YWFtaWll8SBqZSBwcnJ6ZXogY29vZm5pai4KIAogICA4LiBUbyBzsSBiYXJkem8gcG+/eXRlY3puZSBwb2xlY2VuaWEuCiAKQEAgLTM1MCwyMiArMzUwLDIyIEBACiAJCQkgICAgIExFS0NKQSAyLiBQT0RTVU1PV0FOSUUKIAogCi0gIDEuIEJ5IHVzdW6x5iB6bmFraSBvZCBrdXJzb3JhIGRvIG5hc3TqcG5lZ28gd3lyYXp1IHdwaXN6OiAgIGR3Ci0gIDIuIEJ5IHVzdW6x5iB6bmFraSBvZCBrdXJzb3JhIGRvIGtv8WNhIGxpbmlpIHdwaXN6OiAgICBkJAorICAxLiBCeSB1c3VuseYgem5ha2kgb2Qga3Vyc29yYSBkbyBuYXN06nBuZWdvIHd5cmF6dSwgd3Bpc3o6ICAgZHcKKyAgMi4gQnkgdXN1brHmIHpuYWtpIG9kIGt1cnNvcmEgZG8ga2/xY2EgbGluaWksIHdwaXN6OiAgICBkJAogICAzLiBCeSB1c3VuseYgY2GzsSBsaW5p6jogICAgZGQKLSAgNC4gQnkgcG93dPNyennmIHJ1Y2ggcG9wcnplZLwgZ28gbGljemKxOiAgICAydworICA0LiBCeSBwb3d083J6eeYgcnVjaCwgcG9wcnplZLwgZ28gbGljemKxOiAgICAydwogICA1LiBGb3JtYXQgcG9sZWNlbmlhIHptaWFueSB0bzoKICAgICAgICAgICAgICAgICBvcGVyYXRvciAgW2xpY3piYV0gIHJ1Y2gKICAgZ2R6aWU6Ci0gICBvcGVyYXRvciAgLSB0byBjbyB0cnplYmEgenJvYmnmIChucC4gIGQgIGRsYSB1c3V3YW5pYSkKKyAgIG9wZXJhdG9yICAtIHRvLCBjbyB0cnplYmEgenJvYmnmIChucC4gIGQgIGRsYSB1c3V3YW5pYSkKICAgIFtsaWN6YmFdICAtIG9wY2pvbmFsbmUsIGlsZSByYXp5IHBvd3Tzcnp55iBydWNoCiAgICBydWNoICAgICAgLSBwcnplbm9zaSBuYWQgdGVrc3RlbSBkbyBvcGVyb3dhbmlhLCB0YWtpbSBqYWsgIHcgKHd5cmF6KSwKLQkgICAgICAgJCAgKGRvIGtv8WNhIGxpbmlpKSwgZXRjLgorCSAgICAgICAkICAoZG8ga2/xY2EgbGluaWkpIGV0Yy4KIAotICA2LiBCeSBwcnplarbmIGRvIHBvY3qxdGt1IGxpbmlpIHW/eWogemVyYTogIDAKLSAgNy4gQnkgY29mbrHmIHBvcHJ6ZWRuaWUgcG9sZWNlbmllLCB3cGlzejoJICB1IChtYbNlIHUpCi0gICAgIEJ5IGNvZm6x5iB3c3p5c3RraWUgem1pYW55IHcgbGluaWkgd3Bpc3o6CSAgVSAod2llbGtpZSBVKQotICAgICBCeSBjb2ZuseYgY29mbmnqY2lhIHdwaXN6OgkJCSAgQ1RSTC1SCisgIDYuIEJ5IHByemVqtuYgZG8gcG9jerF0a3UgbGluaWksIHW/eWogemVyYTogIDAKKyAgNy4gQnkgY29mbrHmIHBvcHJ6ZWRuaWUgcG9sZWNlbmllLCB3cGlzejoJICB1ICAobWGzZSB1KQorICAgICBCeSBjb2ZuseYgd3N6eXN0a2llIHptaWFueSB3IGxpbmlpLCB3cGlzejoJICBVICAod2llbGtpZSBVKQorICAgICBCeSBjb2ZuseYgY29mbmnqY2llLCB3cGlzejoJCQkgIENUUkwtUgogCiAKIApAQCAtMzc5LDcgKzM3OSw3IEBACiAKICAgMi4gV3Bpc3ogIGRkICBhYnkgdXN1brHmIGxpbmnqIGkgcHJ6ZWNob3dh5iBqsSB3IHJlamVzdHJ6ZSBWaW1hLgogCi0gIDMuIFByemVuaWW2IGt1cnNvciBkbyBsaW5paSBjKSwgUE9XWa9FSiB0ZWogZ2R6aWUgdXN1bmnqdGEgbGluaWEgcG93aW5uYQorICAzLiBQcnplbmlltiBrdXJzb3IgZG8gbGluaWkgYyksIFBPV1mvRUogdGVqLCBnZHppZSB1c3Vuaep0YSBsaW5pYSBwb3dpbm5hCiAgICAgIHNp6iB6bmFqZG93YeYuCiAKICAgNC4gV2Nptm5paiAgcCAgYnkgd3N0YXdp5iBsaW5p6iBwb25pv2VqIGt1cnNvcmEuCkBAIC00MDQsMjEgKzQwNCwyMSBAQAogCiAgIDMuIFdwaXN6ICByICBhIHBvdGVtIHpuYWsgamFraSBwb3dpbmllbiBnbyB6YXN0sXBp5i4KIAotICA0LiBQb3d0YXJ6YWoga3Jva2kgMi4gaSAzLiBkb3Dza2kgcGllcndzemEgbGluaWEgbmllIGLqZHppZSB0YWthIGphayBkcnVnYS4KKyAgNC4gUG93dGFyemFqIGtyb2tpIDIuIGkgMy4gZG9w82tpIHBpZXJ3c3phIGxpbmlhIG5pZSBi6mR6aWUgdGFrYSwgamFrIGRydWdhLgogCi0tLS0+ICBLamVkeSB0ZW4gd2llcnN6IGJpsyB3c3Tza2l3YW55IGt0b7Ygd2Npem6xsyBwZXLqIHqzeWNoIGtsYXdpcnp5IQotLS0tPiAgS2llZHkgdGVuIHdpZXJzeiBiebMgd3N0dWtpd2FueSBrdG+2IHdjaXNusbMgcGFy6iB6s3ljaCBrbGF3aXN6eSEKKy0tLT4gIEtqZWR5IHRlbiB3aWVyc3ogYmmzIHdzdPNraXdhbnksIGt0b7Ygd2Npem6xsyBwZXLqIHqzeWNoIGtsYXdpcnp5IQorLS0tPiAgS2llZHkgdGVuIHdpZXJzeiBiebMgd3N0dWtpd2FueSwga3RvtiB3Y2lzbrGzIHBhcuogerN5Y2gga2xhd2lzenkhCiAKICAgNS4gVGVyYXogY3phcyBuYSBMZWtjauogMy4zLgogCiAKLVVXQUdBOiBQYW1p6nRhaiBieSB1Y3p55iBzaeog5ndpY3qxYywgYSBuaWUgcGFtaepjaW93by4KK1VXQUdBOiBQYW1p6nRhaiwgYnkgdWN6eeYgc2nqIOZ3aWN6sWMsIGEgbmllIHBhbWnqY2lvd28uCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAJCSAgICAgTGVrY2phIDMuMy46IE9QRVJBVE9SIENIQU5HRSAoem1pZfEpCiAKLQkJICoqIEJ5IHptaWVuaeYgZG8ga2/xY2Egd3lyYXp1IHdwaXN6ICBjZSAuICoqCisJCSAqKiBCeSB6bWllbmnmIGRvIGtv8WNhIHd5cmF6dSwgd3Bpc3ogIGNlIC4gKioKIAogICAxLiBQcnplbmlltiBrdXJzb3IgZG8gcGllcndzemVqIGxpbmlpIHBvbmm/ZWogb3puYWN6b25laiAtLS0+LgogCkBAIC00MjgsNyArNDI4LDcgQEAKIAogICA0LiBXY2m2bmlqIDxFU0M+IGkgcHJ6ZWpkvCBkbyBuYXN06nBuZWogcGxhbm93YW5laiB6bWlhbnkuCiAKLSAgNS4gUG93dGFyemFqIGtyb2tpIDMuIGkgNC4gZG9w82tpIHBpZXJ3c3plIHpkYW5pZSBuaWUgYupkemllIHRha2llIHNhbWUKKyAgNS4gUG93dGFyemFqIGtyb2tpIDMuIGkgNC4gZG9w82tpIHBpZXJ3c3plIHpkYW5pZSBuaWUgYupkemllIHRha2llIHNhbWUsCiAgICAgIGphayBkcnVnaWUuCiAKIC0tLT4gVGEgbHVub3MgbWEgcGlyZSBzs/N3LCBrdPNyZSB0v2luYSB6Ym5pYyB1v2lmYWpvbmMgcGNtYXp1IHptaWXxLgpAQCAtNDQyLDEzICs0NDIsMTMgQEAKIAkJICAgICAgTGVrY2phIDMuNC46IFdJykNFSiBaTUlBTiBVr1lXQUqhQyBjCiAKIAotCSoqIFBvbGVjZW5pZSBjaGFuZ2Ugdb95d2EgdGFraWNoIHNhbXljaCBydWNo83cgamFrIGRlbGV0ZS4gKioKKwkqKiBQb2xlY2VuaWUgY2hhbmdlIHW/eXdhIHRha2ljaCBzYW15Y2ggcnVjaPN3LCBqYWsgZGVsZXRlLiAqKgogCi0gIDEuIE9wZXJhdG9yIGNoYW5nZSBkemlhs2EgdGFrIHNhbW8gamFrIGRlbGV0ZS4gRm9ybWF0IHd5Z2yxZGEgdGFrOgorICAxLiBPcGVyYXRvciBjaGFuZ2UgZHppYbNhIHRhayBzYW1vLCBqYWsgZGVsZXRlLiBGb3JtYXQgd3lnbLFkYSB0YWs6CiAKIAkgICAgYyAgIFtsaWN6YmFdICAgcnVjaAogCi0gIDIuIFJ1Y2h5IHOxIHRha79lIHRha2llIHNhbWUsIG5wLjogIHcgICh3eXJheiksICAkICAoa29uaWVjIGxpbmlpKSwgZXRjLgorICAyLiBSdWNoeSBzsSB0YWu/ZSB0YWtpZSBzYW1lLCBucC46ICB3ICAod3lyYXopLCAgJCAgKGtvbmllYyBsaW5paSkgZXRjLgogCiAgIDMuIFByemVuaWW2IHNp6iBkbyBwaWVyd3N6ZWogbGluaWkgcG9uab9laiBvem5hY3pvbmVqIC0tLT4KIApAQCAtNDU2LDcgKzQ1Niw3IEBACiAKICAgNS4gV3Bpc3ogIGMkICwgcG9wcmF3IGtvbmllYyB3aWVyc3phIGkgd2Nptm5paiA8RVNDPi4KIAotLS0tPiBLb25pZWMgdGVnbyB3aWVyc3phIG11c2kgYnnmIHBvcHJhd2lvbnkgYWJ5IHd5Z2yxZGGzIHRhayBqYWsgZHJ1Z2kuCistLS0+IEtvbmllYyB0ZWdvIHdpZXJzemEgbXVzaSBieeYgcG9wcmF3aW9ueSwgYWJ5IHd5Z2yxZGGzIHRhaywgamFrIGRydWdpLgogLS0tPiBLb25pZWMgdGVnbyB3aWVyc3phIG11c2kgYnnmIHBvcHJhd2lvbnkgdb95d2FqsWMgcG9sZWNlbmlhICBjJCAuCiAKIFVXQUdBOiAgTW+/ZXN6IHW/eXdh5iA8QlM+IGFieSBwb3ByYXdpYeYgYrPqZHkgdyBjemFzaWUgcGlzYW5pYS4KQEAgLTQ2OSwxMSArNDY5LDExIEBACiAgICAgIHBvbGVjZW5pZSB3c3Rhd2lhIHNrYXNvd2FueSB0ZWtzdCBQTyBrdXJzb3J6ZSAoamW2bGkgY2GzYSBsaW5pYQogICAgICB6b3N0YbNhIHVzdW5p6nRhLCB6b3N0YW5pZSBvbmEgdW1pZXN6Y3pvbmEgdyBsaW5paSBwb25pv2VqIGt1cnNvcmEpLgogCi0gIDIuIEJ5IHphbWllbmnmIHpuYWsgcG9kIGt1cnNvcmVtIHdjabZuaWogIHIgIGEgcG90ZW0gem5haywga3TzcnkgbWEgemFzdLFwaeYKKyAgMi4gQnkgemFtaWVuaeYgem5hayBwb2Qga3Vyc29yZW0sIHdjabZuaWogIHIgIGEgcG90ZW0gem5haywga3TzcnkgbWEgemFzdLFwaeYKICAgICAgb3J5Z2luYWxueS4KIAotICAzLiBPcGVyYXRvciBjaGFuZ2UgcG96d2FsYSBDaSBuYSB6YXN0sXBpZW5pZSBvZCBrdXJzb3JhIGRvIG1pZWpzY2EgZ2R6aWUKLSAgICAgemFicmGzYnkgY2nqIHJ1Y2guIE5wLiB3cGlzeiAgY2UgIGFieSB6YW1pZW5p5iB0ZWtzdCBvZCBrdXJzb3JhIGRvIGtv8WNhCisgIDMuIE9wZXJhdG9yIGNoYW5nZSBwb3p3YWxhIENpIG5hIHphc3SxcGllbmllIG9kIGt1cnNvcmEgZG8gbWllanNjYSwgZ2R6aWUKKyAgICAgemFicmGzYnkgQ2nqIHJ1Y2guIE5wLiB3cGlzeiAgY2UgIGFieSB6YW1pZW5p5iB0ZWtzdCBvZCBrdXJzb3JhIGRvIGtv8WNhCiAgICAgIHd5cmF6dSwgIGMkICBhYnkgem1pZW5p5iB0ZWtzdCBkbyBrb/FjYSBsaW5paS4KIAogICA0LiBGb3JtYXQgZG8gcG9sZWNlbmlhIGNoYW5nZSAoem1pZfEpOgpAQCAtNDk3LDEyICs0OTcsMTIgQEAKICAgICAgWmFwYW1p6nRhaiBudW1lciBsaW5paSBkbGEgcG90cnplYiBrcm9rdSAzLgogCiBVV0FHQTogTW+/ZXN6IHRlvyB6b2JhY3p55iBwb3p5Y2rqIGt1cnNvcmEgdyBwcmF3eW0sIGRvbG55bSByb2d1IGVrcmFudS4KLSAgICAgICBEemllamUgc2nqIHRhayBraWVkeSB1c3Rhd2lvbmEgamVzdCBvcGNqYSAncnVsZXInICh3eWphtm5pb25lIHcgbGVrY2ppIDYuKS4KKyAgICAgICBEemllamUgc2nqIHRhayBraWVkeSB1c3Rhd2lvbmEgamVzdCBvcGNqYSAncnVsZXInICh3aepjZWogdyBsZWtjamkgNi4pLgogCiAgIDIuIFdjabZuaWogRyBhYnkgcHJ6ZWq25iBuYSBrb25pZWMgcGxpa3UuCiAgICAgIFdjabZuaWogIGdnICBhYnkgcHJ6ZWq25iBkbyBwb2N6sXRrdSBwbGlrdS4KIAotICAzLiBXcGlzeiBudW1lciBsaW5paSwgdyBrdPNyZWogYnmzZbYgYSBwb3RlbSAgRyAuIFRvIHByemVuaWVzaWUgY2nqCisgIDMuIFdwaXN6IG51bWVyIGxpbmlpLCB3IGt083JlaiBiebNltiBhIHBvdGVtICBHIC4gVG8gcHJ6ZW5pZXNpZSBDaeoKICAgICAgeiBwb3dyb3RlbSBkbyBsaW5paSwgdyBrdPNyZWogYnmzZbYga2llZHkgd2Npc26xs2W2IENUUkwtRy4KIAogICA0LiBKZbZsaSBjenVqZXN6IHNp6iB3eXN0YXJjemFqsWNvIHBld25pZSwgd3lrb25haiBrcm9raSAxLTMuCkBAIC01MTEsMTAgKzUxMSwxMCBAQAogCQkJIExla2NqYSA0LjIuOiBQT0xFQ0VOSUUgU1pVS0FKCiAKIAotCSAgICAgKiogV3Bpc3ogIC8gIGEgbmFzdOpwbmllIHd5cmG/ZW5pZSBhYnkgamUgem5hbGW85i4gKioKKwkgICAgICoqIFdwaXN6ICAvICBhIG5hc3TqcG5pZSB3eXJhv2VuaWUsIGFieSBqZSB6bmFsZbzmLiAqKgogCi0gIDEuIFcgdHJ5YmllIE5vcm1hbCB3cGlzeiAgLyAuIFphdXdhvywgv2Ugem5hayB0ZW4sIG9yYXoga3Vyc29yIHBvamF3abEKLSAgICAgc2nqIG5hIGRvbGUgZWtyYW51IHRhayBzYW1vIGphayBwb2xlY2VuaWUgIDogLgorICAxLiBXIHRyeWJpZSBOb3JtYWwgd3Bpc3ogIC8gLiBaYXV3Yb8sIL9lIHpuYWsgdGVuIG9yYXoga3Vyc29yIHBvamF3abEKKyAgICAgc2nqIG5hIGRvbGUgZWtyYW51IHRhayBzYW1vLCBqYWsgcG9sZWNlbmllICA6IC4KIAogICAyLiBUZXJheiB3cGlzeiAgYrNvbmQ8RU5URVI+IC4gIFRvIGplc3Qgc7Nvd28sIGt083JlZ28gY2hjZXN6IHN6dWth5i4KIApAQCAtNTIzLDExICs1MjMsMTEgQEAKIAogICA0LiBKZbZsaSBjaGNlc3ogc3p1a2HmIGZyYXp5IGRvIHR5s3UsIHW/eWogcG9sZWNlbmlhICA/ICB6YW1pYXN0ICAvIC4KIAotICA1LiBBYnkgd3LzY2nmIGdkemllIGJ5s2W2IHdjabZuaWogIENUUkwtTy4gUG93dGFyemFqIGJ5IHdy82Np5iBkYWxlai4gQ1RSTC1JCisgIDUuIEFieSB3cvNjaeYgZ2R6aWUgYnmzZbYsIHdjabZuaWogIENUUkwtTy4gUG93dGFyemFqLCBieSB3cvNjaeYgZGFsZWouIENUUkwtSQogICAgICBpZHppZSBkbyBwcnpvZHUuCiAKLVV3YWdhOiAgJ2Kzb25kJyB0byBuaWUgamVzdCBtZXRvZGEgYnkgcHJ6ZWxpdGVyb3dh5iBis7FkOyAnYrNvbmQnIHRvIGKzsWQuCi1Vd2FnYTogIEtpZWR5IHN6dWthbmllIG9zabFnbmllIGtvbmllYyBwbGlrdSBi6mR6aWUga29udHludW93YbNvIG9kIHBvY3qxdGt1CitVd2FnYTogICdis29uZCcgdG8gbmllIGplc3QgbWV0b2RhLCBieSBwcnplbGl0ZXJvd2HmIGKzsWQ7ICdis29uZCcgdG8gYrOxZC4KK1V3YWdhOiAgS2llZHkgc3p1a2FuaWUgb3NpsWduaWUga29uaWVjIHBsaWt1LCBi6mR6aWUga29udHludW93YW5lIG9kIHBvY3qxdGt1CiAgICAgICAgIG8gaWxlIG9wY2phICd3cmFwc2NhbicgbmllIHpvc3Rhs2EgcHJ6ZXN0YXdpb25hLgogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KQEAgLTU3MSwxNiArNTcxLDE2IEBACiAKICAgNC4gQWJ5IHptaWVuaeYgd3N6eXN0a2llIHd5c3SxcGllbmlhILNh8WN1Y2hhIHpuYWvzdyBwb21p6mR6eSBkd29tYSBsaW5pYW1pLAogICAgICB3cGlzejogOiMsI3Mvc3RhcmUvbm93ZS9nIGdkemllICMsIyBzsSBudW1lcmFtaSBsaW5paSBvZ3JhbmljemFqsWN5Y2gKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWdpb24gZ2R6aWUgbWEgbmFzdLFwaeYgemFtaWFuYS4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWdpb24sIGdkemllIG1hIG5hc3SxcGnmIHphbWlhbmEuCiAgICAgIHdwaXN6ICA6JXMvc3RhcmUvbm93ZS9nICAgYnkgem1pZW5p5iB3c3p5c3RraWUgd3lzdLFwaWVuaWEgdyBjYbN5bSBwbGlrdS4KICAgICAgd3Bpc3ogIDolcy9zdGFyZS9ub3dlL2djICBieSB6bWllbmnmIHdzenlzdGtpZSB3eXN0sXBpZW5pYSB3IGNhs3ltCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxpa3UsIHByb3N6sWMgbyBwb3R3aWVyZHplbmllIHphIGthv2R5bSByYXplbQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsaWt1LCBwcm9zerFjIG8gcG90d2llcmR6ZW5pZSB6YSBrYb9keW0gcmF6ZW0uCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkJICAgICBMRUtDSkEgNC4gUE9EU1VNT1dBTklFCiAKICAgMS4gQ1RSTC1HICAgcG9rYb9lIFR3b2qxIHBvenljauogdyBwbGlrdSBpIHN0YXR1cyBwbGlrdS4gIFNISUZULUcgcHJ6ZW5vc2kKLQkgICAgICBjaeogZG8ga2/xY2EgcGxpa3UuCisJICAgICAgQ2nqIGRvIGtv8WNhIHBsaWt1LgogICAgICBHICAgICAgICBwcnplbm9zaSBkbyBrb/FjYSBwbGlrdS4KICAgICAgbGljemJhIEcgcHJ6ZW5vc2kgZG8gbGluaWkgW2xpY3piYV0uCiAgICAgIGdnICAgICAgIHByemVub3NpIGRvIHBpZXJ3c3plaiBsaW5paS4KQEAgLTU4OCwyMiArNTg4LDIyIEBACiAgIDIuIFdwaXNhbmllICAvICBhIG5hc3TqcG5pZSCzYfFjdWNoYSB6bmFr83cgc3p1a2Egs2HxY3VjaGEgRE8gUFJaT0RVLgogICAgICBXcGlzYW5pZSAgPyAgYSBuYXN06nBuaWUgs2HxY3VjaGEgem5ha/N3IHN6dWthILNh8WN1Y2hhIERPIFRZo1UuCiAgICAgIFBvIHd5c3p1a2l3YW5pdSB3Y2m2bmlqICBuICBieSB6bmFsZbzmIG5hc3TqcG5lIHd5c3SxcGllbmllIHN6dWthbmVqCi0gICAgIGZyYXp5IHR5bSBzYW15bSBraWVydW5rdSBsdWIgIE4gIGJ5IHN6dWth5iB3IGtpZXJ1bmt1IHByemVjaXdueW0uCisgICAgIGZyYXp5IHcgdHltIHNhbXltIGtpZXJ1bmt1IGx1YiAgTiAgYnkgc3p1a2HmIHcga2llcnVua3UgcHJ6ZWNpd255bS4KICAgICAgQ1RSTC1PIHByemVub3NpIGRvIHN0YXJzenljaCBwb3p5Y2ppLCBDVFJMLUkgZG8gbm93c3p5Y2guCiAKICAgMy4gV3Bpc2FuaWUgICUgIGdkeSBrdXJzb3Igem5hamR1amUgc2nqIG5hICgsKSxbLF0seywgbHViIH0gbG9rYWxpenVqZQogICAgICBwYXJ1arFjeSB6bmFrLgogCi0gIDQuIEJ5IHphbWllbmnmIHBpZXJ3c3p5IHN0YXJ5IG5hIG5vd3kgdyBsaW5paSB3cGlzeiAgICAgIDpzL3N0YXJ5L25vd3kKLSAgICAgQnkgemFtaWVuaeYgd3N6eXN0a2llIHN0YXJ5IG5hIG5vd3kgdyBsaW5paSB3cGlzeiAgICAgOnMvc3Rhcnkvbm93eS9nCisgIDQuIEJ5IHphbWllbmnmIHBpZXJ3c3p5IHN0YXJ5IG5hIG5vd3kgdyBsaW5paSwgd3Bpc3ogICAgICA6cy9zdGFyeS9ub3d5CisgICAgIEJ5IHphbWllbmnmIHdzenlzdGtpZSBzdGFyeSBuYSBub3d5IHcgbGluaWksIHdwaXN6ICAgICA6cy9zdGFyeS9ub3d5L2cKICAgICAgQnkgemFtaWVuaeYgZnJhenkgcG9taepkenkgZHdvbWEgbGluaWFtaSAjIHdwaXN6ICAgICAgOiMsI3Mvc3Rhcnkvbm93eS9nCi0gICAgIEJ5IHphbWllbmnmIHdzenlzdGtpZSB3eXN0sXBpZW5pYSB3IHBsaWt1IHdwaXN6ICAgICAgIDolcy9zdGFyeS9ub3d5L2cKLSAgICAgQnkgVmltIHByb3NpsyBDaeogbyBwb3R3aWVyZHplbmllIGRvZGFqICdjJwkgICA6JXMvc3Rhcnkvbm93eS9nYworICAgICBCeSB6YW1pZW5p5iB3c3p5c3RraWUgd3lzdLFwaWVuaWEgdyBwbGlrdSwgd3Bpc3ogICAgICAgOiVzL3N0YXJ5L25vd3kvZworICAgICBCeSBWaW0gcHJvc2mzIENp6iBvIHBvdHdpZXJkemVuaWUsIGRvZGFqICdjJwkgICA6JXMvc3Rhcnkvbm93eS9nYwogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCSBMZWtjamEgNS4xLjogSkFLIFdZS09OQcYgUE9MRUNFTklBIFpFV07KVFJaTkUKKwkJIExla2NqYSA1LjEuOiBKQUsgV1lLT05BxiBQT0xFQ0VOSUEgWkVXTspUUlpORT8KIAogCi0JKiogV3Bpc3ogIDohICBhIG5hc3TqcG5pZSB6ZXdu6nRyem5lIHBvbGVjZW5pZSBieSBqZSB3eWtvbmHmLiAqKgorCSoqIFdwaXN6ICA6ISAgYSBuYXN06nBuaWUgemV3bup0cnpuZSBwb2xlY2VuaWUsIGJ5IGplIHd5a29uYeYuICoqCiAKICAgMS4gV3Bpc3ogem5ham9tZSBwb2xlY2VuaWUgIDogIGJ5IHVzdGF3aeYga3Vyc29yIG5hIGRvbGUgZWtyYW51LiBUbyBwb3p3YWxhCiAgICAgIG5hIHdwcm93YWR6ZW5pZSBrb21lbmR5IGxpbmlpIHBvbGVjZfEuCkBAIC02MjYsMjAgKzYyNiwyMCBAQAogCQkgICAgTGVrY2phIDUuMi46IFdJykNFSiBPIFpBUElTWVdBTklVIFBMSUvTVwogCiAKLQkgICAqKiBCeSB6YWNob3dh5iB6bWlhbnkgdyB0ZWu2Y2kgd3Bpc3ogOncgTkFaV0FfUExJS1UgLiAqKgorCSAgICoqIEJ5IHphY2hvd2HmIHptaWFueSB3IHRla7ZjaWUsIHdwaXN6IDp3IE5BWldBX1BMSUtVIC4gKioKIAogICAxLiBXcGlzeiAgOiFkaXIgIGx1YiAgOiFscyAgYnkgem9iYWN6eeYgc3BpcyBwbGlr83cgdyBrYXRhbG9ndS4KLSAgICAgSnW/IHdpZXN6LCC/ZSBtdXNpc3ogd2Npc26x5iA8RU5URVI+IHBvIHR5bS4KKyAgICAgSnW/IHdpZXN6LCC/ZSBtdXNpc3ogcG8gdHltIHdjaXNuseYgPEVOVEVSPi4KIAotICAyLiBXeWJpZXJ6IG5henfqIHBsaWt1IGpha2EgamVzemN6ZSBuaWUgaXN0bmllamUsIG5wLiBURVNULgorICAyLiBXeWJpZXJ6IG5henfqIHBsaWt1LCBqYWthIGplc3pjemUgbmllIGlzdG5pZWplLCBucC4gVEVTVC4KIAogICAzLiBUZXJheiB3cGlzejogICA6dyBURVNUICAgKGdkemllIFRFU1QgamVzdCBuYXp3sSBwbGlrdSBqYWuxIHd5YnJhs2W2LikKIAogICA0LiBUbyBwb2xlY2VuaWUgemFwYW1p6nRhIGNhs3kgcGxpayAoVmltIFR1dG9yKSBwb2QgbmF6d7EgVEVTVC4KLSAgICAgQnkgdG8gc3ByYXdkemnmIHdwaXN6ICA6IWRpciAgbHViICA6IWxzICwgv2VieSB6bm93dSB6b2JhY3p55iBsaXN06iBwbGlr83cuCisgICAgIEJ5IHRvIHNwcmF3ZHpp5iwgd3Bpc3ogIDohZGlyICBsdWIgIDohbHMgIL9lYnkgem5vd3Ugem9iYWN6eeYgbGlzdOogcGxpa/N3LgogCiBVd2FnYTogWmF1d2G/LCC/ZSBnZHliebYgdGVyYXogd3lzemVksyB6IFZpbWEsIGEgbmFzdOpwbmllIHdzemVksyBwb25vd25pZQotICAgICAgIHBvbGVjZW5pZW0gIHZpbSBURVNUICwgcGxpayBiebNieSBkb2uzYWRusSBrb3BpsSB0dXRvcmlhbGEga2llZHkgZ28KKyAgICAgICBwb2xlY2VuaWVtICB2aW0gVEVTVCAsIHBsaWsgYnmzYnkgZG9rs2FkbrEga29wabEgdHV0b3JpYWxhLCBraWVkeSBnbwogICAgICAgIHphcGlzeXdhs2W2LgogCiAgIDUuIFRlcmF6IHVzdfEgcGxpayB3cGlzdWqxYyAoTVMtRE9TKToJCSAgIDohZGVsIFRFU1QKQEAgLTY0OSw3ICs2NDksNyBAQAogCQkgICAgTGVrY2phIDUuMy46IFdZQlJBTklFIFRFS1NUVSBETyBaQVBJU1UKIAogCi0JICAqKiBCeSB6YWNob3dh5iBjeuq25iBwbGlrdSB3cGlzeiAgdiBydWNoIDp3IE5BWldBX1BMSUtVICoqCisJICAqKiBCeSB6YWNob3dh5iBjeuq25iBwbGlrdSwgd3Bpc3ogIHYgcnVjaCA6dyBOQVpXQV9QTElLVSAqKgogCiAgIDEuIFByemVuaWW2IGt1cnNvciBkbyB0ZWdvIHdpZXJzemEuCiAKQEAgLTY2NCwyNiArNjY0LDI2IEBACiAgIDUuIFZpbSB6YXBpc3plIHd5YnJhbmUgbGluaWUgZG8gcGxpa3UgVEVTVC4gVb95aiAgOiFkaXIgIGx1YiAgOiFscyAsIL9lYnkgdG8KICAgICAgem9iYWN6eeYuIEplc3pjemUgZ28gbmllIHVzdXdhaiEgVb95amVteSBnbyB3IG5hc3TqcG5laiBsZWtjamkuCiAKLVVXQUdBOiBXY2m2bmnqY2llICB2ICB6YWN6eW5hIHRyeWIgV2l6dWFsbnkuIE1vv2VzeiBwb3J1c3ph5iBrdXJzb3JlbSBieQotICAgICAgIHptaWVuaeYgcm96bWlhcnkgemF6bmFjemVuaWEuIE1vv2VzeiB0Zb8gdb955iBvcGVyYXRvcmEgYnkgenJvYmnmIGNvtgorVVdBR0E6IFdjabZuaepjaWUgIHYgIHphY3p5bmEgdHJ5YiBXaXp1YWxueS4gTW+/ZXN6IHBvcnVzemHmIGt1cnNvcmVtLCBieQorICAgICAgIHptaWVuaeYgcm96bWlhcnkgemF6bmFjemVuaWEuIE1vv2VzeiB0Zb8gdb955iBvcGVyYXRvcmEsIGJ5IHpyb2Jp5iBjb7YKICAgICAgICB6IHRla3N0ZW0uIE5hIHByenlrs2FkICBkICB1c3V3YSB0ZWtzdC4KIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAJCSAgIExla2NqYSA1LjQuOiBXU1RBV0lBTklFIEkgo6FDWkVOSUUgUExJS9NXCiAKIAotCSAgICAqKiBCeSB3c3Rhd2nmIHphd2FydG+25iBwbGlrdSB3cGlzeiAgIDpyIE5BWldBX1BMSUtVICoqCisJICAgICoqIEJ5IHdzdGF3aeYgemF3YXJ0b7bmIHBsaWt1LCB3cGlzeiAgIDpyIE5BWldBX1BMSUtVICoqCiAKICAgMS4gVW1pZbbmIGt1cnNvciB0db8gcG93eb9laiB0ZWogbGluaWkuCiAKIFVXQUdBOiBQbyB3eWtvbmFuaXUga3Jva3UgMi4gem9iYWN6eXN6IHRla3N0IHogTGVrY2ppIDUuMy4gUG90ZW0gcHJ6ZWpkvAotICAgICAgIGRvIERPo1UgYnkgem9iYWN6eeYgcG9ub3duaWUgdOogbGVrY2rqLgorICAgICAgIGRvIERPo1UsIGJ5IHpvYmFjennmIHBvbm93bmllIHTqIGxla2Nq6i4KIAogICAyLiBUZXJheiB3Y3p5dGFqIHBsaWsgVEVTVCB1v3l3YWqxYyBwb2xlY2VuaWEgIDpyIFRFU1QgLCBnZHppZSBURVNUCiAgICAgIGplc3QgbmF6d7EgcGxpa3UuCiAgICAgIFdjenl0YW55IHBsaWsgamVzdCB1bWllc3pjem9ueSBwb25pv2VqIGxpbmlpIHoga3Vyc29yZW0uCiAKLSAgMy4gQnkgc3ByYXdkemnmIGN6eSBwbGlrIHpvc3RhsyB3Y3p5dGFueSBjb2ZuaWoga3Vyc29yIGkgem9iYWN6LCC/ZQorICAzLiBCeSBzcHJhd2R6aeYgY3p5IHBsaWsgem9zdGGzIHdjenl0YW55LCBjb2ZuaWoga3Vyc29yIGkgem9iYWN6LCC/ZQogICAgICB0ZXJheiBzsSBkd2llIGtvcGllIExla2NqaSA1LjMuLCBvcnlnaW5hsyBpIGtvcGlhIHogcGxpa3UuCiAKIFVXQUdBOiBNb79lc3ogdGW/IHdjenl0YeYgd3lqtmNpZSB6ZXdu6nRyem5lZ28gcG9sZWNlbmlhLiBOYSBwcnp5a7NhZApAQCAtNzIzLDE0ICs3MjMsMTQgQEAKIAogICAxLiBQcnplbmlltiBrdXJzb3IgZG8gbGluaWkgcG9uab9laiBvem5hY3pvbmVqIC0tLT4uCiAKLSAgMi4gV3Bpc3ogIG8gIChtYbNlKSBieSBvdHdvcnp55iBsaW5p6iBQT05Jr0VKIGt1cnNvcmEgaSBwcnplbmlltuYgc2nqCisgIDIuIFdwaXN6ICBvICAobWGzZSksIGJ5IG90d29yennmIGxpbmnqIFBPTkmvRUoga3Vyc29yYSBpIHByemVuaWW25iBzaeoKICAgICAgZG8gdHJ5YnUgSW5zZXJ0ICh3cHJvd2FkemFuaWUpLgogCiAgIDMuIFdwaXN6IHRyb2No6iB0ZWtzdHUgaSB3Y2m2bmlqIDxFU0M+IGJ5IHd5arbmIHogdHJ5YnUgSW5zZXJ0ICh3cHJvd2FkemFuaWUpLgogCiAtLS0+IFBvIHdjabZuaepjaXUgIG8gIGt1cnNvciB6bmFqZHppZSBzaeogdyBvdHdhcnRlaiBsaW5paSB3IHRyeWJpZSBJbnNlcnQuCiAKLSAgNC4gQnkgb3R3b3J6eeYgbGluaeogUE9XWa9FSiBrdXJzb3JhIHdjabZuaWogd2llbGtpZSAgTyAgemFtaWFzdCBtYbNlZ28KKyAgNC4gQnkgb3R3b3J6eeYgbGluaeogUE9XWa9FSiBrdXJzb3JhLCB3Y2m2bmlqIHdpZWxraWUgIE8gIHphbWlhc3QgbWGzZWdvCiAgICAgIG8gLiBXeXBy82J1aiB0byBuYSBsaW5paSBwb25pv2VqLgogCiAtLS0+IE90d/NyeiBsaW5p6iBwb3d5v2VqIHdjaXNrYWqxYyBTSElGVC1PIGdkeSBrdXJzb3IgYupkemllIG5hIHRlaiBsaW5paS4KQEAgLTc0Nyw5ICs3NDcsOSBAQAogCiAgIDIuIFdjaXNrYWogIGUgIGRvcPNraSBrdXJzb3IgbmllIGLqZHppZSBuYSBrb/FjdSBsaSAuCiAKLSAgMy4gV3Bpc3ogIGEgIChtYbNlKSBhYnkgZG9kYeYgdGVrc3QgWkEgem5ha2llbSBwb2Qga3Vyc29yZW0uCisgIDMuIFdwaXN6ICBhICAobWGzZSksIGFieSBkb2Rh5iB0ZWtzdCBaQSB6bmFraWVtIHBvZCBrdXJzb3JlbS4KIAotICA0LiBEb2tv8WN6IHd5cmF6IHRhayBqYWsgdyBsaW5paSBwb25pv2VqLiBXY2m2bmlqIDxFU0M+IGFieSBvcHW2Y2nmIHRyeWIKKyAgNC4gRG9rb/FjeiB3eXJheiB0YWssIGphayB3IGxpbmlpIHBvbmm/ZWouIFdjabZuaWogPEVTQz4gYWJ5IG9wdbZjaeYgdHJ5YgogICAgICBJbnNlcnQuCiAKICAgNS4gVb95aiAgZSAgYnkgcHJ6ZWq25iBkbyBrb2xlam5lZ28gbmllZG9rb/Fjem9uZWdvIHd5cmF6dSBpIHBvd3RhcnphaiBrcm9raQpAQCAtNzU4LDcgKzc1OCw3IEBACiAtLS0+IFRhIGxpIHBveiBDaSDmd2kgZG9kYXcgdGVrcyBkbyBrb/EgbGluCiAtLS0+IFRhIGxpbmlhIHBvendvbGkgQ2kg5ndpY3p55iBkb2Rhd2FuaWUgdGVrc3R1IGRvIGtv8WNhIGxpbmlpLgogCi1Vd2FnYTogIGEgLCAgaSAgb3JheiAgQSAgcHJvd2FkerEgZG8gdHJ5YnUgSW5zZXJ0LCBqZWR5brEgcvO/bmljsSBqZXN0IG1pZWpzY2UKK1V3YWdhOiAgYSAsICBpICBvcmF6ICBBICBwcm93YWR6sSBkbyB0cnlidSBJbnNlcnQsIGplZHlusSBy879uaWOxIGplc3QgbWllanNjZSwKICAgICAgICBnZHppZSBub3dlIHpuYWtpIGLqZLEgZG9kYXdhbmUuCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAkJICAgTGVrY2phIDYuMy46IElOTkEgV0VSU0pBIFJFUExBQ0UgKHphbWlhbmEpCkBAIC03OTEsMTYgKzc5MSwxNiBAQAogCiAgIDEuIFByemVqZLwgZG8gbGluaWkgb3puYWN6b25laiAtLS0+IGkgdW1pZbbmIGt1cnNvciB6YSAiYSkiLgogCi0gIDIuIFdlamS8IHcgdHJ5YiBWaXN1YWwgIHYgIGkgcHJ6ZW5pZbYga3Vyc29yIG5hIHBvY3qxdGVrICJwaWVyd3N6eSIuCisgIDIuIFdlamS8IHcgdHJ5YiBXaXp1YWxueSAgdiAgaSBwcnplbmlltiBrdXJzb3IgbmEgcG9jerF0ZWsgInBpZXJ3c3p5Ii4KIAotICAzLiBXY2m2bmlqICB5ICBhYnkgeWFua293YeYgKGtvcGlvd2HmKSBwb2S2d2lldGxvbnkgdGVrc3QuCisgIDMuIFdjabZuaWogIHkgIGFieSBrb3Bpb3dh5iAoeWFua293YeYpIHBvZLZ3aWV0bG9ueSB0ZWtzdC4KIAogICA0LiBQcnplbmlltiBrdXJzb3IgZG8ga2/xY2EgbmFzdOpwbmVqIGxpbmlpOiAgaiQKIAotICA1LiBXY2m2bmlqICBwICBhYnkgd3Bha293YeYgKHBhc3RlKSB0ZWtzdC4gIERvZGFqOiAgYSBkcnVnaTxFU0M+IC4KKyAgNS4gV2Nptm5paiAgcCAgYWJ5IHdrbGVp5iAod3Bha293YeYpIHRla3N0LiAgRG9kYWo6ICBhIGRydWdpPEVTQz4gLgogCi0gIDYuIFW/eWogdHJ5YnUgV2l6dWFsbmVnbyBhYnkgd3licmHmICIgZWxlbWVudC4iLCB5YW5rdWogZ28gIHkgLCBwcnplamS8IGRvCi0gICAgIGtv8WNhIG5hc3TqcG5laiBsaW5paSAgaiQgaSB1cGFrdWogdGFtIHRla3N0IHogIHAgLgorICA2LiBVv3lqIHRyeWJ1IFdpenVhbG5lZ28sIGFieSB3eWJyYeYgIiBlbGVtZW50LiIsIHlhbmt1aiBnbyAgeSAsIHByemVqZLwgZG8KKyAgICAga2/xY2EgbmFzdOpwbmVqIGxpbmlpICBqJCAgaSB1cGFrdWogdGFtIHRla3N0IHogIHAgLgogCiAtLS0+ICBhKSB0byBqZXN0IHBpZXJ3c3p5IGVsZW1lbnQuCiAgICAgICBiKQpAQCAtODEwLDcgKzgxMCw3IEBACiAJCQkgTGVrY2phIDYuNS46IFVTVEFXSUFOSUUgT1BDSkkKIAogCi0qKiBVc3Rhd2lhbmllIG9wY2ppIHRhayBieSBzenVrYWogbHViIHN1YnN0eXR1Y2phIGlnbm9yb3dhs3kgd2llbGtvtuYgbGl0ZXIgKioKKyoqIFVzdGF3aWFuaWUgb3BjamkgdGFrLCBieSBzenVrYWogbHViIHN1YnN0eXR1Y2phIGlnbm9yb3dhs3kgd2llbGtvtuYgbGl0ZXIgKioKIAogICAxLiBTenVrYWogJ2lnbm9yZScgd3Bpc3VqsWM6ICAgIC9pZ25vcmU8RU5URVI+CiAgICAgIFBvd3Tzcnogc3p1a2FuaWUga2lsa2EgcmF6eSBuYWNpc2tharFjIGtsYXdpc3ogIG4gLgpAQCAtODI4LDcgKzgyOCw3IEBACiAKICAgNi4gQWJ5IHd5s7FjennmIGlnbm9yb3dhbmllIHdpZWxrb7ZjaSBsaXRlcjogIDpzZXQgbm9pYwogCi1Vd2FnYTogQWJ5IHVzdW6x5iBwb2S2d2lldGxhbmllIGRvcGFzb3dh8SB3cGlzejogICA6bm9obHNlYXJjaAorVXdhZ2E6IEFieSB1c3VuseYgcG9ktndpZXRsYW5pZSBkb3Bhc293YfEsIHdwaXN6OiAgIDpub2hsc2VhcmNoCiBVd2FnYTogQWJ5IGlnbm9yb3dh5iB3aWVsa2+25iBsaXRlciBkbGEgamVkbmVnbyB3eXN6dWtpd2FuaWE6IC9pZ25vcmVcYzxFTlRFUj4KIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkJICAgICBMRUtDSkEgNi4gUE9EU1VNT1dBTklFCkBAIC04MzcsMzYgKzgzNywzNiBAQAogICAxLiBXcGlzYW5pZSAgbyAgb3R3aWVyYSBsaW5p6iBQT05Jr0VKIGt1cnNvcmEuCiAgICAgIFdwaXNhbmllICBPICBvdHdpZXJhIGxpbmnqIFBPV1mvRUoga3Vyc29yYS4KIAotICAyLiBXcGlzYW5pZSAgYSAgYnkgd3N0YXdp5iB0ZWtzdCBaQSB6bmFraWVtIG5hLCBrdPNyeW0gamVzdCBrdXJzb3IuCisgIDIuIFdwaXNhbmllICBhICB3c3Rhd2lhIHRla3N0IFpBIHpuYWtpZW0sIG5hIGt083J5bSBqZXN0IGt1cnNvci4KICAgICAgV3Bpc2FuaWUgIEEgIGRvZGFqZSB0ZWtzdCBuYSBrb/FjdSBsaW5paS4KIAogICAzLiBQb2xlY2VuaWUgIGUgIHByemVub3NpIGRvIGtv8WNhIHd5cmF6dS4KLSAgNC4gT3BlcmF0b3IgIHkgIHlhbmt1amUgKGtvcGl1amUpIHRla3N0LCAgcCAgcGFrdWplICh3a2xlamEsIHBhc3RlKSBnby4KKyAgNC4gT3BlcmF0b3IgIHkgIHlhbmt1amUgKGtvcGl1amUpIHRla3N0LCAgcCAgcGFrdWplICh3a2xlamEpIGdvLgogICA1LiBXcGlzYW5pZSB3aWVsa2llZ28gIFIgIHdwcm93YWR6YSB3IHRyeWIgUmVwbGFjZSAoemFtaWFuYSkgZG9w82tpCiAgICAgIG5pZSB6b3N0YW5pZSB3Y2m2bmnqdHkgPEVTQz4uCi0gIDYuIFdwaXNhbmllICI6c2V0IHh4eCIgdXN0YXdpYSBvcGNq6iAieHh4Ii4gTmlldGvzcmUgb3BjamU6CisgIDYuIFdwaXNhbmllICI6c2V0IHh4eCIgdXN0YXdpYSBvcGNq6iAieHh4Ii4gTmlla3TzcmUgb3BjamU6CiAJJ2ljJyAgJ2lnbm9yZWNhc2UnCWlnbm9ydWogd2llbGtvtuYgem5ha/N3CiAJJ2lzJyAgJ2luY3NlYXJjaCcJcG9rYb8gY3rqtmNpb3dlIGRvcGFzb3dhbmlhCiAJJ2hscycgJ2hsc2VhcmNoJwlwb2S2d2lldGwgd3N6eXN0a2llIGRvcGFzb3dhbmlhCi0gICAgIE1vv2VzeiB1v3nmIHphcvN3bm8gZLN1Z2llaiBqYWsgaSBrcvN0a2llaiBmb3JteS4KLSAgNy4gRG9kYWogIm5vIiBhYnkgd3mzsWN6eeYgb3Bjauo6ICAgOnNldCBub2ljCisgICAgIE1vv2VzeiB1v3nmIHphcvN3bm8gZLN1Z2llaiwgamFrIGkga3LzdGtpZWogZm9ybXkuCisgIDcuIERvZGFqICJubyIsIGFieSB3ebOxY3p55iBvcGNq6jogICA6c2V0IG5vaWMKIAogCiAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCUxFS0NKQSA3LjEuIEpBSyBVWllTS0HGIFBPTU9DCisJCQkgTEVLQ0pBIDcuMS4gSkFLIFVaWVNLQcYgUE9NT0M/CiAKIAkJICAgICAgKiogVb95Y2llIHN5c3RlbXUgcG9tb2N5IG9uLWxpbmUgKioKIAotICBWaW0gcG9zaWFkYSBiYXJkem8gZG9icnkgc3lzdGVtIHBvbW9jeSBvbi1saW5lLiBCeSB6YWN6seYgc3By82J1aiBqZWRuZWoKKyAgVmltIHBvc2lhZGEgYmFyZHpvIGRvYnJ5IHN5c3RlbSBwb21vY3kgb24tbGluZS4gQnkgemFjerHmLCBzcHLzYnVqIGplZG5lagogICB6IHRyemVjaCBtb79saXdvtmNpOgogCS0gd2Nptm5paiBrbGF3aXN6IDxIRUxQPiAoamW2bGkgdGFraSBtYXN6KQogCS0gd2Nptm5paiBrbGF3aXN6IDxGMT4gKGpltmxpIHRha2kgbWFzeikKIAktIHdwaXN6ICAgOmhlbHA8RU5URVI+CiAKLSAgUHJ6ZWN6eXRhaiB0ZWtzdCB3IG9rbmllIHBvbW9jeSAgYWJ5IGRvd2llZHppZeYgc2nqIGphayBkemlhs2EgcG9tb2MuCisgIFByemVjenl0YWogdGVrc3QgdyBva25pZSBwb21vY3ksIGFieSBkb3dpZWR6aWXmIHNp6iBqYWsgZHppYbNhIHBvbW9jLgogICB3cGlzeiBDVFJMLVcgQ1RSTC1XICAgIGFieSBwcnplc2tvY3p55iB6IGplZG5lZ28gb2tuYSBkbyBpbm5lZ28KICAgd3Bpc3ogOnE8RU5URVI+ICAgICAgICBhYnkgemFta26x5iBva25vIHBvbW9jeS4KIApAQCAtODk0LDEwICs4OTQsMTAgQEAKICAgMy4gWmFwaXN6IHBsaWs6CiAgICAgIDp3CiAKLSAgTmFzdOpwbnltIHJhemVtIGdkeSB6YWN6bmllc3ogcHJhY+ogdyBWaW1pZSBi6mR6aWUgb24gdb95d2HmIHBvZLZ3aWV0bGFuaWEKKyAgTmFzdOpwbnltIHJhemVtLCBnZHkgemFjem5pZXN6IHByYWPqIHcgVmltaWUgYupkemllIG9uIHW/eXdh5iBwb2S2d2lldGxhbmlhCiAgIHNrs2FkbmkuIE1vv2VzeiBkb2Rh5iB3c3p5c3RraWUgc3dvamUgdWx1YmlvbmUgdXN0YXdpZW5pYSBkbyB0ZWdvIHBsaWt1CiAgICJ2aW1yYyIuCi0gIEFieSB1enlza2HmIHdp6mNlaiBpbmZvcm1hY2ppIHdwaXN6ICAgICA6aGVscCB2aW1yYy1pbnRybworICBBYnkgdXp5c2th5iB3aepjZWogaW5mb3JtYWNqaSwgd3Bpc3ogICAgIDpoZWxwIHZpbXJjLWludHJvCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkJICBMZWtjamEgNy4zLjogVVpVUEWjTklBTklFCkBAIC05MDcsMTEgKzkwNywxMSBAQAogCiAgIDEuIFVwZXduaWogc2nqLCC/ZSBWaW0gbmllIGplc3QgdyB0cnliaWUga29tcGF0eWJpbG5vtmNpOiAgIDpzZXQgbm9jcAogCi0gIDIuIFplcmtuaWogamFraWUgcGxpa2kgc7EgdyBiaWW/sWNtIGthdGFsb2d1OiAgIDohbHMgICBsdWIgICA6IWRpcgorICAyLiBaZXJrbmlqLCBqYWtpZSBwbGlraSBzsSB3IGJpZb+xY3ltIGthdGFsb2d1OiAgIDohbHMgICBsdWIgICA6IWRpcgogCiAgIDMuIFdwaXN6IHBvY3qxdGVrIHBvbGVjZW5pYTogICA6ZQogCi0gIDQuIFdjabZuaWogIENUUkwtRCAgaSBWaW0gcG9rYb9lIGxpc3TqIHBvbGVjZfEgamFraWUgemFjenluYWqxIHNp6iBuYSAiZSIuCisgIDQuIFdjabZuaWogIENUUkwtRCAgaSBWaW0gcG9rYb9lIGxpc3TqIHBvbGVjZfEsIGpha2llIHphY3p5bmFqsSBzaeogbmEgImUiLgogCiAgIDUuIFdjabZuaWogIDxUQUI+ICBpIFZpbSB1enVwZbNuaSBwb2xlY2VuaWUgZG8gIjplZGl0Ii4KIApAQCAtOTI1LDcgKzkyNSw3IEBACiAJCQkgICAgTGVrY2phIDcuIFBPRFNVTU9XQU5JRQogCiAKLSAgMS4gV3Bpc3ogIDpoZWxwICBsdWIgd2Nptm5paiA8RjE+IGx1YiA8SGVscD4gYWJ5IG90d29yennmIG9rbm8gcG9tb2N5LgorICAxLiBXcGlzeiAgOmhlbHAgIGFsYm8gd2Nptm5paiA8RjE+IGx1YiA8SGVscD4gYWJ5IG90d29yennmIG9rbm8gcG9tb2N5LgogCiAgIDIuIFdwaXN6ICA6aGVscCBjbWQgIGFieSB1enlza2HmIHBvbW9jIG8gIGNtZCAuCiAKQEAgLTk0NSwxNCArOTQ1LDE0IEBACiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCi0gIFR1dGFqIHNp6iBrb/FjenkgdHV0b3JpYWwgVmltYS4gWm9zdGGzIG9uIHBvbXm2bGFueSB0YWsgYWJ5IGRh5iBrcvN0a2kKKyAgVHV0YWogc2nqIGtv8WN6eSB0dXRvcmlhbCBWaW1hLiBab3N0YbMgb24gcG9tebZsYW55IHRhaywgYWJ5IGRh5iBrcvN0a2kKICAgcHJ6ZWdssWQgamVnbyBtb79saXdvtmNpLCB3eXN0YXJjemFqsWN5IGJ5tiBt82ezIGdvIHW/eXdh5i4gSmVzdCBvbgotICBkYWxla2kgb2Qga29tcGxldG5vtmNpIHBvbmlld2G/IFZpbSBtYSBvIHdpZWxlLCB3aWVsZSB3aepjZWogcG9sZWNl8S4KKyAgZGFsZWtpIG9kIGtvbXBsZXRub7ZjaSwgcG9uaWV3Yb8gVmltIG1hIG8gd2llbGUsIHdpZWxlIHdp6mNlaiBwb2xlY2XxLgogCiAgIERsYSBkYWxzemVqIG5hdWtpIHJla29tZW5kdWplbXkga3Npsb9r6joKIAlWaW0gLSBWaSBJbXByb3ZlZCAtIGF1dG9yIFN0ZXZlIE91YWxsaW5lCiAJV3lkYXdjYTogTmV3IFJpZGVycwotICBQaWVyd3N6YSBrc2mxemthIGNhs2tvd2ljaWUgcG+2d2nqY29uYSBWaW1vd2kuIFW/eXRlY3puYSB6d7Nhc3pjemEgZGxhCisgIFBpZXJ3c3phIGtzabG/a2EgY2Gza293aWNpZSBwb7Z3aepjb25hIFZpbW93aS4gVb95dGVjem5hIHp3s2FzemN6YSBkbGEKICAgcG9jerF0a3VqsWN5Y2guIFphd2llcmEgd2llbGUgcHJ6eWuzYWTzdyBpIGlsdXN0cmFjamkuCiAgIFpvYmFjeiBodHRwOi8vaWNjZi1ob2xsYW5kLm9yZy4vY2xpY2s1Lmh0bWwKIApAQCAtOTYwLDcgKzk2MCw3IEBACiAgIHBvbGVjZW5pYToKIAlMZWFybmluZyB0aGUgVmkgRWRpdG9yIC0gYXV0b3IgTGluZGEgTGFtYgogCVd5ZGF3Y2E6IE8nUmVpbGx5ICYgQXNzb2NpYXRlcyBJbmMuCi0gIFRvIGRvYnJhIGtzabG/a2EgYnkgZG93aWVkemll5iBzaeogbmllbWFsIHdzenlzdGtpZWdvIGNvIGNoY2lhs2J5tiB6cm9iaeYKKyAgVG8gZG9icmEga3Npsb9rYSwgYnkgZG93aWVkemll5iBzaeogbmllbWFsIHdzenlzdGtpZWdvLCBjbyBjaGNpYbNiebYgenJvYmnmCiAgIHogVmkuIFN683N0YSBlZHljamEgemF3aWVyYSB0Zb8gaW5mb3JtYWNqZSBvIFZpbWllLgogCiAgIFBvIHBvbHNrdSB3eWRhbm86CkBAIC05OTEsNCArOTkxLDUgQEAKICAgcmV2LiBNYXJ6ZWMgMjAwMgogICAybmQgcmV2LiBXcnplc2ll8SAyMDA0CiAgIDNyZCByZXYuIE1hcnplYyAyMDA2CisgIDR0aCByZXYuIEdydWR6aWXxIDIwMDgKICAgV3N6ZWxraWUgdXdhZ2kgcHJvc3rqIGtpZXJvd2HmIG5hOiBtaWttYWNoQHdwLnBsCmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLnBsLmNwMTI1MCBiL3J1bnRpbWUvdHV0b3IvdHV0b3IucGwuY3AxMjUwCmluZGV4IDk4OTcxZDAuLjhjNjQ3ZTEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvdHV0b3IvdHV0b3IucGwuY3AxMjUwCisrKyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IucGwuY3AxMjUwCkBAIC0yLDkgKzIsOSBAQAogPSAgICBXIGkgdCBhIGogICB3ICAgdCB1IHQgbyByIGkgYSBsIHUgICBWIEkgTSAtIGEgICAgICAtICAgIFdlcnNqYSAgMS43LiAgICAgPQogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogCi0gICAgIFZpbSB0byBwb3Tqv255IGVkeXRvciwga3TzcnkgcG9zaWFkYSB3aWVsZSBwb2xlY2XxLCB6Ynl0IGR1v28gYnkKKyAgICAgVmltIHRvIHBvdOq/bnkgZWR5dG9yLCBrdPNyeSBwb3NpYWRhIHdpZWxlIHBvbGVjZfEsIHpieXQgZHW/bywgYnkKICAgICAgd3lqYZxuaeYgamUgd3N6eXN0a2llIHcgdHltIHR1dG9yaWFsdS4gVGVuIHByemV3b2RuaWsgbWEgbmF1Y3p55gotICAgICBDaeogcG9zs3VnaXdh5iBzaeogd3lzdGFyY3pharljbyB3aWVsb21hIGtvbWVuZGFtaSBieZwgbfNnsyCzYXR3bworICAgICBDaeogcG9zs3VnaXdh5iBzaeogd3lzdGFyY3pharljbyB3aWVsb21hIGtvbWVuZGFtaSwgYnmcIG3zZ7Mgs2F0d28KICAgICAgdb95d2HmIFZpbWEgamFrbyBlZHl0b3JhIG9n82xuZWdvIHByemV6bmFjemVuaWEuCiAKICAgICAgQ3phcyBwb3RyemVibnkgbmEgdWtv8WN6ZW5pZSB0dXRvcmlhbGEgdG8gMjUgZG8gMzAgbWludXQgaSB6YWxlv3kKQEAgLTEzLDE0ICsxMywxNCBAQAogCSBVV0FHQToKIAkgUG9sZWNlbmlhIHd5a29ueXdhbmUgdyBjemFzaWUgbGVrY2ppIHptb2R5ZmlrdWq5IHRla3N0LiBacvNiCiAJIHdjemWcbmllaiBrb3Bp6iB0ZWdvIHBsaWt1IGRvIOZ3aWN6ZfEgKGplnGxpIHphY3q5s2WcIGtvbWVuZLkKLQkgInZpbXR1dG9yIiB0byBqdb8gcHJhY3VqZXN6IG5hIGtvcGlpKS4KKwkgInZpbXR1dG9yIiwgdG8ganW/IHByYWN1amVzeiBuYSBrb3BpaSkuCiAKLQkgUGFtaep0YWogv2UgcHJ6ZXdvZG5payB0ZW4gem9zdGGzIHphcHJvamVrdG93YW55IGRvIG5hdWtpIHBvcHJ6ZXoKLQkg5ndpY3plbmlhLiBPem5hY3phIHRvLCC/ZSBtdXNpc3ogd3lrb255d2HmIHBvbGVjZW5pYSBieSBuYXVjennmIHNp6iBpY2gKLQkgcHJhd2lks293by4gSmWcbGkgYupkemllc3ogamVkeW5pZSBjenl0YbMgdGVrc3Qgc3p5YmtvIHphcG9tbmlzeiB3aWVsZQorCSBQYW1p6nRhaiwgv2UgcHJ6ZXdvZG5payB0ZW4gem9zdGGzIHphcHJvamVrdG93YW55IGRvIG5hdWtpIHBvcHJ6ZXoKKwkg5ndpY3plbmlhLiBPem5hY3phIHRvLCC/ZSBtdXNpc3ogd3lrb255d2HmIHBvbGVjZW5pYSwgYnkgbmF1Y3p55iBzaeogaWNoCisJIHByYXdpZLNvd28uIEplnGxpIGLqZHppZXN6IGplZHluaWUgY3p5dGGzIHRla3N0LCBzenlia28gemFwb21uaXN6IHdpZWxlCiAJIHBvbGVjZfEhCiAKLSAgICAgVGVyYXogdXBld25paiBzaeosIL9lIG5pZSBtYXN6IHdjaZxuaep0ZWdvIENhcHNMb2NrYSBpIHdjaXNrYWogIGoKKyAgICAgVGVyYXogdXBld25paiBzaeosIL9lIG5pZSBtYXN6IHdjaZxuaep0ZWdvIENhcHMgTG9ja2EgaSB3Y2lza2FqICBqCiAgICAgIHRhayBks3VnbyBkb3Dza2kgTGVrY2phIDEuMS4gbmllIHd5cGWzbmkgY2Gza293aWNpZSBla3JhbnUuCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpAQCAtNDAsMjggKzQwLDI4IEBACiAKICAgMy4gVb95d2FquWMgc3RyemGza2kgdyBk87MgcHJ6ZWpknyBkbyBuYXN06nBuZWogbGVrY2ppLgogCi1Vd2FnYTogSmWcbGkgbmllIGplc3RlnCBwZXdpZW4gY3plZ2+cIGNvIHdwaXNhs2WcLCB3Y2mcbmlqIDxFU0M+IGJ5IHdy82Np5iBkbworVXdhZ2E6IEplnGxpIG5pZSBqZXN0ZZwgcGV3aWVuIGN6ZWdvnCBjbyB3cGlzYbNlnCwgd2NpnG5paiA8RVNDPiwgYnkgd3LzY2nmIGRvCiAgICAgICAgdHJ5YnUgTm9ybWFsLiBXdGVkeSBwb3d083J6IHBvbGVjZW5pZS4KIAogVXdhZ2E6IEtsYXdpc3plIGt1cnNvcmEgdGFrv2UgcG93aW5ueSBkemlhs2HmLCBhbGUgdb95d2FquWMgIGhqa2wgIGLqZHppZXN6Ci0gICAgICAgdyBzdGFuaWUgcG9ydXN6YeYgc2nqIG8gd2llbGUgc3p5YmNpZWogamFrIHNp6iB0eWxrbyBwcnp5end5Y3phaXN6LgorICAgICAgIHcgc3RhbmllIHBvcnVzemHmIHNp6iBvIHdpZWxlIHN6eWJjaWVqLCBqYWsgc2nqIHR5bGtvIHByenl6d3ljemFpc3ouCiAgICAgICAgTmFwcmF3ZOohCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkgICAgTGVrY2phIDEuMi46IFdZQ0hPRFpFTklFIFogVklNLWEKIAotICEhIFVXQUdBOiBQcnplZCB3eWtvbmFuaWVtIGpha2llZ29rb2x3aWVrIHBvbGVjZW5pYSBwcnplY3p5dGFqIGNhs7kgbGVrY2rqLiEhCisgISEgVVdBR0E6IFByemVkIHd5a29uYW5pZW0gamFraWVnb2tvbHdpZWsgcG9sZWNlbmlhIHByemVjenl0YWogY2GzuSBsZWtjauogISEKIAogICAxLiBXY2mcbmlqIDxFU0M+IChhYnkgdXBld25p5iBzaeosIL9lIGplc3RlnCB3IHRyeWJpZSBOb3JtYWwpLgogICAyLiBXcGlzejoJCQk6cSE8RU5URVI+LgotICAgICBUbyBzcG93b2R1amUgd3lqnGNpZSB6IGVkeXRvcmEgUE9SWlVDQUqlQyB3c3plbGtpZSB6bWlhbnkgamFraWUKLSAgICAgemS5v3mzZZwgenJvYmnmLiBKZZxsaSBjaGNlc3ogemFwYW1p6nRh5iB6bWlhbnkgaSB3eWqc5gorICAgICBUbyBzcG93b2R1amUgd3lqnGNpZSB6IGVkeXRvcmEgUE9SWlVDQUqlQyB3c3plbGtpZSB6bWlhbnksIGpha2llCisgICAgIHpkub95s2WcIHpyb2Jp5i4gSmWcbGkgY2hjZXN6IHphcGFtaep0YeYgem1pYW55IGkgd3lqnOYsCiAgICAgIHdwaXN6OgkJCTp3cTxFTlRFUj4KIAogICAzLiBLaWVkeSB3aWR6aXN6IHpuYWsgemFjaOp0eSBwb3ezb2tpIHdwaXN6IGtvbWVuZOosIL9lYnkgd3LzY2nmCiAgICAgIGRvIHR1dG9yaWFsYS4gQ3p5bGk6CXZpbXR1dG9yPEVOVEVSPgogCi0gIDQuIEplnGxpIGNoY2VzeiB6YXBhbWnqdGHmIHBvbGVjZW5pYSwgd3lrb25haiBrcm9raSAxLiBkbyAzLiBhYnkKKyAgNC4gSmWcbGkgY2hjZXN6IHphcGFtaep0YeYgcG9sZWNlbmlhLCB3eWtvbmFqIGtyb2tpIDEuIGRvIDMuLCBhYnkKICAgICAgd3lqnOYgaSB3cvNjaeYgZG8gZWR5dG9yYS4KIAogVVdBR0E6IDpxITxFTlRFUj4gcG9yenVjYSB3c3plbGtpZSB6bWlhbnkgamFraWUgenJvYmmzZZwuIFcgbmFzdOpwbnljaApAQCAtODUsNyArODUsNyBAQAogCiAtLS0+IEtrcm93YSBwcnJ6ZXNrb2N6ebNhIHBycnpleiBrc2lp6r95Y2MuCiAKLSAgNS4gVGVyYXoga2llZHkgemRhbmllIGplc3QgcG9wcmF3aW9uZSBwcnplamSfIGRvIExla2NqaSAxLjQuCisgIDUuIFRlcmF6LCBraWVkeSB6ZGFuaWUgamVzdCBwb3ByYXdpb25lLCBwcnplamSfIGRvIExla2NqaSAxLjQuCiAKIFVXQUdBOiBVY3ogc2nqIHByemV6IOZ3aWN6ZW5pZSwgbmllIHdrdXdhbmllLgogCkBAIC0xMDEsMTggKzEwMSwxOCBAQAogCiAgIDEuIFByemVuaWWcIGt1cnNvciBkbyBwaWVyd3N6ZWogbGluaWkgcG9uab9laiBvem5hY3pvbmVqIC0tLT4uCiAKLSAgMi4gQWJ5IHBvcHJhd2nmIHBpZXJ3c3p5IHdpZXJzeiwgdXN0YXcga3Vyc29yIG5hIHBpZXJ3c3p5bSB6bmFrdSBQTyB0eW0KKyAgMi4gQWJ5IHBvcHJhd2nmIHBpZXJ3c3p5IHdpZXJzeiwgdXN0YXcga3Vyc29yIG5hIHBpZXJ3c3p5bSB6bmFrdSBQTyB0eW0sCiAgICAgIGdkemllIHRla3N0IG1hIGJ55iB3c3Rhd2lvbnkuCiAKICAgMy4gV2NpnG5paiAgaSAgYSBuYXN06nBuaWUgd3Bpc3oga29uaWVjem5lIHBvcHJhd2tpLgogCi0gIDQuIFBvIHBvcHJhd2llbml1IGKz6mR1IHdjaZxuaWogPEVTQz4gYnkgd3LzY2nmIGRvIHRyeWJ1IE5vcm1hbC4KLSAgICAgUG93dGFyemFqIGtyb2tpIDIuIGRvIDQuIGFieSBwb3ByYXdp5iBjYbNlIHpkYW5pZS4KKyAgNC4gUG8gcG9wcmF3aWVuaXUgYrPqZHUgd2NpnG5paiA8RVNDPiwgYnkgd3LzY2nmIGRvIHRyeWJ1IE5vcm1hbC4KKyAgICAgUG93dGFyemFqIGtyb2tpIDIuIGRvIDQuLCBhYnkgcG9wcmF3aeYgY2GzZSB6ZGFuaWUuCiAKIC0tLT4gVyB0ZWogYnJramUgdHJvY2jqIC4KIC0tLT4gVyB0ZWogbGluaWkgYnJha3VqZSB0cm9jaOogdGVrc3R1LgogCi0gIDUuIEtpZWR5IGN6dWplc3ogc2nqIHN3b2JvZG5pZSB3c3Rhd2lharljIHRla3N0IHByemVqZJ8gZG8KKyAgNS4gS2llZHkgY3p1amVzeiBzaeogc3dvYm9kbmllIHdzdGF3aWFquWMgdGVrc3QsIHByemVqZJ8gZG8KICAgICAgcG9kc3Vtb3dhbmlhIHBvbmm/ZWouCiAKIApAQCAtMTI5LDcgKzEyOSw3IEBACiAKICAgMy4gS2llZHkgdGVrc3Qgem9zdGGzIGRvZGFueSwgd2NpnG5paiA8RVNDPiBpIHdy8+YgZG8gdHJ5YnUgTm9ybWFsbmVnby4KIAotICA0LiBQcnplbmllnCBrdXJzb3IgZG8gZHJ1Z2llaiBsaW5paSBvem5hY3pvbmVqIC0tLT4gaSBwb3d083J6IGtyb2tpIDIgaSAzCisgIDQuIFByemVuaWWcIGt1cnNvciBkbyBkcnVnaWVqIGxpbmlpIG96bmFjem9uZWogLS0tPiBpIHBvd3Tzcnoga3Jva2kgMi4gaSAzLiwKICAgICAgYWJ5IHBvcHJhd2nmIHpkYW5pZS4KIAogLS0tPiBCcmFrdWplIHR1IHRybwpAQCAtMTM3LDI3ICsxMzcsMjcgQEAKIC0tLT4gVHUgdGW/IHRyb2No6iBicmEKICAgICAgVHUgdGW/IHRyb2No6iBicmFrdWplLgogCi0gIDUuIEtpZWR5IGp1vyB1dHJ3YWxps2WcIOZ3aWN6ZW5pZSBwcnplamSfIGRvIGxla2NqaSAxLjYuCisgIDUuIEtpZWR5IGp1vyB1dHJ3YWxps2WcIOZ3aWN6ZW5pZSwgcHJ6ZWpknyBkbyBsZWtjamkgMS42LgogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAkJCSAgTGVrY2phIDEuNi46IEVEWUNKQSBQTElLVQogCiAJCSAgKiogVb95aiAgOndxICBhYnkgemFwaXNh5iBwbGlrIGkgd3lqnOYuICoqCiAKLSAgICEhIFVXQUdBOiB6YW5pbSB3eWtvbmFzeiBqYWtpZWtvbHdpZWsgcG9sZWNlbmlhIHByemVjenlhaiBjYbO5IGxla2Nq6iAhIQorICAgISEgVVdBR0E6IHphbmltIHd5a29uYXN6IGpha2lla29sd2llayBwb2xlY2VuaWEgcHJ6ZWN6eXRhaiBjYbO5IGxla2Nq6iAhIQogCiAgIDEuIFpha2/xY3ogdHV0b3JpYWwgdGFrIGphayB3IGxla2NqaSAxLjIuOiAgOnEhCi0gICAgIEx1YiBqZZxsaSBtYXN6IGRvc3TqcCBkbyBpbm5lZ28gdGVybWluYWxhIHpy82Iga29sZWpuZSBrcm9raSB0YW0uCisgICAgIGx1YiwgamWcbGkgbWFzeiBkb3N06nAgZG8gaW5uZWdvIHRlcm1pbmFsYSwgd3lrb25haiBrb2xlam5lIGtyb2tpIHRhbS4KIAogICAyLiBXIHBvd7NvY2Ugd3lkYWogcG9sZWNlbmllOiAgdmltIHR1dG9yPEVOVEVSPgotICAgICAidmltIiBqZXN0IHBvbGVjZW5pZW0gdXJ1Y2hhbWlharljeW0gZWR5dG9yIFZpbS4gJ3R1dG9yJyB0byBuYXp3YSBwbGlrdQotICAgICBqYWtpIGNoY2VzeiBlZHl0b3dh5i4gVb95aiBwbGlrdSBqYWtpIG1vv2Ugem9zdGHmIHptaWVuaW9ueS4KKyAgICAgInZpbSIgamVzdCBwb2xlY2VuaWVtIHVydWNoYW1pYWq5Y3ltIGVkeXRvciBWaW0uICd0dXRvcicgdG8gbmF6d2EgcGxpa3UsCisgICAgIGpha2kgY2hjZXN6IGVkeXRvd2HmLiBVv3lqIHBsaWt1LCBrdPNyeSBtb79lIHpvc3Rh5iB6bWllbmlvbnkuCiAKLSAgMy4gRG9kYWogaSB1c3XxIHRla3N0IHRhayBqYWsgc2nqIG5hdWN6ebNlnCB3IHBvcHJ6ZWRuaWNoIGxla2NqYWNoLgorICAzLiBEb2RhaiBpIHVzdfEgdGVrc3QgdGFrLCBqYWsgc2nqIG5hdWN6ebNlnCB3IHBvcHJ6ZWRuaWNoIGxla2NqYWNoLgogCiAgIDQuIFphcGlzeiBwbGlrIHplIHptaWFuYW1pIGkgb3B1nOYgVmltYTogIDp3cTxFTlRFUj4KIAotICA1LiBKZZxsaSB6YWtv8WN6ebNlnCB2aW10dXRvciB3IGtyb2t1IDEuIHVydWNob20gZ28gcG9ub3duaWUgaSBwcnplamSfCisgIDUuIEplnGxpIHpha2/xY3p5s2WcIHZpbXR1dG9yIHcga3Jva3UgMS4sIHVydWNob20gZ28gcG9ub3duaWUgaSBwcnplamSfCiAgICAgIGRvIHBvZHN1bW93YW5pYSBwb25pv2VqLgogCiAgIDYuIFBvIHByemVjenl0YW5pdSB3c3p5c3RraWNoIGtyb2vzdyBpIGljaCB6cm96dW1pZW5pdTogd3lrb25haiBqZS4KQEAgLTE2OCwxNCArMTY4LDE0IEBACiAgIDEuIFBvcnVzemFzeiBrdXJzb3JlbSB1v3l3YWq5YyAic3RyemGzZWsiIGkga2xhd2lzenkgIGhqa2wgLgogICAgICAgIGggKHcgbGV3bykJIGogKHcgZPOzKQkgayAoZG8gZ/NyeSkJCWwgKHcgcHJhd28pCiAKLSAgMi4gQnkgd2VqnOYgZG8gVmltYSAoeiBwb3ezb2tpKSB3cGlzejoKKyAgMi4gQnkgd2VqnOYgZG8gVmltYSwgKHogcG93s29raSkgd3Bpc3o6CiAJCQkgICAgdmltIE5BWldBX1BMSUtVPEVOVEVSPgogCi0gIDMuIEJ5IHd5apzmIHogVmltYSB3cGlzejoKLQkJCSAgICA8RVNDPiA6cSE8RU5URVI+ICBieSB1c3VuuWMgd3N6eXN0a2llIHptaWFueS4KKyAgMy4gQnkgd3lqnOYgeiBWaW1hLCB3cGlzejoKKwkJCSAgICA8RVNDPiA6cSE8RU5URVI+ICBieSB1c3VuueYgd3N6eXN0a2llIHptaWFueS4KIAkgICAgIExVQjoJICAgIDxFU0M+IDp3cTxFTlRFUj4gIGJ5IHptaWFueSB6YWNob3dh5i4KIAotICA0LiBCeSB1c3VuueYgem5hayBwb2Qga3Vyc29yZW0gd2NpnG5pajogIHgKKyAgNC4gQnkgdXN1brnmIHpuYWsgcG9kIGt1cnNvcmVtLCB3Y2mcbmlqOiAgeAogCiAgIDUuIEJ5IHdzdGF3aeYgdGVrc3QgcHJ6ZWQga3Vyc29yZW0gbHViIGRvZGHmOgogCWkgICB3cGlzeiB0ZWtzdCAgIDxFU0M+ICAgICAgICAgd3N0YXdpIHByemVkIGt1cnNvcmVtCkBAIC0xODksMTggKzE4OSwxOCBAQAogCQkgIExla2NqYSAyLjEuOiBQT0xFQ0VOSUUgREVMRVRFICh1c3V3YW5pZSkKIAogCi0JCSAgICAgICoqIFdwaXN6ICBkdyAgYnkgdXN1brljIHd5cmF6LiAqKgorCQkgICAgICAqKiBXcGlzeiAgZHcgIGJ5IHVzdW655iB3eXJhei4gKioKIAotICAxLiBXY2mcbmlqICA8RVNDPiAgYnkgdXBld25p5iBzaeosIL9lIGplc3RlnCB3IHRyeWJpZSBOb3JtYWwuCisgIDEuIFdjaZxuaWogIDxFU0M+LCBieSB1cGV3bmnmIHNp6iwgv2UgamVzdGWcIHcgdHJ5YmllIE5vcm1hbC4KIAogICAyLiBQcnplbmllnCBrdXJzb3IgZG8gbGluaWkgcG9uab9laiBvem5hY3pvbmVqIC0tLT4uCiAKLSAgMy4gUHJ6ZXN18SBrdXJzb3IgbmEgcG9jerl0ZWsgd3lyYXp1LCBrdPNyZSBjaGNlc3ogdXN1brnmLgorICAzLiBQcnplc3XxIGt1cnNvciBuYSBwb2N6uXRlayB3eXJhenUsIGt083J5IGNoY2VzeiB1c3VuueYuCiAKICAgNC4gV3Bpc3ogICBkdyAgIGJ5IHVzdW655iB3eXJhei4KIAogICBVV0FHQTogTGl0ZXJhICBkICBwb2phd2kgc2nqIG5hIGRvbGUgZWtyYW51LiBWaW0gY3pla2EgbmEgd3Bpc2FuaWUgIHcgLgotCSBKZZxsaSB6b2JhY3p5c3ogaW5ueSB6bmFrIG96bmFjemEgdG8sIL9lIHdwaXNhs2WcIGNvnCCfbGUsIHdjaZxuaWoKKwkgSmWcbGkgem9iYWN6eXN6IGlubnkgem5haywgb3puYWN6YSB0bywgv2Ugd3Bpc2GzZZwgY2+cIJ9sZTsgd2NpnG5pagogCSA8RVNDPiBpIHphY3puaWogb2QgcG9jerl0a3UuCiAKIC0tLT4gSmVzdCB0dSBwYXLqIHBhcGllciB3eXJhevN3LCBrdPNyZSBrYW1pZfEgbmllIG5hbGW/uSBkbyBub795Y2UgdGVnbyB6ZGFuaWEuCkBAIC0yMjUsNyArMjI1LDcgQEAKIC0tLT4gS3RvnCB3cGlzYbMga29uaWVjIHRlZ28gemRhbmlhIGR3dWtyb3RuaWUuIHpkYW5pYSBkd3Vrcm90bmllLgogCiAKLSAgNS4gUHJ6ZWpknyBkbyBMZWtjamkgMi4zLiBieSB6cm96dW1pZeYgY28gc2nqIHN0YbNvLgorICA1LiBQcnplamSfIGRvIExla2NqaSAyLjMuLCBieSB6cm96dW1pZeYgY28gc2nqIHN0YbNvLgogCiAKIApAQCAtMjM1LDEyICsyMzUsMTIgQEAKIAkJICAgICBMZWtjamEgMi4zLjogTyBPUEVSQVRPUkFDSCBJIFJVQ0hBQ0gKIAogCi0gIFdpZWxlIHBvbGVjZfEgem1pZW5pYWq5Y3ljaCB0ZWtzdCBzuSB6s2+/b25lIHogb3BlcmF0b3JhIGkgcnVjaHUuCi0gIEZvcm1hdCBkbGEgcG9sZWNlbmlhIHVzdXdharljZWdvIHogb3BlcmF0b3JlbSAgZCAgamVzdCB0YWtpOgorICBXaWVsZSBwb2xlY2XxIHptaWVuaWFquWN5Y2ggdGVrc3QgamVzdCB6s2+/b255Y2ggeiBvcGVyYXRvcmEgaSBydWNodS4KKyAgRm9ybWF0IGRsYSBwb2xlY2VuaWEgdXN1d2FquWNlZ28geiBvcGVyYXRvcmVtICBkICBqZXN0IG5hc3TqcHVquWN5OgogCiAJICAgIGQgIHJ1Y2gKIAotICBHZHppZToKKyAgZ2R6aWU6CiAgICBkICAgICAgLSBvcGVyYXRvciB1c3V3YW5pYS4KICAgIHJ1Y2ggICAtIG5hIGN6eW0gcG9sZWNlbmllIGLqZHppZSB3eWtvbnl3YW5lIChsaXN0YSBwb25pv2VqKS4KIApAQCAtMjUyLDcgKzI1Miw3IEBACiBXIHRlbiBzcG9z82Igd3Bpc2FuaWUgIGRlICB1c3VuaWUgem5ha2kgb2Qga3Vyc29yYSBkbyBrb/FjYSB3eXJhenUuCiAKIFVXQUdBOiBXcGlzYW5pZSB0eWxrbyBydWNodSB3IHRyeWJpZSBOb3JtYWwgYmV6IG9wZXJhdG9yYSBwcnplbmllc2llIGt1cnNvcgotICAgICAgIHRhayBqYWsgdG8gb2tyZZxsb25vLgorICAgICAgIHRhaywgamFrIHRvIG9rcmWcbG9uby4KIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAJCSAgICBMZWtjamEgMi40LjogVa9ZQ0lFIE1OT69OSUtBIERMQSBSVUNIVQpAQCAtMjY2LDMyICsyNjYsMzIgQEAKIAogICAzLiBXcGlzeiAgM2UgIGFieSBwcnplbmllnOYga3Vyc29yIGRvIGtv8WNhIHRyemVjaWVnbyB3eXJhenUgdyBwcnrzZC4KIAotICA0LiBXcGlzeiAgMCAgKHplcm8pIGFieSBwcnplbmllnOYga3Vyc29yIGRvIHBvY3q5dGt1IGxpbmlpLgorICA0LiBXcGlzeiAgMCAgKHplcm8pLCBhYnkgcHJ6ZW5pZZzmIGt1cnNvciBuYSBwb2N6uXRlayBsaW5paS4KIAogICA1LiBQb3d083J6IGtyb2tpIDIuIGkgMy4geiBpbm55bWkgbGljemJhbWkuCiAKIAotIC0tLT4gVG8gamVzdCB6d3lrs3kgd2llcnN6IHogd3lyYXphbWkgcG8ga3TzcnljaCBtb79lc3ogc2nqIHBvcnVzemHmLgorIC0tLT4gVG8gamVzdCB6d3lrs3kgd2llcnN6IHogd3lyYXphbWksIHBvIGt083J5Y2ggbW+/ZXN6IHNp6iBwb3J1c3ph5i4KIAogICA2LiBQcnplamSfIGRvIGxla2NqaSAyLjUuCiAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJTGVrY2phIDIuNS46IFWvWUNJRSBNTk+vTklLQSBCWSBXScpDRUogVVNVTqXGCisJCUxla2NqYSAyLjUuOiBVr1lDSUUgTU5Pr05JS0EsIEJZIFdJykNFSiBVU1VOpcYKIAogCiAgICAgKiogV3Bpc2FuaWUgbGljemJ5IHogb3BlcmF0b3JlbSBwb3d0YXJ6YSBnbyBvZHBvd2llZG5puSBpbG+c5iByYXp5LiAqKgogCiAgIFcgd3m/ZWogd3Nwb21uaWFuZWoga29tYmluYWNqaSBvcGVyYXRvcmEgdXN1d2FuaWEgaSBydWNodSBwb2RhaiBtbm+/bmlrCi0gIHByemVkIHJ1Y2hlbSBieSB3aepjZWogdXN1brnmOgorICBwcnplZCBydWNoZW0sIGJ5IHdp6mNlaiB1c3VuueY6CiAJZCAgbGljemJhICBydWNoCiAKICAgMS4gUHJ6ZW5pZZwga3Vyc29yIGRvIHBpZXJ3c3plZ28gd3lyYXp1IEtBUElUQUxJS0FNSSB3IGxpbmlpIHphem5hY3pvbmVqIC0tLT4uCiAKICAgMi4gV3Bpc3ogIDJkdyAgYWJ5IHVzdW655iBkd2Egd3lyYXp5IEtBUElUQUxJS0FNSS4KIAotICAzLiBQb3d0YXJ6YWoga3Jva2kgMS4gaSAyLiB6IGlubnltaSBtbm+/bmlrYW1pIGFieSB1c3VuueYga29sZWpuZSB3eXJhenkKKyAgMy4gUG93dGFyemFqIGtyb2tpIDEuIGkgMi4geiBpbm55bWkgbW5vv25pa2FtaSwgYWJ5IHVzdW655iBrb2xlam5lIHd5cmF6eQogICAgICBLQVBJVEFMSUtBTUkgamVkbnltIHBvbGVjZW5pZW0KIAogLS0tPiB0YSBBU0QgV0UgbGluaWEgUVdFIEFTREYgWlhDViBGRyB3eXJhevN3IHpvc3Rhs2EgRVJUIEZHSCBDRiBvY3p5c3pjem9uYS4KQEAgLTMxMiw3ICszMTIsNyBAQAogICAxLiBQcnplbmllnCBrdXJzb3IgZG8gZHJ1Z2llZ28gemRhbmlhIHogd2llcnN6eWthIHBvbmm/ZWouCiAgIDIuIFdwaXN6ICBkZCAgYWJ5IHVzdW655iB3aWVyc3ouCiAgIDMuIFRlcmF6IHByemVuaWWcIHNp6iBkbyBjendhcnRlZ28gd2llcnN6YS4KLSAgNC4gV3Bpc3ogIDJkZCAgYWJ5IHVzdW65YyBkd2Egd2llcnN6ZS4KKyAgNC4gV3Bpc3ogIDJkZCAgYWJ5IHVzdW655iBkd2Egd2llcnN6ZS4KIAogLS0tPiAgMSkgIFLzv2Ugc7kgY3plcndvbmUsCiAtLS0+ICAyKSAgQrNvdG8gamVzdCBmYWpuZSwKQEAgLTMzNSwxMiArMzM1LDEyIEBACiAgIDIuIFdwaXN6ICB4ICBhYnkgdXN1brnmIHBpZXJ3c3p5IG5pZWNoY2lhbnkgem5hay4KICAgMy4gVGVyYXogd2NpnG5paiAgdSAgYWJ5IGNvZm655iBza3V0a2kgb3N0YXRuaWVnbyBwb2xlY2VuaWEuCiAgIDQuIFR5bSByYXplbSBwb3ByYXcgd3N6eXN0a2llIGKz6mR5IHcgbGluaWkgdb95d2FquWMgcG9sZWNlbmlhICB4IC4KLSAgNS4gVGVyYXogd2NpnG5paiB3aWVsa2llIFUgYWJ5IHByenl3cvNjaeYgbGluaeogZG8gb3J5Z2luYWxuZWdvIHN0YW51LgotICA2LiBUZXJheiB3Y2mcbmlqICB1ICBraWxrYSByYXp5IGJ5IGNvZm655iAgVSAgaSBwb3ByemVkbmllIHBvbGVjZW5pYS4KKyAgNS4gVGVyYXogd2NpnG5paiB3aWVsa2llICBVICBhYnkgcHJ6eXdy82Np5iBsaW5p6iBkbyBvcnlnaW5hbG5lZ28gc3RhbnUuCisgIDYuIFRlcmF6IHdjaZxuaWogIHUgIGtpbGthIHJhenksIGJ5IGNvZm655iAgVSAgaSBwb3ByemVkbmllIHBvbGVjZW5pYS4KICAgNy4gVGVyYXogd3Bpc3ogQ1RSTC1SICh0cnp5bWFqIHLzd25vY3plnG5pZSB3Y2mcbmnqdGUga2xhd2lzemUgQ1RSTCBpIFIpCiAgICAgIGtpbGthIHJhenksIGJ5IGNvZm655iBjb2ZuaepjaWEuCiAKLS0tLT4gUG9vcHJhdyBibOpkeXl5IHcgdGVlaiBsaW5paWkgaSB6YWFtaWll8SBqZSBwcnJ6ZXogY29vZm5pai4KKy0tLT4gUG9vcHJhdyBis+pkeXl5IHcgdGVlaiBsaW5paWkgaSB6YWFtaWll8SBqZSBwcnJ6ZXogY29vZm5pai4KIAogICA4LiBUbyBzuSBiYXJkem8gcG+/eXRlY3puZSBwb2xlY2VuaWEuCiAKQEAgLTM1MCwyMiArMzUwLDIyIEBACiAJCQkgICAgIExFS0NKQSAyLiBQT0RTVU1PV0FOSUUKIAogCi0gIDEuIEJ5IHVzdW655iB6bmFraSBvZCBrdXJzb3JhIGRvIG5hc3TqcG5lZ28gd3lyYXp1IHdwaXN6OiAgIGR3Ci0gIDIuIEJ5IHVzdW655iB6bmFraSBvZCBrdXJzb3JhIGRvIGtv8WNhIGxpbmlpIHdwaXN6OiAgICBkJAorICAxLiBCeSB1c3VuueYgem5ha2kgb2Qga3Vyc29yYSBkbyBuYXN06nBuZWdvIHd5cmF6dSwgd3Bpc3o6ICAgZHcKKyAgMi4gQnkgdXN1brnmIHpuYWtpIG9kIGt1cnNvcmEgZG8ga2/xY2EgbGluaWksIHdwaXN6OiAgICBkJAogICAzLiBCeSB1c3VuueYgY2GzuSBsaW5p6jogICAgZGQKLSAgNC4gQnkgcG93dPNyennmIHJ1Y2ggcG9wcnplZJ8gZ28gbGljemK5OiAgICAydworICA0LiBCeSBwb3d083J6eeYgcnVjaCwgcG9wcnplZJ8gZ28gbGljemK5OiAgICAydwogICA1LiBGb3JtYXQgcG9sZWNlbmlhIHptaWFueSB0bzoKICAgICAgICAgICAgICAgICBvcGVyYXRvciAgW2xpY3piYV0gIHJ1Y2gKICAgZ2R6aWU6Ci0gICBvcGVyYXRvciAgLSB0byBjbyB0cnplYmEgenJvYmnmIChucC4gIGQgIGRsYSB1c3V3YW5pYSkKKyAgIG9wZXJhdG9yICAtIHRvLCBjbyB0cnplYmEgenJvYmnmIChucC4gIGQgIGRsYSB1c3V3YW5pYSkKICAgIFtsaWN6YmFdICAtIG9wY2pvbmFsbmUsIGlsZSByYXp5IHBvd3Tzcnp55iBydWNoCiAgICBydWNoICAgICAgLSBwcnplbm9zaSBuYWQgdGVrc3RlbSBkbyBvcGVyb3dhbmlhLCB0YWtpbSBqYWsgIHcgKHd5cmF6KSwKLQkgICAgICAgJCAgKGRvIGtv8WNhIGxpbmlpKSwgZXRjLgorCSAgICAgICAkICAoZG8ga2/xY2EgbGluaWkpIGV0Yy4KIAotICA2LiBCeSBwcnplapzmIGRvIHBvY3q5dGt1IGxpbmlpIHW/eWogemVyYTogIDAKLSAgNy4gQnkgY29mbrnmIHBvcHJ6ZWRuaWUgcG9sZWNlbmllLCB3cGlzejoJICB1IChtYbNlIHUpCi0gICAgIEJ5IGNvZm655iB3c3p5c3RraWUgem1pYW55IHcgbGluaWkgd3Bpc3o6CSAgVSAod2llbGtpZSBVKQotICAgICBCeSBjb2ZuueYgY29mbmnqY2lhIHdwaXN6OgkJCSAgQ1RSTC1SCisgIDYuIEJ5IHByemVqnOYgZG8gcG9jerl0a3UgbGluaWksIHW/eWogemVyYTogIDAKKyAgNy4gQnkgY29mbrnmIHBvcHJ6ZWRuaWUgcG9sZWNlbmllLCB3cGlzejoJICB1ICAobWGzZSB1KQorICAgICBCeSBjb2ZuueYgd3N6eXN0a2llIHptaWFueSB3IGxpbmlpLCB3cGlzejoJICBVICAod2llbGtpZSBVKQorICAgICBCeSBjb2ZuueYgY29mbmnqY2llLCB3cGlzejoJCQkgIENUUkwtUgogCiAKIApAQCAtMzc5LDcgKzM3OSw3IEBACiAKICAgMi4gV3Bpc3ogIGRkICBhYnkgdXN1brnmIGxpbmnqIGkgcHJ6ZWNob3dh5iBquSB3IHJlamVzdHJ6ZSBWaW1hLgogCi0gIDMuIFByemVuaWWcIGt1cnNvciBkbyBsaW5paSBjKSwgUE9XWa9FSiB0ZWogZ2R6aWUgdXN1bmnqdGEgbGluaWEgcG93aW5uYQorICAzLiBQcnplbmllnCBrdXJzb3IgZG8gbGluaWkgYyksIFBPV1mvRUogdGVqLCBnZHppZSB1c3Vuaep0YSBsaW5pYSBwb3dpbm5hCiAgICAgIHNp6iB6bmFqZG93YeYuCiAKICAgNC4gV2NpnG5paiAgcCAgYnkgd3N0YXdp5iBsaW5p6iBwb25pv2VqIGt1cnNvcmEuCkBAIC00MDQsMjEgKzQwNCwyMSBAQAogCiAgIDMuIFdwaXN6ICByICBhIHBvdGVtIHpuYWsgamFraSBwb3dpbmllbiBnbyB6YXN0uXBp5i4KIAotICA0LiBQb3d0YXJ6YWoga3Jva2kgMi4gaSAzLiBkb3Dza2kgcGllcndzemEgbGluaWEgbmllIGLqZHppZSB0YWthIGphayBkcnVnYS4KKyAgNC4gUG93dGFyemFqIGtyb2tpIDIuIGkgMy4gZG9w82tpIHBpZXJ3c3phIGxpbmlhIG5pZSBi6mR6aWUgdGFrYSwgamFrIGRydWdhLgogCi0tLS0+ICBLamVkeSB0ZW4gd2llcnN6IGJpsyB3c3Tza2l3YW55IGt0b5wgd2Npem65syBwZXLqIHqzeWNoIGtsYXdpcnp5IQotLS0tPiAgS2llZHkgdGVuIHdpZXJzeiBiebMgd3N0dWtpd2FueSBrdG+cIHdjaXNuubMgcGFy6iB6s3ljaCBrbGF3aXN6eSEKKy0tLT4gIEtqZWR5IHRlbiB3aWVyc3ogYmmzIHdzdPNraXdhbnksIGt0b5wgd2Npem65syBwZXLqIHqzeWNoIGtsYXdpcnp5IQorLS0tPiAgS2llZHkgdGVuIHdpZXJzeiBiebMgd3N0dWtpd2FueSwga3RvnCB3Y2lzbrmzIHBhcuogerN5Y2gga2xhd2lzenkhCiAKICAgNS4gVGVyYXogY3phcyBuYSBMZWtjauogMy4zLgogCiAKLVVXQUdBOiBQYW1p6nRhaiBieSB1Y3p55iBzaeog5ndpY3q5YywgYSBuaWUgcGFtaepjaW93by4KK1VXQUdBOiBQYW1p6nRhaiwgYnkgdWN6eeYgc2nqIOZ3aWN6uWMsIGEgbmllIHBhbWnqY2lvd28uCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAJCSAgICAgTGVrY2phIDMuMy46IE9QRVJBVE9SIENIQU5HRSAoem1pZfEpCiAKLQkJICoqIEJ5IHptaWVuaeYgZG8ga2/xY2Egd3lyYXp1IHdwaXN6ICBjZSAuICoqCisJCSAqKiBCeSB6bWllbmnmIGRvIGtv8WNhIHd5cmF6dSwgd3Bpc3ogIGNlIC4gKioKIAogICAxLiBQcnplbmllnCBrdXJzb3IgZG8gcGllcndzemVqIGxpbmlpIHBvbmm/ZWogb3puYWN6b25laiAtLS0+LgogCkBAIC00MjgsNyArNDI4LDcgQEAKIAogICA0LiBXY2mcbmlqIDxFU0M+IGkgcHJ6ZWpknyBkbyBuYXN06nBuZWogcGxhbm93YW5laiB6bWlhbnkuCiAKLSAgNS4gUG93dGFyemFqIGtyb2tpIDMuIGkgNC4gZG9w82tpIHBpZXJ3c3plIHpkYW5pZSBuaWUgYupkemllIHRha2llIHNhbWUKKyAgNS4gUG93dGFyemFqIGtyb2tpIDMuIGkgNC4gZG9w82tpIHBpZXJ3c3plIHpkYW5pZSBuaWUgYupkemllIHRha2llIHNhbWUsCiAgICAgIGphayBkcnVnaWUuCiAKIC0tLT4gVGEgbHVub3MgbWEgcGlyZSBzs/N3LCBrdPNyZSB0v2luYSB6Ym5pYyB1v2lmYWpvbmMgcGNtYXp1IHptaWXxLgpAQCAtNDQyLDEzICs0NDIsMTMgQEAKIAkJICAgICAgTGVrY2phIDMuNC46IFdJykNFSiBaTUlBTiBVr1lXQUqlQyBjCiAKIAotCSoqIFBvbGVjZW5pZSBjaGFuZ2Ugdb95d2EgdGFraWNoIHNhbXljaCBydWNo83cgamFrIGRlbGV0ZS4gKioKKwkqKiBQb2xlY2VuaWUgY2hhbmdlIHW/eXdhIHRha2ljaCBzYW15Y2ggcnVjaPN3LCBqYWsgZGVsZXRlLiAqKgogCi0gIDEuIE9wZXJhdG9yIGNoYW5nZSBkemlhs2EgdGFrIHNhbW8gamFrIGRlbGV0ZS4gRm9ybWF0IHd5Z2y5ZGEgdGFrOgorICAxLiBPcGVyYXRvciBjaGFuZ2UgZHppYbNhIHRhayBzYW1vLCBqYWsgZGVsZXRlLiBGb3JtYXQgd3lnbLlkYSB0YWs6CiAKIAkgICAgYyAgIFtsaWN6YmFdICAgcnVjaAogCi0gIDIuIFJ1Y2h5IHO5IHRha79lIHRha2llIHNhbWUsIG5wLjogIHcgICh3eXJheiksICAkICAoa29uaWVjIGxpbmlpKSwgZXRjLgorICAyLiBSdWNoeSBzuSB0YWu/ZSB0YWtpZSBzYW1lLCBucC46ICB3ICAod3lyYXopLCAgJCAgKGtvbmllYyBsaW5paSkgZXRjLgogCiAgIDMuIFByemVuaWWcIHNp6iBkbyBwaWVyd3N6ZWogbGluaWkgcG9uab9laiBvem5hY3pvbmVqIC0tLT4KIApAQCAtNDU2LDcgKzQ1Niw3IEBACiAKICAgNS4gV3Bpc3ogIGMkICwgcG9wcmF3IGtvbmllYyB3aWVyc3phIGkgd2NpnG5paiA8RVNDPi4KIAotLS0tPiBLb25pZWMgdGVnbyB3aWVyc3phIG11c2kgYnnmIHBvcHJhd2lvbnkgYWJ5IHd5Z2y5ZGGzIHRhayBqYWsgZHJ1Z2kuCistLS0+IEtvbmllYyB0ZWdvIHdpZXJzemEgbXVzaSBieeYgcG9wcmF3aW9ueSwgYWJ5IHd5Z2y5ZGGzIHRhaywgamFrIGRydWdpLgogLS0tPiBLb25pZWMgdGVnbyB3aWVyc3phIG11c2kgYnnmIHBvcHJhd2lvbnkgdb95d2FquWMgcG9sZWNlbmlhICBjJCAuCiAKIFVXQUdBOiAgTW+/ZXN6IHW/eXdh5iA8QlM+IGFieSBwb3ByYXdpYeYgYrPqZHkgdyBjemFzaWUgcGlzYW5pYS4KQEAgLTQ2OSwxMSArNDY5LDExIEBACiAgICAgIHBvbGVjZW5pZSB3c3Rhd2lhIHNrYXNvd2FueSB0ZWtzdCBQTyBrdXJzb3J6ZSAoamWcbGkgY2GzYSBsaW5pYQogICAgICB6b3N0YbNhIHVzdW5p6nRhLCB6b3N0YW5pZSBvbmEgdW1pZXN6Y3pvbmEgdyBsaW5paSBwb25pv2VqIGt1cnNvcmEpLgogCi0gIDIuIEJ5IHphbWllbmnmIHpuYWsgcG9kIGt1cnNvcmVtIHdjaZxuaWogIHIgIGEgcG90ZW0gem5haywga3TzcnkgbWEgemFzdLlwaeYKKyAgMi4gQnkgemFtaWVuaeYgem5hayBwb2Qga3Vyc29yZW0sIHdjaZxuaWogIHIgIGEgcG90ZW0gem5haywga3TzcnkgbWEgemFzdLlwaeYKICAgICAgb3J5Z2luYWxueS4KIAotICAzLiBPcGVyYXRvciBjaGFuZ2UgcG96d2FsYSBDaSBuYSB6YXN0uXBpZW5pZSBvZCBrdXJzb3JhIGRvIG1pZWpzY2EgZ2R6aWUKLSAgICAgemFicmGzYnkgY2nqIHJ1Y2guIE5wLiB3cGlzeiAgY2UgIGFieSB6YW1pZW5p5iB0ZWtzdCBvZCBrdXJzb3JhIGRvIGtv8WNhCisgIDMuIE9wZXJhdG9yIGNoYW5nZSBwb3p3YWxhIENpIG5hIHphc3S5cGllbmllIG9kIGt1cnNvcmEgZG8gbWllanNjYSwgZ2R6aWUKKyAgICAgemFicmGzYnkgQ2nqIHJ1Y2guIE5wLiB3cGlzeiAgY2UgIGFieSB6YW1pZW5p5iB0ZWtzdCBvZCBrdXJzb3JhIGRvIGtv8WNhCiAgICAgIHd5cmF6dSwgIGMkICBhYnkgem1pZW5p5iB0ZWtzdCBkbyBrb/FjYSBsaW5paS4KIAogICA0LiBGb3JtYXQgZG8gcG9sZWNlbmlhIGNoYW5nZSAoem1pZfEpOgpAQCAtNDk3LDEyICs0OTcsMTIgQEAKICAgICAgWmFwYW1p6nRhaiBudW1lciBsaW5paSBkbGEgcG90cnplYiBrcm9rdSAzLgogCiBVV0FHQTogTW+/ZXN6IHRlvyB6b2JhY3p55iBwb3p5Y2rqIGt1cnNvcmEgdyBwcmF3eW0sIGRvbG55bSByb2d1IGVrcmFudS4KLSAgICAgICBEemllamUgc2nqIHRhayBraWVkeSB1c3Rhd2lvbmEgamVzdCBvcGNqYSAncnVsZXInICh3eWphnG5pb25lIHcgbGVrY2ppIDYuKS4KKyAgICAgICBEemllamUgc2nqIHRhayBraWVkeSB1c3Rhd2lvbmEgamVzdCBvcGNqYSAncnVsZXInICh3aepjZWogdyBsZWtjamkgNi4pLgogCiAgIDIuIFdjaZxuaWogRyBhYnkgcHJ6ZWqc5iBuYSBrb25pZWMgcGxpa3UuCiAgICAgIFdjaZxuaWogIGdnICBhYnkgcHJ6ZWqc5iBkbyBwb2N6uXRrdSBwbGlrdS4KIAotICAzLiBXcGlzeiBudW1lciBsaW5paSwgdyBrdPNyZWogYnmzZZwgYSBwb3RlbSAgRyAuIFRvIHByemVuaWVzaWUgY2nqCisgIDMuIFdwaXN6IG51bWVyIGxpbmlpLCB3IGt083JlaiBiebNlnCBhIHBvdGVtICBHIC4gVG8gcHJ6ZW5pZXNpZSBDaeoKICAgICAgeiBwb3dyb3RlbSBkbyBsaW5paSwgdyBrdPNyZWogYnmzZZwga2llZHkgd2Npc265s2WcIENUUkwtRy4KIAogICA0LiBKZZxsaSBjenVqZXN6IHNp6iB3eXN0YXJjemFquWNvIHBld25pZSwgd3lrb25haiBrcm9raSAxLTMuCkBAIC01MTEsMTAgKzUxMSwxMCBAQAogCQkJIExla2NqYSA0LjIuOiBQT0xFQ0VOSUUgU1pVS0FKCiAKIAotCSAgICAgKiogV3Bpc3ogIC8gIGEgbmFzdOpwbmllIHd5cmG/ZW5pZSBhYnkgamUgem5hbGWf5i4gKioKKwkgICAgICoqIFdwaXN6ICAvICBhIG5hc3TqcG5pZSB3eXJhv2VuaWUsIGFieSBqZSB6bmFsZZ/mLiAqKgogCi0gIDEuIFcgdHJ5YmllIE5vcm1hbCB3cGlzeiAgLyAuIFphdXdhvywgv2Ugem5hayB0ZW4sIG9yYXoga3Vyc29yIHBvamF3abkKLSAgICAgc2nqIG5hIGRvbGUgZWtyYW51IHRhayBzYW1vIGphayBwb2xlY2VuaWUgIDogLgorICAxLiBXIHRyeWJpZSBOb3JtYWwgd3Bpc3ogIC8gLiBaYXV3Yb8sIL9lIHpuYWsgdGVuIG9yYXoga3Vyc29yIHBvamF3abkKKyAgICAgc2nqIG5hIGRvbGUgZWtyYW51IHRhayBzYW1vLCBqYWsgcG9sZWNlbmllICA6IC4KIAogICAyLiBUZXJheiB3cGlzeiAgYrNvbmQ8RU5URVI+IC4gIFRvIGplc3Qgc7Nvd28sIGt083JlZ28gY2hjZXN6IHN6dWth5i4KIApAQCAtNTIzLDExICs1MjMsMTEgQEAKIAogICA0LiBKZZxsaSBjaGNlc3ogc3p1a2HmIGZyYXp5IGRvIHR5s3UsIHW/eWogcG9sZWNlbmlhICA/ICB6YW1pYXN0ICAvIC4KIAotICA1LiBBYnkgd3LzY2nmIGdkemllIGJ5s2WcIHdjaZxuaWogIENUUkwtTy4gUG93dGFyemFqIGJ5IHdy82Np5iBkYWxlai4gQ1RSTC1JCisgIDUuIEFieSB3cvNjaeYgZ2R6aWUgYnmzZZwsIHdjaZxuaWogIENUUkwtTy4gUG93dGFyemFqLCBieSB3cvNjaeYgZGFsZWouIENUUkwtSQogICAgICBpZHppZSBkbyBwcnpvZHUuCiAKLVV3YWdhOiAgJ2Kzb25kJyB0byBuaWUgamVzdCBtZXRvZGEgYnkgcHJ6ZWxpdGVyb3dh5iBis7lkOyAnYrNvbmQnIHRvIGKzuWQuCi1Vd2FnYTogIEtpZWR5IHN6dWthbmllIG9zablnbmllIGtvbmllYyBwbGlrdSBi6mR6aWUga29udHludW93YbNvIG9kIHBvY3q5dGt1CitVd2FnYTogICdis29uZCcgdG8gbmllIGplc3QgbWV0b2RhLCBieSBwcnplbGl0ZXJvd2HmIGKzuWQ7ICdis29uZCcgdG8gYrO5ZC4KK1V3YWdhOiAgS2llZHkgc3p1a2FuaWUgb3NpuWduaWUga29uaWVjIHBsaWt1LCBi6mR6aWUga29udHludW93YW5lIG9kIHBvY3q5dGt1CiAgICAgICAgIG8gaWxlIG9wY2phICd3cmFwc2NhbicgbmllIHpvc3Rhs2EgcHJ6ZXN0YXdpb25hLgogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KQEAgLTU3MSwxNiArNTcxLDE2IEBACiAKICAgNC4gQWJ5IHptaWVuaeYgd3N6eXN0a2llIHd5c3S5cGllbmlhILNh8WN1Y2hhIHpuYWvzdyBwb21p6mR6eSBkd29tYSBsaW5pYW1pLAogICAgICB3cGlzejogOiMsI3Mvc3RhcmUvbm93ZS9nIGdkemllICMsIyBzuSBudW1lcmFtaSBsaW5paSBvZ3JhbmljemFquWN5Y2gKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWdpb24gZ2R6aWUgbWEgbmFzdLlwaeYgemFtaWFuYS4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWdpb24sIGdkemllIG1hIG5hc3S5cGnmIHphbWlhbmEuCiAgICAgIHdwaXN6ICA6JXMvc3RhcmUvbm93ZS9nICAgYnkgem1pZW5p5iB3c3p5c3RraWUgd3lzdLlwaWVuaWEgdyBjYbN5bSBwbGlrdS4KICAgICAgd3Bpc3ogIDolcy9zdGFyZS9ub3dlL2djICBieSB6bWllbmnmIHdzenlzdGtpZSB3eXN0uXBpZW5pYSB3IGNhs3ltCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxpa3UsIHByb3N6uWMgbyBwb3R3aWVyZHplbmllIHphIGthv2R5bSByYXplbQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsaWt1LCBwcm9zerljIG8gcG90d2llcmR6ZW5pZSB6YSBrYb9keW0gcmF6ZW0uCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkJICAgICBMRUtDSkEgNC4gUE9EU1VNT1dBTklFCiAKICAgMS4gQ1RSTC1HICAgcG9rYb9lIFR3b2q5IHBvenljauogdyBwbGlrdSBpIHN0YXR1cyBwbGlrdS4gIFNISUZULUcgcHJ6ZW5vc2kKLQkgICAgICBjaeogZG8ga2/xY2EgcGxpa3UuCisJICAgICAgQ2nqIGRvIGtv8WNhIHBsaWt1LgogICAgICBHICAgICAgICBwcnplbm9zaSBkbyBrb/FjYSBwbGlrdS4KICAgICAgbGljemJhIEcgcHJ6ZW5vc2kgZG8gbGluaWkgW2xpY3piYV0uCiAgICAgIGdnICAgICAgIHByemVub3NpIGRvIHBpZXJ3c3plaiBsaW5paS4KQEAgLTU4OCwyMiArNTg4LDIyIEBACiAgIDIuIFdwaXNhbmllICAvICBhIG5hc3TqcG5pZSCzYfFjdWNoYSB6bmFr83cgc3p1a2Egs2HxY3VjaGEgRE8gUFJaT0RVLgogICAgICBXcGlzYW5pZSAgPyAgYSBuYXN06nBuaWUgs2HxY3VjaGEgem5ha/N3IHN6dWthILNh8WN1Y2hhIERPIFRZo1UuCiAgICAgIFBvIHd5c3p1a2l3YW5pdSB3Y2mcbmlqICBuICBieSB6bmFsZZ/mIG5hc3TqcG5lIHd5c3S5cGllbmllIHN6dWthbmVqCi0gICAgIGZyYXp5IHR5bSBzYW15bSBraWVydW5rdSBsdWIgIE4gIGJ5IHN6dWth5iB3IGtpZXJ1bmt1IHByemVjaXdueW0uCisgICAgIGZyYXp5IHcgdHltIHNhbXltIGtpZXJ1bmt1IGx1YiAgTiAgYnkgc3p1a2HmIHcga2llcnVua3UgcHJ6ZWNpd255bS4KICAgICAgQ1RSTC1PIHByemVub3NpIGRvIHN0YXJzenljaCBwb3p5Y2ppLCBDVFJMLUkgZG8gbm93c3p5Y2guCiAKICAgMy4gV3Bpc2FuaWUgICUgIGdkeSBrdXJzb3Igem5hamR1amUgc2nqIG5hICgsKSxbLF0seywgbHViIH0gbG9rYWxpenVqZQogICAgICBwYXJ1arljeSB6bmFrLgogCi0gIDQuIEJ5IHphbWllbmnmIHBpZXJ3c3p5IHN0YXJ5IG5hIG5vd3kgdyBsaW5paSB3cGlzeiAgICAgIDpzL3N0YXJ5L25vd3kKLSAgICAgQnkgemFtaWVuaeYgd3N6eXN0a2llIHN0YXJ5IG5hIG5vd3kgdyBsaW5paSB3cGlzeiAgICAgOnMvc3Rhcnkvbm93eS9nCisgIDQuIEJ5IHphbWllbmnmIHBpZXJ3c3p5IHN0YXJ5IG5hIG5vd3kgdyBsaW5paSwgd3Bpc3ogICAgICA6cy9zdGFyeS9ub3d5CisgICAgIEJ5IHphbWllbmnmIHdzenlzdGtpZSBzdGFyeSBuYSBub3d5IHcgbGluaWksIHdwaXN6ICAgICA6cy9zdGFyeS9ub3d5L2cKICAgICAgQnkgemFtaWVuaeYgZnJhenkgcG9taepkenkgZHdvbWEgbGluaWFtaSAjIHdwaXN6ICAgICAgOiMsI3Mvc3Rhcnkvbm93eS9nCi0gICAgIEJ5IHphbWllbmnmIHdzenlzdGtpZSB3eXN0uXBpZW5pYSB3IHBsaWt1IHdwaXN6ICAgICAgIDolcy9zdGFyeS9ub3d5L2cKLSAgICAgQnkgVmltIHByb3NpsyBDaeogbyBwb3R3aWVyZHplbmllIGRvZGFqICdjJwkgICA6JXMvc3Rhcnkvbm93eS9nYworICAgICBCeSB6YW1pZW5p5iB3c3p5c3RraWUgd3lzdLlwaWVuaWEgdyBwbGlrdSwgd3Bpc3ogICAgICAgOiVzL3N0YXJ5L25vd3kvZworICAgICBCeSBWaW0gcHJvc2mzIENp6iBvIHBvdHdpZXJkemVuaWUsIGRvZGFqICdjJwkgICA6JXMvc3Rhcnkvbm93eS9nYwogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0JCSBMZWtjamEgNS4xLjogSkFLIFdZS09OQcYgUE9MRUNFTklBIFpFV07KVFJaTkUKKwkJIExla2NqYSA1LjEuOiBKQUsgV1lLT05BxiBQT0xFQ0VOSUEgWkVXTspUUlpORT8KIAogCi0JKiogV3Bpc3ogIDohICBhIG5hc3TqcG5pZSB6ZXdu6nRyem5lIHBvbGVjZW5pZSBieSBqZSB3eWtvbmHmLiAqKgorCSoqIFdwaXN6ICA6ISAgYSBuYXN06nBuaWUgemV3bup0cnpuZSBwb2xlY2VuaWUsIGJ5IGplIHd5a29uYeYuICoqCiAKICAgMS4gV3Bpc3ogem5ham9tZSBwb2xlY2VuaWUgIDogIGJ5IHVzdGF3aeYga3Vyc29yIG5hIGRvbGUgZWtyYW51LiBUbyBwb3p3YWxhCiAgICAgIG5hIHdwcm93YWR6ZW5pZSBrb21lbmR5IGxpbmlpIHBvbGVjZfEuCkBAIC02MjYsMjAgKzYyNiwyMCBAQAogCQkgICAgTGVrY2phIDUuMi46IFdJykNFSiBPIFpBUElTWVdBTklVIFBMSUvTVwogCiAKLQkgICAqKiBCeSB6YWNob3dh5iB6bWlhbnkgdyB0ZWucY2kgd3Bpc3ogOncgTkFaV0FfUExJS1UgLiAqKgorCSAgICoqIEJ5IHphY2hvd2HmIHptaWFueSB3IHRla5xjaWUsIHdwaXN6IDp3IE5BWldBX1BMSUtVIC4gKioKIAogICAxLiBXcGlzeiAgOiFkaXIgIGx1YiAgOiFscyAgYnkgem9iYWN6eeYgc3BpcyBwbGlr83cgdyBrYXRhbG9ndS4KLSAgICAgSnW/IHdpZXN6LCC/ZSBtdXNpc3ogd2Npc2655iA8RU5URVI+IHBvIHR5bS4KKyAgICAgSnW/IHdpZXN6LCC/ZSBtdXNpc3ogcG8gdHltIHdjaXNuueYgPEVOVEVSPi4KIAotICAyLiBXeWJpZXJ6IG5henfqIHBsaWt1IGpha2EgamVzemN6ZSBuaWUgaXN0bmllamUsIG5wLiBURVNULgorICAyLiBXeWJpZXJ6IG5henfqIHBsaWt1LCBqYWthIGplc3pjemUgbmllIGlzdG5pZWplLCBucC4gVEVTVC4KIAogICAzLiBUZXJheiB3cGlzejogICA6dyBURVNUICAgKGdkemllIFRFU1QgamVzdCBuYXp3uSBwbGlrdSBqYWu5IHd5YnJhs2WcLikKIAogICA0LiBUbyBwb2xlY2VuaWUgemFwYW1p6nRhIGNhs3kgcGxpayAoVmltIFR1dG9yKSBwb2QgbmF6d7kgVEVTVC4KLSAgICAgQnkgdG8gc3ByYXdkemnmIHdwaXN6ICA6IWRpciAgbHViICA6IWxzICwgv2VieSB6bm93dSB6b2JhY3p55iBsaXN06iBwbGlr83cuCisgICAgIEJ5IHRvIHNwcmF3ZHpp5iwgd3Bpc3ogIDohZGlyICBsdWIgIDohbHMgIL9lYnkgem5vd3Ugem9iYWN6eeYgbGlzdOogcGxpa/N3LgogCiBVd2FnYTogWmF1d2G/LCC/ZSBnZHlieZwgdGVyYXogd3lzemVksyB6IFZpbWEsIGEgbmFzdOpwbmllIHdzemVksyBwb25vd25pZQotICAgICAgIHBvbGVjZW5pZW0gIHZpbSBURVNUICwgcGxpayBiebNieSBkb2uzYWRuuSBrb3BpuSB0dXRvcmlhbGEga2llZHkgZ28KKyAgICAgICBwb2xlY2VuaWVtICB2aW0gVEVTVCAsIHBsaWsgYnmzYnkgZG9rs2Fkbrkga29wabkgdHV0b3JpYWxhLCBraWVkeSBnbwogICAgICAgIHphcGlzeXdhs2WcLgogCiAgIDUuIFRlcmF6IHVzdfEgcGxpayB3cGlzdWq5YyAoTVMtRE9TKToJCSAgIDohZGVsIFRFU1QKQEAgLTY0OSw3ICs2NDksNyBAQAogCQkgICAgTGVrY2phIDUuMy46IFdZQlJBTklFIFRFS1NUVSBETyBaQVBJU1UKIAogCi0JICAqKiBCeSB6YWNob3dh5iBjeuqc5iBwbGlrdSB3cGlzeiAgdiBydWNoIDp3IE5BWldBX1BMSUtVICoqCisJICAqKiBCeSB6YWNob3dh5iBjeuqc5iBwbGlrdSwgd3Bpc3ogIHYgcnVjaCA6dyBOQVpXQV9QTElLVSAqKgogCiAgIDEuIFByemVuaWWcIGt1cnNvciBkbyB0ZWdvIHdpZXJzemEuCiAKQEAgLTY2NCwyNiArNjY0LDI2IEBACiAgIDUuIFZpbSB6YXBpc3plIHd5YnJhbmUgbGluaWUgZG8gcGxpa3UgVEVTVC4gVb95aiAgOiFkaXIgIGx1YiAgOiFscyAsIL9lYnkgdG8KICAgICAgem9iYWN6eeYuIEplc3pjemUgZ28gbmllIHVzdXdhaiEgVb95amVteSBnbyB3IG5hc3TqcG5laiBsZWtjamkuCiAKLVVXQUdBOiBXY2mcbmnqY2llICB2ICB6YWN6eW5hIHRyeWIgV2l6dWFsbnkuIE1vv2VzeiBwb3J1c3ph5iBrdXJzb3JlbSBieQotICAgICAgIHptaWVuaeYgcm96bWlhcnkgemF6bmFjemVuaWEuIE1vv2VzeiB0Zb8gdb955iBvcGVyYXRvcmEgYnkgenJvYmnmIGNvnAorVVdBR0E6IFdjaZxuaepjaWUgIHYgIHphY3p5bmEgdHJ5YiBXaXp1YWxueS4gTW+/ZXN6IHBvcnVzemHmIGt1cnNvcmVtLCBieQorICAgICAgIHptaWVuaeYgcm96bWlhcnkgemF6bmFjemVuaWEuIE1vv2VzeiB0Zb8gdb955iBvcGVyYXRvcmEsIGJ5IHpyb2Jp5iBjb5wKICAgICAgICB6IHRla3N0ZW0uIE5hIHByenlrs2FkICBkICB1c3V3YSB0ZWtzdC4KIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAJCSAgIExla2NqYSA1LjQuOiBXU1RBV0lBTklFIEkgo6VDWkVOSUUgUExJS9NXCiAKIAotCSAgICAqKiBCeSB3c3Rhd2nmIHphd2FydG+c5iBwbGlrdSB3cGlzeiAgIDpyIE5BWldBX1BMSUtVICoqCisJICAgICoqIEJ5IHdzdGF3aeYgemF3YXJ0b5zmIHBsaWt1LCB3cGlzeiAgIDpyIE5BWldBX1BMSUtVICoqCiAKICAgMS4gVW1pZZzmIGt1cnNvciB0db8gcG93eb9laiB0ZWogbGluaWkuCiAKIFVXQUdBOiBQbyB3eWtvbmFuaXUga3Jva3UgMi4gem9iYWN6eXN6IHRla3N0IHogTGVrY2ppIDUuMy4gUG90ZW0gcHJ6ZWpknwotICAgICAgIGRvIERPo1UgYnkgem9iYWN6eeYgcG9ub3duaWUgdOogbGVrY2rqLgorICAgICAgIGRvIERPo1UsIGJ5IHpvYmFjennmIHBvbm93bmllIHTqIGxla2Nq6i4KIAogICAyLiBUZXJheiB3Y3p5dGFqIHBsaWsgVEVTVCB1v3l3YWq5YyBwb2xlY2VuaWEgIDpyIFRFU1QgLCBnZHppZSBURVNUCiAgICAgIGplc3QgbmF6d7kgcGxpa3UuCiAgICAgIFdjenl0YW55IHBsaWsgamVzdCB1bWllc3pjem9ueSBwb25pv2VqIGxpbmlpIHoga3Vyc29yZW0uCiAKLSAgMy4gQnkgc3ByYXdkemnmIGN6eSBwbGlrIHpvc3RhsyB3Y3p5dGFueSBjb2ZuaWoga3Vyc29yIGkgem9iYWN6LCC/ZQorICAzLiBCeSBzcHJhd2R6aeYgY3p5IHBsaWsgem9zdGGzIHdjenl0YW55LCBjb2ZuaWoga3Vyc29yIGkgem9iYWN6LCC/ZQogICAgICB0ZXJheiBzuSBkd2llIGtvcGllIExla2NqaSA1LjMuLCBvcnlnaW5hsyBpIGtvcGlhIHogcGxpa3UuCiAKIFVXQUdBOiBNb79lc3ogdGW/IHdjenl0YeYgd3lqnGNpZSB6ZXdu6nRyem5lZ28gcG9sZWNlbmlhLiBOYSBwcnp5a7NhZApAQCAtNzIzLDE0ICs3MjMsMTQgQEAKIAogICAxLiBQcnplbmllnCBrdXJzb3IgZG8gbGluaWkgcG9uab9laiBvem5hY3pvbmVqIC0tLT4uCiAKLSAgMi4gV3Bpc3ogIG8gIChtYbNlKSBieSBvdHdvcnp55iBsaW5p6iBQT05Jr0VKIGt1cnNvcmEgaSBwcnplbmllnOYgc2nqCisgIDIuIFdwaXN6ICBvICAobWGzZSksIGJ5IG90d29yennmIGxpbmnqIFBPTkmvRUoga3Vyc29yYSBpIHByemVuaWWc5iBzaeoKICAgICAgZG8gdHJ5YnUgSW5zZXJ0ICh3cHJvd2FkemFuaWUpLgogCiAgIDMuIFdwaXN6IHRyb2No6iB0ZWtzdHUgaSB3Y2mcbmlqIDxFU0M+IGJ5IHd5apzmIHogdHJ5YnUgSW5zZXJ0ICh3cHJvd2FkemFuaWUpLgogCiAtLS0+IFBvIHdjaZxuaepjaXUgIG8gIGt1cnNvciB6bmFqZHppZSBzaeogdyBvdHdhcnRlaiBsaW5paSB3IHRyeWJpZSBJbnNlcnQuCiAKLSAgNC4gQnkgb3R3b3J6eeYgbGluaeogUE9XWa9FSiBrdXJzb3JhIHdjaZxuaWogd2llbGtpZSAgTyAgemFtaWFzdCBtYbNlZ28KKyAgNC4gQnkgb3R3b3J6eeYgbGluaeogUE9XWa9FSiBrdXJzb3JhLCB3Y2mcbmlqIHdpZWxraWUgIE8gIHphbWlhc3QgbWGzZWdvCiAgICAgIG8gLiBXeXBy82J1aiB0byBuYSBsaW5paSBwb25pv2VqLgogCiAtLS0+IE90d/NyeiBsaW5p6iBwb3d5v2VqIHdjaXNrYWq5YyBTSElGVC1PIGdkeSBrdXJzb3IgYupkemllIG5hIHRlaiBsaW5paS4KQEAgLTc0Nyw5ICs3NDcsOSBAQAogCiAgIDIuIFdjaXNrYWogIGUgIGRvcPNraSBrdXJzb3IgbmllIGLqZHppZSBuYSBrb/FjdSBsaSAuCiAKLSAgMy4gV3Bpc3ogIGEgIChtYbNlKSBhYnkgZG9kYeYgdGVrc3QgWkEgem5ha2llbSBwb2Qga3Vyc29yZW0uCisgIDMuIFdwaXN6ICBhICAobWGzZSksIGFieSBkb2Rh5iB0ZWtzdCBaQSB6bmFraWVtIHBvZCBrdXJzb3JlbS4KIAotICA0LiBEb2tv8WN6IHd5cmF6IHRhayBqYWsgdyBsaW5paSBwb25pv2VqLiBXY2mcbmlqIDxFU0M+IGFieSBvcHWcY2nmIHRyeWIKKyAgNC4gRG9rb/FjeiB3eXJheiB0YWssIGphayB3IGxpbmlpIHBvbmm/ZWouIFdjaZxuaWogPEVTQz4gYWJ5IG9wdZxjaeYgdHJ5YgogICAgICBJbnNlcnQuCiAKICAgNS4gVb95aiAgZSAgYnkgcHJ6ZWqc5iBkbyBrb2xlam5lZ28gbmllZG9rb/Fjem9uZWdvIHd5cmF6dSBpIHBvd3RhcnphaiBrcm9raQpAQCAtNzU4LDcgKzc1OCw3IEBACiAtLS0+IFRhIGxpIHBveiBDaSDmd2kgZG9kYXcgdGVrcyBkbyBrb/EgbGluCiAtLS0+IFRhIGxpbmlhIHBvendvbGkgQ2kg5ndpY3p55iBkb2Rhd2FuaWUgdGVrc3R1IGRvIGtv8WNhIGxpbmlpLgogCi1Vd2FnYTogIGEgLCAgaSAgb3JheiAgQSAgcHJvd2FkerkgZG8gdHJ5YnUgSW5zZXJ0LCBqZWR5brkgcvO/bmljuSBqZXN0IG1pZWpzY2UKK1V3YWdhOiAgYSAsICBpICBvcmF6ICBBICBwcm93YWR6uSBkbyB0cnlidSBJbnNlcnQsIGplZHluuSBy879uaWO5IGplc3QgbWllanNjZSwKICAgICAgICBnZHppZSBub3dlIHpuYWtpIGLqZLkgZG9kYXdhbmUuCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAkJICAgTGVrY2phIDYuMy46IElOTkEgV0VSU0pBIFJFUExBQ0UgKHphbWlhbmEpCkBAIC03OTEsMTYgKzc5MSwxNiBAQAogCiAgIDEuIFByemVqZJ8gZG8gbGluaWkgb3puYWN6b25laiAtLS0+IGkgdW1pZZzmIGt1cnNvciB6YSAiYSkiLgogCi0gIDIuIFdlamSfIHcgdHJ5YiBWaXN1YWwgIHYgIGkgcHJ6ZW5pZZwga3Vyc29yIG5hIHBvY3q5dGVrICJwaWVyd3N6eSIuCisgIDIuIFdlamSfIHcgdHJ5YiBXaXp1YWxueSAgdiAgaSBwcnplbmllnCBrdXJzb3IgbmEgcG9jerl0ZWsgInBpZXJ3c3p5Ii4KIAotICAzLiBXY2mcbmlqICB5ICBhYnkgeWFua293YeYgKGtvcGlvd2HmKSBwb2Scd2lldGxvbnkgdGVrc3QuCisgIDMuIFdjaZxuaWogIHkgIGFieSBrb3Bpb3dh5iAoeWFua293YeYpIHBvZJx3aWV0bG9ueSB0ZWtzdC4KIAogICA0LiBQcnplbmllnCBrdXJzb3IgZG8ga2/xY2EgbmFzdOpwbmVqIGxpbmlpOiAgaiQKIAotICA1LiBXY2mcbmlqICBwICBhYnkgd3Bha293YeYgKHBhc3RlKSB0ZWtzdC4gIERvZGFqOiAgYSBkcnVnaTxFU0M+IC4KKyAgNS4gV2NpnG5paiAgcCAgYWJ5IHdrbGVp5iAod3Bha293YeYpIHRla3N0LiAgRG9kYWo6ICBhIGRydWdpPEVTQz4gLgogCi0gIDYuIFW/eWogdHJ5YnUgV2l6dWFsbmVnbyBhYnkgd3licmHmICIgZWxlbWVudC4iLCB5YW5rdWogZ28gIHkgLCBwcnplamSfIGRvCi0gICAgIGtv8WNhIG5hc3TqcG5laiBsaW5paSAgaiQgaSB1cGFrdWogdGFtIHRla3N0IHogIHAgLgorICA2LiBVv3lqIHRyeWJ1IFdpenVhbG5lZ28sIGFieSB3eWJyYeYgIiBlbGVtZW50LiIsIHlhbmt1aiBnbyAgeSAsIHByemVqZJ8gZG8KKyAgICAga2/xY2EgbmFzdOpwbmVqIGxpbmlpICBqJCAgaSB1cGFrdWogdGFtIHRla3N0IHogIHAgLgogCiAtLS0+ICBhKSB0byBqZXN0IHBpZXJ3c3p5IGVsZW1lbnQuCiAgICAgICBiKQpAQCAtODEwLDcgKzgxMCw3IEBACiAJCQkgTGVrY2phIDYuNS46IFVTVEFXSUFOSUUgT1BDSkkKIAogCi0qKiBVc3Rhd2lhbmllIG9wY2ppIHRhayBieSBzenVrYWogbHViIHN1YnN0eXR1Y2phIGlnbm9yb3dhs3kgd2llbGtvnOYgbGl0ZXIgKioKKyoqIFVzdGF3aWFuaWUgb3BjamkgdGFrLCBieSBzenVrYWogbHViIHN1YnN0eXR1Y2phIGlnbm9yb3dhs3kgd2llbGtvnOYgbGl0ZXIgKioKIAogICAxLiBTenVrYWogJ2lnbm9yZScgd3Bpc3VquWM6ICAgIC9pZ25vcmU8RU5URVI+CiAgICAgIFBvd3Tzcnogc3p1a2FuaWUga2lsa2EgcmF6eSBuYWNpc2tharljIGtsYXdpc3ogIG4gLgpAQCAtODI4LDcgKzgyOCw3IEBACiAKICAgNi4gQWJ5IHd5s7ljennmIGlnbm9yb3dhbmllIHdpZWxrb5xjaSBsaXRlcjogIDpzZXQgbm9pYwogCi1Vd2FnYTogQWJ5IHVzdW655iBwb2Scd2lldGxhbmllIGRvcGFzb3dh8SB3cGlzejogICA6bm9obHNlYXJjaAorVXdhZ2E6IEFieSB1c3VuueYgcG9knHdpZXRsYW5pZSBkb3Bhc293YfEsIHdwaXN6OiAgIDpub2hsc2VhcmNoCiBVd2FnYTogQWJ5IGlnbm9yb3dh5iB3aWVsa2+c5iBsaXRlciBkbGEgamVkbmVnbyB3eXN6dWtpd2FuaWE6IC9pZ25vcmVcYzxFTlRFUj4KIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkJICAgICBMRUtDSkEgNi4gUE9EU1VNT1dBTklFCkBAIC04MzcsMzYgKzgzNywzNiBAQAogICAxLiBXcGlzYW5pZSAgbyAgb3R3aWVyYSBsaW5p6iBQT05Jr0VKIGt1cnNvcmEuCiAgICAgIFdwaXNhbmllICBPICBvdHdpZXJhIGxpbmnqIFBPV1mvRUoga3Vyc29yYS4KIAotICAyLiBXcGlzYW5pZSAgYSAgYnkgd3N0YXdp5iB0ZWtzdCBaQSB6bmFraWVtIG5hLCBrdPNyeW0gamVzdCBrdXJzb3IuCisgIDIuIFdwaXNhbmllICBhICB3c3Rhd2lhIHRla3N0IFpBIHpuYWtpZW0sIG5hIGt083J5bSBqZXN0IGt1cnNvci4KICAgICAgV3Bpc2FuaWUgIEEgIGRvZGFqZSB0ZWtzdCBuYSBrb/FjdSBsaW5paS4KIAogICAzLiBQb2xlY2VuaWUgIGUgIHByemVub3NpIGRvIGtv8WNhIHd5cmF6dS4KLSAgNC4gT3BlcmF0b3IgIHkgIHlhbmt1amUgKGtvcGl1amUpIHRla3N0LCAgcCAgcGFrdWplICh3a2xlamEsIHBhc3RlKSBnby4KKyAgNC4gT3BlcmF0b3IgIHkgIHlhbmt1amUgKGtvcGl1amUpIHRla3N0LCAgcCAgcGFrdWplICh3a2xlamEpIGdvLgogICA1LiBXcGlzYW5pZSB3aWVsa2llZ28gIFIgIHdwcm93YWR6YSB3IHRyeWIgUmVwbGFjZSAoemFtaWFuYSkgZG9w82tpCiAgICAgIG5pZSB6b3N0YW5pZSB3Y2mcbmnqdHkgPEVTQz4uCi0gIDYuIFdwaXNhbmllICI6c2V0IHh4eCIgdXN0YXdpYSBvcGNq6iAieHh4Ii4gTmlldGvzcmUgb3BjamU6CisgIDYuIFdwaXNhbmllICI6c2V0IHh4eCIgdXN0YXdpYSBvcGNq6iAieHh4Ii4gTmlla3TzcmUgb3BjamU6CiAJJ2ljJyAgJ2lnbm9yZWNhc2UnCWlnbm9ydWogd2llbGtvnOYgem5ha/N3CiAJJ2lzJyAgJ2luY3NlYXJjaCcJcG9rYb8gY3rqnGNpb3dlIGRvcGFzb3dhbmlhCiAJJ2hscycgJ2hsc2VhcmNoJwlwb2Scd2lldGwgd3N6eXN0a2llIGRvcGFzb3dhbmlhCi0gICAgIE1vv2VzeiB1v3nmIHphcvN3bm8gZLN1Z2llaiBqYWsgaSBrcvN0a2llaiBmb3JteS4KLSAgNy4gRG9kYWogIm5vIiBhYnkgd3mzuWN6eeYgb3Bjauo6ICAgOnNldCBub2ljCisgICAgIE1vv2VzeiB1v3nmIHphcvN3bm8gZLN1Z2llaiwgamFrIGkga3LzdGtpZWogZm9ybXkuCisgIDcuIERvZGFqICJubyIsIGFieSB3ebO5Y3p55iBvcGNq6jogICA6c2V0IG5vaWMKIAogCiAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCUxFS0NKQSA3LjEuIEpBSyBVWllTS0HGIFBPTU9DCisJCQkgTEVLQ0pBIDcuMS4gSkFLIFVaWVNLQcYgUE9NT0M/CiAKIAkJICAgICAgKiogVb95Y2llIHN5c3RlbXUgcG9tb2N5IG9uLWxpbmUgKioKIAotICBWaW0gcG9zaWFkYSBiYXJkem8gZG9icnkgc3lzdGVtIHBvbW9jeSBvbi1saW5lLiBCeSB6YWN6ueYgc3By82J1aiBqZWRuZWoKKyAgVmltIHBvc2lhZGEgYmFyZHpvIGRvYnJ5IHN5c3RlbSBwb21vY3kgb24tbGluZS4gQnkgemFjernmLCBzcHLzYnVqIGplZG5lagogICB6IHRyemVjaCBtb79saXdvnGNpOgogCS0gd2NpnG5paiBrbGF3aXN6IDxIRUxQPiAoamWcbGkgdGFraSBtYXN6KQogCS0gd2NpnG5paiBrbGF3aXN6IDxGMT4gKGplnGxpIHRha2kgbWFzeikKIAktIHdwaXN6ICAgOmhlbHA8RU5URVI+CiAKLSAgUHJ6ZWN6eXRhaiB0ZWtzdCB3IG9rbmllIHBvbW9jeSAgYWJ5IGRvd2llZHppZeYgc2nqIGphayBkemlhs2EgcG9tb2MuCisgIFByemVjenl0YWogdGVrc3QgdyBva25pZSBwb21vY3ksIGFieSBkb3dpZWR6aWXmIHNp6iBqYWsgZHppYbNhIHBvbW9jLgogICB3cGlzeiBDVFJMLVcgQ1RSTC1XICAgIGFieSBwcnplc2tvY3p55iB6IGplZG5lZ28gb2tuYSBkbyBpbm5lZ28KICAgd3Bpc3ogOnE8RU5URVI+ICAgICAgICBhYnkgemFta2655iBva25vIHBvbW9jeS4KIApAQCAtODk0LDEwICs4OTQsMTAgQEAKICAgMy4gWmFwaXN6IHBsaWs6CiAgICAgIDp3CiAKLSAgTmFzdOpwbnltIHJhemVtIGdkeSB6YWN6bmllc3ogcHJhY+ogdyBWaW1pZSBi6mR6aWUgb24gdb95d2HmIHBvZJx3aWV0bGFuaWEKKyAgTmFzdOpwbnltIHJhemVtLCBnZHkgemFjem5pZXN6IHByYWPqIHcgVmltaWUgYupkemllIG9uIHW/eXdh5iBwb2Scd2lldGxhbmlhCiAgIHNrs2FkbmkuIE1vv2VzeiBkb2Rh5iB3c3p5c3RraWUgc3dvamUgdWx1YmlvbmUgdXN0YXdpZW5pYSBkbyB0ZWdvIHBsaWt1CiAgICJ2aW1yYyIuCi0gIEFieSB1enlza2HmIHdp6mNlaiBpbmZvcm1hY2ppIHdwaXN6ICAgICA6aGVscCB2aW1yYy1pbnRybworICBBYnkgdXp5c2th5iB3aepjZWogaW5mb3JtYWNqaSwgd3Bpc3ogICAgIDpoZWxwIHZpbXJjLWludHJvCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkJICBMZWtjamEgNy4zLjogVVpVUEWjTklBTklFCkBAIC05MDcsMTEgKzkwNywxMSBAQAogCiAgIDEuIFVwZXduaWogc2nqLCC/ZSBWaW0gbmllIGplc3QgdyB0cnliaWUga29tcGF0eWJpbG5vnGNpOiAgIDpzZXQgbm9jcAogCi0gIDIuIFplcmtuaWogamFraWUgcGxpa2kgc7kgdyBiaWW/uWNtIGthdGFsb2d1OiAgIDohbHMgICBsdWIgICA6IWRpcgorICAyLiBaZXJrbmlqLCBqYWtpZSBwbGlraSBzuSB3IGJpZb+5Y3ltIGthdGFsb2d1OiAgIDohbHMgICBsdWIgICA6IWRpcgogCiAgIDMuIFdwaXN6IHBvY3q5dGVrIHBvbGVjZW5pYTogICA6ZQogCi0gIDQuIFdjaZxuaWogIENUUkwtRCAgaSBWaW0gcG9rYb9lIGxpc3TqIHBvbGVjZfEgamFraWUgemFjenluYWq5IHNp6iBuYSAiZSIuCisgIDQuIFdjaZxuaWogIENUUkwtRCAgaSBWaW0gcG9rYb9lIGxpc3TqIHBvbGVjZfEsIGpha2llIHphY3p5bmFquSBzaeogbmEgImUiLgogCiAgIDUuIFdjaZxuaWogIDxUQUI+ICBpIFZpbSB1enVwZbNuaSBwb2xlY2VuaWUgZG8gIjplZGl0Ii4KIApAQCAtOTI1LDcgKzkyNSw3IEBACiAJCQkgICAgTGVrY2phIDcuIFBPRFNVTU9XQU5JRQogCiAKLSAgMS4gV3Bpc3ogIDpoZWxwICBsdWIgd2NpnG5paiA8RjE+IGx1YiA8SGVscD4gYWJ5IG90d29yennmIG9rbm8gcG9tb2N5LgorICAxLiBXcGlzeiAgOmhlbHAgIGFsYm8gd2NpnG5paiA8RjE+IGx1YiA8SGVscD4gYWJ5IG90d29yennmIG9rbm8gcG9tb2N5LgogCiAgIDIuIFdwaXN6ICA6aGVscCBjbWQgIGFieSB1enlza2HmIHBvbW9jIG8gIGNtZCAuCiAKQEAgLTk0NSwxNCArOTQ1LDE0IEBACiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCi0gIFR1dGFqIHNp6iBrb/FjenkgdHV0b3JpYWwgVmltYS4gWm9zdGGzIG9uIHBvbXmcbGFueSB0YWsgYWJ5IGRh5iBrcvN0a2kKKyAgVHV0YWogc2nqIGtv8WN6eSB0dXRvcmlhbCBWaW1hLiBab3N0YbMgb24gcG9teZxsYW55IHRhaywgYWJ5IGRh5iBrcvN0a2kKICAgcHJ6ZWdsuWQgamVnbyBtb79saXdvnGNpLCB3eXN0YXJjemFquWN5IGJ5nCBt82ezIGdvIHW/eXdh5i4gSmVzdCBvbgotICBkYWxla2kgb2Qga29tcGxldG5vnGNpIHBvbmlld2G/IFZpbSBtYSBvIHdpZWxlLCB3aWVsZSB3aepjZWogcG9sZWNl8S4KKyAgZGFsZWtpIG9kIGtvbXBsZXRub5xjaSwgcG9uaWV3Yb8gVmltIG1hIG8gd2llbGUsIHdpZWxlIHdp6mNlaiBwb2xlY2XxLgogCiAgIERsYSBkYWxzemVqIG5hdWtpIHJla29tZW5kdWplbXkga3Npub9r6joKIAlWaW0gLSBWaSBJbXByb3ZlZCAtIGF1dG9yIFN0ZXZlIE91YWxsaW5lCiAJV3lkYXdjYTogTmV3IFJpZGVycwotICBQaWVyd3N6YSBrc2m5emthIGNhs2tvd2ljaWUgcG+cd2nqY29uYSBWaW1vd2kuIFW/eXRlY3puYSB6d7Nhc3pjemEgZGxhCisgIFBpZXJ3c3phIGtzabm/a2EgY2Gza293aWNpZSBwb5x3aepjb25hIFZpbW93aS4gVb95dGVjem5hIHp3s2FzemN6YSBkbGEKICAgcG9jerl0a3VquWN5Y2guIFphd2llcmEgd2llbGUgcHJ6eWuzYWTzdyBpIGlsdXN0cmFjamkuCiAgIFpvYmFjeiBodHRwOi8vaWNjZi1ob2xsYW5kLm9yZy4vY2xpY2s1Lmh0bWwKIApAQCAtOTYwLDcgKzk2MCw3IEBACiAgIHBvbGVjZW5pYToKIAlMZWFybmluZyB0aGUgVmkgRWRpdG9yIC0gYXV0b3IgTGluZGEgTGFtYgogCVd5ZGF3Y2E6IE8nUmVpbGx5ICYgQXNzb2NpYXRlcyBJbmMuCi0gIFRvIGRvYnJhIGtzabm/a2EgYnkgZG93aWVkemll5iBzaeogbmllbWFsIHdzenlzdGtpZWdvIGNvIGNoY2lhs2J5nCB6cm9iaeYKKyAgVG8gZG9icmEga3Npub9rYSwgYnkgZG93aWVkemll5iBzaeogbmllbWFsIHdzenlzdGtpZWdvLCBjbyBjaGNpYbNieZwgenJvYmnmCiAgIHogVmkuIFN683N0YSBlZHljamEgemF3aWVyYSB0Zb8gaW5mb3JtYWNqZSBvIFZpbWllLgogCiAgIFBvIHBvbHNrdSB3eWRhbm86CkBAIC05OTEsNCArOTkxLDUgQEAKICAgcmV2LiBNYXJ6ZWMgMjAwMgogICAybmQgcmV2LiBXcnplc2ll8SAyMDA0CiAgIDNyZCByZXYuIE1hcnplYyAyMDA2CisgIDR0aCByZXYuIEdydWR6aWXxIDIwMDgKICAgV3N6ZWxraWUgdXdhZ2kgcHJvc3rqIGtpZXJvd2HmIG5hOiBtaWttYWNoQHdwLnBsCmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLnBsLnV0Zi04IGIvcnVudGltZS90dXRvci90dXRvci5wbC51dGYtOAppbmRleCA4OGY5NWQxLi4zZmFhYWE4IDEwMDY0NAotLS0gYS9ydW50aW1lL3R1dG9yL3R1dG9yLnBsLnV0Zi04CisrKyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IucGwudXRmLTgKQEAgLTIsOSArMiw5IEBACiA9ICAgIFcgaSB0IGEgaiAgIHcgICB0IHUgdCBvIHIgaSBhIGwgdSAgIFYgSSBNIC0gYSAgICAgIC0gICAgV2Vyc2phICAxLjcuICAgICA9CiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAKLSAgICAgVmltIHRvIHBvdMSZxbxueSBlZHl0b3IsIGt0w7NyeSBwb3NpYWRhIHdpZWxlIHBvbGVjZcWELCB6Ynl0IGR1xbxvIGJ5CisgICAgIFZpbSB0byBwb3TEmcW8bnkgZWR5dG9yLCBrdMOzcnkgcG9zaWFkYSB3aWVsZSBwb2xlY2XFhCwgemJ5dCBkdcW8bywgYnkKICAgICAgd3lqYcWbbmnEhyBqZSB3c3p5c3RraWUgdyB0eW0gdHV0b3JpYWx1LiBUZW4gcHJ6ZXdvZG5payBtYSBuYXVjennEhwotICAgICBDacSZIHBvc8WCdWdpd2HEhyBzacSZIHd5c3RhcmN6YWrEhWNvIHdpZWxvbWEga29tZW5kYW1pIGJ5xZsgbcOzZ8WCIMWCYXR3bworICAgICBDacSZIHBvc8WCdWdpd2HEhyBzacSZIHd5c3RhcmN6YWrEhWNvIHdpZWxvbWEga29tZW5kYW1pLCBiecWbIG3Ds2fFgiDFgmF0d28KICAgICAgdcW8eXdhxIcgVmltYSBqYWtvIGVkeXRvcmEgb2fDs2xuZWdvIHByemV6bmFjemVuaWEuCiAKICAgICAgQ3phcyBwb3RyemVibnkgbmEgdWtvxYRjemVuaWUgdHV0b3JpYWxhIHRvIDI1IGRvIDMwIG1pbnV0IGkgemFsZcW8eQpAQCAtMTMsMTQgKzEzLDE0IEBACiAJIFVXQUdBOgogCSBQb2xlY2VuaWEgd3lrb255d2FuZSB3IGN6YXNpZSBsZWtjamkgem1vZHlmaWt1asSFIHRla3N0LiBacsOzYgogCSB3Y3plxZtuaWVqIGtvcGnEmSB0ZWdvIHBsaWt1IGRvIMSHd2ljemXFhCAoamXFm2xpIHphY3rEhcWCZcWbIGtvbWVuZMSFCi0JICJ2aW10dXRvciIgdG8ganXFvCBwcmFjdWplc3ogbmEga29waWkpLgorCSAidmltdHV0b3IiLCB0byBqdcW8IHByYWN1amVzeiBuYSBrb3BpaSkuCiAKLQkgUGFtacSZdGFqIMW8ZSBwcnpld29kbmlrIHRlbiB6b3N0YcWCIHphcHJvamVrdG93YW55IGRvIG5hdWtpIHBvcHJ6ZXoKLQkgxId3aWN6ZW5pYS4gT3puYWN6YSB0bywgxbxlIG11c2lzeiB3eWtvbnl3YcSHIHBvbGVjZW5pYSBieSBuYXVjennEhyBzacSZIGljaAotCSBwcmF3aWTFgm93by4gSmXFm2xpIGLEmWR6aWVzeiBqZWR5bmllIGN6eXRhxYIgdGVrc3Qgc3p5YmtvIHphcG9tbmlzeiB3aWVsZQorCSBQYW1pxJl0YWosIMW8ZSBwcnpld29kbmlrIHRlbiB6b3N0YcWCIHphcHJvamVrdG93YW55IGRvIG5hdWtpIHBvcHJ6ZXoKKwkgxId3aWN6ZW5pYS4gT3puYWN6YSB0bywgxbxlIG11c2lzeiB3eWtvbnl3YcSHIHBvbGVjZW5pYSwgYnkgbmF1Y3p5xIcgc2nEmSBpY2gKKwkgcHJhd2lkxYJvd28uIEplxZtsaSBixJlkemllc3ogamVkeW5pZSBjenl0YcWCIHRla3N0LCBzenlia28gemFwb21uaXN6IHdpZWxlCiAJIHBvbGVjZcWEIQogCi0gICAgIFRlcmF6IHVwZXduaWogc2nEmSwgxbxlIG5pZSBtYXN6IHdjacWbbmnEmXRlZ28gQ2Fwc0xvY2thIGkgd2Npc2thaiAgagorICAgICBUZXJheiB1cGV3bmlqIHNpxJksIMW8ZSBuaWUgbWFzeiB3Y2nFm25pxJl0ZWdvIENhcHMgTG9ja2EgaSB3Y2lza2FqICBqCiAgICAgIHRhayBkxYJ1Z28gZG9ww7NraSBMZWtjamEgMS4xLiBuaWUgd3lwZcWCbmkgY2HFgmtvd2ljaWUgZWtyYW51LgogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KQEAgLTQwLDI4ICs0MCwyOCBAQAogCiAgIDMuIFXFvHl3YWrEhWMgc3RyemHFgmtpIHcgZMOzxYIgcHJ6ZWpkxbogZG8gbmFzdMSZcG5laiBsZWtjamkuCiAKLVV3YWdhOiBKZcWbbGkgbmllIGplc3RlxZsgcGV3aWVuIGN6ZWdvxZsgY28gd3Bpc2HFgmXFmywgd2NpxZtuaWogPEVTQz4gYnkgd3LDs2NpxIcgZG8KK1V3YWdhOiBKZcWbbGkgbmllIGplc3RlxZsgcGV3aWVuIGN6ZWdvxZsgY28gd3Bpc2HFgmXFmywgd2NpxZtuaWogPEVTQz4sIGJ5IHdyw7NjacSHIGRvCiAgICAgICAgdHJ5YnUgTm9ybWFsLiBXdGVkeSBwb3d0w7NyeiBwb2xlY2VuaWUuCiAKIFV3YWdhOiBLbGF3aXN6ZSBrdXJzb3JhIHRha8W8ZSBwb3dpbm55IGR6aWHFgmHEhywgYWxlIHXFvHl3YWrEhWMgIGhqa2wgIGLEmWR6aWVzegotICAgICAgIHcgc3RhbmllIHBvcnVzemHEhyBzacSZIG8gd2llbGUgc3p5YmNpZWogamFrIHNpxJkgdHlsa28gcHJ6eXp3eWN6YWlzei4KKyAgICAgICB3IHN0YW5pZSBwb3J1c3phxIcgc2nEmSBvIHdpZWxlIHN6eWJjaWVqLCBqYWsgc2nEmSB0eWxrbyBwcnp5end5Y3phaXN6LgogICAgICAgIE5hcHJhd2TEmSEKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAJCSAgICBMZWtjamEgMS4yLjogV1lDSE9EWkVOSUUgWiBWSU0tYQogCi0gISEgVVdBR0E6IFByemVkIHd5a29uYW5pZW0gamFraWVnb2tvbHdpZWsgcG9sZWNlbmlhIHByemVjenl0YWogY2HFgsSFIGxla2NqxJkuISEKKyAhISBVV0FHQTogUHJ6ZWQgd3lrb25hbmllbSBqYWtpZWdva29sd2llayBwb2xlY2VuaWEgcHJ6ZWN6eXRhaiBjYcWCxIUgbGVrY2rEmSAhIQogCiAgIDEuIFdjacWbbmlqIDxFU0M+IChhYnkgdXBld25pxIcgc2nEmSwgxbxlIGplc3RlxZsgdyB0cnliaWUgTm9ybWFsKS4KICAgMi4gV3Bpc3o6CQkJOnEhPEVOVEVSPi4KLSAgICAgVG8gc3Bvd29kdWplIHd5asWbY2llIHogZWR5dG9yYSBQT1JaVUNBSsSEQyB3c3plbGtpZSB6bWlhbnkgamFraWUKLSAgICAgemTEhcW8ecWCZcWbIHpyb2JpxIcuIEplxZtsaSBjaGNlc3ogemFwYW1pxJl0YcSHIHptaWFueSBpIHd5asWbxIcKKyAgICAgVG8gc3Bvd29kdWplIHd5asWbY2llIHogZWR5dG9yYSBQT1JaVUNBSsSEQyB3c3plbGtpZSB6bWlhbnksIGpha2llCisgICAgIHpkxIXFvHnFgmXFmyB6cm9iacSHLiBKZcWbbGkgY2hjZXN6IHphcGFtacSZdGHEhyB6bWlhbnkgaSB3eWrFm8SHLAogICAgICB3cGlzejoJCQk6d3E8RU5URVI+CiAKICAgMy4gS2llZHkgd2lkemlzeiB6bmFrIHphY2jEmXR5IHBvd8WCb2tpIHdwaXN6IGtvbWVuZMSZLCDFvGVieSB3csOzY2nEhwogICAgICBkbyB0dXRvcmlhbGEuIEN6eWxpOgl2aW10dXRvcjxFTlRFUj4KIAotICA0LiBKZcWbbGkgY2hjZXN6IHphcGFtacSZdGHEhyBwb2xlY2VuaWEsIHd5a29uYWoga3Jva2kgMS4gZG8gMy4gYWJ5CisgIDQuIEplxZtsaSBjaGNlc3ogemFwYW1pxJl0YcSHIHBvbGVjZW5pYSwgd3lrb25haiBrcm9raSAxLiBkbyAzLiwgYWJ5CiAgICAgIHd5asWbxIcgaSB3csOzY2nEhyBkbyBlZHl0b3JhLgogCiBVV0FHQTogOnEhPEVOVEVSPiBwb3J6dWNhIHdzemVsa2llIHptaWFueSBqYWtpZSB6cm9iacWCZcWbLiBXIG5hc3TEmXBueWNoCkBAIC04NSw3ICs4NSw3IEBACiAKIC0tLT4gS2tyb3dhIHBycnplc2tvY3p5xYJhIHBycnpleiBrc2lpxJnFvHljYy4KIAotICA1LiBUZXJheiBraWVkeSB6ZGFuaWUgamVzdCBwb3ByYXdpb25lIHByemVqZMW6IGRvIExla2NqaSAxLjQuCisgIDUuIFRlcmF6LCBraWVkeSB6ZGFuaWUgamVzdCBwb3ByYXdpb25lLCBwcnplamTFuiBkbyBMZWtjamkgMS40LgogCiBVV0FHQTogVWN6IHNpxJkgcHJ6ZXogxId3aWN6ZW5pZSwgbmllIHdrdXdhbmllLgogCkBAIC0xMDEsMTggKzEwMSwxOCBAQAogCiAgIDEuIFByemVuaWXFmyBrdXJzb3IgZG8gcGllcndzemVqIGxpbmlpIHBvbmnFvGVqIG96bmFjem9uZWogLS0tPi4KIAotICAyLiBBYnkgcG9wcmF3acSHIHBpZXJ3c3p5IHdpZXJzeiwgdXN0YXcga3Vyc29yIG5hIHBpZXJ3c3p5bSB6bmFrdSBQTyB0eW0KKyAgMi4gQWJ5IHBvcHJhd2nEhyBwaWVyd3N6eSB3aWVyc3osIHVzdGF3IGt1cnNvciBuYSBwaWVyd3N6eW0gem5ha3UgUE8gdHltLAogICAgICBnZHppZSB0ZWtzdCBtYSBiecSHIHdzdGF3aW9ueS4KIAogICAzLiBXY2nFm25paiAgaSAgYSBuYXN0xJlwbmllIHdwaXN6IGtvbmllY3puZSBwb3ByYXdraS4KIAotICA0LiBQbyBwb3ByYXdpZW5pdSBixYLEmWR1IHdjacWbbmlqIDxFU0M+IGJ5IHdyw7NjacSHIGRvIHRyeWJ1IE5vcm1hbC4KLSAgICAgUG93dGFyemFqIGtyb2tpIDIuIGRvIDQuIGFieSBwb3ByYXdpxIcgY2HFgmUgemRhbmllLgorICA0LiBQbyBwb3ByYXdpZW5pdSBixYLEmWR1IHdjacWbbmlqIDxFU0M+LCBieSB3csOzY2nEhyBkbyB0cnlidSBOb3JtYWwuCisgICAgIFBvd3RhcnphaiBrcm9raSAyLiBkbyA0LiwgYWJ5IHBvcHJhd2nEhyBjYcWCZSB6ZGFuaWUuCiAKIC0tLT4gVyB0ZWogYnJramUgdHJvY2jEmSAuCiAtLS0+IFcgdGVqIGxpbmlpIGJyYWt1amUgdHJvY2jEmSB0ZWtzdHUuCiAKLSAgNS4gS2llZHkgY3p1amVzeiBzacSZIHN3b2JvZG5pZSB3c3Rhd2lhasSFYyB0ZWtzdCBwcnplamTFuiBkbworICA1LiBLaWVkeSBjenVqZXN6IHNpxJkgc3dvYm9kbmllIHdzdGF3aWFqxIVjIHRla3N0LCBwcnplamTFuiBkbwogICAgICBwb2RzdW1vd2FuaWEgcG9uacW8ZWouCiAKIApAQCAtMTI5LDcgKzEyOSw3IEBACiAKICAgMy4gS2llZHkgdGVrc3Qgem9zdGHFgiBkb2RhbnksIHdjacWbbmlqIDxFU0M+IGkgd3LDs8SHIGRvIHRyeWJ1IE5vcm1hbG5lZ28uCiAKLSAgNC4gUHJ6ZW5pZcWbIGt1cnNvciBkbyBkcnVnaWVqIGxpbmlpIG96bmFjem9uZWogLS0tPiBpIHBvd3TDs3J6IGtyb2tpIDIgaSAzCisgIDQuIFByemVuaWXFmyBrdXJzb3IgZG8gZHJ1Z2llaiBsaW5paSBvem5hY3pvbmVqIC0tLT4gaSBwb3d0w7NyeiBrcm9raSAyLiBpIDMuLAogICAgICBhYnkgcG9wcmF3acSHIHpkYW5pZS4KIAogLS0tPiBCcmFrdWplIHR1IHRybwpAQCAtMTM3LDI3ICsxMzcsMjcgQEAKIC0tLT4gVHUgdGXFvCB0cm9jaMSZIGJyYQogICAgICBUdSB0ZcW8IHRyb2NoxJkgYnJha3VqZS4KIAotICA1LiBLaWVkeSBqdcW8IHV0cndhbGnFgmXFmyDEh3dpY3plbmllIHByemVqZMW6IGRvIGxla2NqaSAxLjYuCisgIDUuIEtpZWR5IGp1xbwgdXRyd2FsacWCZcWbIMSHd2ljemVuaWUsIHByemVqZMW6IGRvIGxla2NqaSAxLjYuCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkJICBMZWtjamEgMS42LjogRURZQ0pBIFBMSUtVCiAKIAkJICAqKiBVxbx5aiAgOndxICBhYnkgemFwaXNhxIcgcGxpayBpIHd5asWbxIcuICoqCiAKLSAgICEhIFVXQUdBOiB6YW5pbSB3eWtvbmFzeiBqYWtpZWtvbHdpZWsgcG9sZWNlbmlhIHByemVjenlhaiBjYcWCxIUgbGVrY2rEmSAhIQorICAgISEgVVdBR0E6IHphbmltIHd5a29uYXN6IGpha2lla29sd2llayBwb2xlY2VuaWEgcHJ6ZWN6eXRhaiBjYcWCxIUgbGVrY2rEmSAhIQogCiAgIDEuIFpha2/FhGN6IHR1dG9yaWFsIHRhayBqYWsgdyBsZWtjamkgMS4yLjogIDpxIQotICAgICBMdWIgamXFm2xpIG1hc3ogZG9zdMSZcCBkbyBpbm5lZ28gdGVybWluYWxhIHpyw7NiIGtvbGVqbmUga3Jva2kgdGFtLgorICAgICBsdWIsIGplxZtsaSBtYXN6IGRvc3TEmXAgZG8gaW5uZWdvIHRlcm1pbmFsYSwgd3lrb25haiBrb2xlam5lIGtyb2tpIHRhbS4KIAogICAyLiBXIHBvd8WCb2NlIHd5ZGFqIHBvbGVjZW5pZTogIHZpbSB0dXRvcjxFTlRFUj4KLSAgICAgInZpbSIgamVzdCBwb2xlY2VuaWVtIHVydWNoYW1pYWrEhWN5bSBlZHl0b3IgVmltLiAndHV0b3InIHRvIG5hendhIHBsaWt1Ci0gICAgIGpha2kgY2hjZXN6IGVkeXRvd2HEhy4gVcW8eWogcGxpa3UgamFraSBtb8W8ZSB6b3N0YcSHIHptaWVuaW9ueS4KKyAgICAgInZpbSIgamVzdCBwb2xlY2VuaWVtIHVydWNoYW1pYWrEhWN5bSBlZHl0b3IgVmltLiAndHV0b3InIHRvIG5hendhIHBsaWt1LAorICAgICBqYWtpIGNoY2VzeiBlZHl0b3dhxIcuIFXFvHlqIHBsaWt1LCBrdMOzcnkgbW/FvGUgem9zdGHEhyB6bWllbmlvbnkuCiAKLSAgMy4gRG9kYWogaSB1c3XFhCB0ZWtzdCB0YWsgamFrIHNpxJkgbmF1Y3p5xYJlxZsgdyBwb3ByemVkbmljaCBsZWtjamFjaC4KKyAgMy4gRG9kYWogaSB1c3XFhCB0ZWtzdCB0YWssIGphayBzacSZIG5hdWN6ecWCZcWbIHcgcG9wcnplZG5pY2ggbGVrY2phY2guCiAKICAgNC4gWmFwaXN6IHBsaWsgemUgem1pYW5hbWkgaSBvcHXFm8SHIFZpbWE6ICA6d3E8RU5URVI+CiAKLSAgNS4gSmXFm2xpIHpha2/FhGN6ecWCZcWbIHZpbXR1dG9yIHcga3Jva3UgMS4gdXJ1Y2hvbSBnbyBwb25vd25pZSBpIHByemVqZMW6CisgIDUuIEplxZtsaSB6YWtvxYRjennFgmXFmyB2aW10dXRvciB3IGtyb2t1IDEuLCB1cnVjaG9tIGdvIHBvbm93bmllIGkgcHJ6ZWpkxboKICAgICAgZG8gcG9kc3Vtb3dhbmlhIHBvbmnFvGVqLgogCiAgIDYuIFBvIHByemVjenl0YW5pdSB3c3p5c3RraWNoIGtyb2vDs3cgaSBpY2ggenJvenVtaWVuaXU6IHd5a29uYWogamUuCkBAIC0xNjgsMTQgKzE2OCwxNCBAQAogICAxLiBQb3J1c3phc3oga3Vyc29yZW0gdcW8eXdhasSFYyAic3RyemHFgmVrIiBpIGtsYXdpc3p5ICBoamtsIC4KICAgICAgICBoICh3IGxld28pCSBqICh3IGTDs8WCKQkgayAoZG8gZ8OzcnkpCQlsICh3IHByYXdvKQogCi0gIDIuIEJ5IHdlasWbxIcgZG8gVmltYSAoeiBwb3fFgm9raSkgd3Bpc3o6CisgIDIuIEJ5IHdlasWbxIcgZG8gVmltYSwgKHogcG93xYJva2kpIHdwaXN6OgogCQkJICAgIHZpbSBOQVpXQV9QTElLVTxFTlRFUj4KIAotICAzLiBCeSB3eWrFm8SHIHogVmltYSB3cGlzejoKLQkJCSAgICA8RVNDPiA6cSE8RU5URVI+ICBieSB1c3VuxIVjIHdzenlzdGtpZSB6bWlhbnkuCisgIDMuIEJ5IHd5asWbxIcgeiBWaW1hLCB3cGlzejoKKwkJCSAgICA8RVNDPiA6cSE8RU5URVI+ICBieSB1c3VuxIXEhyB3c3p5c3RraWUgem1pYW55LgogCSAgICAgTFVCOgkgICAgPEVTQz4gOndxPEVOVEVSPiAgYnkgem1pYW55IHphY2hvd2HEhy4KIAotICA0LiBCeSB1c3VuxIXEhyB6bmFrIHBvZCBrdXJzb3JlbSB3Y2nFm25pajogIHgKKyAgNC4gQnkgdXN1bsSFxIcgem5hayBwb2Qga3Vyc29yZW0sIHdjacWbbmlqOiAgeAogCiAgIDUuIEJ5IHdzdGF3acSHIHRla3N0IHByemVkIGt1cnNvcmVtIGx1YiBkb2RhxIc6CiAJaSAgIHdwaXN6IHRla3N0ICAgPEVTQz4gICAgICAgICB3c3Rhd2kgcHJ6ZWQga3Vyc29yZW0KQEAgLTE4OSwxOCArMTg5LDE4IEBACiAJCSAgTGVrY2phIDIuMS46IFBPTEVDRU5JRSBERUxFVEUgKHVzdXdhbmllKQogCiAKLQkJICAgICAgKiogV3Bpc3ogIGR3ICBieSB1c3VuxIVjIHd5cmF6LiAqKgorCQkgICAgICAqKiBXcGlzeiAgZHcgIGJ5IHVzdW7EhcSHIHd5cmF6LiAqKgogCi0gIDEuIFdjacWbbmlqICA8RVNDPiAgYnkgdXBld25pxIcgc2nEmSwgxbxlIGplc3RlxZsgdyB0cnliaWUgTm9ybWFsLgorICAxLiBXY2nFm25paiAgPEVTQz4sIGJ5IHVwZXduacSHIHNpxJksIMW8ZSBqZXN0ZcWbIHcgdHJ5YmllIE5vcm1hbC4KIAogICAyLiBQcnplbmllxZsga3Vyc29yIGRvIGxpbmlpIHBvbmnFvGVqIG96bmFjem9uZWogLS0tPi4KIAotICAzLiBQcnplc3XFhCBrdXJzb3IgbmEgcG9jesSFdGVrIHd5cmF6dSwga3TDs3JlIGNoY2VzeiB1c3VuxIXEhy4KKyAgMy4gUHJ6ZXN1xYQga3Vyc29yIG5hIHBvY3rEhXRlayB3eXJhenUsIGt0w7NyeSBjaGNlc3ogdXN1bsSFxIcuCiAKICAgNC4gV3Bpc3ogICBkdyAgIGJ5IHVzdW7EhcSHIHd5cmF6LgogCiAgIFVXQUdBOiBMaXRlcmEgIGQgIHBvamF3aSBzacSZIG5hIGRvbGUgZWtyYW51LiBWaW0gY3pla2EgbmEgd3Bpc2FuaWUgIHcgLgotCSBKZcWbbGkgem9iYWN6eXN6IGlubnkgem5hayBvem5hY3phIHRvLCDFvGUgd3Bpc2HFgmXFmyBjb8WbIMW6bGUsIHdjacWbbmlqCisJIEplxZtsaSB6b2JhY3p5c3ogaW5ueSB6bmFrLCBvem5hY3phIHRvLCDFvGUgd3Bpc2HFgmXFmyBjb8WbIMW6bGU7IHdjacWbbmlqCiAJIDxFU0M+IGkgemFjem5paiBvZCBwb2N6xIV0a3UuCiAKIC0tLT4gSmVzdCB0dSBwYXLEmSBwYXBpZXIgd3lyYXrDs3csIGt0w7NyZSBrYW1pZcWEIG5pZSBuYWxlxbzEhSBkbyBub8W8eWNlIHRlZ28gemRhbmlhLgpAQCAtMjI1LDcgKzIyNSw3IEBACiAtLS0+IEt0b8WbIHdwaXNhxYIga29uaWVjIHRlZ28gemRhbmlhIGR3dWtyb3RuaWUuIHpkYW5pYSBkd3Vrcm90bmllLgogCiAKLSAgNS4gUHJ6ZWpkxbogZG8gTGVrY2ppIDIuMy4gYnkgenJvenVtaWXEhyBjbyBzacSZIHN0YcWCby4KKyAgNS4gUHJ6ZWpkxbogZG8gTGVrY2ppIDIuMy4sIGJ5IHpyb3p1bWllxIcgY28gc2nEmSBzdGHFgm8uCiAKIAogCkBAIC0yMzUsMTIgKzIzNSwxMiBAQAogCQkgICAgIExla2NqYSAyLjMuOiBPIE9QRVJBVE9SQUNIIEkgUlVDSEFDSAogCiAKLSAgV2llbGUgcG9sZWNlxYQgem1pZW5pYWrEhWN5Y2ggdGVrc3Qgc8SFIHrFgm/FvG9uZSB6IG9wZXJhdG9yYSBpIHJ1Y2h1LgotICBGb3JtYXQgZGxhIHBvbGVjZW5pYSB1c3V3YWrEhWNlZ28geiBvcGVyYXRvcmVtICBkICBqZXN0IHRha2k6CisgIFdpZWxlIHBvbGVjZcWEIHptaWVuaWFqxIVjeWNoIHRla3N0IGplc3QgesWCb8W8b255Y2ggeiBvcGVyYXRvcmEgaSBydWNodS4KKyAgRm9ybWF0IGRsYSBwb2xlY2VuaWEgdXN1d2FqxIVjZWdvIHogb3BlcmF0b3JlbSAgZCAgamVzdCBuYXN0xJlwdWrEhWN5OgogCiAJICAgIGQgIHJ1Y2gKIAotICBHZHppZToKKyAgZ2R6aWU6CiAgICBkICAgICAgLSBvcGVyYXRvciB1c3V3YW5pYS4KICAgIHJ1Y2ggICAtIG5hIGN6eW0gcG9sZWNlbmllIGLEmWR6aWUgd3lrb255d2FuZSAobGlzdGEgcG9uacW8ZWopLgogCkBAIC0yNTIsNyArMjUyLDcgQEAKIFcgdGVuIHNwb3PDs2Igd3Bpc2FuaWUgIGRlICB1c3VuaWUgem5ha2kgb2Qga3Vyc29yYSBkbyBrb8WEY2Egd3lyYXp1LgogCiBVV0FHQTogV3Bpc2FuaWUgdHlsa28gcnVjaHUgdyB0cnliaWUgTm9ybWFsIGJleiBvcGVyYXRvcmEgcHJ6ZW5pZXNpZSBrdXJzb3IKLSAgICAgICB0YWsgamFrIHRvIG9rcmXFm2xvbm8uCisgICAgICAgdGFrLCBqYWsgdG8gb2tyZcWbbG9uby4KIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAJCSAgICBMZWtjamEgMi40LjogVcW7WUNJRSBNTk/Fu05JS0EgRExBIFJVQ0hVCkBAIC0yNjYsMzIgKzI2NiwzMiBAQAogCiAgIDMuIFdwaXN6ICAzZSAgYWJ5IHByemVuaWXFm8SHIGt1cnNvciBkbyBrb8WEY2EgdHJ6ZWNpZWdvIHd5cmF6dSB3IHByesOzZC4KIAotICA0LiBXcGlzeiAgMCAgKHplcm8pIGFieSBwcnplbmllxZvEhyBrdXJzb3IgZG8gcG9jesSFdGt1IGxpbmlpLgorICA0LiBXcGlzeiAgMCAgKHplcm8pLCBhYnkgcHJ6ZW5pZcWbxIcga3Vyc29yIG5hIHBvY3rEhXRlayBsaW5paS4KIAogICA1LiBQb3d0w7NyeiBrcm9raSAyLiBpIDMuIHogaW5ueW1pIGxpY3piYW1pLgogCiAKLSAtLS0+IFRvIGplc3Qgend5a8WCeSB3aWVyc3ogeiB3eXJhemFtaSBwbyBrdMOzcnljaCBtb8W8ZXN6IHNpxJkgcG9ydXN6YcSHLgorIC0tLT4gVG8gamVzdCB6d3lrxYJ5IHdpZXJzeiB6IHd5cmF6YW1pLCBwbyBrdMOzcnljaCBtb8W8ZXN6IHNpxJkgcG9ydXN6YcSHLgogCiAgIDYuIFByemVqZMW6IGRvIGxla2NqaSAyLjUuCiAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJTGVrY2phIDIuNS46IFXFu1lDSUUgTU5PxbtOSUtBIEJZIFdJxJhDRUogVVNVTsSExIYKKwkJTGVrY2phIDIuNS46IFXFu1lDSUUgTU5PxbtOSUtBLCBCWSBXScSYQ0VKIFVTVU7EhMSGCiAKIAogICAgICoqIFdwaXNhbmllIGxpY3pieSB6IG9wZXJhdG9yZW0gcG93dGFyemEgZ28gb2Rwb3dpZWRuacSFIGlsb8WbxIcgcmF6eS4gKioKIAogICBXIHd5xbxlaiB3c3BvbW5pYW5laiBrb21iaW5hY2ppIG9wZXJhdG9yYSB1c3V3YW5pYSBpIHJ1Y2h1IHBvZGFqIG1ub8W8bmlrCi0gIHByemVkIHJ1Y2hlbSBieSB3acSZY2VqIHVzdW7EhcSHOgorICBwcnplZCBydWNoZW0sIGJ5IHdpxJljZWogdXN1bsSFxIc6CiAJZCAgbGljemJhICBydWNoCiAKICAgMS4gUHJ6ZW5pZcWbIGt1cnNvciBkbyBwaWVyd3N6ZWdvIHd5cmF6dSBLQVBJVEFMSUtBTUkgdyBsaW5paSB6YXpuYWN6b25laiAtLS0+LgogCiAgIDIuIFdwaXN6ICAyZHcgIGFieSB1c3VuxIXEhyBkd2Egd3lyYXp5IEtBUElUQUxJS0FNSS4KIAotICAzLiBQb3d0YXJ6YWoga3Jva2kgMS4gaSAyLiB6IGlubnltaSBtbm/FvG5pa2FtaSBhYnkgdXN1bsSFxIcga29sZWpuZSB3eXJhenkKKyAgMy4gUG93dGFyemFqIGtyb2tpIDEuIGkgMi4geiBpbm55bWkgbW5vxbxuaWthbWksIGFieSB1c3VuxIXEhyBrb2xlam5lIHd5cmF6eQogICAgICBLQVBJVEFMSUtBTUkgamVkbnltIHBvbGVjZW5pZW0KIAogLS0tPiB0YSBBU0QgV0UgbGluaWEgUVdFIEFTREYgWlhDViBGRyB3eXJhesOzdyB6b3N0YcWCYSBFUlQgRkdIIENGIG9jenlzemN6b25hLgpAQCAtMzEyLDcgKzMxMiw3IEBACiAgIDEuIFByemVuaWXFmyBrdXJzb3IgZG8gZHJ1Z2llZ28gemRhbmlhIHogd2llcnN6eWthIHBvbmnFvGVqLgogICAyLiBXcGlzeiAgZGQgIGFieSB1c3VuxIXEhyB3aWVyc3ouCiAgIDMuIFRlcmF6IHByemVuaWXFmyBzacSZIGRvIGN6d2FydGVnbyB3aWVyc3phLgotICA0LiBXcGlzeiAgMmRkICBhYnkgdXN1bsSFYyBkd2Egd2llcnN6ZS4KKyAgNC4gV3Bpc3ogIDJkZCAgYWJ5IHVzdW7EhcSHIGR3YSB3aWVyc3plLgogCiAtLS0+ICAxKSAgUsOzxbxlIHPEhSBjemVyd29uZSwKIC0tLT4gIDIpICBCxYJvdG8gamVzdCBmYWpuZSwKQEAgLTMzNSwxMiArMzM1LDEyIEBACiAgIDIuIFdwaXN6ICB4ICBhYnkgdXN1bsSFxIcgcGllcndzenkgbmllY2hjaWFueSB6bmFrLgogICAzLiBUZXJheiB3Y2nFm25paiAgdSAgYWJ5IGNvZm7EhcSHIHNrdXRraSBvc3RhdG5pZWdvIHBvbGVjZW5pYS4KICAgNC4gVHltIHJhemVtIHBvcHJhdyB3c3p5c3RraWUgYsWCxJlkeSB3IGxpbmlpIHXFvHl3YWrEhWMgcG9sZWNlbmlhICB4IC4KLSAgNS4gVGVyYXogd2NpxZtuaWogd2llbGtpZSBVIGFieSBwcnp5d3LDs2NpxIcgbGluacSZIGRvIG9yeWdpbmFsbmVnbyBzdGFudS4KLSAgNi4gVGVyYXogd2NpxZtuaWogIHUgIGtpbGthIHJhenkgYnkgY29mbsSFxIcgIFUgIGkgcG9wcnplZG5pZSBwb2xlY2VuaWEuCisgIDUuIFRlcmF6IHdjacWbbmlqIHdpZWxraWUgIFUgIGFieSBwcnp5d3LDs2NpxIcgbGluacSZIGRvIG9yeWdpbmFsbmVnbyBzdGFudS4KKyAgNi4gVGVyYXogd2NpxZtuaWogIHUgIGtpbGthIHJhenksIGJ5IGNvZm7EhcSHICBVICBpIHBvcHJ6ZWRuaWUgcG9sZWNlbmlhLgogICA3LiBUZXJheiB3cGlzeiBDVFJMLVIgKHRyenltYWogcsOzd25vY3plxZtuaWUgd2NpxZtuacSZdGUga2xhd2lzemUgQ1RSTCBpIFIpCiAgICAgIGtpbGthIHJhenksIGJ5IGNvZm7EhcSHIGNvZm5pxJljaWEuCiAKLS0tLT4gUG9vcHJhdyBibMSZZHl5eSB3IHRlZWogbGluaWlpIGkgemFhbWlpZcWEIGplIHBycnpleiBjb29mbmlqLgorLS0tPiBQb29wcmF3IGLFgsSZZHl5eSB3IHRlZWogbGluaWlpIGkgemFhbWlpZcWEIGplIHBycnpleiBjb29mbmlqLgogCiAgIDguIFRvIHPEhSBiYXJkem8gcG/FvHl0ZWN6bmUgcG9sZWNlbmlhLgogCkBAIC0zNTAsMjIgKzM1MCwyMiBAQAogCQkJICAgICBMRUtDSkEgMi4gUE9EU1VNT1dBTklFCiAKIAotICAxLiBCeSB1c3VuxIXEhyB6bmFraSBvZCBrdXJzb3JhIGRvIG5hc3TEmXBuZWdvIHd5cmF6dSB3cGlzejogICBkdwotICAyLiBCeSB1c3VuxIXEhyB6bmFraSBvZCBrdXJzb3JhIGRvIGtvxYRjYSBsaW5paSB3cGlzejogICAgZCQKKyAgMS4gQnkgdXN1bsSFxIcgem5ha2kgb2Qga3Vyc29yYSBkbyBuYXN0xJlwbmVnbyB3eXJhenUsIHdwaXN6OiAgIGR3CisgIDIuIEJ5IHVzdW7EhcSHIHpuYWtpIG9kIGt1cnNvcmEgZG8ga2/FhGNhIGxpbmlpLCB3cGlzejogICAgZCQKICAgMy4gQnkgdXN1bsSFxIcgY2HFgsSFIGxpbmnEmTogICAgZGQKLSAgNC4gQnkgcG93dMOzcnp5xIcgcnVjaCBwb3ByemVkxbogZ28gbGljemLEhTogICAgMncKKyAgNC4gQnkgcG93dMOzcnp5xIcgcnVjaCwgcG9wcnplZMW6IGdvIGxpY3pixIU6ICAgIDJ3CiAgIDUuIEZvcm1hdCBwb2xlY2VuaWEgem1pYW55IHRvOgogICAgICAgICAgICAgICAgIG9wZXJhdG9yICBbbGljemJhXSAgcnVjaAogICBnZHppZToKLSAgIG9wZXJhdG9yICAtIHRvIGNvIHRyemViYSB6cm9iacSHIChucC4gIGQgIGRsYSB1c3V3YW5pYSkKKyAgIG9wZXJhdG9yICAtIHRvLCBjbyB0cnplYmEgenJvYmnEhyAobnAuICBkICBkbGEgdXN1d2FuaWEpCiAgICBbbGljemJhXSAgLSBvcGNqb25hbG5lLCBpbGUgcmF6eSBwb3d0w7NyennEhyBydWNoCiAgICBydWNoICAgICAgLSBwcnplbm9zaSBuYWQgdGVrc3RlbSBkbyBvcGVyb3dhbmlhLCB0YWtpbSBqYWsgIHcgKHd5cmF6KSwKLQkgICAgICAgJCAgKGRvIGtvxYRjYSBsaW5paSksIGV0Yy4KKwkgICAgICAgJCAgKGRvIGtvxYRjYSBsaW5paSkgZXRjLgogCi0gIDYuIEJ5IHByemVqxZvEhyBkbyBwb2N6xIV0a3UgbGluaWkgdcW8eWogemVyYTogIDAKLSAgNy4gQnkgY29mbsSFxIcgcG9wcnplZG5pZSBwb2xlY2VuaWUsIHdwaXN6OgkgIHUgKG1hxYJlIHUpCi0gICAgIEJ5IGNvZm7EhcSHIHdzenlzdGtpZSB6bWlhbnkgdyBsaW5paSB3cGlzejoJICBVICh3aWVsa2llIFUpCi0gICAgIEJ5IGNvZm7EhcSHIGNvZm5pxJljaWEgd3Bpc3o6CQkJICBDVFJMLVIKKyAgNi4gQnkgcHJ6ZWrFm8SHIGRvIHBvY3rEhXRrdSBsaW5paSwgdcW8eWogemVyYTogIDAKKyAgNy4gQnkgY29mbsSFxIcgcG9wcnplZG5pZSBwb2xlY2VuaWUsIHdwaXN6OgkgIHUgIChtYcWCZSB1KQorICAgICBCeSBjb2ZuxIXEhyB3c3p5c3RraWUgem1pYW55IHcgbGluaWksIHdwaXN6OgkgIFUgICh3aWVsa2llIFUpCisgICAgIEJ5IGNvZm7EhcSHIGNvZm5pxJljaWUsIHdwaXN6OgkJCSAgQ1RSTC1SCiAKIAogCkBAIC0zNzksNyArMzc5LDcgQEAKIAogICAyLiBXcGlzeiAgZGQgIGFieSB1c3VuxIXEhyBsaW5pxJkgaSBwcnplY2hvd2HEhyBqxIUgdyByZWplc3RyemUgVmltYS4KIAotICAzLiBQcnplbmllxZsga3Vyc29yIGRvIGxpbmlpIGMpLCBQT1dZxbtFSiB0ZWogZ2R6aWUgdXN1bmnEmXRhIGxpbmlhIHBvd2lubmEKKyAgMy4gUHJ6ZW5pZcWbIGt1cnNvciBkbyBsaW5paSBjKSwgUE9XWcW7RUogdGVqLCBnZHppZSB1c3VuacSZdGEgbGluaWEgcG93aW5uYQogICAgICBzacSZIHpuYWpkb3dhxIcuCiAKICAgNC4gV2NpxZtuaWogIHAgIGJ5IHdzdGF3acSHIGxpbmnEmSBwb25pxbxlaiBrdXJzb3JhLgpAQCAtNDA0LDIxICs0MDQsMjEgQEAKIAogICAzLiBXcGlzeiAgciAgYSBwb3RlbSB6bmFrIGpha2kgcG93aW5pZW4gZ28gemFzdMSFcGnEhy4KIAotICA0LiBQb3d0YXJ6YWoga3Jva2kgMi4gaSAzLiBkb3DDs2tpIHBpZXJ3c3phIGxpbmlhIG5pZSBixJlkemllIHRha2EgamFrIGRydWdhLgorICA0LiBQb3d0YXJ6YWoga3Jva2kgMi4gaSAzLiBkb3DDs2tpIHBpZXJ3c3phIGxpbmlhIG5pZSBixJlkemllIHRha2EsIGphayBkcnVnYS4KIAotLS0tPiAgS2plZHkgdGVuIHdpZXJzeiBiacWCIHdzdMOza2l3YW55IGt0b8WbIHdjaXpuxIXFgiBwZXLEmSB6xYJ5Y2gga2xhd2lyenkhCi0tLS0+ICBLaWVkeSB0ZW4gd2llcnN6IGJ5xYIgd3N0dWtpd2FueSBrdG/FmyB3Y2lzbsSFxYIgcGFyxJkgesWCeWNoIGtsYXdpc3p5IQorLS0tPiAgS2plZHkgdGVuIHdpZXJzeiBiacWCIHdzdMOza2l3YW55LCBrdG/FmyB3Y2l6bsSFxYIgcGVyxJkgesWCeWNoIGtsYXdpcnp5IQorLS0tPiAgS2llZHkgdGVuIHdpZXJzeiBiecWCIHdzdHVraXdhbnksIGt0b8WbIHdjaXNuxIXFgiBwYXLEmSB6xYJ5Y2gga2xhd2lzenkhCiAKICAgNS4gVGVyYXogY3phcyBuYSBMZWtjasSZIDMuMy4KIAogCi1VV0FHQTogUGFtacSZdGFqIGJ5IHVjennEhyBzacSZIMSHd2ljesSFYywgYSBuaWUgcGFtacSZY2lvd28uCitVV0FHQTogUGFtacSZdGFqLCBieSB1Y3p5xIcgc2nEmSDEh3dpY3rEhWMsIGEgbmllIHBhbWnEmWNpb3dvLgogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkgICAgIExla2NqYSAzLjMuOiBPUEVSQVRPUiBDSEFOR0UgKHptaWXFhCkKIAotCQkgKiogQnkgem1pZW5pxIcgZG8ga2/FhGNhIHd5cmF6dSB3cGlzeiAgY2UgLiAqKgorCQkgKiogQnkgem1pZW5pxIcgZG8ga2/FhGNhIHd5cmF6dSwgd3Bpc3ogIGNlIC4gKioKIAogICAxLiBQcnplbmllxZsga3Vyc29yIGRvIHBpZXJ3c3plaiBsaW5paSBwb25pxbxlaiBvem5hY3pvbmVqIC0tLT4uCiAKQEAgLTQyOCw3ICs0MjgsNyBAQAogCiAgIDQuIFdjacWbbmlqIDxFU0M+IGkgcHJ6ZWpkxbogZG8gbmFzdMSZcG5laiBwbGFub3dhbmVqIHptaWFueS4KIAotICA1LiBQb3d0YXJ6YWoga3Jva2kgMy4gaSA0LiBkb3DDs2tpIHBpZXJ3c3plIHpkYW5pZSBuaWUgYsSZZHppZSB0YWtpZSBzYW1lCisgIDUuIFBvd3RhcnphaiBrcm9raSAzLiBpIDQuIGRvcMOza2kgcGllcndzemUgemRhbmllIG5pZSBixJlkemllIHRha2llIHNhbWUsCiAgICAgIGphayBkcnVnaWUuCiAKIC0tLT4gVGEgbHVub3MgbWEgcGlyZSBzxYLDs3csIGt0w7NyZSB0xbxpbmEgemJuaWMgdcW8aWZham9uYyBwY21henUgem1pZcWELgpAQCAtNDQyLDEzICs0NDIsMTMgQEAKIAkJICAgICAgTGVrY2phIDMuNC46IFdJxJhDRUogWk1JQU4gVcW7WVdBSsSEQyBjCiAKIAotCSoqIFBvbGVjZW5pZSBjaGFuZ2UgdcW8eXdhIHRha2ljaCBzYW15Y2ggcnVjaMOzdyBqYWsgZGVsZXRlLiAqKgorCSoqIFBvbGVjZW5pZSBjaGFuZ2UgdcW8eXdhIHRha2ljaCBzYW15Y2ggcnVjaMOzdywgamFrIGRlbGV0ZS4gKioKIAotICAxLiBPcGVyYXRvciBjaGFuZ2UgZHppYcWCYSB0YWsgc2FtbyBqYWsgZGVsZXRlLiBGb3JtYXQgd3lnbMSFZGEgdGFrOgorICAxLiBPcGVyYXRvciBjaGFuZ2UgZHppYcWCYSB0YWsgc2FtbywgamFrIGRlbGV0ZS4gRm9ybWF0IHd5Z2zEhWRhIHRhazoKIAogCSAgICBjICAgW2xpY3piYV0gICBydWNoCiAKLSAgMi4gUnVjaHkgc8SFIHRha8W8ZSB0YWtpZSBzYW1lLCBucC46ICB3ICAod3lyYXopLCAgJCAgKGtvbmllYyBsaW5paSksIGV0Yy4KKyAgMi4gUnVjaHkgc8SFIHRha8W8ZSB0YWtpZSBzYW1lLCBucC46ICB3ICAod3lyYXopLCAgJCAgKGtvbmllYyBsaW5paSkgZXRjLgogCiAgIDMuIFByemVuaWXFmyBzacSZIGRvIHBpZXJ3c3plaiBsaW5paSBwb25pxbxlaiBvem5hY3pvbmVqIC0tLT4KIApAQCAtNDU2LDcgKzQ1Niw3IEBACiAKICAgNS4gV3Bpc3ogIGMkICwgcG9wcmF3IGtvbmllYyB3aWVyc3phIGkgd2NpxZtuaWogPEVTQz4uCiAKLS0tLT4gS29uaWVjIHRlZ28gd2llcnN6YSBtdXNpIGJ5xIcgcG9wcmF3aW9ueSBhYnkgd3lnbMSFZGHFgiB0YWsgamFrIGRydWdpLgorLS0tPiBLb25pZWMgdGVnbyB3aWVyc3phIG11c2kgYnnEhyBwb3ByYXdpb255LCBhYnkgd3lnbMSFZGHFgiB0YWssIGphayBkcnVnaS4KIC0tLT4gS29uaWVjIHRlZ28gd2llcnN6YSBtdXNpIGJ5xIcgcG9wcmF3aW9ueSB1xbx5d2FqxIVjIHBvbGVjZW5pYSAgYyQgLgogCiBVV0FHQTogIE1vxbxlc3ogdcW8eXdhxIcgPEJTPiBhYnkgcG9wcmF3aWHEhyBixYLEmWR5IHcgY3phc2llIHBpc2FuaWEuCkBAIC00NjksMTEgKzQ2OSwxMSBAQAogICAgICBwb2xlY2VuaWUgd3N0YXdpYSBza2Fzb3dhbnkgdGVrc3QgUE8ga3Vyc29yemUgKGplxZtsaSBjYcWCYSBsaW5pYQogICAgICB6b3N0YcWCYSB1c3VuacSZdGEsIHpvc3RhbmllIG9uYSB1bWllc3pjem9uYSB3IGxpbmlpIHBvbmnFvGVqIGt1cnNvcmEpLgogCi0gIDIuIEJ5IHphbWllbmnEhyB6bmFrIHBvZCBrdXJzb3JlbSB3Y2nFm25paiAgciAgYSBwb3RlbSB6bmFrLCBrdMOzcnkgbWEgemFzdMSFcGnEhworICAyLiBCeSB6YW1pZW5pxIcgem5hayBwb2Qga3Vyc29yZW0sIHdjacWbbmlqICByICBhIHBvdGVtIHpuYWssIGt0w7NyeSBtYSB6YXN0xIVwacSHCiAgICAgIG9yeWdpbmFsbnkuCiAKLSAgMy4gT3BlcmF0b3IgY2hhbmdlIHBvendhbGEgQ2kgbmEgemFzdMSFcGllbmllIG9kIGt1cnNvcmEgZG8gbWllanNjYSBnZHppZQotICAgICB6YWJyYcWCYnkgY2nEmSBydWNoLiBOcC4gd3Bpc3ogIGNlICBhYnkgemFtaWVuacSHIHRla3N0IG9kIGt1cnNvcmEgZG8ga2/FhGNhCisgIDMuIE9wZXJhdG9yIGNoYW5nZSBwb3p3YWxhIENpIG5hIHphc3TEhXBpZW5pZSBvZCBrdXJzb3JhIGRvIG1pZWpzY2EsIGdkemllCisgICAgIHphYnJhxYJieSBDacSZIHJ1Y2guIE5wLiB3cGlzeiAgY2UgIGFieSB6YW1pZW5pxIcgdGVrc3Qgb2Qga3Vyc29yYSBkbyBrb8WEY2EKICAgICAgd3lyYXp1LCAgYyQgIGFieSB6bWllbmnEhyB0ZWtzdCBkbyBrb8WEY2EgbGluaWkuCiAKICAgNC4gRm9ybWF0IGRvIHBvbGVjZW5pYSBjaGFuZ2UgKHptaWXFhCk6CkBAIC00OTcsMTIgKzQ5NywxMiBAQAogICAgICBaYXBhbWnEmXRhaiBudW1lciBsaW5paSBkbGEgcG90cnplYiBrcm9rdSAzLgogCiBVV0FHQTogTW/FvGVzeiB0ZcW8IHpvYmFjennEhyBwb3p5Y2rEmSBrdXJzb3JhIHcgcHJhd3ltLCBkb2xueW0gcm9ndSBla3JhbnUuCi0gICAgICAgRHppZWplIHNpxJkgdGFrIGtpZWR5IHVzdGF3aW9uYSBqZXN0IG9wY2phICdydWxlcicgKHd5amHFm25pb25lIHcgbGVrY2ppIDYuKS4KKyAgICAgICBEemllamUgc2nEmSB0YWsga2llZHkgdXN0YXdpb25hIGplc3Qgb3BjamEgJ3J1bGVyJyAod2nEmWNlaiB3IGxla2NqaSA2LikuCiAKICAgMi4gV2NpxZtuaWogRyBhYnkgcHJ6ZWrFm8SHIG5hIGtvbmllYyBwbGlrdS4KICAgICAgV2NpxZtuaWogIGdnICBhYnkgcHJ6ZWrFm8SHIGRvIHBvY3rEhXRrdSBwbGlrdS4KIAotICAzLiBXcGlzeiBudW1lciBsaW5paSwgdyBrdMOzcmVqIGJ5xYJlxZsgYSBwb3RlbSAgRyAuIFRvIHByemVuaWVzaWUgY2nEmQorICAzLiBXcGlzeiBudW1lciBsaW5paSwgdyBrdMOzcmVqIGJ5xYJlxZsgYSBwb3RlbSAgRyAuIFRvIHByemVuaWVzaWUgQ2nEmQogICAgICB6IHBvd3JvdGVtIGRvIGxpbmlpLCB3IGt0w7NyZWogYnnFgmXFmyBraWVkeSB3Y2lzbsSFxYJlxZsgQ1RSTC1HLgogCiAgIDQuIEplxZtsaSBjenVqZXN6IHNpxJkgd3lzdGFyY3phasSFY28gcGV3bmllLCB3eWtvbmFqIGtyb2tpIDEtMy4KQEAgLTUxMSwxMCArNTExLDEwIEBACiAJCQkgTGVrY2phIDQuMi46IFBPTEVDRU5JRSBTWlVLQUoKIAogCi0JICAgICAqKiBXcGlzeiAgLyAgYSBuYXN0xJlwbmllIHd5cmHFvGVuaWUgYWJ5IGplIHpuYWxlxbrEhy4gKioKKwkgICAgICoqIFdwaXN6ICAvICBhIG5hc3TEmXBuaWUgd3lyYcW8ZW5pZSwgYWJ5IGplIHpuYWxlxbrEhy4gKioKIAotICAxLiBXIHRyeWJpZSBOb3JtYWwgd3Bpc3ogIC8gLiBaYXV3YcW8LCDFvGUgem5hayB0ZW4sIG9yYXoga3Vyc29yIHBvamF3acSFCi0gICAgIHNpxJkgbmEgZG9sZSBla3JhbnUgdGFrIHNhbW8gamFrIHBvbGVjZW5pZSAgOiAuCisgIDEuIFcgdHJ5YmllIE5vcm1hbCB3cGlzeiAgLyAuIFphdXdhxbwsIMW8ZSB6bmFrIHRlbiBvcmF6IGt1cnNvciBwb2phd2nEhQorICAgICBzacSZIG5hIGRvbGUgZWtyYW51IHRhayBzYW1vLCBqYWsgcG9sZWNlbmllICA6IC4KIAogICAyLiBUZXJheiB3cGlzeiAgYsWCb25kPEVOVEVSPiAuICBUbyBqZXN0IHPFgm93bywga3TDs3JlZ28gY2hjZXN6IHN6dWthxIcuCiAKQEAgLTUyMywxMSArNTIzLDExIEBACiAKICAgNC4gSmXFm2xpIGNoY2VzeiBzenVrYcSHIGZyYXp5IGRvIHR5xYJ1LCB1xbx5aiBwb2xlY2VuaWEgID8gIHphbWlhc3QgIC8gLgogCi0gIDUuIEFieSB3csOzY2nEhyBnZHppZSBiecWCZcWbIHdjacWbbmlqICBDVFJMLU8uIFBvd3RhcnphaiBieSB3csOzY2nEhyBkYWxlai4gQ1RSTC1JCisgIDUuIEFieSB3csOzY2nEhyBnZHppZSBiecWCZcWbLCB3Y2nFm25paiAgQ1RSTC1PLiBQb3d0YXJ6YWosIGJ5IHdyw7NjacSHIGRhbGVqLiBDVFJMLUkKICAgICAgaWR6aWUgZG8gcHJ6b2R1LgogCi1Vd2FnYTogICdixYJvbmQnIHRvIG5pZSBqZXN0IG1ldG9kYSBieSBwcnplbGl0ZXJvd2HEhyBixYLEhWQ7ICdixYJvbmQnIHRvIGLFgsSFZC4KLVV3YWdhOiAgS2llZHkgc3p1a2FuaWUgb3NpxIVnbmllIGtvbmllYyBwbGlrdSBixJlkemllIGtvbnR5bnVvd2HFgm8gb2QgcG9jesSFdGt1CitVd2FnYTogICdixYJvbmQnIHRvIG5pZSBqZXN0IG1ldG9kYSwgYnkgcHJ6ZWxpdGVyb3dhxIcgYsWCxIVkOyAnYsWCb25kJyB0byBixYLEhWQuCitVd2FnYTogIEtpZWR5IHN6dWthbmllIG9zacSFZ25pZSBrb25pZWMgcGxpa3UsIGLEmWR6aWUga29udHludW93YW5lIG9kIHBvY3rEhXRrdQogICAgICAgICBvIGlsZSBvcGNqYSAnd3JhcHNjYW4nIG5pZSB6b3N0YcWCYSBwcnplc3Rhd2lvbmEuCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpAQCAtNTcxLDE2ICs1NzEsMTYgQEAKIAogICA0LiBBYnkgem1pZW5pxIcgd3N6eXN0a2llIHd5c3TEhXBpZW5pYSDFgmHFhGN1Y2hhIHpuYWvDs3cgcG9tacSZZHp5IGR3b21hIGxpbmlhbWksCiAgICAgIHdwaXN6OiA6Iywjcy9zdGFyZS9ub3dlL2cgZ2R6aWUgIywjIHPEhSBudW1lcmFtaSBsaW5paSBvZ3JhbmljemFqxIVjeWNoCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVnaW9uIGdkemllIG1hIG5hc3TEhXBpxIcgemFtaWFuYS4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWdpb24sIGdkemllIG1hIG5hc3TEhXBpxIcgemFtaWFuYS4KICAgICAgd3Bpc3ogIDolcy9zdGFyZS9ub3dlL2cgICBieSB6bWllbmnEhyB3c3p5c3RraWUgd3lzdMSFcGllbmlhIHcgY2HFgnltIHBsaWt1LgogICAgICB3cGlzeiAgOiVzL3N0YXJlL25vd2UvZ2MgIGJ5IHptaWVuacSHIHdzenlzdGtpZSB3eXN0xIVwaWVuaWEgdyBjYcWCeW0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGlrdSwgcHJvc3rEhWMgbyBwb3R3aWVyZHplbmllIHphIGthxbxkeW0gcmF6ZW0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGlrdSwgcHJvc3rEhWMgbyBwb3R3aWVyZHplbmllIHphIGthxbxkeW0gcmF6ZW0uCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkJICAgICBMRUtDSkEgNC4gUE9EU1VNT1dBTklFCiAKICAgMS4gQ1RSTC1HICAgcG9rYcW8ZSBUd29qxIUgcG96eWNqxJkgdyBwbGlrdSBpIHN0YXR1cyBwbGlrdS4gIFNISUZULUcgcHJ6ZW5vc2kKLQkgICAgICBjacSZIGRvIGtvxYRjYSBwbGlrdS4KKwkgICAgICBDacSZIGRvIGtvxYRjYSBwbGlrdS4KICAgICAgRyAgICAgICAgcHJ6ZW5vc2kgZG8ga2/FhGNhIHBsaWt1LgogICAgICBsaWN6YmEgRyBwcnplbm9zaSBkbyBsaW5paSBbbGljemJhXS4KICAgICAgZ2cgICAgICAgcHJ6ZW5vc2kgZG8gcGllcndzemVqIGxpbmlpLgpAQCAtNTg4LDIyICs1ODgsMjIgQEAKICAgMi4gV3Bpc2FuaWUgIC8gIGEgbmFzdMSZcG5pZSDFgmHFhGN1Y2hhIHpuYWvDs3cgc3p1a2EgxYJhxYRjdWNoYSBETyBQUlpPRFUuCiAgICAgIFdwaXNhbmllICA/ICBhIG5hc3TEmXBuaWUgxYJhxYRjdWNoYSB6bmFrw7N3IHN6dWthIMWCYcWEY3VjaGEgRE8gVFnFgVUuCiAgICAgIFBvIHd5c3p1a2l3YW5pdSB3Y2nFm25paiAgbiAgYnkgem5hbGXFusSHIG5hc3TEmXBuZSB3eXN0xIVwaWVuaWUgc3p1a2FuZWoKLSAgICAgZnJhenkgdHltIHNhbXltIGtpZXJ1bmt1IGx1YiAgTiAgYnkgc3p1a2HEhyB3IGtpZXJ1bmt1IHByemVjaXdueW0uCisgICAgIGZyYXp5IHcgdHltIHNhbXltIGtpZXJ1bmt1IGx1YiAgTiAgYnkgc3p1a2HEhyB3IGtpZXJ1bmt1IHByemVjaXdueW0uCiAgICAgIENUUkwtTyBwcnplbm9zaSBkbyBzdGFyc3p5Y2ggcG96eWNqaSwgQ1RSTC1JIGRvIG5vd3N6eWNoLgogCiAgIDMuIFdwaXNhbmllICAlICBnZHkga3Vyc29yIHpuYWpkdWplIHNpxJkgbmEgKCwpLFssXSx7LCBsdWIgfSBsb2thbGl6dWplCiAgICAgIHBhcnVqxIVjeSB6bmFrLgogCi0gIDQuIEJ5IHphbWllbmnEhyBwaWVyd3N6eSBzdGFyeSBuYSBub3d5IHcgbGluaWkgd3Bpc3ogICAgICA6cy9zdGFyeS9ub3d5Ci0gICAgIEJ5IHphbWllbmnEhyB3c3p5c3RraWUgc3RhcnkgbmEgbm93eSB3IGxpbmlpIHdwaXN6ICAgICA6cy9zdGFyeS9ub3d5L2cKKyAgNC4gQnkgemFtaWVuacSHIHBpZXJ3c3p5IHN0YXJ5IG5hIG5vd3kgdyBsaW5paSwgd3Bpc3ogICAgICA6cy9zdGFyeS9ub3d5CisgICAgIEJ5IHphbWllbmnEhyB3c3p5c3RraWUgc3RhcnkgbmEgbm93eSB3IGxpbmlpLCB3cGlzeiAgICAgOnMvc3Rhcnkvbm93eS9nCiAgICAgIEJ5IHphbWllbmnEhyBmcmF6eSBwb21pxJlkenkgZHdvbWEgbGluaWFtaSAjIHdwaXN6ICAgICAgOiMsI3Mvc3Rhcnkvbm93eS9nCi0gICAgIEJ5IHphbWllbmnEhyB3c3p5c3RraWUgd3lzdMSFcGllbmlhIHcgcGxpa3Ugd3Bpc3ogICAgICAgOiVzL3N0YXJ5L25vd3kvZwotICAgICBCeSBWaW0gcHJvc2nFgiBDacSZIG8gcG90d2llcmR6ZW5pZSBkb2RhaiAnYycJICAgOiVzL3N0YXJ5L25vd3kvZ2MKKyAgICAgQnkgemFtaWVuacSHIHdzenlzdGtpZSB3eXN0xIVwaWVuaWEgdyBwbGlrdSwgd3Bpc3ogICAgICAgOiVzL3N0YXJ5L25vd3kvZworICAgICBCeSBWaW0gcHJvc2nFgiBDacSZIG8gcG90d2llcmR6ZW5pZSwgZG9kYWogJ2MnCSAgIDolcy9zdGFyeS9ub3d5L2djCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJIExla2NqYSA1LjEuOiBKQUsgV1lLT05BxIYgUE9MRUNFTklBIFpFV07EmFRSWk5FCisJCSBMZWtjamEgNS4xLjogSkFLIFdZS09OQcSGIFBPTEVDRU5JQSBaRVdOxJhUUlpORT8KIAogCi0JKiogV3Bpc3ogIDohICBhIG5hc3TEmXBuaWUgemV3bsSZdHJ6bmUgcG9sZWNlbmllIGJ5IGplIHd5a29uYcSHLiAqKgorCSoqIFdwaXN6ICA6ISAgYSBuYXN0xJlwbmllIHpld27EmXRyem5lIHBvbGVjZW5pZSwgYnkgamUgd3lrb25hxIcuICoqCiAKICAgMS4gV3Bpc3ogem5ham9tZSBwb2xlY2VuaWUgIDogIGJ5IHVzdGF3acSHIGt1cnNvciBuYSBkb2xlIGVrcmFudS4gVG8gcG96d2FsYQogICAgICBuYSB3cHJvd2FkemVuaWUga29tZW5keSBsaW5paSBwb2xlY2XFhC4KQEAgLTYyNiwyMCArNjI2LDIwIEBACiAJCSAgICBMZWtjamEgNS4yLjogV0nEmENFSiBPIFpBUElTWVdBTklVIFBMSUvDk1cKIAogCi0JICAgKiogQnkgemFjaG93YcSHIHptaWFueSB3IHRla8WbY2kgd3Bpc3ogOncgTkFaV0FfUExJS1UgLiAqKgorCSAgICoqIEJ5IHphY2hvd2HEhyB6bWlhbnkgdyB0ZWvFm2NpZSwgd3Bpc3ogOncgTkFaV0FfUExJS1UgLiAqKgogCiAgIDEuIFdwaXN6ICA6IWRpciAgbHViICA6IWxzICBieSB6b2JhY3p5xIcgc3BpcyBwbGlrw7N3IHcga2F0YWxvZ3UuCi0gICAgIEp1xbwgd2llc3osIMW8ZSBtdXNpc3ogd2Npc27EhcSHIDxFTlRFUj4gcG8gdHltLgorICAgICBKdcW8IHdpZXN6LCDFvGUgbXVzaXN6IHBvIHR5bSB3Y2lzbsSFxIcgPEVOVEVSPi4KIAotICAyLiBXeWJpZXJ6IG5henfEmSBwbGlrdSBqYWthIGplc3pjemUgbmllIGlzdG5pZWplLCBucC4gVEVTVC4KKyAgMi4gV3liaWVyeiBuYXp3xJkgcGxpa3UsIGpha2EgamVzemN6ZSBuaWUgaXN0bmllamUsIG5wLiBURVNULgogCiAgIDMuIFRlcmF6IHdwaXN6OiAgIDp3IFRFU1QgICAoZ2R6aWUgVEVTVCBqZXN0IG5henfEhSBwbGlrdSBqYWvEhSB3eWJyYcWCZcWbLikKIAogICA0LiBUbyBwb2xlY2VuaWUgemFwYW1pxJl0YSBjYcWCeSBwbGlrIChWaW0gVHV0b3IpIHBvZCBuYXp3xIUgVEVTVC4KLSAgICAgQnkgdG8gc3ByYXdkemnEhyB3cGlzeiAgOiFkaXIgIGx1YiAgOiFscyAsIMW8ZWJ5IHpub3d1IHpvYmFjennEhyBsaXN0xJkgcGxpa8Ozdy4KKyAgICAgQnkgdG8gc3ByYXdkemnEhywgd3Bpc3ogIDohZGlyICBsdWIgIDohbHMgIMW8ZWJ5IHpub3d1IHpvYmFjennEhyBsaXN0xJkgcGxpa8Ozdy4KIAogVXdhZ2E6IFphdXdhxbwsIMW8ZSBnZHliecWbIHRlcmF6IHd5c3plZMWCIHogVmltYSwgYSBuYXN0xJlwbmllIHdzemVkxYIgcG9ub3duaWUKLSAgICAgICBwb2xlY2VuaWVtICB2aW0gVEVTVCAsIHBsaWsgYnnFgmJ5IGRva8WCYWRuxIUga29wacSFIHR1dG9yaWFsYSBraWVkeSBnbworICAgICAgIHBvbGVjZW5pZW0gIHZpbSBURVNUICwgcGxpayBiecWCYnkgZG9rxYJhZG7EhSBrb3BpxIUgdHV0b3JpYWxhLCBraWVkeSBnbwogICAgICAgIHphcGlzeXdhxYJlxZsuCiAKICAgNS4gVGVyYXogdXN1xYQgcGxpayB3cGlzdWrEhWMgKE1TLURPUyk6CQkgICA6IWRlbCBURVNUCkBAIC02NDksNyArNjQ5LDcgQEAKIAkJICAgIExla2NqYSA1LjMuOiBXWUJSQU5JRSBURUtTVFUgRE8gWkFQSVNVCiAKIAotCSAgKiogQnkgemFjaG93YcSHIGN6xJnFm8SHIHBsaWt1IHdwaXN6ICB2IHJ1Y2ggOncgTkFaV0FfUExJS1UgKioKKwkgICoqIEJ5IHphY2hvd2HEhyBjesSZxZvEhyBwbGlrdSwgd3Bpc3ogIHYgcnVjaCA6dyBOQVpXQV9QTElLVSAqKgogCiAgIDEuIFByemVuaWXFmyBrdXJzb3IgZG8gdGVnbyB3aWVyc3phLgogCkBAIC02NjQsMjYgKzY2NCwyNiBAQAogICA1LiBWaW0gemFwaXN6ZSB3eWJyYW5lIGxpbmllIGRvIHBsaWt1IFRFU1QuIFXFvHlqICA6IWRpciAgbHViICA6IWxzICwgxbxlYnkgdG8KICAgICAgem9iYWN6ecSHLiBKZXN6Y3plIGdvIG5pZSB1c3V3YWohIFXFvHlqZW15IGdvIHcgbmFzdMSZcG5laiBsZWtjamkuCiAKLVVXQUdBOiBXY2nFm25pxJljaWUgIHYgIHphY3p5bmEgdHJ5YiBXaXp1YWxueS4gTW/FvGVzeiBwb3J1c3phxIcga3Vyc29yZW0gYnkKLSAgICAgICB6bWllbmnEhyByb3ptaWFyeSB6YXpuYWN6ZW5pYS4gTW/FvGVzeiB0ZcW8IHXFvHnEhyBvcGVyYXRvcmEgYnkgenJvYmnEhyBjb8WbCitVV0FHQTogV2NpxZtuacSZY2llICB2ICB6YWN6eW5hIHRyeWIgV2l6dWFsbnkuIE1vxbxlc3ogcG9ydXN6YcSHIGt1cnNvcmVtLCBieQorICAgICAgIHptaWVuacSHIHJvem1pYXJ5IHphem5hY3plbmlhLiBNb8W8ZXN6IHRlxbwgdcW8ecSHIG9wZXJhdG9yYSwgYnkgenJvYmnEhyBjb8WbCiAgICAgICAgeiB0ZWtzdGVtLiBOYSBwcnp5a8WCYWQgIGQgIHVzdXdhIHRla3N0LgogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAkJICAgTGVrY2phIDUuNC46IFdTVEFXSUFOSUUgSSDFgcSEQ1pFTklFIFBMSUvDk1cKIAogCi0JICAgICoqIEJ5IHdzdGF3acSHIHphd2FydG/Fm8SHIHBsaWt1IHdwaXN6ICAgOnIgTkFaV0FfUExJS1UgKioKKwkgICAgKiogQnkgd3N0YXdpxIcgemF3YXJ0b8WbxIcgcGxpa3UsIHdwaXN6ICAgOnIgTkFaV0FfUExJS1UgKioKIAogICAxLiBVbWllxZvEhyBrdXJzb3IgdHXFvCBwb3d5xbxlaiB0ZWogbGluaWkuCiAKIFVXQUdBOiBQbyB3eWtvbmFuaXUga3Jva3UgMi4gem9iYWN6eXN6IHRla3N0IHogTGVrY2ppIDUuMy4gUG90ZW0gcHJ6ZWpkxboKLSAgICAgICBkbyBET8WBVSBieSB6b2JhY3p5xIcgcG9ub3duaWUgdMSZIGxla2NqxJkuCisgICAgICAgZG8gRE/FgVUsIGJ5IHpvYmFjennEhyBwb25vd25pZSB0xJkgbGVrY2rEmS4KIAogICAyLiBUZXJheiB3Y3p5dGFqIHBsaWsgVEVTVCB1xbx5d2FqxIVjIHBvbGVjZW5pYSAgOnIgVEVTVCAsIGdkemllIFRFU1QKICAgICAgamVzdCBuYXp3xIUgcGxpa3UuCiAgICAgIFdjenl0YW55IHBsaWsgamVzdCB1bWllc3pjem9ueSBwb25pxbxlaiBsaW5paSB6IGt1cnNvcmVtLgogCi0gIDMuIEJ5IHNwcmF3ZHppxIcgY3p5IHBsaWsgem9zdGHFgiB3Y3p5dGFueSBjb2ZuaWoga3Vyc29yIGkgem9iYWN6LCDFvGUKKyAgMy4gQnkgc3ByYXdkemnEhyBjenkgcGxpayB6b3N0YcWCIHdjenl0YW55LCBjb2ZuaWoga3Vyc29yIGkgem9iYWN6LCDFvGUKICAgICAgdGVyYXogc8SFIGR3aWUga29waWUgTGVrY2ppIDUuMy4sIG9yeWdpbmHFgiBpIGtvcGlhIHogcGxpa3UuCiAKIFVXQUdBOiBNb8W8ZXN6IHRlxbwgd2N6eXRhxIcgd3lqxZtjaWUgemV3bsSZdHJ6bmVnbyBwb2xlY2VuaWEuIE5hIHByenlrxYJhZApAQCAtNzIzLDE0ICs3MjMsMTQgQEAKIAogICAxLiBQcnplbmllxZsga3Vyc29yIGRvIGxpbmlpIHBvbmnFvGVqIG96bmFjem9uZWogLS0tPi4KIAotICAyLiBXcGlzeiAgbyAgKG1hxYJlKSBieSBvdHdvcnp5xIcgbGluacSZIFBPTknFu0VKIGt1cnNvcmEgaSBwcnplbmllxZvEhyBzacSZCisgIDIuIFdwaXN6ICBvICAobWHFgmUpLCBieSBvdHdvcnp5xIcgbGluacSZIFBPTknFu0VKIGt1cnNvcmEgaSBwcnplbmllxZvEhyBzacSZCiAgICAgIGRvIHRyeWJ1IEluc2VydCAod3Byb3dhZHphbmllKS4KIAogICAzLiBXcGlzeiB0cm9jaMSZIHRla3N0dSBpIHdjacWbbmlqIDxFU0M+IGJ5IHd5asWbxIcgeiB0cnlidSBJbnNlcnQgKHdwcm93YWR6YW5pZSkuCiAKIC0tLT4gUG8gd2NpxZtuacSZY2l1ICBvICBrdXJzb3Igem5hamR6aWUgc2nEmSB3IG90d2FydGVqIGxpbmlpIHcgdHJ5YmllIEluc2VydC4KIAotICA0LiBCeSBvdHdvcnp5xIcgbGluacSZIFBPV1nFu0VKIGt1cnNvcmEgd2NpxZtuaWogd2llbGtpZSAgTyAgemFtaWFzdCBtYcWCZWdvCisgIDQuIEJ5IG90d29yennEhyBsaW5pxJkgUE9XWcW7RUoga3Vyc29yYSwgd2NpxZtuaWogd2llbGtpZSAgTyAgemFtaWFzdCBtYcWCZWdvCiAgICAgIG8gLiBXeXByw7NidWogdG8gbmEgbGluaWkgcG9uacW8ZWouCiAKIC0tLT4gT3R3w7NyeiBsaW5pxJkgcG93ecW8ZWogd2Npc2thasSFYyBTSElGVC1PIGdkeSBrdXJzb3IgYsSZZHppZSBuYSB0ZWogbGluaWkuCkBAIC03NDcsOSArNzQ3LDkgQEAKIAogICAyLiBXY2lza2FqICBlICBkb3DDs2tpIGt1cnNvciBuaWUgYsSZZHppZSBuYSBrb8WEY3UgbGkgLgogCi0gIDMuIFdwaXN6ICBhICAobWHFgmUpIGFieSBkb2RhxIcgdGVrc3QgWkEgem5ha2llbSBwb2Qga3Vyc29yZW0uCisgIDMuIFdwaXN6ICBhICAobWHFgmUpLCBhYnkgZG9kYcSHIHRla3N0IFpBIHpuYWtpZW0gcG9kIGt1cnNvcmVtLgogCi0gIDQuIERva2/FhGN6IHd5cmF6IHRhayBqYWsgdyBsaW5paSBwb25pxbxlai4gV2NpxZtuaWogPEVTQz4gYWJ5IG9wdcWbY2nEhyB0cnliCisgIDQuIERva2/FhGN6IHd5cmF6IHRhaywgamFrIHcgbGluaWkgcG9uacW8ZWouIFdjacWbbmlqIDxFU0M+IGFieSBvcHXFm2NpxIcgdHJ5YgogICAgICBJbnNlcnQuCiAKICAgNS4gVcW8eWogIGUgIGJ5IHByemVqxZvEhyBkbyBrb2xlam5lZ28gbmllZG9rb8WEY3pvbmVnbyB3eXJhenUgaSBwb3d0YXJ6YWoga3Jva2kKQEAgLTc1OCw3ICs3NTgsNyBAQAogLS0tPiBUYSBsaSBwb3ogQ2kgxId3aSBkb2RhdyB0ZWtzIGRvIGtvxYQgbGluCiAtLS0+IFRhIGxpbmlhIHBvendvbGkgQ2kgxId3aWN6ecSHIGRvZGF3YW5pZSB0ZWtzdHUgZG8ga2/FhGNhIGxpbmlpLgogCi1Vd2FnYTogIGEgLCAgaSAgb3JheiAgQSAgcHJvd2FkesSFIGRvIHRyeWJ1IEluc2VydCwgamVkeW7EhSByw7PFvG5pY8SFIGplc3QgbWllanNjZQorVXdhZ2E6ICBhICwgIGkgIG9yYXogIEEgIHByb3dhZHrEhSBkbyB0cnlidSBJbnNlcnQsIGplZHluxIUgcsOzxbxuaWPEhSBqZXN0IG1pZWpzY2UsCiAgICAgICAgZ2R6aWUgbm93ZSB6bmFraSBixJlkxIUgZG9kYXdhbmUuCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAkJICAgTGVrY2phIDYuMy46IElOTkEgV0VSU0pBIFJFUExBQ0UgKHphbWlhbmEpCkBAIC03OTEsMTYgKzc5MSwxNiBAQAogCiAgIDEuIFByemVqZMW6IGRvIGxpbmlpIG96bmFjem9uZWogLS0tPiBpIHVtaWXFm8SHIGt1cnNvciB6YSAiYSkiLgogCi0gIDIuIFdlamTFuiB3IHRyeWIgVmlzdWFsICB2ICBpIHByemVuaWXFmyBrdXJzb3IgbmEgcG9jesSFdGVrICJwaWVyd3N6eSIuCisgIDIuIFdlamTFuiB3IHRyeWIgV2l6dWFsbnkgIHYgIGkgcHJ6ZW5pZcWbIGt1cnNvciBuYSBwb2N6xIV0ZWsgInBpZXJ3c3p5Ii4KIAotICAzLiBXY2nFm25paiAgeSAgYWJ5IHlhbmtvd2HEhyAoa29waW93YcSHKSBwb2TFm3dpZXRsb255IHRla3N0LgorICAzLiBXY2nFm25paiAgeSAgYWJ5IGtvcGlvd2HEhyAoeWFua293YcSHKSBwb2TFm3dpZXRsb255IHRla3N0LgogCiAgIDQuIFByemVuaWXFmyBrdXJzb3IgZG8ga2/FhGNhIG5hc3TEmXBuZWogbGluaWk6ICBqJAogCi0gIDUuIFdjacWbbmlqICBwICBhYnkgd3Bha293YcSHIChwYXN0ZSkgdGVrc3QuICBEb2RhajogIGEgZHJ1Z2k8RVNDPiAuCisgIDUuIFdjacWbbmlqICBwICBhYnkgd2tsZWnEhyAod3Bha293YcSHKSB0ZWtzdC4gIERvZGFqOiAgYSBkcnVnaTxFU0M+IC4KIAotICA2LiBVxbx5aiB0cnlidSBXaXp1YWxuZWdvIGFieSB3eWJyYcSHICIgZWxlbWVudC4iLCB5YW5rdWogZ28gIHkgLCBwcnplamTFuiBkbwotICAgICBrb8WEY2EgbmFzdMSZcG5laiBsaW5paSAgaiQgaSB1cGFrdWogdGFtIHRla3N0IHogIHAgLgorICA2LiBVxbx5aiB0cnlidSBXaXp1YWxuZWdvLCBhYnkgd3licmHEhyAiIGVsZW1lbnQuIiwgeWFua3VqIGdvICB5ICwgcHJ6ZWpkxbogZG8KKyAgICAga2/FhGNhIG5hc3TEmXBuZWogbGluaWkgIGokICBpIHVwYWt1aiB0YW0gdGVrc3QgeiAgcCAuCiAKIC0tLT4gIGEpIHRvIGplc3QgcGllcndzenkgZWxlbWVudC4KICAgICAgIGIpCkBAIC04MTAsNyArODEwLDcgQEAKIAkJCSBMZWtjamEgNi41LjogVVNUQVdJQU5JRSBPUENKSQogCiAKLSoqIFVzdGF3aWFuaWUgb3BjamkgdGFrIGJ5IHN6dWthaiBsdWIgc3Vic3R5dHVjamEgaWdub3Jvd2HFgnkgd2llbGtvxZvEhyBsaXRlciAqKgorKiogVXN0YXdpYW5pZSBvcGNqaSB0YWssIGJ5IHN6dWthaiBsdWIgc3Vic3R5dHVjamEgaWdub3Jvd2HFgnkgd2llbGtvxZvEhyBsaXRlciAqKgogCiAgIDEuIFN6dWthaiAnaWdub3JlJyB3cGlzdWrEhWM6ICAgIC9pZ25vcmU8RU5URVI+CiAgICAgIFBvd3TDs3J6IHN6dWthbmllIGtpbGthIHJhenkgbmFjaXNrYWrEhWMga2xhd2lzeiAgbiAuCkBAIC04MjgsNyArODI4LDcgQEAKIAogICA2LiBBYnkgd3nFgsSFY3p5xIcgaWdub3Jvd2FuaWUgd2llbGtvxZtjaSBsaXRlcjogIDpzZXQgbm9pYwogCi1Vd2FnYTogQWJ5IHVzdW7EhcSHIHBvZMWbd2lldGxhbmllIGRvcGFzb3dhxYQgd3Bpc3o6ICAgOm5vaGxzZWFyY2gKK1V3YWdhOiBBYnkgdXN1bsSFxIcgcG9kxZt3aWV0bGFuaWUgZG9wYXNvd2HFhCwgd3Bpc3o6ICAgOm5vaGxzZWFyY2gKIFV3YWdhOiBBYnkgaWdub3Jvd2HEhyB3aWVsa2/Fm8SHIGxpdGVyIGRsYSBqZWRuZWdvIHd5c3p1a2l3YW5pYTogL2lnbm9yZVxjPEVOVEVSPgogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAJCQkgICAgIExFS0NKQSA2LiBQT0RTVU1PV0FOSUUKQEAgLTgzNywzNiArODM3LDM2IEBACiAgIDEuIFdwaXNhbmllICBvICBvdHdpZXJhIGxpbmnEmSBQT05JxbtFSiBrdXJzb3JhLgogICAgICBXcGlzYW5pZSAgTyAgb3R3aWVyYSBsaW5pxJkgUE9XWcW7RUoga3Vyc29yYS4KIAotICAyLiBXcGlzYW5pZSAgYSAgYnkgd3N0YXdpxIcgdGVrc3QgWkEgem5ha2llbSBuYSwga3TDs3J5bSBqZXN0IGt1cnNvci4KKyAgMi4gV3Bpc2FuaWUgIGEgIHdzdGF3aWEgdGVrc3QgWkEgem5ha2llbSwgbmEga3TDs3J5bSBqZXN0IGt1cnNvci4KICAgICAgV3Bpc2FuaWUgIEEgIGRvZGFqZSB0ZWtzdCBuYSBrb8WEY3UgbGluaWkuCiAKICAgMy4gUG9sZWNlbmllICBlICBwcnplbm9zaSBkbyBrb8WEY2Egd3lyYXp1LgotICA0LiBPcGVyYXRvciAgeSAgeWFua3VqZSAoa29waXVqZSkgdGVrc3QsICBwICBwYWt1amUgKHdrbGVqYSwgcGFzdGUpIGdvLgorICA0LiBPcGVyYXRvciAgeSAgeWFua3VqZSAoa29waXVqZSkgdGVrc3QsICBwICBwYWt1amUgKHdrbGVqYSkgZ28uCiAgIDUuIFdwaXNhbmllIHdpZWxraWVnbyAgUiAgd3Byb3dhZHphIHcgdHJ5YiBSZXBsYWNlICh6YW1pYW5hKSBkb3DDs2tpCiAgICAgIG5pZSB6b3N0YW5pZSB3Y2nFm25pxJl0eSA8RVNDPi4KLSAgNi4gV3Bpc2FuaWUgIjpzZXQgeHh4IiB1c3Rhd2lhIG9wY2rEmSAieHh4Ii4gTmlldGvDs3JlIG9wY2plOgorICA2LiBXcGlzYW5pZSAiOnNldCB4eHgiIHVzdGF3aWEgb3BjasSZICJ4eHgiLiBOaWVrdMOzcmUgb3BjamU6CiAJJ2ljJyAgJ2lnbm9yZWNhc2UnCWlnbm9ydWogd2llbGtvxZvEhyB6bmFrw7N3CiAJJ2lzJyAgJ2luY3NlYXJjaCcJcG9rYcW8IGN6xJnFm2Npb3dlIGRvcGFzb3dhbmlhCiAJJ2hscycgJ2hsc2VhcmNoJwlwb2TFm3dpZXRsIHdzenlzdGtpZSBkb3Bhc293YW5pYQotICAgICBNb8W8ZXN6IHXFvHnEhyB6YXLDs3dubyBkxYJ1Z2llaiBqYWsgaSBrcsOzdGtpZWogZm9ybXkuCi0gIDcuIERvZGFqICJubyIgYWJ5IHd5xYLEhWN6ecSHIG9wY2rEmTogICA6c2V0IG5vaWMKKyAgICAgTW/FvGVzeiB1xbx5xIcgemFyw7N3bm8gZMWCdWdpZWosIGphayBpIGtyw7N0a2llaiBmb3JteS4KKyAgNy4gRG9kYWogIm5vIiwgYWJ5IHd5xYLEhWN6ecSHIG9wY2rEmTogICA6c2V0IG5vaWMKIAogCiAKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLQkJCUxFS0NKQSA3LjEuIEpBSyBVWllTS0HEhiBQT01PQworCQkJIExFS0NKQSA3LjEuIEpBSyBVWllTS0HEhiBQT01PQz8KIAogCQkgICAgICAqKiBVxbx5Y2llIHN5c3RlbXUgcG9tb2N5IG9uLWxpbmUgKioKIAotICBWaW0gcG9zaWFkYSBiYXJkem8gZG9icnkgc3lzdGVtIHBvbW9jeSBvbi1saW5lLiBCeSB6YWN6xIXEhyBzcHLDs2J1aiBqZWRuZWoKKyAgVmltIHBvc2lhZGEgYmFyZHpvIGRvYnJ5IHN5c3RlbSBwb21vY3kgb24tbGluZS4gQnkgemFjesSFxIcsIHNwcsOzYnVqIGplZG5lagogICB6IHRyemVjaCBtb8W8bGl3b8WbY2k6CiAJLSB3Y2nFm25paiBrbGF3aXN6IDxIRUxQPiAoamXFm2xpIHRha2kgbWFzeikKIAktIHdjacWbbmlqIGtsYXdpc3ogPEYxPiAoamXFm2xpIHRha2kgbWFzeikKIAktIHdwaXN6ICAgOmhlbHA8RU5URVI+CiAKLSAgUHJ6ZWN6eXRhaiB0ZWtzdCB3IG9rbmllIHBvbW9jeSAgYWJ5IGRvd2llZHppZcSHIHNpxJkgamFrIGR6aWHFgmEgcG9tb2MuCisgIFByemVjenl0YWogdGVrc3QgdyBva25pZSBwb21vY3ksIGFieSBkb3dpZWR6aWXEhyBzacSZIGphayBkemlhxYJhIHBvbW9jLgogICB3cGlzeiBDVFJMLVcgQ1RSTC1XICAgIGFieSBwcnplc2tvY3p5xIcgeiBqZWRuZWdvIG9rbmEgZG8gaW5uZWdvCiAgIHdwaXN6IDpxPEVOVEVSPiAgICAgICAgYWJ5IHphbWtuxIXEhyBva25vIHBvbW9jeS4KIApAQCAtODk0LDEwICs4OTQsMTAgQEAKICAgMy4gWmFwaXN6IHBsaWs6CiAgICAgIDp3CiAKLSAgTmFzdMSZcG55bSByYXplbSBnZHkgemFjem5pZXN6IHByYWPEmSB3IFZpbWllIGLEmWR6aWUgb24gdcW8eXdhxIcgcG9kxZt3aWV0bGFuaWEKKyAgTmFzdMSZcG55bSByYXplbSwgZ2R5IHphY3puaWVzeiBwcmFjxJkgdyBWaW1pZSBixJlkemllIG9uIHXFvHl3YcSHIHBvZMWbd2lldGxhbmlhCiAgIHNrxYJhZG5pLiBNb8W8ZXN6IGRvZGHEhyB3c3p5c3RraWUgc3dvamUgdWx1YmlvbmUgdXN0YXdpZW5pYSBkbyB0ZWdvIHBsaWt1CiAgICJ2aW1yYyIuCi0gIEFieSB1enlza2HEhyB3acSZY2VqIGluZm9ybWFjamkgd3Bpc3ogICAgIDpoZWxwIHZpbXJjLWludHJvCisgIEFieSB1enlza2HEhyB3acSZY2VqIGluZm9ybWFjamksIHdwaXN6ICAgICA6aGVscCB2aW1yYy1pbnRybwogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAkJCSAgTGVrY2phIDcuMy46IFVaVVBFxYFOSUFOSUUKQEAgLTkwNywxMSArOTA3LDExIEBACiAKICAgMS4gVXBld25paiBzacSZLCDFvGUgVmltIG5pZSBqZXN0IHcgdHJ5YmllIGtvbXBhdHliaWxub8WbY2k6ICAgOnNldCBub2NwCiAKLSAgMi4gWmVya25paiBqYWtpZSBwbGlraSBzxIUgdyBiaWXFvMSFY20ga2F0YWxvZ3U6ICAgOiFscyAgIGx1YiAgIDohZGlyCisgIDIuIFplcmtuaWosIGpha2llIHBsaWtpIHPEhSB3IGJpZcW8xIVjeW0ga2F0YWxvZ3U6ICAgOiFscyAgIGx1YiAgIDohZGlyCiAKICAgMy4gV3Bpc3ogcG9jesSFdGVrIHBvbGVjZW5pYTogICA6ZQogCi0gIDQuIFdjacWbbmlqICBDVFJMLUQgIGkgVmltIHBva2HFvGUgbGlzdMSZIHBvbGVjZcWEIGpha2llIHphY3p5bmFqxIUgc2nEmSBuYSAiZSIuCisgIDQuIFdjacWbbmlqICBDVFJMLUQgIGkgVmltIHBva2HFvGUgbGlzdMSZIHBvbGVjZcWELCBqYWtpZSB6YWN6eW5hasSFIHNpxJkgbmEgImUiLgogCiAgIDUuIFdjacWbbmlqICA8VEFCPiAgaSBWaW0gdXp1cGXFgm5pIHBvbGVjZW5pZSBkbyAiOmVkaXQiLgogCkBAIC05MjUsNyArOTI1LDcgQEAKIAkJCSAgICBMZWtjamEgNy4gUE9EU1VNT1dBTklFCiAKIAotICAxLiBXcGlzeiAgOmhlbHAgIGx1YiB3Y2nFm25paiA8RjE+IGx1YiA8SGVscD4gYWJ5IG90d29yennEhyBva25vIHBvbW9jeS4KKyAgMS4gV3Bpc3ogIDpoZWxwICBhbGJvIHdjacWbbmlqIDxGMT4gbHViIDxIZWxwPiBhYnkgb3R3b3J6ecSHIG9rbm8gcG9tb2N5LgogCiAgIDIuIFdwaXN6ICA6aGVscCBjbWQgIGFieSB1enlza2HEhyBwb21vYyBvICBjbWQgLgogCkBAIC05NDUsMTQgKzk0NSwxNCBAQAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAotICBUdXRhaiBzacSZIGtvxYRjenkgdHV0b3JpYWwgVmltYS4gWm9zdGHFgiBvbiBwb215xZtsYW55IHRhayBhYnkgZGHEhyBrcsOzdGtpCisgIFR1dGFqIHNpxJkga2/FhGN6eSB0dXRvcmlhbCBWaW1hLiBab3N0YcWCIG9uIHBvbXnFm2xhbnkgdGFrLCBhYnkgZGHEhyBrcsOzdGtpCiAgIHByemVnbMSFZCBqZWdvIG1vxbxsaXdvxZtjaSwgd3lzdGFyY3phasSFY3kgYnnFmyBtw7NnxYIgZ28gdcW8eXdhxIcuIEplc3Qgb24KLSAgZGFsZWtpIG9kIGtvbXBsZXRub8WbY2kgcG9uaWV3YcW8IFZpbSBtYSBvIHdpZWxlLCB3aWVsZSB3acSZY2VqIHBvbGVjZcWELgorICBkYWxla2kgb2Qga29tcGxldG5vxZtjaSwgcG9uaWV3YcW8IFZpbSBtYSBvIHdpZWxlLCB3aWVsZSB3acSZY2VqIHBvbGVjZcWELgogCiAgIERsYSBkYWxzemVqIG5hdWtpIHJla29tZW5kdWplbXkga3NpxIXFvGvEmToKIAlWaW0gLSBWaSBJbXByb3ZlZCAtIGF1dG9yIFN0ZXZlIE91YWxsaW5lCiAJV3lkYXdjYTogTmV3IFJpZGVycwotICBQaWVyd3N6YSBrc2nEhXprYSBjYcWCa293aWNpZSBwb8Wbd2nEmWNvbmEgVmltb3dpLiBVxbx5dGVjem5hIHp3xYJhc3pjemEgZGxhCisgIFBpZXJ3c3phIGtzacSFxbxrYSBjYcWCa293aWNpZSBwb8Wbd2nEmWNvbmEgVmltb3dpLiBVxbx5dGVjem5hIHp3xYJhc3pjemEgZGxhCiAgIHBvY3rEhXRrdWrEhWN5Y2guIFphd2llcmEgd2llbGUgcHJ6eWvFgmFkw7N3IGkgaWx1c3RyYWNqaS4KICAgWm9iYWN6IGh0dHA6Ly9pY2NmLWhvbGxhbmQub3JnLi9jbGljazUuaHRtbAogCkBAIC05NjAsNyArOTYwLDcgQEAKICAgcG9sZWNlbmlhOgogCUxlYXJuaW5nIHRoZSBWaSBFZGl0b3IgLSBhdXRvciBMaW5kYSBMYW1iCiAJV3lkYXdjYTogTydSZWlsbHkgJiBBc3NvY2lhdGVzIEluYy4KLSAgVG8gZG9icmEga3NpxIXFvGthIGJ5IGRvd2llZHppZcSHIHNpxJkgbmllbWFsIHdzenlzdGtpZWdvIGNvIGNoY2lhxYJiecWbIHpyb2JpxIcKKyAgVG8gZG9icmEga3NpxIXFvGthLCBieSBkb3dpZWR6aWXEhyBzacSZIG5pZW1hbCB3c3p5c3RraWVnbywgY28gY2hjaWHFgmJ5xZsgenJvYmnEhwogICB6IFZpLiBTesOzc3RhIGVkeWNqYSB6YXdpZXJhIHRlxbwgaW5mb3JtYWNqZSBvIFZpbWllLgogCiAgIFBvIHBvbHNrdSB3eWRhbm86CkBAIC05OTEsNCArOTkxLDUgQEAKICAgcmV2LiBNYXJ6ZWMgMjAwMgogICAybmQgcmV2LiBXcnplc2llxYQgMjAwNAogICAzcmQgcmV2LiBNYXJ6ZWMgMjAwNgorICA0dGggcmV2LiBHcnVkemllxYQgMjAwOAogICBXc3plbGtpZSB1d2FnaSBwcm9zesSZIGtpZXJvd2HEhyBuYTogbWlrbWFjaEB3cC5wbAo=