From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Matej Habrnal To: git-commits@fedoraproject.org Subject: [rpms/abrt] update-2.17.8: Automatic reporting from GSettings, Spelling/grammar fixes and another fixes Date: Mon, 03 Aug 2026 10:23:08 GMT Message-ID: <178575258886.1.9125378254225090684.rpms-abrt-34dad7f6af8f@fedoraproject.org> List-ID: X-Git-Repo: rpms/abrt X-Git-Branch: update-2.17.8 X-Git-Rev: 34dad7f6af8f0cc37bf6eab9461ed52896d4f9d7 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvYWJydAogICAgICAgICAgICBCcmFuY2ggOiB1cGRhdGUtMi4xNy44CiAgICAg ICAgICAgIENvbW1pdCA6IDM0ZGFkN2Y2YWY4ZjBjYzM3YmY2ZWFiOTQ2MWVkNTI4OTZkNGY5ZDcK ICAgICAgICAgICAgQXV0aG9yIDogTWF0ZWogSGFicm5hbCA8bWhhYnJuYWxAcmVkaGF0LmNvbT4K ICAgICAgICAgICAgRGF0ZSAgIDogMjAxNS0wNS0yMFQxNjowMDozNSswMjowMAogICAgICAgICAg ICBTdGF0cyAgOiArMjM1NS8tMyBpbiAxNCBmaWxlKHMpCiAgICAgICAgICAgIFVSTCAgICA6IGh0 dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvYWJydC9jLzM0ZGFkN2Y2YWY4ZjBjYzM3 YmY2ZWFiOTQ2MWVkNTI4OTZkNGY5ZDc/YnJhbmNoPXVwZGF0ZS0yLjE3LjgKCiAgICAgICAgICAg IExvZzoKICAgICAgICAgICAgQXV0b21hdGljIHJlcG9ydGluZyBmcm9tIEdTZXR0aW5ncywgU3Bl bGxpbmcvZ3JhbW1hciBmaXhlcyBhbmQgYW5vdGhlciBmaXhlcwoKUmVzb2x2ZXM6ICMxMjE3OTAx CgpTaWduZWQtb2ZmLWJ5OiBNYXRlaiBIYWJybmFsIDxtaGFicm5hbEByZWRoYXQuY29tPgoKLS0t CmRpZmYgLS1naXQgYS8wMDA0LWFwcGxldC1zd2l0Y2gtdG8tRC1CdXMtbWV0aG9kcy5wYXRjaCBi LzAwMDQtYXBwbGV0LXN3aXRjaC10by1ELUJ1cy1tZXRob2RzLnBhdGNoCm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVlNmQ3YzUKLS0tIC9kZXYvbnVsbAorKysgYi8wMDA0LWFw cGxldC1zd2l0Y2gtdG8tRC1CdXMtbWV0aG9kcy5wYXRjaApAQCAtMCwwICsxLDQyNyBAQAorRnJv bSBhMjk3N2IwZmUwMjNhODk2YzMwMDZmMjdlZTJiMTQ4NjkwZGZmMjRhIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQorRnJvbTogSmFrdWIgRmlsYWsgPGpmaWxha0ByZWRoYXQuY29tPgorRGF0ZTog V2VkLCA4IEFwciAyMDE1IDA4OjIzOjAzICswMjAwCitTdWJqZWN0OiBbUEFUQ0hdIGFwcGxldDog c3dpdGNoIHRvIEQtQnVzIG1ldGhvZHMKKworVGhpcyBwYXRjaCBpcyBhIHBhcnQgb2Ygb3VyIGVm Zm9ydHMgdG8gbWFrZSBhYnJ0LWFwcGxldCBpbmRlcGVuZGVudCBvbgordGhlIGJhY2tlbmQuCisK K1RoaXMgcGF0Y2ggY29udmVydHMgYWxsIGRhdGEgbWFuaXB1bGF0aW9uIGZ1bmN0aW9ucyB0byBE LUJ1cyBjYWxscywgc28KK3RoZSBub3RpZmljYXRpb25zIGFyZSBtYWRlIG9mIGRhdGEgb2J0YWlu ZWQgdGhyb3VnaCBELUJ1cy4KKworVGhlIHJlcG9ydGluZyBzdGlsbCByZWxpZXMgb24gZmlsZSBz eXN0ZW0gYWNjZXNzLCB0aG91Z2guCisKK1NpZ25lZC1vZmYtYnk6IEpha3ViIEZpbGFrIDxqZmls YWtAcmVkaGF0LmNvbT4KKy0tLQorIHNyYy9hcHBsZXQvYXBwbGV0LmMgICAgICAgIHwgMTgxICsr KysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHNyYy9pbmNsdWRl L2xpYmFicnQuaCAgICAgIHwgIDE2ICsrKysKKyBzcmMvbGliL3Byb2JsZW1fYXBpX2RidXMuYyB8 ICA2MSArKysrKysrKysrKy0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE3NCBpbnNlcnRpb25zKCsp LCA4NCBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3NyYy9hcHBsZXQvYXBwbGV0LmMgYi9z cmMvYXBwbGV0L2FwcGxldC5jCitpbmRleCA3YjU4ZjZlLi40ZGY2OWZjIDEwMDY0NAorLS0tIGEv c3JjL2FwcGxldC9hcHBsZXQuYworKysrIGIvc3JjL2FwcGxldC9hcHBsZXQuYworQEAgLTEyMCw2 ICsxMjAsNyBAQCB0eXBlZGVmIHN0cnVjdCBwcm9ibGVtX2luZm8geworICAgICBib29sIHJlcG9y dGVkOworICAgICBib29sIHdhc19hbm5vdW5jZWQ7CisgICAgIGJvb2wgaXNfd3JpdGFibGU7Cisr ICAgIGludCB0aW1lOworIH0gcHJvYmxlbV9pbmZvX3Q7CisgCisgc3RhdGljIHZvaWQgcHVzaF90 b19kZWZlcnJlZF9xdWV1ZShwcm9ibGVtX2luZm9fdCAqcGkpCitAQCAtMTM3LDYgKzEzOCw1OSBA QCBzdGF0aWMgY29uc3QgY2hhciAqcHJvYmxlbV9pbmZvX2dldF9jb21tYW5kX2xpbmUocHJvYmxl bV9pbmZvX3QgKnBpKQorICAgICByZXR1cm4gcHJvYmxlbV9kYXRhX2dldF9jb250ZW50X29yX05V TEwocGktPnByb2JsZW1fZGF0YSwgRklMRU5BTUVfQ01ETElORSk7CisgfQorIAorK3N0YXRpYyBp bnQgcHJvYmxlbV9pbmZvX2dldF90aW1lKHByb2JsZW1faW5mb190ICpwaSkKKyt7CisrICAgIGlm IChwaS0+dGltZSA9PSAtMSkKKysgICAgeworKyAgICAgICAgY29uc3QgY2hhciAqdGltZV9zdHIg PSBwcm9ibGVtX2RhdGFfZ2V0X2NvbnRlbnRfb3JfTlVMTChwaS0+cHJvYmxlbV9kYXRhLCBGSUxF TkFNRV9USU1FKTsKKysKKysgICAgICAgIGlmICh0aW1lX3N0ciA9PSBOVUxMKQorKyAgICAgICAg ICAgIGVycm9yX21zZ19hbmRfZGllKCJCVUc6IFByb2JsZW0gaW5mbyBoYXMgZGF0YSB3aXRob3V0 IHRoZSBlbGVtZW50IHRpbWUiKTsKKysKKysgICAgICAgIHBpLT50aW1lID0gYXRvaSh0aW1lX3N0 cik7CisrICAgIH0KKysKKysgICAgcmV0dXJuIHBpLT50aW1lOworK30KKysKKytzdGF0aWMgY29u c3QgY2hhciAqKnByb2JsZW1faW5mb19nZXRfZW52KHByb2JsZW1faW5mb190ICpwaSkKKyt7Cisr ICAgIGlmIChwaS0+ZW52cCA9PSBOVUxMKQorKyAgICB7CisrICAgICAgICBjb25zdCBjaGFyICpl bnZfc3RyID0gcHJvYmxlbV9kYXRhX2dldF9jb250ZW50X29yX05VTEwocGktPnByb2JsZW1fZGF0 YSwgRklMRU5BTUVfRU5WSVJPTik7CisrICAgICAgICBwaS0+ZW52cCA9IChlbnZfc3RyICE9IE5V TEwpID8gZ19zdHJzcGxpdCAoZW52X3N0ciwgIlxuIiwgLTEpIDogTlVMTDsKKysgICAgfQorKwor KyAgICByZXR1cm4gKGNvbnN0IGNoYXIgKiopcGktPmVudnA7CisrfQorKworK3N0YXRpYyBpbnQg cHJvYmxlbV9pbmZvX2dldF9waWQocHJvYmxlbV9pbmZvX3QgKnBpKQorK3sKKysgICAgaWYgKHBp LT5waWQgPT0gLTEpCisrICAgIHsKKysgICAgICAgIGNvbnN0IGNoYXIgKnBpZF9zdHIgPSBwcm9i bGVtX2RhdGFfZ2V0X2NvbnRlbnRfb3JfTlVMTChwaS0+cHJvYmxlbV9kYXRhLCBGSUxFTkFNRV9Q SUQpOworKyAgICAgICAgcGktPnBpZCA9IChwaWRfc3RyICE9IE5VTEwpID8gYXRvaSAocGlkX3N0 cikgOiAtMTsKKysgICAgfQorKworKyAgICByZXR1cm4gcGktPnBpZDsKKyt9CisrCisrc3RhdGlj IGludCBwcm9ibGVtX2luZm9fZ2V0X2NvdW50KHByb2JsZW1faW5mb190ICpwaSkKKyt7CisrICAg IGlmIChwaS0+Y291bnQgPT0gLTEpCisrICAgIHsKKysgICAgICAgIGNvbnN0IGNoYXIgKmNvdW50 X3N0ciA9IHByb2JsZW1fZGF0YV9nZXRfY29udGVudF9vcl9OVUxMKHBpLT5wcm9ibGVtX2RhdGEs IEZJTEVOQU1FX0NPVU5UKTsKKysgICAgICAgIHBpLT5jb3VudCA9IGNvdW50X3N0ciA/IGF0b2ko Y291bnRfc3RyKSA6IDE7CisrICAgIH0KKysKKysgICAgcmV0dXJuIHBpLT5jb3VudDsKKyt9Cisr Cisrc3RhdGljIGJvb2wgcHJvYmxlbV9pbmZvX2lzX3JlcG9ydGVkKHByb2JsZW1faW5mb190ICpw aSkKKyt7CisrICAgIHJldHVybiBwcm9ibGVtX2RhdGFfZ2V0X2NvbnRlbnRfb3JfTlVMTChwaS0+ cHJvYmxlbV9kYXRhLCBGSUxFTkFNRV9SRVBPUlRFRF9UTykgIT0gTlVMTDsKKyt9CisrCisgc3Rh dGljIHZvaWQgcHJvYmxlbV9pbmZvX3NldF9kaXIocHJvYmxlbV9pbmZvX3QgKnBpLCBjb25zdCBj aGFyICpkaXIpCisgeworICAgICBwcm9ibGVtX2RhdGFfYWRkX3RleHRfbm90ZWRpdGFibGUocGkt PnByb2JsZW1fZGF0YSwgQ0RfRFVNUERJUiwgZGlyKTsKK0BAIC0xNzYsNiArMjMwLDkgQEAgc3Rh dGljIHByb2JsZW1faW5mb190ICpwcm9ibGVtX2luZm9fbmV3KGNvbnN0IGNoYXIgKmRpcikKKyB7 CisgICAgIHByb2JsZW1faW5mb190ICpwaSA9IGdfbmV3MChwcm9ibGVtX2luZm9fdCwgMSk7Cisg ICAgIHBpLT5yZWZjb3VudCA9IDE7CisrICAgIHBpLT50aW1lID0gLTE7CisrICAgIHBpLT5waWQg PSAtMTsKKysgICAgcGktPmNvdW50ID0gLTE7CisgICAgIHBpLT5wcm9ibGVtX2RhdGEgPSBwcm9i bGVtX2RhdGFfbmV3KCk7CisgICAgIHByb2JsZW1faW5mb19zZXRfZGlyKHBpLCBkaXIpOworICAg ICByZXR1cm4gcGk7CitAQCAtMTk0LDggKzI1MSw2IEBAIHN0YXRpYyB2b2lkIHByb2JsZW1faW5m b191bnJlZihncG9pbnRlciBkYXRhKQorICAgICAgICAgcmV0dXJuOworIAorICAgICBwcm9ibGVt X2RhdGFfZnJlZShwaS0+cHJvYmxlbV9kYXRhKTsKKy0gICAgaWYgKHBpLT5lbnZwKQorLSAgICAg ICAgZ19zdHJmcmVldihwaS0+ZW52cCk7CisgICAgIGdfZnJlZShwaSk7CisgfQorIAorQEAgLTU1 Niw3ICs2MTEsNyBAQCBzdGF0aWMgdm9pZCBub3RpZnlfcHJvYmxlbV9saXN0KEdMaXN0ICpwcm9i bGVtcykKKyAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgIH0KKyAKKy0gICAgICAgIGFw cCA9IHByb2JsZW1fY3JlYXRlX2FwcF9mcm9tX2VudiAoKGNvbnN0IGNoYXIgKiopcGktPmVudnAs IHBpLT5waWQpOworKyAgICAgICAgYXBwID0gcHJvYmxlbV9jcmVhdGVfYXBwX2Zyb21fZW52IChw cm9ibGVtX2luZm9fZ2V0X2VudihwaSksIHByb2JsZW1faW5mb19nZXRfcGlkKHBpKSk7CisgCisg ICAgICAgICBpZiAoIWFwcCkKKyAgICAgICAgICAgICBhcHAgPSBwcm9ibGVtX2NyZWF0ZV9hcHBf ZnJvbV9jbWRsaW5lIChwcm9ibGVtX2luZm9fZ2V0X2NvbW1hbmRfbGluZShwaSkpOworQEAgLTU3 Miw3ICs2MjcsNyBAQCBzdGF0aWMgdm9pZCBub3RpZnlfcHJvYmxlbV9saXN0KEdMaXN0ICpwcm9i bGVtcykKKyAgICAgICAgIGdib29sZWFuIGlzX3BhY2thZ2VkID0gcGktPmlzX3BhY2thZ2VkOwor ICAgICAgICAgZ2Jvb2xlYW4gaXNfcnVubmluZ19hZ2FpbiA9IGlzX2FwcF9ydW5uaW5nKGFwcCk7 CisgICAgICAgICBnYm9vbGVhbiBpc19jdXJyZW50X3VzZXIgPSAhcGktPmZvcmVpZ247CistICAg ICAgICBnYm9vbGVhbiBhbHJlYWR5X3JlcG9ydGVkID0gKHBpLT5jb3VudCA+IDEpOworKyAgICAg ICAgZ2Jvb2xlYW4gYWxyZWFkeV9yZXBvcnRlZCA9IHByb2JsZW1faW5mb19nZXRfY291bnQocGkp ID4gMTsKKyAKKyAgICAgICAgIGdib29sZWFuIHJlcG9ydF9idXR0b24gPSBGQUxTRTsKKyAgICAg ICAgIGdib29sZWFuIHJlc3RhcnRfYnV0dG9uID0gRkFMU0U7CitAQCAtOTE0LDE0ICs5NjksMjIg QEAgc3RhdGljIHZvaWQgQ3Jhc2goR1ZhcmlhbnQgKnBhcmFtZXRlcnMpCisgICAgIGlmIChmb3Jl aWduX3Byb2JsZW0gJiYgIWdfdXNlcl9pc19hZG1pbikKKyAgICAgICAgIHJldHVybjsKKyAKKy0g ICAgc3RydWN0IGR1bXBfZGlyICpkZCA9IGRkX29wZW5kaXIoZGlyLCBERF9PUEVOX1JFQURPTkxZ KTsKKy0gICAgY2hhciAqY29tbWFuZF9saW5lID0gZGRfbG9hZF90ZXh0X2V4dChkZCwgRklMRU5B TUVfQ01ETElORSwgRERfRkFJTF9RVUlFVExZX0VOT0VOVCB8IEREX0xPQURfVEVYVF9SRVRVUk5f TlVMTF9PTl9GQUlMVVJFKTsKKy0gICAgY2hhciAqY291bnRfc3RyID0gZGRfbG9hZF90ZXh0X2V4 dChkZCwgRklMRU5BTUVfQ09VTlQsIEREX0ZBSUxfUVVJRVRMWV9FTk9FTlQgfCBERF9MT0FEX1RF WFRfUkVUVVJOX05VTExfT05fRkFJTFVSRSk7CistICAgIGd1aW50IGNvdW50ID0gY291bnRfc3Ry ID8gYXRvaShjb3VudF9zdHIpIDogMTsKKy0gICAgZ19mcmVlKGNvdW50X3N0cik7CistICAgIGNo YXIgKmVudiA9IGRkX2xvYWRfdGV4dF9leHQoZGQsIEZJTEVOQU1FX0VOVklST04sIEREX0ZBSUxf UVVJRVRMWV9FTk9FTlQgfCBERF9MT0FEX1RFWFRfUkVUVVJOX05VTExfT05fRkFJTFVSRSk7Cist ICAgIGNoYXIgKnBpZCA9IGRkX2xvYWRfdGV4dF9leHQoZGQsIEZJTEVOQU1FX1BJRCwgRERfRkFJ TF9RVUlFVExZX0VOT0VOVCB8IEREX0xPQURfVEVYVF9SRVRVUk5fTlVMTF9PTl9GQUlMVVJFKTsK Ky0gICAgZGRfY2xvc2UoZGQpOworKyAgICBzdGF0aWMgY29uc3QgY2hhciAqZWxlbWVudHNbXSA9 IHsKKysgICAgICAgIEZJTEVOQU1FX0NNRExJTkUsCisrICAgICAgICBGSUxFTkFNRV9DT1VOVCwK KysgICAgICAgIEZJTEVOQU1FX1VVSUQsCisrICAgICAgICBGSUxFTkFNRV9EVVBIQVNILAorKyAg ICAgICAgRklMRU5BTUVfQ09NUE9ORU5ULAorKyAgICAgICAgRklMRU5BTUVfRU5WSVJPTiwKKysg ICAgICAgIEZJTEVOQU1FX1BJRCwKKysgICAgICAgIE5VTEwsCisrICAgIH07CisrCisrICAgIHBy b2JsZW1faW5mb190ICpwaSA9IHByb2JsZW1faW5mb19uZXcoZGlyKTsKKysgICAgZmlsbF9wcm9i bGVtX2RhdGFfb3Zlcl9kYnVzKGRpciwgZWxlbWVudHMsIHBpLT5wcm9ibGVtX2RhdGEpOworKwor KyAgICBwaS0+Zm9yZWlnbiA9IGZvcmVpZ25fcHJvYmxlbTsKKysgICAgcGktPmlzX3BhY2thZ2Vk ID0gKHBhY2thZ2VfbmFtZSAhPSBOVUxMKTsKKyAKKyAgICAgLyoKKyAgICAgICogQ2FuJ3QgYXBw ZW5kIGRpciB0byB0aGUgc2VlbiBsaXN0IGJlY2F1c2Ugb2YgZGlyZWN0b3J5IHN0ZWFsaW5nCitA QCAtOTI5LDI0ICs5OTIsNiBAQCBzdGF0aWMgdm9pZCBDcmFzaChHVmFyaWFudCAqcGFyYW1ldGVy cykKKyAgICAgICogYXBwZW5kX2Rpcmxpc3QoZGlyKTsKKyAgICAgICoKKyAgICAgICovCistCist ICAgIHByb2JsZW1faW5mb190ICpwaSA9IHByb2JsZW1faW5mb19uZXcoZGlyKTsKKy0gICAgaWYg KHV1aWQgIT0gTlVMTCAmJiB1dWlkWzBdICE9ICdcMCcpCistICAgICAgICBwcm9ibGVtX2RhdGFf YWRkX3RleHRfbm90ZWRpdGFibGUocGktPnByb2JsZW1fZGF0YSwgRklMRU5BTUVfVVVJRCwgdXVp ZCk7CistICAgIGlmIChkdXBoYXNoICE9IE5VTEwgJiYgZHVwaGFzaFswXSAhPSAnXDAnKQorLSAg ICAgICAgcHJvYmxlbV9kYXRhX2FkZF90ZXh0X25vdGVkaXRhYmxlKHBpLT5wcm9ibGVtX2RhdGEs IEZJTEVOQU1FX0RVUEhBU0gsIGR1cGhhc2gpOworLSAgICBpZiAocGFja2FnZV9uYW1lICE9IE5V TEwgJiYgcGFja2FnZV9uYW1lWzBdICE9ICdcMCcpCistICAgICAgICBwcm9ibGVtX2RhdGFfYWRk X3RleHRfbm90ZWRpdGFibGUocGktPnByb2JsZW1fZGF0YSwgRklMRU5BTUVfQ09NUE9ORU5ULCBw YWNrYWdlX25hbWUpOworLSAgICBpZiAoY29tbWFuZF9saW5lICE9IE5VTEwpCistICAgICAgICBw cm9ibGVtX2RhdGFfYWRkX3RleHRfbm90ZWRpdGFibGUocGktPnByb2JsZW1fZGF0YSwgRklMRU5B TUVfQ01ETElORSwgY29tbWFuZF9saW5lKTsKKy0gICAgcGktPmZvcmVpZ24gPSBmb3JlaWduX3By b2JsZW07CistICAgIHBpLT5jb3VudCA9IGNvdW50OworLSAgICBwaS0+aXNfcGFja2FnZWQgPSAo cGFja2FnZV9uYW1lICE9IE5VTEwpOworLSAgICBwaS0+ZW52cCA9IChlbnYgIT0gTlVMTCkgPyBn X3N0cnNwbGl0IChlbnYsICJcbiIsIC0xKSA6IE5VTEw7CistICAgIHBpLT5waWQgPSAocGlkICE9 IE5VTEwpID8gYXRvaSAocGlkKSA6IC0xOworLSAgICBmcmVlKGNvbW1hbmRfbGluZSk7CistICAg IGZyZWUoZW52KTsKKy0gICAgZnJlZShwaWQpOworICAgICBzaG93X3Byb2JsZW1fbm90aWZpY2F0 aW9uKHBpKTsKKyB9CisgCitAQCAtOTcwLDYgKzEwMTUsMTkgQEAgbmFtZV9hY3F1aXJlZF9oYW5k bGVyIChHREJ1c0Nvbm5lY3Rpb24gKmNvbm5lY3Rpb24sCisgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBnY2hhciAqbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGdwb2ludGVyIHVz ZXJfZGF0YSkKKyB7CisrICAgIHN0YXRpYyBjb25zdCBjaGFyICplbGVtZW50c1tdID0geworKyAg ICAgICAgRklMRU5BTUVfQ01ETElORSwKKysgICAgICAgIEZJTEVOQU1FX0NPVU5ULAorKyAgICAg ICAgRklMRU5BTUVfVVVJRCwKKysgICAgICAgIEZJTEVOQU1FX0RVUEhBU0gsCisrICAgICAgICBG SUxFTkFNRV9DT01QT05FTlQsCisrICAgICAgICBGSUxFTkFNRV9VSUQsCisrICAgICAgICBGSUxF TkFNRV9USU1FLAorKyAgICAgICAgRklMRU5BTUVfUkVQT1JURURfVE8sCisrICAgICAgICBGSUxF TkFNRV9OT1RfUkVQT1JUQUJMRSwKKysgICAgICAgIE5VTEwKKysgICAgfTsKKysKKyAgICAgLyog SWYgc29tZSBuZXcgZGlycyBhcHBlYXJlZCBzaW5jZSBvdXIgbGFzdCBydW4sIGxldCB1c2VyIGtu b3cgaXQgKi8KKyAgICAgR0xpc3QgKm5ld19kaXJzID0gTlVMTDsKKyAgICAgR0xpc3QgKm5vdGlm eV9saXN0ID0gTlVMTDsKK0BAIC05ODAsNTggKzEwMzgsNDUgQEAgbmFtZV9hY3F1aXJlZF9oYW5k bGVyIChHREJ1c0Nvbm5lY3Rpb24gKmNvbm5lY3Rpb24sCisgICAgIC8qIEFnZSBsaW1pdCA9IG5v dyAtIDMgZGF5cyAqLworICAgICBjb25zdCB1bnNpZ25lZCBsb25nIG1pbl9ib3JuX3RpbWUgPSAo dW5zaWduZWQgbG9uZykodGltZV9iZWZvcmVfbmRheXMoMykpOworIAorLSAgICB3aGlsZSAobmV3 X2RpcnMpCisrICAgIGZvciAoIDsgbmV3X2RpcnMgIT0gTlVMTDsgbmV3X2RpcnMgPSBnX2xpc3Rf bmV4dChuZXdfZGlycykpCisgICAgIHsKKy0gICAgICAgIHN0cnVjdCBkdW1wX2RpciAqZGQgPSBk ZF9vcGVuZGlyKChjaGFyICopbmV3X2RpcnMtPmRhdGEsIEREX09QRU5fUkVBRE9OTFkpOworLSAg ICAgICAgaWYgKGRkID09IE5VTEwpCisrICAgICAgICBjb25zdCBjaGFyICpwcm9ibGVtX2lkID0g KGNvbnN0IGNoYXIgKiluZXdfZGlycy0+ZGF0YTsKKysgICAgICAgIHByb2JsZW1faW5mb190ICpw aSA9IHByb2JsZW1faW5mb19uZXcocHJvYmxlbV9pZCk7CisrCisrICAgICAgICBpZiAoZmlsbF9w cm9ibGVtX2RhdGFfb3Zlcl9kYnVzKHByb2JsZW1faWQsIGVsZW1lbnRzLCBwaS0+cHJvYmxlbV9k YXRhKSAhPSAwKQorICAgICAgICAgeworLSAgICAgICAgICAgIGxvZ19ub3RpY2UoIiclcycgaXMg bm90IGEgZHVtcCBkaXIgLSBpZ25vcmluZ1xuIiwgKGNoYXIgKiluZXdfZGlycy0+ZGF0YSk7Cist ICAgICAgICAgICAgbmV3X2RpcnMgPSBnX2xpc3RfbmV4dChuZXdfZGlycyk7CisrICAgICAgICAg ICAgbG9nX25vdGljZSgiJyVzJyBpcyBub3QgYSBkdW1wIGRpciAtIGlnbm9yaW5nXG4iLCBwcm9i bGVtX2lkKTsKKysgICAgICAgICAgICBwcm9ibGVtX2luZm9fdW5yZWYocGkpOworICAgICAgICAg ICAgIGNvbnRpbnVlOworICAgICAgICAgfQorIAorLSAgICAgICAgaWYgKGRkLT5kZF90aW1lIDwg bWluX2Jvcm5fdGltZSkKKysgICAgICAgIC8qIFRPRE86IGFkZCBhIGZpbHRlciBmb3Igb25seSBj b21wbGV0ZSBwcm9ibGVtcyB0byBHZXRQcm9ibGVtcyBELUJ1cyBtZXRob2QgKi8KKysgICAgICAg IGlmICghZGJ1c19wcm9ibGVtX2lzX2NvbXBsZXRlKHByb2JsZW1faWQpKQorICAgICAgICAgewor LSAgICAgICAgICAgIGxvZ19ub3RpY2UoIklnbm9yaW5nIG91dGRhdGVkIHByb2JsZW0gJyVzJyIs IChjaGFyICopbmV3X2RpcnMtPmRhdGEpOworLSAgICAgICAgICAgIGdvdG8gbmV4dDsKKysgICAg ICAgICAgICBsb2dfbm90aWNlKCJJZ25vcmluZyBpbmNvbXBsZXRlIHByb2JsZW0gJyVzJyIsIHBy b2JsZW1faWQpOworKyAgICAgICAgICAgIHByb2JsZW1faW5mb191bnJlZihwaSk7CisrICAgICAg ICAgICAgY29udGludWU7CisgICAgICAgICB9CisgCistICAgICAgICBpZiAoIXByb2JsZW1fZHVt cF9kaXJfaXNfY29tcGxldGUoZGQpKQorKyAgICAgICAgLyogVE9ETzogYWRkIGEgZmlsdGVyIGZv ciBtYXgtb2xkIHJlcG9ydGVkIHByb2JsZW1zIHRvIEdldFByb2JsZW1zIEQtQnVzIG1ldGhvZCAq LworKyAgICAgICAgaWYgKHByb2JsZW1faW5mb19nZXRfdGltZShwaSkgPCBtaW5fYm9ybl90aW1l KQorICAgICAgICAgeworLSAgICAgICAgICAgIGxvZ19ub3RpY2UoIklnbm9yaW5nIGluY29tcGxl dGUgcHJvYmxlbSAnJXMnIiwgKGNoYXIgKiluZXdfZGlycy0+ZGF0YSk7CistICAgICAgICAgICAg Z290byBuZXh0OworKyAgICAgICAgICAgIGxvZ19ub3RpY2UoIklnbm9yaW5nIG91dGRhdGVkIHBy b2JsZW0gJyVzJyIsIHByb2JsZW1faWQpOworKyAgICAgICAgICAgIHByb2JsZW1faW5mb191bnJl ZihwaSk7CisrICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICB9CisgCistICAgICAgICBp ZiAoIWRkX2V4aXN0KGRkLCBGSUxFTkFNRV9SRVBPUlRFRF9UTykpCisrICAgICAgICAvKiBUT0RP OiBhZGQgYSBmaWx0ZXIgZm9yIG5vdC15ZXQgcmVwb3J0ZWQgcHJvYmxlbXMgdG8gR2V0UHJvYmxl bXMgRC1CdXMgbWV0aG9kICovCisrICAgICAgICBpZiAocHJvYmxlbV9pbmZvX2lzX3JlcG9ydGVk KHBpKSkKKyAgICAgICAgIHsKKy0gICAgICAgICAgICBwcm9ibGVtX2luZm9fdCAqcGkgPSBwcm9i bGVtX2luZm9fbmV3KG5ld19kaXJzLT5kYXRhKTsKKy0gICAgICAgICAgICBjb25zdCBjaGFyICpl bGVtZW50c1tdID0ge0ZJTEVOQU1FX1VVSUQsIEZJTEVOQU1FX0RVUEhBU0gsIEZJTEVOQU1FX0NP TVBPTkVOVCwgRklMRU5BTUVfTk9UX1JFUE9SVEFCTEUsIEZJTEVOQU1FX0NNRExJTkV9OworLQor LSAgICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZW9mKGVsZW1lbnRzKS9zaXpl b2YoKmVsZW1lbnRzKTsgKytpKQorLSAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgICAgY2hh ciAqIGNvbnN0IHZhbHVlID0gZGRfbG9hZF90ZXh0X2V4dChkZCwgZWxlbWVudHNbaV0sCistICAg ICAgICAgICAgICAgICAgICAgICAgRERfRkFJTF9RVUlFVExZX0VOT0VOVCB8IEREX0xPQURfVEVY VF9SRVRVUk5fTlVMTF9PTl9GQUlMVVJFKTsKKy0gICAgICAgICAgICAgICAgaWYgKHZhbHVlKQor LSAgICAgICAgICAgICAgICAgICAgcHJvYmxlbV9kYXRhX2FkZF90ZXh0X25vdGVkaXRhYmxlKHBp LT5wcm9ibGVtX2RhdGEsIGVsZW1lbnRzW2ldLCB2YWx1ZSk7CistICAgICAgICAgICAgICAgIGZy ZWUodmFsdWUpOworLSAgICAgICAgICAgIH0KKy0KKy0gICAgICAgICAgICAvKiBDYW4ndCBiZSBm b3JlaWduIGJlY2F1c2UgaWYgdGhlIHByb2JsZW0gaXMgZm9yZWlnbiB0aGVuIHRoZQorLSAgICAg ICAgICAgICAqIGRkX29wZW5kaXIoKSBjYWxsIGZhaWxlZCBmZXcgbGluZXMgYWJvdmUgYW5kIHRo ZSBwcm9ibGVtIGlzIGlnbm9yZWQuCistICAgICAgICAgICAgICogKi8KKy0gICAgICAgICAgICBw aS0+Zm9yZWlnbiA9IGZhbHNlOworLQorLSAgICAgICAgICAgIG5vdGlmeV9saXN0ID0gZ19saXN0 X3ByZXBlbmQobm90aWZ5X2xpc3QsIHBpKTsKKy0gICAgICAgIH0KKy0gICAgICAgIGVsc2UKKy0g ICAgICAgIHsKKy0gICAgICAgICAgICBsb2dfbm90aWNlKCJJZ25vcmluZyBhbHJlYWR5IHJlcG9y dGVkIHByb2JsZW0gJyVzJyIsIChjaGFyICopbmV3X2RpcnMtPmRhdGEpOworKyAgICAgICAgICAg IGxvZ19ub3RpY2UoIklnbm9yaW5nIGFscmVhZHkgcmVwb3J0ZWQgcHJvYmxlbSAnJXMnIiwgcHJv YmxlbV9pZCk7CisrICAgICAgICAgICAgcHJvYmxlbV9pbmZvX3VucmVmKHBpKTsKKysgICAgICAg ICAgICBjb250aW51ZTsKKyAgICAgICAgIH0KKyAKKy1uZXh0OgorLSAgICAgICAgZGRfY2xvc2Uo ZGQpOworLQorLSAgICAgICAgbmV3X2RpcnMgPSBnX2xpc3RfbmV4dChuZXdfZGlycyk7CisrICAg ICAgICAvKiBDYW4ndCBiZSBmb3JlaWcgYmVjYXVzZSBuZXdfZGlyX2V4aXN0cygpIHJldHVybnMg b25seSBvd24gcHJvYmxlbXMgKi8KKysgICAgICAgIHBpLT5mb3JlaWduID0gZmFsc2U7CisrICAg ICAgICBub3RpZnlfbGlzdCA9IGdfbGlzdF9wcmVwZW5kKG5vdGlmeV9saXN0LCBwaSk7CisgICAg IH0KKyAKKyAgICAgaWYgKG5vdGlmeV9saXN0KQorZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2xp YmFicnQuaCBiL3NyYy9pbmNsdWRlL2xpYmFicnQuaAoraW5kZXggMTlhZDRhOC4uMDdkYzE3MiAx MDA2NDQKKy0tLSBhL3NyYy9pbmNsdWRlL2xpYmFicnQuaAorKysrIGIvc3JjL2luY2x1ZGUvbGli YWJydC5oCitAQCAtMTY0LDYgKzE2NCwxNSBAQCBpbnQgY2hvd25fZGlyX292ZXJfZGJ1cyhjb25z dCBjaGFyICpwcm9ibGVtX2Rpcl9wYXRoKTsKKyBpbnQgdGVzdF9leGlzdF9vdmVyX2RidXMoY29u c3QgY2hhciAqcHJvYmxlbV9pZCwgY29uc3QgY2hhciAqZWxlbWVudF9uYW1lKTsKKyAKKyAvKioK KysgIEBicmllZiBDaGVja3Mgd2hldGhlciB0aGUgcHJvYmxlbSBjb3JyZXNwb25kaW5nIHRvIHRo ZSBnaXZlbiBJRCBpcyBjb21wbGV0ZQorKworKyAgTWlnaHQgcmVxdWlyZSBhdXRob3JpemF0aW9u CisrCisrICBAcmV0dXJuIFBvc2l0aXZlIG51bWJlciBpZiBzdWNoIHRoZSBwcm9ibGUgaXMgY29t cGxldGUsIDAgaWYgZG9lc24ndCBhbmQgbmVnYXRpdmUgbnVtYmVyIGlmIGFuIGVycm9yIG9jY3Vy cy4KKysgKi8KKytpbnQgZGJ1c19wcm9ibGVtX2lzX2NvbXBsZXRlKGNvbnN0IGNoYXIgKnByb2Js ZW1faWQpOworKworKy8qKgorICAgQCBSZXR1cm5zIHZhbHVlIG9mIHRoZSBnaXZlbiBlbGVtZW50 IG5hbWUKKyAKKyAgIE1pZ2h0IHJlcXVpcmUgYXV0aG9yaXphdGlvbgorQEAgLTE4Miw2ICsxOTEs MTMgQEAgY2hhciAqbG9hZF90ZXh0X292ZXJfZGJ1cyhjb25zdCBjaGFyICpwcm9ibGVtX2lkLCBj b25zdCBjaGFyICplbGVtZW50X25hbWUpOworIGludCBkZWxldGVfcHJvYmxlbV9kaXJzX292ZXJf ZGJ1cyhjb25zdCBHTGlzdCAqcHJvYmxlbV9kaXJfcGF0aHMpOworIAorIC8qKgorKyAgQGJyaWVm IEZldGNoZXMgZ2l2ZW4gcHJvYmxlbSBlbGVtZW50cyBmb3Igc3BlY2lmaWVkIHByb2JsZW0gaWQK KysKKysgIEByZXR1cm4gb24gZmFpbHVyZXMgcmV0dXJucyBub24gemVybyB2YWx1ZSBhbmQgZW1p dHMgZXJyb3IgbWVzc2FnZQorKyovCisraW50IGZpbGxfcHJvYmxlbV9kYXRhX292ZXJfZGJ1cyhj b25zdCBjaGFyICpwcm9ibGVtX2Rpcl9wYXRoLCBjb25zdCBjaGFyICoqZWxlbWVudHMsIHByb2Js ZW1fZGF0YV90ICpwcm9ibGVtX2RhdGEpOworKworKy8qKgorICAgQGJyaWVmIEZldGNoZXMgcHJv YmxlbSBpbmZvcm1hdGlvbiBmb3Igc3BlY2lmaWVkIHByb2JsZW0gaWQKKyAKKyAgIEByZXR1cm4g cHJvYmxlbV9kYXRhX3Qgb3IgTlVMTCBvbiBmYWlsdXJlCitkaWZmIC0tZ2l0IGEvc3JjL2xpYi9w cm9ibGVtX2FwaV9kYnVzLmMgYi9zcmMvbGliL3Byb2JsZW1fYXBpX2RidXMuYworaW5kZXggNTE0 ODkzMi4uY2U1YzQ3YiAxMDA2NDQKKy0tLSBhL3NyYy9saWIvcHJvYmxlbV9hcGlfZGJ1cy5jCisr KysgYi9zcmMvbGliL3Byb2JsZW1fYXBpX2RidXMuYworQEAgLTEwMSwyMyArMTAxLDIxIEBAIGlu dCBkZWxldGVfcHJvYmxlbV9kaXJzX292ZXJfZGJ1cyhjb25zdCBHTGlzdCAqcHJvYmxlbV9kaXJf cGF0aHMpCisgICAgIHJldHVybiAwOworIH0KKyAKKy1wcm9ibGVtX2RhdGFfdCAqZ2V0X3Byb2Js ZW1fZGF0YV9kYnVzKGNvbnN0IGNoYXIgKnByb2JsZW1fZGlyX3BhdGgpCisraW50IGZpbGxfcHJv YmxlbV9kYXRhX292ZXJfZGJ1cyhjb25zdCBjaGFyICpwcm9ibGVtX2lkLCBjb25zdCBjaGFyICoq ZWxlbWVudHMsIHByb2JsZW1fZGF0YV90ICpwcm9ibGVtX2RhdGEpCisgeworICAgICBJTklUSUFM SVpFX0xJQkFCUlQoKTsKKyAKKyAgICAgR0RCdXNQcm94eSAqcHJveHkgPSBnZXRfZGJ1c19wcm94 eSgpOworICAgICBpZiAoIXByb3h5KQorLSAgICAgICAgcmV0dXJuIE5VTEw7CisrICAgICAgICBy ZXR1cm4gLTE7CisgCistICAgIEdWYXJpYW50QnVpbGRlciAqYnVpbGRlciA9IGdfdmFyaWFudF9i dWlsZGVyX25ldyhHX1ZBUklBTlRfVFlQRSgiYXMiKSk7CistICAgIGdfdmFyaWFudF9idWlsZGVy X2FkZChidWlsZGVyLCAicyIsIEZJTEVOQU1FX1RJTUUgICAgICAgICAgKTsKKy0gICAgZ192YXJp YW50X2J1aWxkZXJfYWRkKGJ1aWxkZXIsICJzIiwgRklMRU5BTUVfUkVBU09OICAgICAgICApOwor LSAgICBnX3ZhcmlhbnRfYnVpbGRlcl9hZGQoYnVpbGRlciwgInMiLCBGSUxFTkFNRV9OT1RfUkVQ T1JUQUJMRSk7CistICAgIGdfdmFyaWFudF9idWlsZGVyX2FkZChidWlsZGVyLCAicyIsIEZJTEVO QU1FX0NPTVBPTkVOVCAgICAgKTsKKy0gICAgZ192YXJpYW50X2J1aWxkZXJfYWRkKGJ1aWxkZXIs ICJzIiwgRklMRU5BTUVfRVhFQ1VUQUJMRSAgICApOworLSAgICBnX3ZhcmlhbnRfYnVpbGRlcl9h ZGQoYnVpbGRlciwgInMiLCBGSUxFTkFNRV9SRVBPUlRFRF9UTyAgICk7CistICAgIEdWYXJpYW50 ICpwYXJhbXMgPSBnX3ZhcmlhbnRfbmV3KCIoc2FzKSIsIHByb2JsZW1fZGlyX3BhdGgsIGJ1aWxk ZXIpOworLSAgICBnX3ZhcmlhbnRfYnVpbGRlcl91bnJlZihidWlsZGVyKTsKKysgICAgR1Zhcmlh bnRCdWlsZGVyICphcmdzX2J1aWxkZXIgPSBnX3ZhcmlhbnRfYnVpbGRlcl9uZXcoR19WQVJJQU5U X1RZUEUoImFzIikpOworKworKyAgICBmb3IgKGNvbnN0IGNoYXIgKippdGVyID0gZWxlbWVudHM7 ICppdGVyOyArK2l0ZXIpCisrICAgICAgICBnX3ZhcmlhbnRfYnVpbGRlcl9hZGQoYXJnc19idWls ZGVyLCAicyIsICppdGVyKTsKKysKKysgICAgR1ZhcmlhbnQgKnBhcmFtcyA9IGdfdmFyaWFudF9u ZXcoIihzYXMpIiwgcHJvYmxlbV9pZCwgYXJnc19idWlsZGVyKTsKKysgICAgZ192YXJpYW50X2J1 aWxkZXJfdW5yZWYoYXJnc19idWlsZGVyKTsKKyAKKyAgICAgR0Vycm9yICplcnJvciA9IE5VTEw7 CisgICAgIEdWYXJpYW50ICpyZXN1bHQgPSBnX2RidXNfcHJveHlfY2FsbF9zeW5jKHByb3h5LAor QEAgLTEzMCwyMCArMTI4LDQ2IEBAIHByb2JsZW1fZGF0YV90ICpnZXRfcHJvYmxlbV9kYXRhX2Ri dXMoY29uc3QgY2hhciAqcHJvYmxlbV9kaXJfcGF0aCkKKyAKKyAgICAgaWYgKGVycm9yKQorICAg ICB7CistICAgICAgICBlcnJvcl9tc2coXygiQ2FuJ3QgZ2V0IHByb2JsZW0gZGF0YSBmcm9tIGFi cnQtZGJ1czogJXMiKSwgZXJyb3ItPm1lc3NhZ2UpOworKyAgICAgICAgZXJyb3JfbXNnKF8oIkQt QnVzIEdldEluZm8gbWV0aG9kIGNhbGwgZmFpbGVkOiAlcyIpLCBlcnJvci0+bWVzc2FnZSk7Cisg ICAgICAgICBnX2Vycm9yX2ZyZWUoZXJyb3IpOworLSAgICAgICAgcmV0dXJuIE5VTEw7CisrICAg ICAgICByZXR1cm4gLTI7CisgICAgIH0KKyAKKy0gICAgcHJvYmxlbV9kYXRhX3QgKnBkID0gcHJv YmxlbV9kYXRhX25ldygpOworKworICAgICBjaGFyICprZXksICp2YWw7CisgICAgIEdWYXJpYW50 SXRlciAqaXRlcjsKKyAgICAgZ192YXJpYW50X2dldChyZXN1bHQsICIoYXtzc30pIiwgJml0ZXIp OworICAgICB3aGlsZSAoZ192YXJpYW50X2l0ZXJfbG9vcChpdGVyLCAie3NzfSIsICZrZXksICZ2 YWwpKQorKyAgICAgICAgcHJvYmxlbV9kYXRhX2FkZF90ZXh0X25vdGVkaXRhYmxlKHByb2JsZW1f ZGF0YSwga2V5LCB2YWwpOworKworKyAgICBnX3ZhcmlhbnRfdW5yZWYocmVzdWx0KTsKKysKKysg ICAgcmV0dXJuIDA7CisrfQorKworK3Byb2JsZW1fZGF0YV90ICpnZXRfcHJvYmxlbV9kYXRhX2Ri dXMoY29uc3QgY2hhciAqcHJvYmxlbV9kaXJfcGF0aCkKKyt7CisrICAgIElOSVRJQUxJWkVfTElC QUJSVCgpOworKworKyAgICBzdGF0aWMgY29uc3QgY2hhciAqZWxlbWVudHNbXSA9IHsKKysgICAg ICAgIEZJTEVOQU1FX1RJTUUsCisrICAgICAgICBGSUxFTkFNRV9SRUFTT04sCisrICAgICAgICBG SUxFTkFNRV9OT1RfUkVQT1JUQUJMRSwKKysgICAgICAgIEZJTEVOQU1FX0NPTVBPTkVOVCwKKysg ICAgICAgIEZJTEVOQU1FX0VYRUNVVEFCTEUsCisrICAgICAgICBGSUxFTkFNRV9SRVBPUlRFRF9U TywKKysgICAgICAgIE5VTEwsCisrICAgIH07CisrCisrICAgIHByb2JsZW1fZGF0YV90ICpwZCA9 IHByb2JsZW1fZGF0YV9uZXcoKTsKKysKKysgICAgaWYgKGZpbGxfcHJvYmxlbV9kYXRhX292ZXJf ZGJ1cyhwcm9ibGVtX2Rpcl9wYXRoLCBlbGVtZW50cywgcGQpICE9IDApCisgICAgIHsKKy0gICAg ICAgIHByb2JsZW1fZGF0YV9hZGRfdGV4dF9ub3RlZGl0YWJsZShwZCwga2V5LCB2YWwpOworKyAg ICAgICAgZXJyb3JfbXNnKF8oIkNhbid0IGdldCBwcm9ibGVtIGRhdGEgZnJvbSBhYnJ0LWRidXMi KSk7CisrICAgICAgICBwcm9ibGVtX2RhdGFfZnJlZShwZCk7CisrICAgICAgICByZXR1cm4gTlVM TDsKKyAgICAgfQorLSAgICBnX3ZhcmlhbnRfdW5yZWYocmVzdWx0KTsKKysKKyAgICAgcmV0dXJu IHBkOworIH0KKyAKK0BAIC0yNTksNiArMjgzLDExIEBAIGludCB0ZXN0X2V4aXN0X292ZXJfZGJ1 cyhjb25zdCBjaGFyICpwcm9ibGVtX2lkLCBjb25zdCBjaGFyICplbGVtZW50X25hbWUpCisgICAg IHJldHVybiByZXR2YWw7CisgfQorIAorK2ludCBkYnVzX3Byb2JsZW1faXNfY29tcGxldGUoY29u c3QgY2hhciAqcHJvYmxlbV9pZCkKKyt7CisrICAgIHJldHVybiB0ZXN0X2V4aXN0X292ZXJfZGJ1 cyhwcm9ibGVtX2lkLCBGSUxFTkFNRV9DT1VOVCk7CisrfQorKworIGNoYXIgKmxvYWRfdGV4dF9v dmVyX2RidXMoY29uc3QgY2hhciAqcHJvYmxlbV9pZCwgY29uc3QgY2hhciAqZWxlbWVudF9uYW1l KQorIHsKKyAgICAgSU5JVElBTElaRV9MSUJBQlJUKCk7CistLSAKKzIuNC4xCisKCmRpZmYgLS1n aXQgYS8wMDA1LWxpYi1hZGQtbmV3LWtlcm5lbC10YWludC1mbGFncy5wYXRjaCBiLzAwMDUtbGli LWFkZC1uZXcta2VybmVsLXRhaW50LWZsYWdzLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAuLjU1NWM1YTUKLS0tIC9kZXYvbnVsbAorKysgYi8wMDA1LWxpYi1hZGQtbmV3 LWtlcm5lbC10YWludC1mbGFncy5wYXRjaApAQCAtMCwwICsxLDYwIEBACitGcm9tIGU1MmQxNDIx NGJkMzU2ZjMxODU2YTVhYjYzZWYxNGE2MGQzMTgzNjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CitGcm9tOiBKYWt1YiBGaWxhayA8amZpbGFrQHJlZGhhdC5jb20+CitEYXRlOiBUdWUsIDUgTWF5 IDIwMTUgMTA6NDY6MDYgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSF0gbGliOiBhZGQgbmV3IGtlcm5l bCB0YWludCBmbGFncworCitTaWduZWQtb2ZmLWJ5OiBKYWt1YiBGaWxhayA8amZpbGFrQHJlZGhh dC5jb20+CistLS0KKyBzcmMvbGliL2tlcm5lbC5jIHwgMTYgKysrKysrKysrKystLS0tLQorIDEg ZmlsZSBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitkaWZmIC0t Z2l0IGEvc3JjL2xpYi9rZXJuZWwuYyBiL3NyYy9saWIva2VybmVsLmMKK2luZGV4IGFmNDNhZTAu LmRkZTNkMjggMTAwNjQ0CistLS0gYS9zcmMvbGliL2tlcm5lbC5jCisrKysgYi9zcmMvbGliL2tl cm5lbC5jCitAQCAtNjMyLDggKzYzMiwxNCBAQCBjaGFyICprb29wc19leHRyYWN0X3ZlcnNpb24o Y29uc3QgY2hhciAqbGluZXBvaW50ZXIpCisgICogICdXJyAtIFRhaW50IG9uIHdhcm5pbmcuCisg ICogICdDJyAtIG1vZHVsZXMgZnJvbSBkcml2ZXJzL3N0YWdpbmcgYXJlIGxvYWRlZC4KKyAgKiAg J0knIC0gV29ya2luZyBhcm91bmQgc2V2ZXJlIGZpcm13YXJlIGJ1Zy4KKysgKiAgJ08nIC0gT3V0 LW9mLXRyZWUgbW9kdWxlIGhhcyBiZWVuIGxvYWRlZC4KKysgKiAgJ0UnIC0gVW5zaWduZWQgbW9k dWxlIGhhcyBiZWVuIGxvYWRlZC4KKysgKiAgJ0wnIC0gQSBzb2Z0IGxvY2t1cCBoYXMgcHJldmlv dXNseSBvY2N1cnJlZC4KKysgKiAgJ0snIC0gS2VybmVsIGhhcyBiZWVuIGxpdmUgcGF0Y2hlZC4K KysgKgorKyAqIENvbXBhdGliaWxpdHkgZmxhZ3MgZnJvbSBvbGRlciB2ZXJzaW9ucyBhbmQgZG93 bnN0cmVhbSBzb3VyY2VzOgorICAqICAnSCcgLSBIYXJkd2FyZSBpcyB1bnN1cHBvcnRlZC4KKy0g KiAgIFQgIC0gVGVjaF9wcmV2aWV3CisrICogICdUJyAtIFRlY2hfcHJldmlldworICAqLworIAor ICNpZiAwIC8qIHVudXNlZCAqLworQEAgLTY1OCw3ICs2NjQsNyBAQCBjaGFyICprZXJuZWxfdGFp bnRlZF9zaG9ydChjb25zdCBjaGFyICprZXJuZWxfYnQpCisgICAgICAgICByZXR1cm4gTlVMTDsK KyAKKyAgICAgdGFpbnRlZCArPSBzdHJsZW4oIlRhaW50ZWQ6ICIpOworLSAgICAvKiAxMyA9PSBj dXJyZW50IGNvdW50IG9mIGtub3duIGZsYWdzICovCisrICAgIC8qIDE3ICsgMiA9PSBjdXJyZW50 IGNvdW50IG9mIGtub3duIGZsYWdzICovCisgICAgIC8qIGh0dHA6Ly9naXQua2VybmVsLm9yZy8/ cD1saW51eC9rZXJuZWwvZ2l0L3RvcnZhbGRzL2xpbnV4LmdpdDthPWJsb2JfcGxhaW47Zj1rZXJu ZWwvcGFuaWMuYztoYj1IRUFEICovCisgICAgIC8qIDI2IHRoZSBtYXhpbWFsIHNhbmUgY291bnQg b2YgZmxhZ3MgYmVjYXVzZSBvZiBhbHBoYWJldCBsaW1pdHMgKi8KKyAgICAgdW5zaWduZWQgc3og PSAyNiArIDE7CitAQCAtNzAxLDE0ICs3MDcsMTQgQEAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0 IHRudHNfbG9uZ1tdID0geworICAgICAvKiBCICovICJTeXN0ZW0gaGFzIGhpdCBiYWRfcGFnZS4i LAorICAgICAvKiBDICovICJNb2R1bGVzIGZyb20gZHJpdmVycy9zdGFnaW5nIGFyZSBsb2FkZWQu IiwKKyAgICAgLyogRCAqLyAiS2VybmVsIGhhcyBvb3BzZWQgYmVmb3JlIiwKKy0gICAgLyogRSAq LyBOVUxMLAorKyAgICAvKiBFICovICJVbnNpZ25lZCBtb2R1bGUgaGFzIGJlZW4gbG9hZGVkLiIK KyAgICAgLyogRiAqLyAiTW9kdWxlIGhhcyBiZWVuIGZvcmNpYmx5IGxvYWRlZC4iLAorICAgICAv KiBHICovICJQcm9wcmlldGFyeSBtb2R1bGUgaGFzIG5vdCBiZWVuIGxvYWRlZC4iLAorICAgICAv KiBIICovIE5VTEwsCisgICAgIC8qIEkgKi8gIldvcmtpbmcgYXJvdW5kIHNldmVyZSBmaXJtd2Fy ZSBidWcuIiwKKyAgICAgLyogSiAqLyBOVUxMLAorLSAgICAvKiBLICovIE5VTEwsCistICAgIC8q IEwgKi8gTlVMTCwKKysgICAgLyogSyAqLyAiS2VybmVsIGhhcyBiZWVuIGxpdmUgcGF0Y2hlZC4i LAorKyAgICAvKiBMICovICJBIHNvZnQgbG9ja3VwIGhhcyBwcmV2aW91c2x5IG9jY3VycmVkLiIs CisgICAgIC8qIE0gKi8gIlN5c3RlbSBleHBlcmllbmNlZCBhIG1hY2hpbmUgY2hlY2sgZXhjZXB0 aW9uLiIsCisgICAgIC8qIE4gKi8gTlVMTCwKKyAgICAgLyogTyAqLyAiT3V0LW9mLXRyZWUgbW9k dWxlIGhhcyBiZWVuIGxvYWRlZC4iLAorLS0gCisyLjQuMQorCgpkaWZmIC0tZ2l0IGEvMDAwNi11 cGxvYWQtdmFsaWRhdGUtYW5kLXNhbml0aXplLXVwbG9hZGVkLWR1bXAtZGlyZWN0b3JpLnBhdGNo IGIvMDAwNi11cGxvYWQtdmFsaWRhdGUtYW5kLXNhbml0aXplLXVwbG9hZGVkLWR1bXAtZGlyZWN0 b3JpLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY4MjNiMzMKLS0t IC9kZXYvbnVsbAorKysgYi8wMDA2LXVwbG9hZC12YWxpZGF0ZS1hbmQtc2FuaXRpemUtdXBsb2Fk ZWQtZHVtcC1kaXJlY3RvcmkucGF0Y2gKQEAgLTAsMCArMSwxNDIgQEAKK0Zyb20gMzc0NmI3NjI3 MjE4NDM4YWU3ZDc4MWZjOGIxOGEyMjE0NTRlOTA5MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK K0Zyb206IEpha3ViIEZpbGFrIDxqZmlsYWtAcmVkaGF0LmNvbT4KK0RhdGU6IE1vbiwgMjAgQXBy IDIwMTUgMTU6MTU6NDAgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSF0gdXBsb2FkOiB2YWxpZGF0ZSBh bmQgc2FuaXRpemUgdXBsb2FkZWQgZHVtcCBkaXJlY3RvcmllcworCitJdCB3YXMgZGlzY292ZXJl ZCB0aGF0LCB3aGVuIG1vdmluZyBwcm9ibGVtIHJlcG9ydHMgZnJvbQorL3Zhci9zcG9vbC9hYnJ0 LXVwbG9hZCB0byAvdmFyL3Nwb29sL2FicnQgb3IgL3Zhci90bXAvYWJydCwKK2FicnQtaGFuZGxl LXVwbG9hZCBkb2VzIG5vdCB2ZXJpZnkgdGhhdCB0aGUgbmV3IHByb2JsZW0gZGlyZWN0b3J5Cito YXMgYXBwcm9wcmlhdGUgcGVybWlzc2lvbnMgYW5kIGRvZXMgbm90IGNvbnRhaW4gc3ltYm9saWMg bGlua3MuICBBCitjcmFmdGVkIHByb2JsZW0gcmVwb3J0IGV4cG9zZXMgb3RoZXIgcGFydHMgb2Yg YWJydCB0byBhdHRhY2ssIGFuZAordGhlIGFicnQtaGFuZGxlLXVwbG9hZCBzY3JpcHQgYWxsb3dz IHRvIG92ZXJ3cml0ZSBhcmJpdHJhcnkgZmlsZXMuCisKK0Fja25vd2xlZGdlbWVudDoKKworVGhp cyBpc3N1ZSB3YXMgZGlzY292ZXJlZCBieSBGbG9yaWFuIFdlaW1lciBvZiBSZWQgSGF0IFByb2R1 Y3QgU2VjdXJpdHkuCisKK1JlbGF0ZWQ6ICMxMjEyOTUzCisKK1NpZ25lZC1vZmYtYnk6IEpha3Vi IEZpbGFrIDxqZmlsYWtAcmVkaGF0LmNvbT4KKy0tLQorIHNyYy9kYWVtb24vYWJydC1oYW5kbGUt dXBsb2FkLmluIHwgNzggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQor IDEgZmlsZSBjaGFuZ2VkLCA3MCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitkaWZm IC0tZ2l0IGEvc3JjL2RhZW1vbi9hYnJ0LWhhbmRsZS11cGxvYWQuaW4gYi9zcmMvZGFlbW9uL2Fi cnQtaGFuZGxlLXVwbG9hZC5pbgoraW5kZXggNDViYTcyZC4uZTgxMmVmMCAxMDA3NTUKKy0tLSBh L3NyYy9kYWVtb24vYWJydC1oYW5kbGUtdXBsb2FkLmluCisrKysgYi9zcmMvZGFlbW9uL2FicnQt aGFuZGxlLXVwbG9hZC5pbgorQEAgLTEwLDYgKzEwLDcgQEAgaW1wb3J0IGdldG9wdAorIGltcG9y dCB0ZW1wZmlsZQorIGltcG9ydCBzaHV0aWwKKyBpbXBvcnQgZGF0ZXRpbWUKKytpbXBvcnQgZ3Jw CisgCisgZnJvbSByZXBvcnRjbGllbnQgaW1wb3J0IHNldF92ZXJib3NpdHksIGVycm9yX21zZ19h bmRfZGllLCBlcnJvcl9tc2csIGxvZworIAorQEAgLTM2LDEyICszNyw3NyBAQCBkZWYgaW5pdF9n ZXR0ZXh0KCk6CisgCisgaW1wb3J0IHByb2JsZW0KKyAKKy1kZWYgd3JpdGVfc3RyX3RvKGZpbGVu YW1lLCBzKToKKy0gICAgZmQgPSBvcy5vcGVuKGZpbGVuYW1lLCBvcy5PX1dST05MWSB8IG9zLk9f Q1JFQVQgfCBvcy5PX1RSVU5DLCBAREVGQVVMVF9EVU1QX0RJUl9NT0RFQCB8IHN0YXQuU19JUk9U SCkKKytkZWYgd3JpdGVfc3RyX3RvKGZpbGVuYW1lLCBzLCB1aWQsIGdpZCwgbW9kZSk6CisrICAg IGZkID0gb3Mub3BlbihmaWxlbmFtZSwgb3MuT19XUk9OTFkgfCBvcy5PX0NSRUFUIHwgb3MuT19U UlVOQywgbW9kZSkKKyAgICAgaWYgZmQgPj0gMDoKKysgICAgICAgIG9zLmZjaG93bihmZCwgdWlk LCBnaWQpCisgICAgICAgICBvcy53cml0ZShmZCwgcykKKyAgICAgICAgIG9zLmNsb3NlKGZkKQor IAorKworK2RlZiB2YWxpZGF0ZV90cmFuc2Zvcm1fbW92ZV9hbmRfbm90aWZ5KHVwbG9hZGVkX2Rp cl9wYXRoLCBwcm9ibGVtX2Rpcl9wYXRoLCBkZXN0PU5vbmUpOgorKyAgICBmc3VpZCA9IDAKKysg ICAgZnNnaWQgPSAwCisrCisrICAgIHRyeToKKysgICAgICAgIGdhYnJ0ID0gZ3JwLmdldGdybmFt KCJhYnJ0IikKKysgICAgICAgIGZzZ2lkID0gZ2FicnQuZ3JfZ2lkCisrICAgIGV4Y2VwdCBLZXlF cnJvciBhcyBleDoKKysgICAgICAgIGVycm9yX21zZygiRmFpbGVkIHRvIGdldCBHSUQgb2YgJ2Fi cnQnICh1c2luZyAwIGluc3RlYWQpOiB7MH0nIi5mb3JtYXQoc3RyKGV4KSkpCisrCisrICAgIHRy eToKKysgICAgICAgICMgZ2l2ZSB0aGUgdXBsb2FkZWQgZGlyZWN0b3J5IHRvICdyb290OmFicnQn IG9yICdyb290OnJvb3QnCisrICAgICAgICBvcy5jaG93bih1cGxvYWRlZF9kaXJfcGF0aCwgZnN1 aWQsIGZzZ2lkKQorKyAgICAgICAgIyBzZXQgdGhlIHJpZ2h0IHBlcm1pc3Npb25zIGZvciB0aGlz IG1hY2hpbmUKKysgICAgICAgICMgKGFsbG93IHRoZSBvd25lciBhbmQgdGhlIGdyb3VwIHRvIGFj Y2VzcyBwcm9ibGVtIGVsZW1lbnRzLAorKyAgICAgICAgIyAgdGhlIGRlZmF1bHQgZHVtcCBkaXIg bW9kZSBsYWNrcyB4IGJpdCBmb3IgYm90aCkKKysgICAgICAgIG9zLmNobW9kKHVwbG9hZGVkX2Rp cl9wYXRoLCBAREVGQVVMVF9EVU1QX0RJUl9NT0RFQCB8IHN0YXQuU19JWFVTUiB8IHN0YXQuU19J WEdSUCkKKysKKysgICAgICAgICMgc2FuaXRpemUgcHJvYmxlbSBlbGVtZW50cworKyAgICAgICAg Zm9yIGl0ZW0gaW4gb3MubGlzdGRpcih1cGxvYWRlZF9kaXJfcGF0aCk6CisrICAgICAgICAgICAg YXBhdGggPSBvcy5wYXRoLmpvaW4odXBsb2FkZWRfZGlyX3BhdGgsIGl0ZW0pCisrICAgICAgICAg ICAgaWYgb3MucGF0aC5pc2xpbmsoYXBhdGgpOgorKyAgICAgICAgICAgICAgICAjIHJlbW92ZSBz eW1ib2xpYyBsaW5rcworKyAgICAgICAgICAgICAgICBvcy5yZW1vdmUoYXBhdGgpCisrICAgICAg ICAgICAgZWxpZiBvcy5wYXRoLmlzZGlyKGFwYXRoKToKKysgICAgICAgICAgICAgICAgIyByZW1v dmUgZGlyZWN0b3JpZXMKKysgICAgICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShhcGF0aCkKKysg ICAgICAgICAgICBlbGlmIG9zLnBhdGguaXNmaWxlKGFwYXRoKToKKysgICAgICAgICAgICAgICAg IyBzZXQgZmlsZSBvd25lcnNoaXAgdG8gJ3Jvb3Q6YWJydCcgb3IgJ3Jvb3Q6cm9vdCcKKysgICAg ICAgICAgICAgICAgb3MuY2hvd24oYXBhdGgsIGZzdWlkLCBmc2dpZCkKKysgICAgICAgICAgICAg ICAgIyBzZXQgdGhlIHJpZ2h0IGZpbGUgcGVybWlzc2lvbnMgZm9yIHRoaXMgbWFjaGluZQorKyAg ICAgICAgICAgICAgICBvcy5jaG1vZChhcGF0aCwgQERFRkFVTFRfRFVNUF9ESVJfTU9ERUApCisr ICAgICAgICAgICAgZWxzZToKKysgICAgICAgICAgICAgICAgIyByZW1vdmUgdGhpbmdzIHRoYXQg YXJlIG5laXRoZXIgZmlsZXMsIHN5bWxpbmtzIG5vciBkaXJlY3RvcmllcworKyAgICAgICAgICAg ICAgICBvcy5yZW1vdmUoYXBhdGgpCisrICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGV4OgorKyAgICAg ICAgZXJyb3JfbXNnKCJSZW1vdmluZyB1cGxvYWRlZCBkaXIgJ3swfSc6ICd7MX0nIi5mb3JtYXQo dXBsb2FkZWRfZGlyX3BhdGgsIHN0cihleCkpKQorKyAgICAgICAgdHJ5OgorKyAgICAgICAgICAg IHNodXRpbC5ybXRyZWUodXBsb2FkZWRfZGlyX3BhdGgpCisrICAgICAgICBleGNlcHQgT1NFcnJv ciBhcyBleDI6CisrICAgICAgICAgICAgZXJyb3JfbXNnX2FuZF9kaWUoIkZhaWxlZCB0byBjbGVh biB1cCBkaXIgJ3swfSc6ICd7MX0nIi5mb3JtYXQodXBsb2FkZWRfZGlyX3BhdGgsIHN0cihleDIp KSkKKysgICAgICAgIHJldHVybgorKworKyAgICAjIG92ZXJ3cml0ZSByZW1vdGUgaWYgaXQgZXhp c3RzCisrICAgIHJlbW90ZV9wYXRoID0gb3MucGF0aC5qb2luKHVwbG9hZGVkX2Rpcl9wYXRoLCAi cmVtb3RlIikKKysgICAgd3JpdGVfc3RyX3RvKHJlbW90ZV9wYXRoLCAiMSIsIGZzdWlkLCBmc2dp ZCwgQERFRkFVTFRfRFVNUF9ESVJfTU9ERUApCisrCisrICAgICMgYWJydGQgd291bGQgaW5jcmVt ZW50IGNvdW50IHZhbHVlIGFuZCBhYnJ0LXNlcnZlciByZWZ1c2VzIHRvIHByb2Nlc3MKKysgICAg IyBwcm9ibGVtIGRpcmVjdG9yaWVzIGNvbnRhaW5pbmcgJ2NvdW50JyBlbGVtZW50IHdoZW4gUHJp dmF0ZVJlcG9ydHMgaXMgb24uCisrICAgIGNvdW50X3BhdGggPSBvcy5wYXRoLmpvaW4odXBsb2Fk ZWRfZGlyX3BhdGgsICJjb3VudCIpCisrICAgIGlmIG9zLnBhdGguZXhpc3RzKGNvdW50X3BhdGgp OgorKyAgICAgICAgIyBvdmVyd3JpdGUgcmVtb3RlX2NvdW50IGlmIGl0IGV4aXN0cworKyAgICAg ICAgcmVtb3RlX2NvdW50X3BhdGggPSBvcy5wYXRoLmpvaW4odXBsb2FkZWRfZGlyX3BhdGgsICJy ZW1vdGVfY291bnQiKQorKyAgICAgICAgb3MucmVuYW1lKGNvdW50X3BhdGgsIHJlbW90ZV9jb3Vu dF9wYXRoKQorKworKyAgICBpZiBub3QgZGVzdDoKKysgICAgICAgIGRlc3QgPSBwcm9ibGVtX2Rp cl9wYXRoCisrCisrICAgIHNodXRpbC5tb3ZlKHVwbG9hZGVkX2Rpcl9wYXRoLCBkZXN0KQorKwor KyAgICBwcm9ibGVtLm5vdGlmeV9uZXdfcGF0aChwcm9ibGVtX2Rpcl9wYXRoKQorKworKworIGlm IF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgCisgICAgICMgSGVscGVyOiBleGl0IHdpdGggY2xl YW51cAorQEAgLTE3NywyMSArMjQzLDE3IEBAIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6Cisg ICAgICAgICAjIG9yIG9uZSBvciBtb3JlIGNvbXBsZXRlIHByb2JsZW0gZGF0YSBkaXJlY3Rvcmll cy4KKyAgICAgICAgICMgQ2hlY2tpbmcgc2Vjb25kIHBvc3NpYmlsaXR5IGZpcnN0LgorICAgICAg ICAgaWYgKG9zLnBhdGguZXhpc3RzKHRlbXBkaXIrIi9hbmFseXplciIpIG9yIG9zLnBhdGguZXhp c3RzKHRlbXBkaXIrIi90eXBlIikpIGFuZCBvcy5wYXRoLmV4aXN0cyh0ZW1wZGlyKyIvdGltZSIp OgorLSAgICAgICAgICAgIHdyaXRlX3N0cl90byh0ZW1wZGlyKyIvcmVtb3RlIiwgIjEiKQorLSAg ICAgICAgICAgIHNodXRpbC5tb3ZlKHRlbXBkaXIsIGFicnRfZGlyKQorLSAgICAgICAgICAgIHBy b2JsZW0ubm90aWZ5X25ld19wYXRoKGFicnRfZGlyKyIvIitvcy5wYXRoLmJhc2VuYW1lKHRlbXBk aXIpKQorKyAgICAgICAgICAgIHZhbGlkYXRlX3RyYW5zZm9ybV9tb3ZlX2FuZF9ub3RpZnkodGVt cGRpciwgYWJydF9kaXIrIi8iK29zLnBhdGguYmFzZW5hbWUodGVtcGRpciksIGRlc3Q9YWJydF9k aXIpCisgICAgICAgICBlbHNlOgorICAgICAgICAgICAgIGZvciBkIGluIG9zLmxpc3RkaXIodGVt cGRpcik6CisgICAgICAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmlzZGlyKHRlbXBkaXIrIi8i K2QpOgorICAgICAgICAgICAgICAgICAgICAgY29udGludWUKKy0gICAgICAgICAgICAgICAgd3Jp dGVfc3RyX3RvKHRlbXBkaXIrIi8iK2QrIi9yZW1vdGUiLCAiMSIpCisgICAgICAgICAgICAgICAg IGRzdCA9IGFicnRfZGlyKyIvIitkCisgICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3Rz KGRzdCk6CisgICAgICAgICAgICAgICAgICAgICBkc3QgKz0gIi4iK3N0cihvcy5nZXRwaWQoKSkK KyAgICAgICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoZHN0KToKKyAgICAgICAgICAgICAg ICAgICAgIGNvbnRpbnVlCistICAgICAgICAgICAgICAgIHNodXRpbC5tb3ZlKHRlbXBkaXIrIi8i K2QsIGRzdCkKKy0gICAgICAgICAgICAgICAgcHJvYmxlbS5ub3RpZnlfbmV3X3BhdGgoZHN0KQor KyAgICAgICAgICAgICAgICB2YWxpZGF0ZV90cmFuc2Zvcm1fbW92ZV9hbmRfbm90aWZ5KHRlbXBk aXIrIi8iK2QsIGRzdCkKKyAKKyAgICAgICAgIGRpZV9leGl0Y29kZSA9IDAKKyAgICAgICAgICMg VGhpcyBkZWxldGVzIHdvcmtpbmdfZGlyICg9PSBkZWxldGVfb25fZXhpdCkKKy0tIAorMi40LjEK KwoKZGlmZiAtLWdpdCBhLzAwMDgtYS1hLXMtcC1kLWFkZC1uZXcta25vd24taW50ZXJwcmV0ZXIt dG8tY29uZi1maWxlLnBhdGNoIGIvMDAwOC1hLWEtcy1wLWQtYWRkLW5ldy1rbm93bi1pbnRlcnBy ZXRlci10by1jb25mLWZpbGUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MC4uN2EyNTRiNwotLS0gL2Rldi9udWxsCisrKyBiLzAwMDgtYS1hLXMtcC1kLWFkZC1uZXcta25v d24taW50ZXJwcmV0ZXItdG8tY29uZi1maWxlLnBhdGNoCkBAIC0wLDAgKzEsMjkgQEAKK0Zyb20g N2Q1YmU0MjdlMjA4ZTU2NWVlMTZhN2YzNGJlNjRhY2I3ODFmYjJmOSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKK0Zyb206IE1hdGVqIEhhYnJuYWwgPG1oYWJybmFsQHJlZGhhdC5jb20+CitEYXRl OiBNb24sIDE4IE1heSAyMDE1IDA4OjQ1OjQ4ICswMjAwCitTdWJqZWN0OiBbUEFUQ0hdIGEtYS1z LXAtZDogYWRkIG5ldyBrbm93biBpbnRlcnByZXRlciB0byBjb25mIGZpbGUKKworVGhlcmUgd2Vy ZSBuZXcgYnVnemlsbGFzIG9wZW5lZCB3aXRoIHdyb25nIGNvbXBvbmVudCAncHl0aG9uMycgYmVj YXVzZSBvZiBhIG5ldwordmVyc2lvbiBvZiBweXRob24gKDMuNCkuIFdlIGRvbid0IHdhbnQgdG8g YmxhbWUgdGhlIGludGVycHJldGVycyBidXQgdGhlCitydW5uaW5nIHNjcmlwdHMuCisKK2Nsb3Nl ICM5NjUKKworU2lnbmVkLW9mZi1ieTogTWF0ZWogSGFicm5hbCA8bWhhYnJuYWxAcmVkaGF0LmNv bT4KKy0tLQorIHNyYy9kYWVtb24vYWJydC1hY3Rpb24tc2F2ZS1wYWNrYWdlLWRhdGEuY29uZiB8 IDIgKy0KKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKKwor ZGlmZiAtLWdpdCBhL3NyYy9kYWVtb24vYWJydC1hY3Rpb24tc2F2ZS1wYWNrYWdlLWRhdGEuY29u ZiBiL3NyYy9kYWVtb24vYWJydC1hY3Rpb24tc2F2ZS1wYWNrYWdlLWRhdGEuY29uZgoraW5kZXgg MzNjZWY4Zi4uMjdiOTYwNyAxMDA2NDQKKy0tLSBhL3NyYy9kYWVtb24vYWJydC1hY3Rpb24tc2F2 ZS1wYWNrYWdlLWRhdGEuY29uZgorKysrIGIvc3JjL2RhZW1vbi9hYnJ0LWFjdGlvbi1zYXZlLXBh Y2thZ2UtZGF0YS5jb25mCitAQCAtMTgsNCArMTgsNCBAQCBQcm9jZXNzVW5wYWNrYWdlZCA9IHll cworIEJsYWNrTGlzdGVkUGF0aHMgPSAvdXNyL3NoYXJlL2RvYy8qLCAqL2V4YW1wbGUqLCAvdXNy L2Jpbi9uc3BsdWdpbnZpZXdlcgorIAorICMgaW50ZXJwcmV0ZXJzIG5hbWVzCistSW50ZXJwcmV0 ZXJzID0gcHl0aG9uMiwgcHl0aG9uMi43LCBweXRob24sIHB5dGhvbjMsIHB5dGhvbjMuMywgcGVy bCwgcGVybDUuMTYuMgorK0ludGVycHJldGVycyA9IHB5dGhvbjIsIHB5dGhvbjIuNywgcHl0aG9u LCBweXRob24zLCBweXRob24zLjMsIHB5dGhvbjMuNCwgcHl0aG9uMy41LCBwZXJsLCBwZXJsNS4x Ni4yCistLSAKKzIuNC4xCisKCmRpZmYgLS1naXQgYS8wMDEwLWFwcGxldC1maXgtcHJvYmxlbS1p bmZvLWRvdWJsZS1mcmVlLnBhdGNoIGIvMDAxMC1hcHBsZXQtZml4LXByb2JsZW0taW5mby1kb3Vi bGUtZnJlZS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNTZiYTA0 Ci0tLSAvZGV2L251bGwKKysrIGIvMDAxMC1hcHBsZXQtZml4LXByb2JsZW0taW5mby1kb3VibGUt ZnJlZS5wYXRjaApAQCAtMCwwICsxLDQxIEBACitGcm9tIDY1YzI0YmIyNDhiOWI3YjJlMzNlOGIw YmE5ZTNlMDZmZmRlNGIyOTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBNYXRlaiBI YWJybmFsIDxtaGFicm5hbEByZWRoYXQuY29tPgorRGF0ZTogTW9uLCAxOCBNYXkgMjAxNSAxNTo0 Njo1OSArMDIwMAorU3ViamVjdDogW1BBVENIXSBhcHBsZXQ6IGZpeCBwcm9ibGVtIGluZm8gZG91 YmxlIGZyZWUKKworVGhlcmUgd2FzIGEgZG91YmxlIGZyZWUgd2hlbiBhbiBhY3Rpb24gZnVuY3Rp b24gd2FzIGNhbGxlZC4KK1Byb2JsZW0gaW5mbyBpcyBmcmVlZCB3aGVuIHRoZSBub3RpZmljYXRp b24gaXMgZGVzdHJveWVkIGJlY2F1c2UgdGhlIGZyZWUKK2Z1bmN0aW9uIGlzIHJlZ2lzdHJlZCB3 aGVuIHRoZSBhY3Rpb24gaXMgYWRkZWQKKyhub3RpZnlfbm90aWZpY2F0aW9uX2FkZF9hY3Rpb24o KSkuIFNvIHRoZSBwcm9ibGVtX2luZm9fdW5yZWYoKSBmdW5jdGlvbiBpbiB0aGUKK2FjdGlvbiBm dW5jdGlvbiBpcyBtb3Jlb3ZlciBhbmQgY2F1c2VzIHRoZSBkb3VibGUgZnJlZSBwcm9ibGVtLgor CitSZWxhdGVkIHRvIHJoYnojMTIxMTY0NAorCitTaWduZWQtb2ZmLWJ5OiBNYXRlaiBIYWJybmFs IDxtaGFicm5hbEByZWRoYXQuY29tPgorLS0tCisgc3JjL2FwcGxldC9hcHBsZXQuYyB8IDIgLS0K KyAxIGZpbGUgY2hhbmdlZCwgMiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3NyYy9hcHBs ZXQvYXBwbGV0LmMgYi9zcmMvYXBwbGV0L2FwcGxldC5jCitpbmRleCA0ZGY2OWZjLi5jMDBmN2Uz IDEwMDY0NAorLS0tIGEvc3JjL2FwcGxldC9hcHBsZXQuYworKysrIGIvc3JjL2FwcGxldC9hcHBs ZXQuYworQEAgLTUwMSw3ICs1MDEsNiBAQCBzdGF0aWMgdm9pZCBhY3Rpb25fcmVwb3J0KE5vdGlm eU5vdGlmaWNhdGlvbiAqbm90aWZpY2F0aW9uLCBnY2hhciAqYWN0aW9uLCBncG9pbgorICAgICBw cm9ibGVtX2luZm9fdCAqcGkgPSAocHJvYmxlbV9pbmZvX3QgKil1c2VyX2RhdGE7CisgICAgIGlm IChwcm9ibGVtX2luZm9fZ2V0X2RpcihwaSkpCisgICAgICAgICBmb3JrX2V4ZWNfZ3VpKHByb2Js ZW1faW5mb19nZXRfZGlyKHBpKSk7CistICAgIHByb2JsZW1faW5mb191bnJlZihwaSk7CisgfQor IAorIHN0YXRpYyB2b2lkIGFjdGlvbl9yZXN0YXJ0KE5vdGlmeU5vdGlmaWNhdGlvbiAqbm90aWZp Y2F0aW9uLCBnY2hhciAqYWN0aW9uLCBncG9pbnRlciB1c2VyX2RhdGEpCitAQCAtNTI4LDcgKzUy Nyw2IEBAIHN0YXRpYyB2b2lkIGFjdGlvbl9yZXN0YXJ0KE5vdGlmeU5vdGlmaWNhdGlvbiAqbm90 aWZpY2F0aW9uLCBnY2hhciAqYWN0aW9uLCBncG9pCisgICAgICAgICAgICAgICAgICAgIGVyci0+ bWVzc2FnZSk7CisgICAgIH0KKyAgICAgZ19vYmplY3RfdW5yZWYgKGFwcCk7CistICAgIHByb2Js ZW1faW5mb191bnJlZihwaSk7CisgfQorIAorIHN0YXRpYyB2b2lkIG9uX25vdGlmeV9jbG9zZShO b3RpZnlOb3RpZmljYXRpb24gKm5vdGlmaWNhdGlvbiwgZ3BvaW50ZXIgdXNlcl9kYXRhKQorLS0g CisyLjQuMQorCgpkaWZmIC0tZ2l0IGEvMDAxMS1jbGktZG8tbm90LWV4aXQtd2l0aC1zZWdmYXVs dC1pZi1kYnVzLWZhaWxzLnBhdGNoIGIvMDAxMS1jbGktZG8tbm90LWV4aXQtd2l0aC1zZWdmYXVs dC1pZi1kYnVzLWZhaWxzLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu LmMxN2UzM2UKLS0tIC9kZXYvbnVsbAorKysgYi8wMDExLWNsaS1kby1ub3QtZXhpdC13aXRoLXNl Z2ZhdWx0LWlmLWRidXMtZmFpbHMucGF0Y2gKQEAgLTAsMCArMSwzMCBAQAorRnJvbSA4Mjk1N2Ez MzkwMTg4NTA5OTIxZWMxNmJkZGMyN2YyYWVlYjAxYjhkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQorRnJvbTogTWF0ZWogSGFicm5hbCA8bWhhYnJuYWxAcmVkaGF0LmNvbT4KK0RhdGU6IE1vbiwg NCBNYXkgMjAxNSAxMDozNToyNSArMDIwMAorU3ViamVjdDogW1BBVENIXSBjbGk6IGRvIG5vdCBl eGl0IHdpdGggc2VnZmF1bHQgaWYgZGJ1cyBmYWlscworCitUaGVyZSB3YXMgYSBzZWdmYXVsdCB3 aGVuIHdlIHJhbiAnYWJydC1jbGkgbGlzdCcgYW5kIGRidXMgZmFpbGVkLgorCitSZWxhdGVkIHRv IHJoYnojMTIxNzkwMQorCitTaWduZWQtb2ZmLWJ5OiBNYXRlaiBIYWJybmFsIDxtaGFicm5hbEBy ZWRoYXQuY29tPgorLS0tCisgc3JjL2NsaS9saXN0LmMgfCAyICsrCisgMSBmaWxlIGNoYW5nZWQs IDIgaW5zZXJ0aW9ucygrKQorCitkaWZmIC0tZ2l0IGEvc3JjL2NsaS9saXN0LmMgYi9zcmMvY2xp L2xpc3QuYworaW5kZXggYzBjODE5ZC4uMzFkMTgzNSAxMDA2NDQKKy0tLSBhL3NyYy9jbGkvbGlz dC5jCisrKysgYi9zcmMvY2xpL2xpc3QuYworQEAgLTE0Miw2ICsxNDIsOCBAQCBpbnQgY21kX2xp c3QoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQorICAgICBwYXJzZV9vcHRzKGFyZ2MsIChj aGFyICoqKWFyZ3YsIHByb2dyYW1fb3B0aW9ucywgcHJvZ3JhbV91c2FnZV9zdHJpbmcpOworIAor ICAgICB2ZWN0b3Jfb2ZfcHJvYmxlbV9kYXRhX3QgKmNpID0gZmV0Y2hfY3Jhc2hfaW5mb3MoKTsK KysgICAgaWYgKGNpID09IE5VTEwpCisrICAgICAgICByZXR1cm4gMTsKKyAKKyAgICAgZ19wdHJf YXJyYXlfc29ydF93aXRoX2RhdGEoY2ksICZjbXBfcHJvYmxlbV9kYXRhLCAoY2hhciAqKSBGSUxF TkFNRV9MQVNUX09DQ1VSUkVOQ0UpOworIAorLS0gCisyLjQuMQorCgpkaWZmIC0tZ2l0IGEvMDAx My1hYnJ0LWF1dG8tcmVwb3J0aW5nLXJlcXVpcmUtcmh0c3VwcG9ydC5jb25mLWZpbGUtb25sLnBh dGNoIGIvMDAxMy1hYnJ0LWF1dG8tcmVwb3J0aW5nLXJlcXVpcmUtcmh0c3VwcG9ydC5jb25mLWZp bGUtb25sLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVmZWM3ZDkK LS0tIC9kZXYvbnVsbAorKysgYi8wMDEzLWFicnQtYXV0by1yZXBvcnRpbmctcmVxdWlyZS1yaHRz dXBwb3J0LmNvbmYtZmlsZS1vbmwucGF0Y2gKQEAgLTAsMCArMSw1ODkgQEAKK0Zyb20gMGI4OTU1 YTg0NWY3YTI4YTA5MGJmZTA3ZDMzYTBhY2YxNjE1MjZlMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKK0Zyb206IE1hdGVqIEhhYnJuYWwgPG1oYWJybmFsQHJlZGhhdC5jb20+CitEYXRlOiBGcmks IDI0IEFwciAyMDE1IDE1OjM3OjE1ICswMjAwCitTdWJqZWN0OiBbUEFUQ0hdIGFicnQtYXV0by1y ZXBvcnRpbmc6IHJlcXVpcmUgcmh0c3VwcG9ydC5jb25mIGZpbGUgb25seSBvbgorIFJIRUwKKwor YWJydC1hdXRvLXJlcG9ydGluZyByZXF1aXJlZCB0aGUgcmh0c3VwcG9ydC5jb25mIG9uIEZlZG9y YSBhbmQgQ2VudE9TIGJ1dCB0aGUgY29uZgorZmlsZSBkbyBub3QgZXhpc3RzIGluIHRob3NlIHN5 c3RlbXMuCisKK1Jlc29sdmVzIGFicnQvYWJydCM5NTcKKworU2lnbmVkLW9mZi1ieTogTWF0ZWog SGFicm5hbCA8bWhhYnJuYWxAcmVkaGF0LmNvbT4KKy0tLQorIGNvbmZpZ3VyZS5hYyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTEgKysrCisgZG9jL01ha2VmaWxlLmFtICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICAxMyArKystCisgZG9jL2FicnQtYXV0by1yZXBvcnRp bmctYXV0aGVudGljYXRlZC50eHQgICB8IDEwNiArKysrKysrKysrKysrKysrKysrKysrKysrKysr CisgZG9jL2FicnQtYXV0by1yZXBvcnRpbmctdW5hdXRoZW50aWNhdGVkLnR4dCB8ICA3MSArKysr KysrKysrKysrKysrKysrCisgZG9jL2FicnQtYXV0by1yZXBvcnRpbmcudHh0ICAgICAgICAgICAg ICAgICB8IDEwNiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc3JjL2RhZW1vbi9hYnJ0 LWF1dG8tcmVwb3J0aW5nLmMgICAgICAgICAgICB8ICA3MSArKysrKysrKysrKysrKy0tLS0tCisg NiBmaWxlcyBjaGFuZ2VkLCAyNTQgaW5zZXJ0aW9ucygrKSwgMTI0IGRlbGV0aW9ucygtKQorIGNy ZWF0ZSBtb2RlIDEwMDY0NCBkb2MvYWJydC1hdXRvLXJlcG9ydGluZy1hdXRoZW50aWNhdGVkLnR4 dAorIGNyZWF0ZSBtb2RlIDEwMDY0NCBkb2MvYWJydC1hdXRvLXJlcG9ydGluZy11bmF1dGhlbnRp Y2F0ZWQudHh0CisgZGVsZXRlIG1vZGUgMTAwNjQ0IGRvYy9hYnJ0LWF1dG8tcmVwb3J0aW5nLnR4 dAorCitkaWZmIC0tZ2l0IGEvY29uZmlndXJlLmFjIGIvY29uZmlndXJlLmFjCitpbmRleCBhY2Qw ZDMyLi42OTYyZDJjIDEwMDY0NAorLS0tIGEvY29uZmlndXJlLmFjCisrKysgYi9jb25maWd1cmUu YWMKK0BAIC0yOTYsNiArMjk2LDE3IEBAIEFDX0FSR19FTkFCTEUoc3VnZ2VzdC1hdXRvcmVwb3J0 aW5nLAorIAorIEFNX0NPTkRJVElPTkFMKFNVR0dFU1RfQVVUT1JFUE9SVElORywgdGVzdCAiJGVu YWJsZV9zdWdnZXN0X2F1dG9yZXBvcnRpbmciID0gInllcyIpCisgCisrIyBBdXRoZW50aWNhdGVk IGF1dG9yZXBvcnRpbmcKKysKKytBQ19BUkdfRU5BQkxFKGF1dGhlbnRpY2F0ZWQtYXV0b3JlcG9y dGluZywKKysgICAgQVNfSEVMUF9TVFJJTkcoWy0tZW5hYmxlLWF1dGhlbnRpY2F0ZWQtYXV0b3Jl cG9ydGluZ10sCisrICAgIFtlbmFibGUgYXV0aGVudGljYXRlZCBhdXRvcmVwb3J0aW5nXSksCisr ICAgIFtlbmFibGVfYXV0aGVudGljYXRlZF9hdXRvcmVwb3J0aW5nPSRlbmFibGV2YWxdLAorKyAg ICBbZW5hYmxlX2F1dGhlbnRpY2F0ZWRfYXV0b3JlcG9ydGluZz1ub10KKyspCisrCisrQU1fQ09O RElUSU9OQUwoQVVUSEVOVElDQVRFRF9BVVRPUkVQT1JUSU5HLCB0ZXN0ICIkZW5hYmxlX2F1dGhl bnRpY2F0ZWRfYXV0b3JlcG9ydGluZyIgPSAieWVzIikKKysKKyAjIE1ha2Ugc2F0eXIgdXNlIEdE QiBvciBlbGZ1dGlscy9saWJ1bndpbmQgZm9yIHVud2luZGluZz8KKyAKKyBBQ19BUkdfRU5BQkxF KFtuYXRpdmUtdW53aW5kZXJdLAorZGlmZiAtLWdpdCBhL2RvYy9NYWtlZmlsZS5hbSBiL2RvYy9N YWtlZmlsZS5hbQoraW5kZXggNmVmZDZkNi4uM2U3NDk5YyAxMDA2NDQKKy0tLSBhL2RvYy9NYWtl ZmlsZS5hbQorKysrIGIvZG9jL01ha2VmaWxlLmFtCitAQCAtNzgsNiArNzgsMTcgQEAgbWFuMV9N QU5TID0gJHtNQU4xX1RYVDolLnR4dD0lLjF9CisgbWFuNV9NQU5TID0gJHtNQU41X1RYVDolLnR4 dD0lLjV9ICR7TUFONV9QUkVGT1JNQVRURUR9CisgbWFuOF9NQU5TID0gJHtNQU44X1RYVDolLnR4 dD0lLjh9CisgCisrTUFOX1NPVVJDRSA9CisrTUFOX1NPVVJDRSA9IGFicnQtYXV0by1yZXBvcnRp bmctYXV0aGVudGljYXRlZC50eHQKKytNQU5fU09VUkNFID0gYWJydC1hdXRvLXJlcG9ydGluZy11 bmF1dGhlbnRpY2F0ZWQudHh0CisrCisraWYgQVVUSEVOVElDQVRFRF9BVVRPUkVQT1JUSU5HCisr YWJydC1hdXRvLXJlcG9ydGluZy50eHQ6IGFicnQtYXV0by1yZXBvcnRpbmctYXV0aGVudGljYXRl ZC50eHQKKytlbHNlCisrYWJydC1hdXRvLXJlcG9ydGluZy50eHQ6IGFicnQtYXV0by1yZXBvcnRp bmctdW5hdXRoZW50aWNhdGVkLnR4dAorK2VuZGlmCisrCWNwICQ8ICRACisrCisgJS4xICUuNSAl Ljg6ICUueG1sCisgCSQoWE1MVE9fU0lMRU5UKSB4bWx0byBtYW4gJDwgMj4mMSB8IHNlZCAnL05v dGUvZCcKKyAKK0BAIC04Niw2ICs5Nyw2IEBAIG1hbjhfTUFOUyA9ICR7TUFOOF9UWFQ6JS50eHQ9 JS44fQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tY29uZi1maWxlIC4uL2FzY2lpZG9j LmNvbmYgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1hYWJydF92ZXJzaW9uPSQoUEFD S0FHRV9WRVJTSU9OKSAtbyAkQCAkPAorIAorLUVYVFJBX0RJU1QgPSAkKE1BTjFfVFhUKSAkKE1B TjVfVFhUKSAkKE1BTjhfVFhUKSAkKE1BTjVfUFJFRk9STUFUVEVEKQorK0VYVFJBX0RJU1QgPSAk KE1BTjFfVFhUKSAkKE1BTjVfVFhUKSAkKE1BTjhfVFhUKSAkKE1BTjVfUFJFRk9STUFUVEVEKSAk KE1BTl9TT1VSQ0UpCisgCisgQ0xFQU5GSUxFUyA9ICR7TUFOMV9UWFQ6JS50eHQ9JS4xfSAke01B TjVfVFhUOiUudHh0PSUuNX0gJHtNQU44X1RYVDolLnR4dD0lLjh9CitkaWZmIC0tZ2l0IGEvZG9j L2FicnQtYXV0by1yZXBvcnRpbmctYXV0aGVudGljYXRlZC50eHQgYi9kb2MvYWJydC1hdXRvLXJl cG9ydGluZy1hdXRoZW50aWNhdGVkLnR4dAorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAw MDAwMDAuLjJhMjc5NDUKKy0tLSAvZGV2L251bGwKKysrKyBiL2RvYy9hYnJ0LWF1dG8tcmVwb3J0 aW5nLWF1dGhlbnRpY2F0ZWQudHh0CitAQCAtMCwwICsxLDEwNiBAQAorK2FicnQtYXV0by1yZXBv cnRpbmcoMSkKKys9PT09PT09PT09PT09PT09PT09PT09CisrCisrTkFNRQorKy0tLS0KKythYnJ0 LWF1dG8tcmVwb3J0aW5nIC0gR2V0IG9yIG1vZGlmeSB0aGUgYXV0byByZXBvcnRpbmcgb3B0aW9u IHZhbHVlcworKworK1NZTk9QU0lTCisrLS0tLS0tLS0KKysnYWJydC1hdXRvLXJlcG9ydGluZycg Wy12XSBbIGVuYWJsZWQgfCB5ZXMgfCAxIHwgb24gfCBkaXNhYmxlZCB8IG5vIHwgMCB8IG9mZiBd CisrICAgICAgICAgICAgICAgICAgICAgIFsgWy0tYW5vbnltb3VzXSB8CisrICAgICAgICAgICAg ICAgICAgICAgICAgWy0tdXNlcm5hbWUgVVNFUk5BTUUgWy0tcGFzc3dvcmQgUEFTU1dPUkRdIF0g fAorKyAgICAgICAgICAgICAgICAgICAgICAgIFstLWNlcnRpZmljYXRlIFNPVVJDRV0gXQorKwor K0RFU0NSSVBUSU9OCisrLS0tLS0tLS0tLS0KKytSZWFkcyB0aGUgY29uZmlndXJhdGlvbiBmcm9t IGFicnQuY29uZiBhbmQgc2F2ZXMgdGhlIGNoYW5nZXMgdG8gdGhlIHNhbWUgZmlsZS4KKysKKytU aGUgY2hhbmdlcyB3aWxsIHRha2UgZWZmZWN0IGltbWVkaWF0ZWx5IHdpdGhvdXQgbmVjZXNzaXR5 IHRvIHJlc3RhcnQgYW55IEFCUlQKKytwcm9jZXNzIGFuZCB3aWxsIGJlIHBlcnNpc3RlbnQuCisr CisrJ2Rpc2FibGVkJzo6CisrICAgVXNlciBoYXZlIHRvIHJlcG9ydCB0aGUgZGV0ZWN0IHByb2Js ZW1zIG1hbnVhbGx5CisrCisrJ2VuYWJsZWQnOjoKKysgICBBQlJUIHVwbG9hZHMgYW4gdVJlcG9y dCB3aGljaCB3YXMgZ2VuZXJhdGVkIGZvciBhIGRldGVjdGVkIHByb2JsZW0KKysgICBpbW1lZGlh dGVseSBhZnRlciB0aGUgZGV0ZWN0aW9uIHBoYXNlLgorKworK1JlYWRzIGFuZCBzYXZlcyB0aGUg YXV0aGVudGljYXRpb24gY29uZmlndXJhdGlvbiBvcHRpb25zIGluCisrL2V0Yy9saWJyZXBvcnQv cGx1Z2lucy91cmVwb3J0LmNvbmYgYW5kIC9ldGMvbGlicmVwb3J0L3BsdWdpbnMvcmh0c3VwcG9y dC5jb25mCisrCisrdVJlcG9ydCBkZXNjcmlwdGlvbgorK35+fn5+fn5+fn5+fn5+fn5+fn4KKytB QlJUIHN1cHBvcnRzIHVSZXBvcnRzIGZvciBmb3VyIHR5cGVzIG9mIGNyYXNoZXM6IGNyYXNoZXMg b2YgQy9DKysgcHJvZ3JhbXMKKyt0aGF0IHJlc3VsdCBpbiBhIGNvcmUgZHVtcCwgdW5jYXVnaHQg UHl0aG9uIGV4Y2VwdGlvbnMsIHVuY2F1Z2h0IEphdmEKKytleGNlcHRpb25zIGFuZCBrZXJuZWwg b29wc2VzLgorKworK0VhY2ggdVJlcG9ydCBnZW5lcmFsbHkgY29udGFpbnMgYSBzdGFjayB0cmFj ZSwgb3IgbXVsdGlwbGUgc3RhY2sgdHJhY2VzIGluIHRoZQorK2Nhc2Ugb2YgbXVsdGktdGhyZWFk ZWQgQy9DKysgYW5kIEphdmEgcHJvZ3JhbXMuIFRoZSBzdGFjayB0cmFjZSBvbmx5IGRlc2NyaWJl cworK3RoZSBjYWxsIHN0YWNrIG9mIHRoZSBwcm9ncmFtIGF0IHRoZSB0aW1lIG9mIHRoZSBjcmFz aCBhbmQgZG9lcyBub3QgY29udGFpbgorK2NvbnRlbnRzIG9mIGFueSB2YXJpYWJsZXMuCisrCisr RXZlcnkgdVJlcG9ydCBhbHNvIGNvbnRhaW5zIGlkZW50aWZpY2F0aW9uIG9mIHRoZSBvcGVyYXRp bmcgc3lzdGVtLCB2ZXJzaW9ucyBvZgorK3RoZSBSUE0gcGFja2FnZXMgaW52b2x2ZWQgaW4gdGhl IGNyYXNoLCBhbmQgd2hldGhlciB0aGUgcHJvZ3JhbSByYW4gdW5kZXIgYQorK3Jvb3QgdXNlci4K KysKKytUaGVyZSBhcmUgYWxzbyBpdGVtcyBzcGVjaWZpYyB0byBlYWNoIGNyYXNoIHR5cGU6Cisr CisrQy9DKysgY3Jhc2hlczo6CisrICAgIHRoZXNlIGFyZSBwYXRoIHRvIHRoZSBleGVjdXRhYmxl IGFuZCBzaWduYWwgZGVsaXZlcmVkIHRvIHRoZSBwcm9ncmFtLAorKworK1B5dGhvbiBleGNlcHRp b25zOjoKKysgICAgdGhlcmUgaXMgdGhlIHR5cGUgb2YgdGhlIGV4Y2VwdGlvbiAod2l0aG91dCB0 aGUgZXJyb3IgbWVzc2FnZSwgd2hpY2ggbWF5CisrICAgIGNvbnRhaW4gc2Vuc2l0aXZlIGRhdGEp LAorKworK2ZvciBrZXJuZWwgb29wc2VzOjoKKysgICAgdGhlc2UgYXJlIGxpc3Qgb2YgbG9hZGVk IGtlcm5lbCBtb2R1bGVzLCBsaXN0IG9mIHRhaW50IGZsYWdzLCBhbmQgZnVsbCB0ZXh0CisrICAg IG9mIHRoZSBrZXJuZWwgb29wcy4KKysKKytUaGUgYXV0aGVudGljYXRlZCB1UmVwb3J0cyBhbHNv IGNvbnRhaW5zICpob3N0bmFtZSogYW5kICptYWNoaW5laWQqIHRvIGVuYWJsZSBhCisrc2VydmVy IHNpZGUgZmlsdGVyaW5nIGF0IGh0dHBzOi8vYWNjZXNzLnJlZGhhdC5jb20vLgorKworK1RoZSBh dXRoZW50aWNhdGVkIHVSZXBvcnRzIGhhdmUgdGhlIGJlbmVmaXQgb2YgcmljaCBzZXJ2ZXIgcmVw bGllcyB3aGljaCBtYXkKKytpbmNsdWRlIGEgc29sdXRpb24gZm9yIHRoZSBzdWJtaXR0ZWQgY3Jh c2guIFRoZSBhdXRoZW50aWNhdGlvbiBpcyBkb25lIHVzaW5nCisrZWl0aGVyIFJlZCBIYXQgU3Vi c2NyaXB0aW9uIENlcnRpZmljYXRlcyBvciBSZWQgSGF0IEN1c3RvbWVyIFBvcnRhbAorK2NyZWRl bnRpYWxzLgorKworKydXYXJuaW5nJzoKKytUaGUgZnVsbCB0ZXh0IG9mIGEga2VybmVsIG9vcHMg bWlnaHQgY29udGFpbiBpbmZvcm1hdGlvbiBsaWtlIHRoZQorK2lkZW50aWZpY2F0aW9uIG9mIHRo ZSBob3N0IGhhcmR3YXJlIHR5cGUuIFlvdSBzaG91bGQgZGlzYWJsZSB0aGUgYXV0b3JlcG9ydGlu ZworK2ZlYXR1cmUgaWYgeW91IGRvIG5vdCB3YW50IHRvIHNoYXJlIHRoaXMgaW5mb3JtYXRpb24g d2l0aCBSZWQgSGF0LgorKworKworK09QVElPTlMKKystLS0tLS0tCisrLXYsIC0tdmVyYm9zZTo6 CisrICAgQmUgbW9yZSB2ZXJib3NlLiBDYW4gYmUgZ2l2ZW4gbXVsdGlwbGUgdGltZXMuCisrCisr LWEsIC0tYW5vbnltb3VzOjoKKysgICBUdXJucyB0aGUgYXV0aGVudGljYXRpb24gb2ZmIGJ5IGNs ZWFyaW5nIGJvdGggJ1NTTENsaWVudEF1dGgnIGFuZCAnSFRUUEF1dGgnCisrICAgY29uZmlndXJh dGlvbiBvcHRpb25zIGluIC9ldGMvbGlicmVwb3J0L3BsdWdpbnMvdXJlcG9ydC5jb25mCisrCisr LXUsIC0tdXNlcm5hbWUgVVNFUk5BTUU6OgorKyAgIFR1cm5zIEhUVFAgQXV0aGVudGljYXRpb24g b24gYnkgc2V0dGluZyAnSFRUUEF1dGgnIGNvbmZpZ3VyYXRpb24gb3B0aW9uIHRvCisrICAgKnJo dHMtY3JlZGVudGlhbHMqIGluIC9ldGMvbGlicmVwb3J0L3BsdWdpbnMvdXJlcG9ydC5jb25mIGFu ZCBzdG9yaW5nCisrICAgVVNFUk5BTUUgYW5kIFBBU1NXT1JEIGluIC9ldGMvbGlicmVwb3J0L3Bs dWdpbnMvcmh0c3VwcG9ydC5jb25mCisrICAgQWxzbyB0dXJucyB0aGUgU1NMIENsaWVudCBBdXRo ZW50aWNhdGlvbiBvZmYsIGJlY2F1c2UgdGhlc2UgbWV0aG9kcyBjYW5ub3QKKysgICBiZSB1c2Vk IHRvZ2V0aGVyLgorKworKy1wLCAtLXBhc3N3b3JkIFBBU1NXT1JEOjoKKysgICBQYXNzd29yZCBm b3IgSFRUUCBBdXRoZW50aWNhdGlvbi4gSWYgbm90IHByb3ZpZGVkLCBhIHByb21wdCBhc2tpbmcg Zm9yIGl0CisrICAgd2lsbCBiZSBpc3N1ZWQuCisrCisrLWMsIC0tY2VydGlmaWNhdGUgU09VUkNF OjoKKysgICBUdXJucyBTU0wgQ2xpZW50IEF1dGhlbnRpY2F0aW9uIG9uIGJ5IHNldHRpbmcgJ1NT TENsaWVudEF1dGgnIGNvbmZpZ3VyYXRpb24KKysgICBvcHRpb24gdG8gU09VUkNFIGluIC9ldGMv bGlicmVwb3J0L3BsdWdpbnMvdXJlcG9ydC5jb25mLgorKyAgIEFsc28gdHVybnMgdGhlIEhUVFAg QXV0aGVudGljYXRpb24gb2ZmLCBiZWNhdXNlIHRoZXNlIG1ldGhvZHMgY2Fubm90CisrICAgYmUg dXNlZCB0b2dldGhlci4KKysKKytTRUUgQUxTTworKy0tLS0tLS0tCisrYWJydC5jb25mKDUpLCB1 cmVwb3J0LmNvbmYoNSksIHJodHN1cHBvcnQuY29uZig1KQorKworK0FVVEhPUlMKKystLS0tLS0t CisrKiBBQlJUIHRlYW0KK2RpZmYgLS1naXQgYS9kb2MvYWJydC1hdXRvLXJlcG9ydGluZy11bmF1 dGhlbnRpY2F0ZWQudHh0IGIvZG9jL2FicnQtYXV0by1yZXBvcnRpbmctdW5hdXRoZW50aWNhdGVk LnR4dAorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAuLjMyMGM4MDMKKy0tLSAv ZGV2L251bGwKKysrKyBiL2RvYy9hYnJ0LWF1dG8tcmVwb3J0aW5nLXVuYXV0aGVudGljYXRlZC50 eHQKK0BAIC0wLDAgKzEsNzEgQEAKKythYnJ0LWF1dG8tcmVwb3J0aW5nKDEpCisrPT09PT09PT09 PT09PT09PT09PT09PQorKworK05BTUUKKystLS0tCisrYWJydC1hdXRvLXJlcG9ydGluZyAtIEdl dCBvciBtb2RpZnkgdGhlIGF1dG8gcmVwb3J0aW5nIG9wdGlvbiB2YWx1ZXMKKysKKytTWU5PUFNJ UworKy0tLS0tLS0tCisrJ2FicnQtYXV0by1yZXBvcnRpbmcnIFstdl0gWyBlbmFibGVkIHwgeWVz IHwgMSB8IG9uIHwgZGlzYWJsZWQgfCBubyB8IDAgfCBvZmYgXQorKworK0RFU0NSSVBUSU9OCisr LS0tLS0tLS0tLS0KKytSZWFkcyB0aGUgY29uZmlndXJhdGlvbiBmcm9tIGFicnQuY29uZiBhbmQg c2F2ZXMgdGhlIGNoYW5nZXMgdG8gdGhlIHNhbWUgZmlsZS4KKysKKytUaGUgY2hhbmdlcyB3aWxs IHRha2UgZWZmZWN0IGltbWVkaWF0ZWx5IHdpdGhvdXQgbmVjZXNzaXR5IHRvIHJlc3RhcnQgYW55 IEFCUlQKKytwcm9jZXNzIGFuZCB3aWxsIGJlIHBlcnNpc3RlbnQuCisrCisrJ2Rpc2FibGVkJzo6 CisrICAgVXNlciBoYXZlIHRvIHJlcG9ydCB0aGUgZGV0ZWN0IHByb2JsZW1zIG1hbnVhbGx5Cisr CisrJ2VuYWJsZWQnOjoKKysgICBBQlJUIHVwbG9hZHMgYW4gdVJlcG9ydCB3aGljaCB3YXMgZ2Vu ZXJhdGVkIGZvciBhIGRldGVjdGVkIHByb2JsZW0KKysgICBpbW1lZGlhdGVseSBhZnRlciB0aGUg ZGV0ZWN0aW9uIHBoYXNlLgorKworK3VSZXBvcnQgZGVzY3JpcHRpb24KKyt+fn5+fn5+fn5+fn5+ fn5+fn5+CisrQUJSVCBzdXBwb3J0cyB1UmVwb3J0cyBmb3IgZm91ciB0eXBlcyBvZiBjcmFzaGVz OiBjcmFzaGVzIG9mIEMvQysrIHByb2dyYW1zCisrdGhhdCByZXN1bHQgaW4gYSBjb3JlIGR1bXAs IHVuY2F1Z2h0IFB5dGhvbiBleGNlcHRpb25zLCB1bmNhdWdodCBKYXZhCisrZXhjZXB0aW9ucyBh bmQga2VybmVsIG9vcHNlcy4KKysKKytFYWNoIHVSZXBvcnQgZ2VuZXJhbGx5IGNvbnRhaW5zIGEg c3RhY2sgdHJhY2UsIG9yIG11bHRpcGxlIHN0YWNrIHRyYWNlcyBpbiB0aGUKKytjYXNlIG9mIG11 bHRpLXRocmVhZGVkIEMvQysrIGFuZCBKYXZhIHByb2dyYW1zLiBUaGUgc3RhY2sgdHJhY2Ugb25s eSBkZXNjcmliZXMKKyt0aGUgY2FsbCBzdGFjayBvZiB0aGUgcHJvZ3JhbSBhdCB0aGUgdGltZSBv ZiB0aGUgY3Jhc2ggYW5kIGRvZXMgbm90IGNvbnRhaW4KKytjb250ZW50cyBvZiBhbnkgdmFyaWFi bGVzLgorKworK0V2ZXJ5IHVSZXBvcnQgYWxzbyBjb250YWlucyBpZGVudGlmaWNhdGlvbiBvZiB0 aGUgb3BlcmF0aW5nIHN5c3RlbSwgdmVyc2lvbnMgb2YKKyt0aGUgUlBNIHBhY2thZ2VzIGludm9s dmVkIGluIHRoZSBjcmFzaCwgYW5kIHdoZXRoZXIgdGhlIHByb2dyYW0gcmFuIHVuZGVyIGEKKyty b290IHVzZXIuCisrCisrVGhlcmUgYXJlIGFsc28gaXRlbXMgc3BlY2lmaWMgdG8gZWFjaCBjcmFz aCB0eXBlOgorKworK0MvQysrIGNyYXNoZXM6OgorKyAgICB0aGVzZSBhcmUgcGF0aCB0byB0aGUg ZXhlY3V0YWJsZSBhbmQgc2lnbmFsIGRlbGl2ZXJlZCB0byB0aGUgcHJvZ3JhbSwKKysKKytQeXRo b24gZXhjZXB0aW9uczo6CisrICAgIHRoZXJlIGlzIHRoZSB0eXBlIG9mIHRoZSBleGNlcHRpb24g KHdpdGhvdXQgdGhlIGVycm9yIG1lc3NhZ2UsIHdoaWNoIG1heQorKyAgICBjb250YWluIHNlbnNp dGl2ZSBkYXRhKSwKKysKKytmb3Iga2VybmVsIG9vcHNlczo6CisrICAgIHRoZXNlIGFyZSBsaXN0 IG9mIGxvYWRlZCBrZXJuZWwgbW9kdWxlcywgbGlzdCBvZiB0YWludCBmbGFncywgYW5kIGZ1bGwg dGV4dAorKyAgICBvZiB0aGUga2VybmVsIG9vcHMuCisrCisrJ1dhcm5pbmcnOgorK1RoZSBmdWxs IHRleHQgb2YgYSBrZXJuZWwgb29wcyBtaWdodCBjb250YWluIGluZm9ybWF0aW9uIGxpa2UgdGhl CisraWRlbnRpZmljYXRpb24gb2YgdGhlIGhvc3QgaGFyZHdhcmUgdHlwZS4gWW91IHNob3VsZCBk aXNhYmxlIHRoZSBhdXRvcmVwb3J0aW5nCisrZmVhdHVyZSBpZiB5b3UgZG8gbm90IHdhbnQgdG8g c2hhcmUgdGhpcyBpbmZvcm1hdGlvbiB3aXRoIFJlZCBIYXQuCisrCisrCisrT1BUSU9OUworKy0t LS0tLS0KKystdiwgLS12ZXJib3NlOjoKKysgICBCZSBtb3JlIHZlcmJvc2UuIENhbiBiZSBnaXZl biBtdWx0aXBsZSB0aW1lcy4KKysKKytTRUUgQUxTTworKy0tLS0tLS0tCisrYWJydC5jb25mKDUp CisrCisrQVVUSE9SUworKy0tLS0tLS0KKysqIEFCUlQgdGVhbQorZGlmZiAtLWdpdCBhL2RvYy9h YnJ0LWF1dG8tcmVwb3J0aW5nLnR4dCBiL2RvYy9hYnJ0LWF1dG8tcmVwb3J0aW5nLnR4dAorZGVs ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAyYTI3OTQ1Li4wMDAwMDAwCistLS0gYS9kb2Mv YWJydC1hdXRvLXJlcG9ydGluZy50eHQKKysrKyAvZGV2L251bGwKK0BAIC0xLDEwNiArMCwwIEBA CistYWJydC1hdXRvLXJlcG9ydGluZygxKQorLT09PT09PT09PT09PT09PT09PT09PT0KKy0KKy1O QU1FCistLS0tLQorLWFicnQtYXV0by1yZXBvcnRpbmcgLSBHZXQgb3IgbW9kaWZ5IHRoZSBhdXRv IHJlcG9ydGluZyBvcHRpb24gdmFsdWVzCistCistU1lOT1BTSVMKKy0tLS0tLS0tLQorLSdhYnJ0 LWF1dG8tcmVwb3J0aW5nJyBbLXZdIFsgZW5hYmxlZCB8IHllcyB8IDEgfCBvbiB8IGRpc2FibGVk IHwgbm8gfCAwIHwgb2ZmIF0KKy0gICAgICAgICAgICAgICAgICAgICAgWyBbLS1hbm9ueW1vdXNd IHwKKy0gICAgICAgICAgICAgICAgICAgICAgICBbLS11c2VybmFtZSBVU0VSTkFNRSBbLS1wYXNz d29yZCBQQVNTV09SRF0gXSB8CistICAgICAgICAgICAgICAgICAgICAgICAgWy0tY2VydGlmaWNh dGUgU09VUkNFXSBdCistCistREVTQ1JJUFRJT04KKy0tLS0tLS0tLS0tLQorLVJlYWRzIHRoZSBj b25maWd1cmF0aW9uIGZyb20gYWJydC5jb25mIGFuZCBzYXZlcyB0aGUgY2hhbmdlcyB0byB0aGUg c2FtZSBmaWxlLgorLQorLVRoZSBjaGFuZ2VzIHdpbGwgdGFrZSBlZmZlY3QgaW1tZWRpYXRlbHkg d2l0aG91dCBuZWNlc3NpdHkgdG8gcmVzdGFydCBhbnkgQUJSVAorLXByb2Nlc3MgYW5kIHdpbGwg YmUgcGVyc2lzdGVudC4KKy0KKy0nZGlzYWJsZWQnOjoKKy0gICBVc2VyIGhhdmUgdG8gcmVwb3J0 IHRoZSBkZXRlY3QgcHJvYmxlbXMgbWFudWFsbHkKKy0KKy0nZW5hYmxlZCc6OgorLSAgIEFCUlQg dXBsb2FkcyBhbiB1UmVwb3J0IHdoaWNoIHdhcyBnZW5lcmF0ZWQgZm9yIGEgZGV0ZWN0ZWQgcHJv YmxlbQorLSAgIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSBkZXRlY3Rpb24gcGhhc2UuCistCistUmVh ZHMgYW5kIHNhdmVzIHRoZSBhdXRoZW50aWNhdGlvbiBjb25maWd1cmF0aW9uIG9wdGlvbnMgaW4K Ky0vZXRjL2xpYnJlcG9ydC9wbHVnaW5zL3VyZXBvcnQuY29uZiBhbmQgL2V0Yy9saWJyZXBvcnQv cGx1Z2lucy9yaHRzdXBwb3J0LmNvbmYKKy0KKy11UmVwb3J0IGRlc2NyaXB0aW9uCistfn5+fn5+ fn5+fn5+fn5+fn5+fgorLUFCUlQgc3VwcG9ydHMgdVJlcG9ydHMgZm9yIGZvdXIgdHlwZXMgb2Yg Y3Jhc2hlczogY3Jhc2hlcyBvZiBDL0MrKyBwcm9ncmFtcworLXRoYXQgcmVzdWx0IGluIGEgY29y ZSBkdW1wLCB1bmNhdWdodCBQeXRob24gZXhjZXB0aW9ucywgdW5jYXVnaHQgSmF2YQorLWV4Y2Vw dGlvbnMgYW5kIGtlcm5lbCBvb3BzZXMuCistCistRWFjaCB1UmVwb3J0IGdlbmVyYWxseSBjb250 YWlucyBhIHN0YWNrIHRyYWNlLCBvciBtdWx0aXBsZSBzdGFjayB0cmFjZXMgaW4gdGhlCistY2Fz ZSBvZiBtdWx0aS10aHJlYWRlZCBDL0MrKyBhbmQgSmF2YSBwcm9ncmFtcy4gVGhlIHN0YWNrIHRy YWNlIG9ubHkgZGVzY3JpYmVzCistdGhlIGNhbGwgc3RhY2sgb2YgdGhlIHByb2dyYW0gYXQgdGhl IHRpbWUgb2YgdGhlIGNyYXNoIGFuZCBkb2VzIG5vdCBjb250YWluCistY29udGVudHMgb2YgYW55 IHZhcmlhYmxlcy4KKy0KKy1FdmVyeSB1UmVwb3J0IGFsc28gY29udGFpbnMgaWRlbnRpZmljYXRp b24gb2YgdGhlIG9wZXJhdGluZyBzeXN0ZW0sIHZlcnNpb25zIG9mCistdGhlIFJQTSBwYWNrYWdl cyBpbnZvbHZlZCBpbiB0aGUgY3Jhc2gsIGFuZCB3aGV0aGVyIHRoZSBwcm9ncmFtIHJhbiB1bmRl ciBhCistcm9vdCB1c2VyLgorLQorLVRoZXJlIGFyZSBhbHNvIGl0ZW1zIHNwZWNpZmljIHRvIGVh Y2ggY3Jhc2ggdHlwZToKKy0KKy1DL0MrKyBjcmFzaGVzOjoKKy0gICAgdGhlc2UgYXJlIHBhdGgg dG8gdGhlIGV4ZWN1dGFibGUgYW5kIHNpZ25hbCBkZWxpdmVyZWQgdG8gdGhlIHByb2dyYW0sCist CistUHl0aG9uIGV4Y2VwdGlvbnM6OgorLSAgICB0aGVyZSBpcyB0aGUgdHlwZSBvZiB0aGUgZXhj ZXB0aW9uICh3aXRob3V0IHRoZSBlcnJvciBtZXNzYWdlLCB3aGljaCBtYXkKKy0gICAgY29udGFp biBzZW5zaXRpdmUgZGF0YSksCistCistZm9yIGtlcm5lbCBvb3BzZXM6OgorLSAgICB0aGVzZSBh cmUgbGlzdCBvZiBsb2FkZWQga2VybmVsIG1vZHVsZXMsIGxpc3Qgb2YgdGFpbnQgZmxhZ3MsIGFu ZCBmdWxsIHRleHQKKy0gICAgb2YgdGhlIGtlcm5lbCBvb3BzLgorLQorLVRoZSBhdXRoZW50aWNh dGVkIHVSZXBvcnRzIGFsc28gY29udGFpbnMgKmhvc3RuYW1lKiBhbmQgKm1hY2hpbmVpZCogdG8g ZW5hYmxlIGEKKy1zZXJ2ZXIgc2lkZSBmaWx0ZXJpbmcgYXQgaHR0cHM6Ly9hY2Nlc3MucmVkaGF0 LmNvbS8uCistCistVGhlIGF1dGhlbnRpY2F0ZWQgdVJlcG9ydHMgaGF2ZSB0aGUgYmVuZWZpdCBv ZiByaWNoIHNlcnZlciByZXBsaWVzIHdoaWNoIG1heQorLWluY2x1ZGUgYSBzb2x1dGlvbiBmb3Ig dGhlIHN1Ym1pdHRlZCBjcmFzaC4gVGhlIGF1dGhlbnRpY2F0aW9uIGlzIGRvbmUgdXNpbmcKKy1l aXRoZXIgUmVkIEhhdCBTdWJzY3JpcHRpb24gQ2VydGlmaWNhdGVzIG9yIFJlZCBIYXQgQ3VzdG9t ZXIgUG9ydGFsCistY3JlZGVudGlhbHMuCistCistJ1dhcm5pbmcnOgorLVRoZSBmdWxsIHRleHQg b2YgYSBrZXJuZWwgb29wcyBtaWdodCBjb250YWluIGluZm9ybWF0aW9uIGxpa2UgdGhlCistaWRl bnRpZmljYXRpb24gb2YgdGhlIGhvc3QgaGFyZHdhcmUgdHlwZS4gWW91IHNob3VsZCBkaXNhYmxl IHRoZSBhdXRvcmVwb3J0aW5nCistZmVhdHVyZSBpZiB5b3UgZG8gbm90IHdhbnQgdG8gc2hhcmUg dGhpcyBpbmZvcm1hdGlvbiB3aXRoIFJlZCBIYXQuCistCistCistT1BUSU9OUworLS0tLS0tLS0K Ky0tdiwgLS12ZXJib3NlOjoKKy0gICBCZSBtb3JlIHZlcmJvc2UuIENhbiBiZSBnaXZlbiBtdWx0 aXBsZSB0aW1lcy4KKy0KKy0tYSwgLS1hbm9ueW1vdXM6OgorLSAgIFR1cm5zIHRoZSBhdXRoZW50 aWNhdGlvbiBvZmYgYnkgY2xlYXJpbmcgYm90aCAnU1NMQ2xpZW50QXV0aCcgYW5kICdIVFRQQXV0 aCcKKy0gICBjb25maWd1cmF0aW9uIG9wdGlvbnMgaW4gL2V0Yy9saWJyZXBvcnQvcGx1Z2lucy91 cmVwb3J0LmNvbmYKKy0KKy0tdSwgLS11c2VybmFtZSBVU0VSTkFNRTo6CistICAgVHVybnMgSFRU UCBBdXRoZW50aWNhdGlvbiBvbiBieSBzZXR0aW5nICdIVFRQQXV0aCcgY29uZmlndXJhdGlvbiBv cHRpb24gdG8KKy0gICAqcmh0cy1jcmVkZW50aWFscyogaW4gL2V0Yy9saWJyZXBvcnQvcGx1Z2lu cy91cmVwb3J0LmNvbmYgYW5kIHN0b3JpbmcKKy0gICBVU0VSTkFNRSBhbmQgUEFTU1dPUkQgaW4g L2V0Yy9saWJyZXBvcnQvcGx1Z2lucy9yaHRzdXBwb3J0LmNvbmYKKy0gICBBbHNvIHR1cm5zIHRo ZSBTU0wgQ2xpZW50IEF1dGhlbnRpY2F0aW9uIG9mZiwgYmVjYXVzZSB0aGVzZSBtZXRob2RzIGNh bm5vdAorLSAgIGJlIHVzZWQgdG9nZXRoZXIuCistCistLXAsIC0tcGFzc3dvcmQgUEFTU1dPUkQ6 OgorLSAgIFBhc3N3b3JkIGZvciBIVFRQIEF1dGhlbnRpY2F0aW9uLiBJZiBub3QgcHJvdmlkZWQs IGEgcHJvbXB0IGFza2luZyBmb3IgaXQKKy0gICB3aWxsIGJlIGlzc3VlZC4KKy0KKy0tYywgLS1j ZXJ0aWZpY2F0ZSBTT1VSQ0U6OgorLSAgIFR1cm5zIFNTTCBDbGllbnQgQXV0aGVudGljYXRpb24g b24gYnkgc2V0dGluZyAnU1NMQ2xpZW50QXV0aCcgY29uZmlndXJhdGlvbgorLSAgIG9wdGlvbiB0 byBTT1VSQ0UgaW4gL2V0Yy9saWJyZXBvcnQvcGx1Z2lucy91cmVwb3J0LmNvbmYuCistICAgQWxz byB0dXJucyB0aGUgSFRUUCBBdXRoZW50aWNhdGlvbiBvZmYsIGJlY2F1c2UgdGhlc2UgbWV0aG9k cyBjYW5ub3QKKy0gICBiZSB1c2VkIHRvZ2V0aGVyLgorLQorLVNFRSBBTFNPCistLS0tLS0tLS0K Ky1hYnJ0LmNvbmYoNSksIHVyZXBvcnQuY29uZig1KSwgcmh0c3VwcG9ydC5jb25mKDUpCistCist QVVUSE9SUworLS0tLS0tLS0KKy0qIEFCUlQgdGVhbQorZGlmZiAtLWdpdCBhL3NyYy9kYWVtb24v YWJydC1hdXRvLXJlcG9ydGluZy5jIGIvc3JjL2RhZW1vbi9hYnJ0LWF1dG8tcmVwb3J0aW5nLmMK K2luZGV4IDBmZmZlYjYuLmI2MDhjOWIgMTAwNjQ0CistLS0gYS9zcmMvZGFlbW9uL2FicnQtYXV0 by1yZXBvcnRpbmcuYworKysrIGIvc3JjL2RhZW1vbi9hYnJ0LWF1dG8tcmVwb3J0aW5nLmMKK0BA IC02NCw2ICs2NCw3IEBAIHNldF9hYnJ0X3JlcG9ydGluZyhtYXBfc3RyaW5nX3QgKmNvbmYsIGNv bnN0IGNoYXIgKm9wdF92YWx1ZSkKKyAgICAgcmV0dXJuIDE7CisgfQorIAorKyNpZiBBVVRIRU5U SUNBVEVEX0FVVE9SRVBPUlRJTkcgIT0gMAorIHN0YXRpYyBpbnQKKyBzZXRfdXJlcG9ydF9odHRw X2F1dGgobWFwX3N0cmluZ190ICpjb25mLCBjb25zdCBjaGFyICpvcHRfdmFsdWUpCisgeworQEAg LTEzNCw2ICsxMzUsNyBAQCBzZXRfcmh0c19jcmVkZW50aWFscyhtYXBfc3RyaW5nX3QgKmNvbmYs IGNvbnN0IGNoYXIgKnVzZXJuYW1lLCBjb25zdCBjaGFyICpwYXNzdworICAgICAvKiBObyBjaGFu Z2VzIG5lZWRlZCAtPiBzdWNjZXNzICovCisgICAgIHJldHVybiAxOworIH0KKysjZW5kaWYKKyAK KyBzdGF0aWMgY29uc3QgY2hhciAqCisgZ2V0X2FicnRfcmVwb3J0aW5nKG1hcF9zdHJpbmdfdCAq Y29uZikKK0BAIC0xNDMsNiArMTQ1LDcgQEAgZ2V0X2FicnRfcmVwb3J0aW5nKG1hcF9zdHJpbmdf dCAqY29uZikKKyAgICAgcmV0dXJuIFJFUE9SVElOR19TVEFURVNbaW5kZXhdWzBdOworIH0KKyAK KysjaWYgQVVUSEVOVElDQVRFRF9BVVRPUkVQT1JUSU5HICE9IDAKKyBzdGF0aWMgY29uc3QgY2hh ciAqCisgZ2V0X3VyZXBvcnRfaHR0cF9hdXRoKG1hcF9zdHJpbmdfdCAqY29uZikKKyB7CitAQCAt MTU0LDYgKzE1Nyw3IEBAIGdldF91cmVwb3J0X2NsaWVudF9hdXRoKG1hcF9zdHJpbmdfdCAqY29u ZikKKyB7CisgICAgIHJldHVybiBnZXRfbWFwX3N0cmluZ19pdGVtX29yX05VTEwoY29uZiwgVVJF UE9SVF9DTElFTlRfQVVUSF9PUFRJT04pOworIH0KKysjZW5kaWYKKyAKKyBpbnQgbWFpbihpbnQg YXJnYywgY2hhciAqYXJndltdKQorIHsKK0BAIC0xNzEsNTcgKzE3NSw3OCBAQCBpbnQgbWFpbihp bnQgYXJnYywgY2hhciAqYXJndltdKQorICAgICB0ZXh0ZG9tYWluKFBBQ0tBR0UpOworICNlbmRp ZgorIAorKyNkZWZpbmUgUFJPR1JBTV9VU0FHRV9NSURETEVfUEFSVCBcCisrICAgICAgICAgICAg IlxuIiBcCisrICAgICAgICAgICAgIkdldCBvciBtb2RpZnkgYSB2YWx1ZSBvZiB0aGUgYXV0by1y ZXBvcnRpbmcgb3B0aW9uLiBUaGUgY2hhbmdlcyB3aWxsIHRha2VcbiIgXAorKyAgICAgICAgICAg ICJlZmZlY3QgaW1tZWRpYXRlbHkgYW5kIHdpbGwgYmUgcGVyc2lzdGVudC5cbiIgXAorKyAgICAg ICAgICAgICJcbiIgXAorKyAgICAgICAgICAgICIiU1RBVEVfTUFOVUFMIjpcbiIgXAorKyAgICAg ICAgICAgICJVc2VyIGhhdmUgdG8gcmVwb3J0IHRoZSBkZXRlY3QgcHJvYmxlbXMgbWFudWFsbHlc biIgXAorKyAgICAgICAgICAgICJcbiIgXAorKyAgICAgICAgICAgICIiU1RBVEVfQVVUTyI6XG4i IFwKKysgICAgICAgICAgICAiQUJSVCB1cGxvYWRzIGFuIHVSZXBvcnQgd2hpY2ggd2FzIGdlbmVy YXRlZCBmb3IgYSBkZXRlY3RlZCBwcm9ibGVtXG4iIFwKKysgICAgICAgICAgICAiaW1tZWRpYXRl bHkgYWZ0ZXIgdGhlIGRldGVjdGlvbiBwaGFzZS4gdVJlcG9ydCBnZW5lcmFsbHkgY29udGFpbnMg YSBzdGFja1xuIiBcCisrICAgICAgICAgICAgInRyYWNlIHdoaWNoIG9ubHkgZGVzY3JpYmVzIHRo ZSBjYWxsIHN0YWNrIG9mIHRoZSBwcm9ncmFtIGF0IHRoZSB0aW1lIG9mIHRoZVxuIiBcCisrICAg ICAgICAgICAgImNyYXNoIGFuZCBkb2VzIG5vdCBjb250YWluIGNvbnRlbnRzIG9mIGFueSB2YXJp YWJsZXMuICBFdmVyeSB1UmVwb3J0IGFsc29cbiIgXAorKyAgICAgICAgICAgICJjb250YWlucyBp ZGVudGlmaWNhdGlvbiBvZiB0aGUgb3BlcmF0aW5nIHN5c3RlbSwgdmVyc2lvbnMgb2YgdGhlIFJQ TSBwYWNrYWdlc1xuIiBcCisrICAgICAgICAgICAgImludm9sdmVkIGluIHRoZSBjcmFzaCwgYW5k IHdoZXRoZXIgdGhlIHByb2dyYW0gcmFuIHVuZGVyIGEgcm9vdCB1c2VyLlxuIiBcCisrICAgICAg ICAgICAgIlxuIgorKworICAgICBhYnJ0X2luaXQoYXJndik7CisrI2lmIEFVVEhFTlRJQ0FURURf QVVUT1JFUE9SVElORyAhPSAwCisgICAgIGNvbnN0IGNoYXIgKnByb2dyYW1fdXNhZ2Vfc3RyaW5n ID0gXygKKyAgICAgICAgICAgICAiJiBbICJTVEFURV9NQU5VQUwiIHwgIlNUQVRFX0FVVE8iIHwg eWVzIHwgbm8gfCAxIHwgMCBdIFxcXG4iCisgICAgICAgICAgICAgIiAgW1stLWFub255bW91c10g fCBbLS11c2VybmFtZSBVU0VSTkFNRSBbLS1wYXNzd29yZCBQQVNTV09SRF1dIHwgWy0tY2VydGlm aWNhdGUgU09VUkNFXV1cbiIKKy0gICAgICAgICAgICAiXG4iCistICAgICAgICAgICAgIkdldCBv ciBtb2RpZnkgYSB2YWx1ZSBvZiB0aGUgYXV0by1yZXBvcnRpbmcgb3B0aW9uLiBUaGUgY2hhbmdl cyB3aWxsIHRha2VcbiIKKy0gICAgICAgICAgICAiZWZmZWN0IGltbWVkaWF0ZWx5IGFuZCB3aWxs IGJlIHBlcnNpc3RlbnQuXG4iCistICAgICAgICAgICAgIlxuIgorLSAgICAgICAgICAgICIiU1RB VEVfTUFOVUFMIjpcbiIKKy0gICAgICAgICAgICAiVXNlciBoYXZlIHRvIHJlcG9ydCB0aGUgZGV0 ZWN0IHByb2JsZW1zIG1hbnVhbGx5XG4iCistICAgICAgICAgICAgIlxuIgorLSAgICAgICAgICAg ICIiU1RBVEVfQVVUTyI6XG4iCistICAgICAgICAgICAgIkFCUlQgdXBsb2FkcyBhbiB1UmVwb3J0 IHdoaWNoIHdhcyBnZW5lcmF0ZWQgZm9yIGEgZGV0ZWN0ZWQgcHJvYmxlbVxuIgorLSAgICAgICAg ICAgICJpbW1lZGlhdGVseSBhZnRlciB0aGUgZGV0ZWN0aW9uIHBoYXNlLiB1UmVwb3J0IGdlbmVy YWxseSBjb250YWlucyBhIHN0YWNrXG4iCistICAgICAgICAgICAgInRyYWNlIHdoaWNoIG9ubHkg ZGVzY3JpYmVzIHRoZSBjYWxsIHN0YWNrIG9mIHRoZSBwcm9ncmFtIGF0IHRoZSB0aW1lIG9mIHRo ZVxuIgorLSAgICAgICAgICAgICJjcmFzaCBhbmQgZG9lcyBub3QgY29udGFpbiBjb250ZW50cyBv ZiBhbnkgdmFyaWFibGVzLiAgRXZlcnkgdVJlcG9ydCBhbHNvXG4iCistICAgICAgICAgICAgImNv bnRhaW5zIGlkZW50aWZpY2F0aW9uIG9mIHRoZSBvcGVyYXRpbmcgc3lzdGVtLCB2ZXJzaW9ucyBv ZiB0aGUgUlBNIHBhY2thZ2VzXG4iCistICAgICAgICAgICAgImludm9sdmVkIGluIHRoZSBjcmFz aCwgYW5kIHdoZXRoZXIgdGhlIHByb2dyYW0gcmFuIHVuZGVyIGEgcm9vdCB1c2VyLlxuIgorLSAg ICAgICAgICAgICJcbiIKKysgICAgICAgICAgICBQUk9HUkFNX1VTQUdFX01JRERMRV9QQVJUCisg ICAgICAgICAgICAgIlNlZSBhYnJ0LWF1dG8tcmVwb3J0aW5nKDEpLCByZXBvcnRlci11cmVwb3J0 KDEpIGFuZCByZXBvcnRlci1yaHRzdXBwb3J0KDEpXG4iCisgICAgICAgICAgICAgImZvciBtb3Jl IGRldGFpbHMuXG4iCisgICAgICk7CisrI2Vsc2UKKysgICAgY29uc3QgY2hhciAqcHJvZ3JhbV91 c2FnZV9zdHJpbmcgPSBfKAorKyAgICAgICAgICAgICImIFsgIlNUQVRFX01BTlVBTCIgfCAiU1RB VEVfQVVUTyIgfCB5ZXMgfCBubyB8IDEgfCAwIF1cbiIKKysgICAgICAgICAgICBQUk9HUkFNX1VT QUdFX01JRERMRV9QQVJUCisrICAgICAgICAgICAgIlNlZSBhYnJ0LWF1dG8tcmVwb3J0aW5nKDEp IGFuZCByZXBvcnRlci11cmVwb3J0KDEpIGZvciBtb3JlIGRldGFpbHMuXG4iCisrICAgICk7Cisr I2VuZGlmCisgCisgICAgIGVudW0geworICAgICAgICAgT1BUX3YgPSAxIDw8IDAsCisrI2lmIEFV VEhFTlRJQ0FURURfQVVUT1JFUE9SVElORyAhPSAwCisgICAgICAgICBPUFRfYSA9IDEgPDwgMSwK KyAgICAgICAgIE9QVF91ID0gMSA8PCAyLAorICAgICAgICAgT1BUX3AgPSAxIDw8IDMsCisgICAg ICAgICBPUFRfYyA9IDEgPDwgNCwKKysjZW5kaWYKKyAgICAgfTsKKyAKKysjaWYgQVVUSEVOVElD QVRFRF9BVVRPUkVQT1JUSU5HICE9IDAKKyAgICAgaW50IGFub255bW91cyA9IDA7CisgICAgIGNv bnN0IGNoYXIgKnVzZXJuYW1lID0gTlVMTDsKKyAgICAgY29uc3QgY2hhciAqcGFzc3dvcmQgPSBO VUxMOworICAgICBjb25zdCBjaGFyICpjZXJ0aWZpY2F0ZSA9IE5VTEw7CisrI2VuZGlmCisgCisg ICAgIC8qIEtlZXAgZW51bSBhYm92ZSBhbmQgb3JkZXIgb2Ygb3B0aW9ucyBiZWxvdyBpbiBzeW5j ISAqLworICAgICBzdHJ1Y3Qgb3B0aW9ucyBwcm9ncmFtX29wdGlvbnNbXSA9IHsKKyAgICAgICAg IE9QVF9fVkVSQk9TRSgmZ192ZXJib3NlKSwKKysjaWYgQVVUSEVOVElDQVRFRF9BVVRPUkVQT1JU SU5HICE9IDAKKyAgICAgICAgIE9QVF9CT09MICAoICAnYScsICJhbm9ueW1vdXMiLCAgICZhbm9u eW1vdXMsICAgICAgICAgICAgICAgXygiVHVybnMgdGhlIGF1dGhlbnRpY2F0aW9uIG9mZiIpKSwK KyAgICAgICAgIE9QVF9TVFJJTkcoICAndScsICJ1c2VybmFtZSIsICAgICZ1c2VybmFtZSwgICAg IlVTRVJOQU1FIiwgXygiUmVkIEhhdCBTdXBwb3J0IHVzZXIgbmFtZSIpKSwKKyAgICAgICAgIE9Q VF9TVFJJTkcoICAncCcsICJwYXNzd29yZCIsICAgICZwYXNzd29yZCwgICAgIlBBU1NXT1JEIiwg XygiUmVkIEhhdCBTdXBwb3J0IHBhc3N3b3JkLCBpZiBub3QgZ2l2ZW4sIGEgcHJvbXB0IGZvciBp dCB3aWxsIGJlIGlzc3VlZCIpKSwKKyAgICAgICAgIE9QVF9TVFJJTkcoICAnYycsICJjZXJ0aWZp Y2F0ZSIsICZjZXJ0aWZpY2F0ZSwgIlNPVVJDRSIsICAgXygidVJlcG9ydCBTU0wgY2VydGlmaWNh dGUgcGF0aHMgb3IgY2VydGlmaWNhdGUgdHlwZSIpKSwKKysjZW5kaWYKKyAgICAgICAgIE9QVF9F TkQoKQorICAgICB9OworIAorLSAgICBjb25zdCB1bnNpZ25lZCBvcHRzID0gcGFyc2Vfb3B0cyhh cmdjLCBhcmd2LCBwcm9ncmFtX29wdGlvbnMsIHByb2dyYW1fdXNhZ2Vfc3RyaW5nKTsKKysjaWYg QVVUSEVOVElDQVRFRF9BVVRPUkVQT1JUSU5HICE9IDAKKysgICAgY29uc3QgdW5zaWduZWQgb3B0 cyA9CisrI2VuZGlmCisrICAgIHBhcnNlX29wdHMoYXJnYywgYXJndiwgcHJvZ3JhbV9vcHRpb25z LCBwcm9ncmFtX3VzYWdlX3N0cmluZyk7CisgCisgICAgIGFyZ3YgKz0gb3B0aW5kOworICAgICBh cmdjIC09IG9wdGluZDsKKyAKKysjaWYgQVVUSEVOVElDQVRFRF9BVVRPUkVQT1JUSU5HICE9IDAK KyAgICAgaWYgKChvcHRzICYgT1BUX3ApICYmICEob3B0cyAmIE9QVF91KSkKKyAgICAgeworICAg ICAgICAgZXJyb3JfbXNnKF8oIllvdSBhbHNvIG5lZWQgdG8gc3BlY2lmeSAtLXVzZXJuYW1lIGZv ciAtLXBhc3N3b3JkIikpOworQEAgLTI0Niw2ICsyNzEsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywg Y2hhciAqYXJndltdKQorICAgICAgICAgc2hvd191c2FnZV9hbmRfZGllKHByb2dyYW1fdXNhZ2Vf c3RyaW5nLCBwcm9ncmFtX29wdGlvbnMpOworICAgICB9CisgCisrI2VuZGlmCisgICAgIGlmIChh cmdjID4gMSkKKyAgICAgeworICAgICAgICAgZXJyb3JfbXNnKF8oIkludmFsaWQgbnVtYmVyIG9m IGFyZ3VtZW50cyIpKTsKK0BAIC0yNzUsMjAgKzMwMSwyNSBAQCBpbnQgbWFpbihpbnQgYXJnYywg Y2hhciAqYXJndltdKQorICAgICBpbnQgZXhpdF9jb2RlID0gRVhJVF9GQUlMVVJFOworIAorICAg ICBtYXBfc3RyaW5nX3QgKmNvbmYgPSBuZXdfbWFwX3N0cmluZygpOworKyNpZiBBVVRIRU5USUNB VEVEX0FVVE9SRVBPUlRJTkcgIT0gMAorICAgICBtYXBfc3RyaW5nX3QgKnJodHNfY29uZiA9IG5l d19tYXBfc3RyaW5nKCk7CisgICAgIG1hcF9zdHJpbmdfdCAqcmh0c19jb25mX2JjayA9IE5VTEw7 CisrI2VuZGlmCisgICAgIG1hcF9zdHJpbmdfdCAqdXJlcG9ydF9jb25mID0gbmV3X21hcF9zdHJp bmcoKTsKKyAgICAgbWFwX3N0cmluZ190ICp1cmVwb3J0X2NvbmZfYmNrID0gTlVMTDsKKyAKKyAg ICAgaWYgKCFsb2FkX2FicnRfY29uZl9maWxlKENPTkZfTkFNRSwgY29uZikpCisgICAgICAgICBn b3RvIGZpbml0bzsKKyAKKysjaWYgQVVUSEVOVElDQVRFRF9BVVRPUkVQT1JUSU5HICE9IDAKKyAg ICAgaWYgKCFsb2FkX3BsdWdpbl9jb25mX2ZpbGUoUkhUU19OQU1FLCByaHRzX2NvbmYsIGZhbHNl KSkKKyAgICAgICAgIGdvdG8gZmluaXRvOworKyNlbmRpZgorIAorICAgICBpZiAoIWxvYWRfcGx1 Z2luX2NvbmZfZmlsZShVUkVQT1JUX05BTUUsIHVyZXBvcnRfY29uZiwgZmFsc2UpKQorICAgICAg ICAgZ290byBmaW5pdG87CisgCisrI2lmIEFVVEhFTlRJQ0FURURfQVVUT1JFUE9SVElORyAhPSAw CisgICAgIGlmICgob3B0cyAmIE9QVF9hKSkKKyAgICAgeworICAgICAgICAgdXJlcG9ydF9jb25m X2JjayA9IGNsb25lX21hcF9zdHJpbmcodXJlcG9ydF9jb25mKTsKK0BAIC0zMzQsMTEgKzM2NSwx MyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQorICAgICAgICAgICAgIGdvdG8g ZmluaXRvOworICAgICB9CisgCisrI2VuZGlmCisgICAgIGlmIChhcmdjID09IDApCisgICAgIHsK KyAgICAgICAgIHByaW50ZigiJXMiLCBnZXRfYWJydF9yZXBvcnRpbmcoY29uZikpOworICAgICAg ICAgZXhpdF9jb2RlID0gRVhJVF9TVUNDRVNTOworIAorKyNpZiBBVVRIRU5USUNBVEVEX0FVVE9S RVBPUlRJTkcgIT0gMAorICAgICAgICAgaWYgKGdfdmVyYm9zZSA+PSAxKQorICAgICAgICAgewor ICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnRtcCA9IGdldF91cmVwb3J0X2h0dHBfYXV0aCh1cmVw b3J0X2NvbmYpOworQEAgLTM1MCw3ICszODMsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAq YXJndltdKQorICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgcHJpbnRmKCIgJXMi LCBfKCJhbm9ueW1vdXMgYXV0byByZXBvcnRpbmciKSk7CisgICAgICAgICB9CistCisrI2VuZGlm CisgICAgICAgICBwdXRjaGFyKCdcbicpOworIAorICAgICAgICAgZ290byBmaW5pdG87CitAQCAt MzYzLDE2ICszOTYsMjAgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKKyAgICAg ICAgIGlmICh1cmVwb3J0X2NvbmZfYmNrICE9IE5VTEwpCisgICAgICAgICAgICAgc2F2ZV9wbHVn aW5fY29uZl9maWxlKFVSRVBPUlRfTkFNRSwgdXJlcG9ydF9jb25mX2Jjayk7CisgCisrI2lmIEFV VEhFTlRJQ0FURURfQVVUT1JFUE9SVElORyAhPSAwCisgICAgICAgICBpZiAocmh0c19jb25mX2Jj ayAhPSBOVUxMKQorICAgICAgICAgICAgIHNhdmVfcGx1Z2luX2NvbmZfZmlsZShSSFRTX05BTUUs IHJodHNfY29uZl9iY2spOworKyNlbmRpZgorICAgICB9CisgCisgCisgZmluaXRvOgorICAgICBm cmVlX21hcF9zdHJpbmcodXJlcG9ydF9jb25mKTsKKyAgICAgZnJlZV9tYXBfc3RyaW5nKHVyZXBv cnRfY29uZl9iY2spOworKyNpZiBBVVRIRU5USUNBVEVEX0FVVE9SRVBPUlRJTkcgIT0gMAorICAg ICBmcmVlX21hcF9zdHJpbmcocmh0c19jb25mKTsKKyAgICAgZnJlZV9tYXBfc3RyaW5nKHJodHNf Y29uZl9iY2spOworKyNlbmRpZgorICAgICBmcmVlX21hcF9zdHJpbmcoY29uZik7CisgICAgIHJl dHVybiBleGl0X2NvZGU7CisgfQorLS0gCisyLjQuMQorCgpkaWZmIC0tZ2l0IGEvMDAxNS1hYnJ0 LWFjdGlvbi1saXN0LWRzb3MtZG8tbm90LWRlY29kZS1ub3QtZXhpc3Rpbmctb2JqLnBhdGNoIGIv MDAxNS1hYnJ0LWFjdGlvbi1saXN0LWRzb3MtZG8tbm90LWRlY29kZS1ub3QtZXhpc3Rpbmctb2Jq LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMxYTE1ZjQKLS0tIC9k ZXYvbnVsbAorKysgYi8wMDE1LWFicnQtYWN0aW9uLWxpc3QtZHNvcy1kby1ub3QtZGVjb2RlLW5v dC1leGlzdGluZy1vYmoucGF0Y2gKQEAgLTAsMCArMSwzNyBAQAorRnJvbSBjMTdjYjE5OTkzNTdk OWJlNTFiODExODY2MWE4ZjM1NTY5YzY2ZGQwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJv bTogTWF0ZWogSGFicm5hbCA8bWhhYnJuYWxAcmVkaGF0LmNvbT4KK0RhdGU6IFRodSwgMTQgTWF5 IDIwMTUgMTY6Mjc6MDIgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSF0gYWJydC1hY3Rpb24tbGlzdC1k c29zOiBkbyBub3QgZGVjb2RlIG5vdCBleGlzdGluZyBvYmplY3QKKworSWYgeW91IGJ1aWxkIGEg cGFja2FnZSB1c2luZyAnbWFrZSBycG0nLCB0aGVyZSBpcyBubyB2ZW5kb3IgcGFyYW0gaW4gaXQu CitTbyB0aGlzIGlzIHRoZSByZWFzb24gd2h5IHRoZSBEZWNvZGUgbWV0aG9kIHdhcyBjYWxsZWQg b24gTm9uZSBvYmplY3QuCisKK1NpZ25lZC1vZmYtYnk6IE1hdGVqIEhhYnJuYWwgPG1oYWJybmFs QHJlZGhhdC5jb20+CistLS0KKyBzcmMvcGx1Z2lucy9hYnJ0LWFjdGlvbi1saXN0LWRzb3MgfCA3 ICsrKysrKy0KKyAxIGZpbGUgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0p CisKK2RpZmYgLS1naXQgYS9zcmMvcGx1Z2lucy9hYnJ0LWFjdGlvbi1saXN0LWRzb3MgYi9zcmMv cGx1Z2lucy9hYnJ0LWFjdGlvbi1saXN0LWRzb3MKK2luZGV4IGY0YTE1MzYuLmEzMDc4YTUgMTAw NjQ0CistLS0gYS9zcmMvcGx1Z2lucy9hYnJ0LWFjdGlvbi1saXN0LWRzb3MKKysrKyBiL3NyYy9w bHVnaW5zL2FicnQtYWN0aW9uLWxpc3QtZHNvcworQEAgLTgyLDEwICs4MiwxNSBAQCBpZiBfX25h bWVfXyA9PSAiX19tYWluX18iOgorICAgICAgICAgICAgICAgICAgICAgICAgIGlmIG91dG5hbWU6 CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dGZpbGUgPSB4b3BlbihvdXRuYW1lLCAi dyIpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dG5hbWUgPSBOb25lCisrCisrICAg ICAgICAgICAgICAgICAgICAgICAgdmVuZG9yID0gaFtycG0uUlBNVEFHX1ZFTkRPUl0KKysgICAg ICAgICAgICAgICAgICAgICAgICBpZiB2ZW5kb3IgIT0gTm9uZToKKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgdmVyZG9yID0gdmVuZG9yLmRlY29kZSgndXRmLTgnKQorKworICAgICAgICAg ICAgICAgICAgICAgICAgIG91dGZpbGUud3JpdGUoIiVzICVzICglcykgJXNcbiIgJQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChwYXRoLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBoW3JwbS5SUE1UQUdfTkVWUkFdLmRlY29kZSgndXRmLTgnKSwK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaFtycG0uUlBNVEFHX1ZFTkRP Ul0uZGVjb2RlKCd1dGYtOCcpLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB2ZXJkb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhbcnBtLlJQ TVRBR19JTlNUQUxMVElNRV0pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KQorIAorLS0gCisyLjQuMQorCgpkaWZmIC0tZ2l0IGEvMDAxNi1kb2MtcG9sa2l0LVNwZWxsaW5n LWdyYW1tYXItZml4ZXMucGF0Y2ggYi8wMDE2LWRvYy1wb2xraXQtU3BlbGxpbmctZ3JhbW1hci1m aXhlcy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZjhiOGE0Ci0t LSAvZGV2L251bGwKKysrIGIvMDAxNi1kb2MtcG9sa2l0LVNwZWxsaW5nLWdyYW1tYXItZml4ZXMu cGF0Y2gKQEAgLTAsMCArMSwxNDMgQEAKK0Zyb20gZTNkZjMxNWIxOGY4MzNiYjQ0ZWI4YWFkZWVm YzJhZDkzMmYzOWY5NyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206ID0/VVRGLTg/cT9W aWxsZT0yMFNreXR0PUMzPUE0Pz0gPHZpbGxlLnNreXR0YUBpa2kuZmk+CitEYXRlOiBUdWUsIDE5 IE1heSAyMDE1IDA5OjI5OjI4ICswMzAwCitTdWJqZWN0OiBbUEFUQ0hdIGRvYywgcG9sa2l0OiBT cGVsbGluZy9ncmFtbWFyIGZpeGVzCisKKy0tLQorIGRvYy9kZXNpZ24gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNiArKystLS0KKyBkb2MvcHJvYmxlbXMtc2Vy dmljZS9vcmcuZnJlZWRlc2t0b3AuUHJvYmxlbXMueG1sLmluIHwgIDQgKystLQorIGRvYy9wcm9q ZWN0L2FicnQudGV4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxNCArKysrKysr LS0tLS0tLQorIHNyYy9kYnVzL2FicnRfcG9sa2l0LnBvbGljeSAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgNCArKy0tCisgNCBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxNCBk ZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2RvYy9kZXNpZ24gYi9kb2MvZGVzaWduCitpbmRl eCBhOWNlMDQwLi5mMjE0Y2FmIDEwMDY0NAorLS0tIGEvZG9jL2Rlc2lnbgorKysrIGIvZG9jL2Rl c2lnbgorQEAgLTM3LDcgKzM3LDcgQEAgdG8gYSBkZWRpY2F0ZWQgc2VydmVyKHMpIGZvciBwcm9j ZXNzaW5nIChiYWNrdHJhY2UsIGV0YykuCisgCisgCURlc2lnbgorIAorLUFicnQgZGVzaWduIHNo b3VsZCBiZSBmbGV4aWJsZSBlbm91Z2ggdG8gYWNjb21vZGF0ZSBhbGwKKytBYnJ0IGRlc2lnbiBz aG91bGQgYmUgZmxleGlibGUgZW5vdWdoIHRvIGFjY29tbW9kYXRlIGFsbAorIG9mIHRoZSBhYm92 ZSB1c2FnZSBzY2VuYXJpb3MuCisgCisgU2luY2UgY3VycmVudGx5IHdlIGRvIG5vdCBrbm93IGhv dyB0byBkdW1wIG9vcHMgb24gZGVtYW5kLAorQEAgLTcwLDcgKzcwLDcgQEAgdXNlcyBpbm90aWZ5 IHRvIHdhdGNoIGZvciBjcmFzaGVzLiBJbnN0ZWFkIHRoZSBwcm9ncmFtcyB3aGljaCBjcmVhdGUg Y3Jhc2hlcworIGNhbiB0cmlnZ2VyIHRoZWlyIGluaXRpYWwgKCJwb3N0LWNyZWF0ZSIpIHByb2Nl c3NpbmcgdGhlbXNlbHZlc10KKyAKKyBDcmFzaGVzIGNvbmNlcHR1YWxseSBnbyB0aHJvdWdoICJl dmVudHMiIGluIHRoZWlyIGxpdmVzLgorLUFwYXJ0IGZyb20gInBvc3QtY3JlYXRlIiBldmVudCBk ZWNyaWJlZCBhYm92ZSwgdGhleSBtYXkgaGF2ZQorK0FwYXJ0IGZyb20gInBvc3QtY3JlYXRlIiBl dmVudCBkZXNjcmliZWQgYWJvdmUsIHRoZXkgbWF5IGhhdmUKKyAiYW5hbHl6ZSIgZXZlbnQsICJy ZXBvcnRbX0ZPT10iIGV2ZW50cywKKyBhbmQgYXJiaXRyYXJpbHktbmFtZWQgb3RoZXIgZXZlbnRz LgorIGFicnQtaGFuZGxlLWNyYXNoZHVtcCB0b29sIGNhbiBiZSB1c2VkIHRvICJydW4iIGFuIGV2 ZW50IG9uIGEgZGlyZWN0b3J5LAorQEAgLTEyNCw3ICsxMjQsNyBAQCBEb25lOgorICogTWFrZSBh YnJ0LWd1aSBzdGFydCBhYnJ0ZCBvbiBkZW1hbmQsIHNvIHRoYXQgYWJydC1ndWkgY2FuIGJlIHN0 YXJ0ZWQKKyAgIGV2ZW4gaWYgYWJydGQgZG9lcyBub3QgcnVuIGF0IHRoZSBtb21lbnQuCisgKiBt YWtlIGtlcm5lbG9vcHMgcGx1Z2luIGludG8gc2VwYXJhdGUgZGFlbW9uIChjb252ZXJ0IGl0IHRv IGEgaG9vaworLSAgYW5kIGdldCByaWQgb2YgImNyb24gcGx1Z2lucyIgd2hpY2ggYXJlIHdyb25n IGlkZWEgc2luY2UgdGhlIGJlZ2luaW5nKQorKyAgYW5kIGdldCByaWQgb2YgImNyb24gcGx1Z2lu cyIgd2hpY2ggYXJlIHdyb25nIGlkZWEgc2luY2UgdGhlIGJlZ2lubmluZykKKyAqIG1ha2UgQy9D KysgaG9vayB0byBiZSBzdGFydGVkIGJ5IGluaXQgc2NyaXB0CisgKiBhZGQgImluY2x1ZGUgRklM RSIgZmVhdHVyZSB0byBhYnJ0X2V2ZW50LmNvbmYKKyAKK2RpZmYgLS1naXQgYS9kb2MvcHJvYmxl bXMtc2VydmljZS9vcmcuZnJlZWRlc2t0b3AuUHJvYmxlbXMueG1sLmluIGIvZG9jL3Byb2JsZW1z LXNlcnZpY2Uvb3JnLmZyZWVkZXNrdG9wLlByb2JsZW1zLnhtbC5pbgoraW5kZXggMTE4ZDRiMi4u Yjc5MWJkYiAxMDA2NDQKKy0tLSBhL2RvYy9wcm9ibGVtcy1zZXJ2aWNlL29yZy5mcmVlZGVza3Rv cC5Qcm9ibGVtcy54bWwuaW4KKysrKyBiL2RvYy9wcm9ibGVtcy1zZXJ2aWNlL29yZy5mcmVlZGVz a3RvcC5Qcm9ibGVtcy54bWwuaW4KK0BAIC01Myw3ICs1Myw3IEBACisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDx2YXJsaXN0ZW50cnk+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICA8dGVybT51aWQ8L3Rlcm0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8 bGlzdGl0ZW0+CistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhcmE+T25s eSBhIHVzZXIgd2l0aCByb290IHByaXZpbGVkZ2VzIGNhbiBwYXNzIHRoaXMgZmllbGQuIEZvciBh bGwgb3RoZXIgdXNlcnMgdGhlIGZpZWxkIGlzIGZpbGxlZCBieSBjYWxsZXIncyB1aWQuPC9wYXJh PgorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXJhPk9ubHkgYSB1c2Vy IHdpdGggcm9vdCBwcml2aWxlZ2VzIGNhbiBwYXNzIHRoaXMgZmllbGQuIEZvciBhbGwgb3RoZXIg dXNlcnMgdGhlIGZpZWxkIGlzIGZpbGxlZCBieSBjYWxsZXIncyB1aWQuPC9wYXJhPgorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saXN0aXRlbT4KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgPC92YXJsaXN0ZW50cnk+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg IDx2YXJsaXN0ZW50cnk+CitAQCAtMzA5LDcgKzMwOSw3IEBAIGZvciBwcmJsbWlkIGluIHByb2Js ZW1zLkdldFByb2JsZW1zKCk6CisgICAgICAgICAgICAgICAgIDwvYXJnPgorIAorICAgICAgICAg ICAgICAgICA8YXJnIHR5cGU9J3gnIG5hbWU9J3RpbWVzdGFtcF9mcm9tJyBkaXJlY3Rpb249J2lu Jz4KKy0gICAgICAgICAgICAgICAgICAgIDx0cDpkb2NzdHJpbmc+QmVnaW5uaWcgb2YgcmVxdWly ZWQgdGltZSByYW5nZS48L3RwOmRvY3N0cmluZz4KKysgICAgICAgICAgICAgICAgICAgIDx0cDpk b2NzdHJpbmc+QmVnaW5uaW5nIG9mIHJlcXVpcmVkIHRpbWUgcmFuZ2UuPC90cDpkb2NzdHJpbmc+ CisgICAgICAgICAgICAgICAgIDwvYXJnPgorIAorICAgICAgICAgICAgICAgICA8YXJnIHR5cGU9 J3gnIG5hbWU9J3RpbWVzdGFtcF90bycgZGlyZWN0aW9uPSdpbic+CitkaWZmIC0tZ2l0IGEvZG9j L3Byb2plY3QvYWJydC50ZXggYi9kb2MvcHJvamVjdC9hYnJ0LnRleAoraW5kZXggOWU3NzI0ZS4u MDNiNTcwNSAxMDA2NDQKKy0tLSBhL2RvYy9wcm9qZWN0L2FicnQudGV4CisrKysgYi9kb2MvcHJv amVjdC9hYnJ0LnRleAorQEAgLTE5NCw3ICsxOTQsNyBAQCBpbmZvcm1hdGlvbiByZWdhcmRpbmcg dGhlaXIgaW50ZXJlc3RzLCBpbnZvbHZlbWVudC4KKyB7XHRleHRiZntQYWNrYWdlIE1haW50YWlu ZXJzfQorICAgXG5vZGVwYXJ0e3NlY29uZH0gXHZzcGFjZXstNW1tfQorICAgXGJlZ2lue2l0ZW1p emV9IFxpdGVtc2VwMXB0IFxwYXJza2lwMHB0IFxwYXJzZXAwcHQKKy0gIFxpdGVtIEZpeGluZyBt b3N0IGZyZXF1ZW50bHkgb2NjdXJlZCBidWdzCisrICBcaXRlbSBGaXhpbmcgbW9zdCBmcmVxdWVu dGx5IG9jY3VycmVkIGJ1Z3MKKyAgIFxpdGVtIEZpeGluZyBidWdzIHdoZXJlIHRoZSBidWcgaXMg d2VsbCBkZXNjcmliZWQKKyAgIFxlbmR7aXRlbWl6ZX0KKyB9OworQEAgLTI2NSw3ICsyNjUsNyBA QCBIaWdobGlnaHQgaW1wb3J0YW50IHJlcG9ydHMKKyBJbi1kZXB0aCBidWcgZml4aW5nCisgLS0t LS0tLS0tLS0tLS0tLS0tLQorIAorLUNvbGxlY3QgY29yZS1kdW1wIGZvciBmcmVxdWVudGx5IG9j Y3VyZWQgcmVwb3J0cworK0NvbGxlY3QgY29yZS1kdW1wIGZvciBmcmVxdWVudGx5IG9jY3VycmVk IHJlcG9ydHMKKyAKKyBSZXRyYWNlIGNvcmVkdW1wcyBvbiBkZW1hbmQKKyAKK0BAIC01NzAsNyAr NTcwLDcgQEAgY29tcG9uZW50cy4KKyAgICAgUmVkIEhhdCBCdWd6aWxsYS4KKyAgIFxlbmR7ZGVz Y3JpcHRpb259CisgXGl0ZW1bRGF0YSBTdG9yYWdlXSBEYXRhYmFzZSBhbmQgZmlsZSBzdG9yYWdl IGZvciBkYXRhIHJlcXVpcmVkIGZvcgorLSAgdGhlIGFuYWx5c2lzLCBldmFsdWF0aW9uLCBhZG4g cHJvY2Vzc2luZyBvZiByZXBvcnRzIGFuZCBwcm9ibGVtcy4KKysgIHRoZSBhbmFseXNpcywgZXZh bHVhdGlvbiwgYW5kIHByb2Nlc3Npbmcgb2YgcmVwb3J0cyBhbmQgcHJvYmxlbXMuCisgICBcYmVn aW57ZGVzY3JpcHRpb259CisgICBcaXRlbVtMTFZNIGJpdGNvZGVdIFdlIHN0b3JlIExMVk0gYml0 Y29kZSBvZiBldmVyeSBiaW5hcnkgYW5kCisgICAgIGR5bmFtaWMgbGlicmFyeSBjb21waWxlZCBm cm9tIEMvQysrIHNvdXJjZSBjb2RlLgorQEAgLTU4Miw4ICs1ODIsOCBAQCBjb21wb25lbnRzLgor IFxiZWdpbnt0aWt6cGljdHVyZX0KKyBcdW1sY2xhc3NbeD0tNCx5PTBde3Byb2JsZW19eworIGlk IDogUFJJTUFSWSBLRVkgXFwKKy1maXJzdCBvY2N1cmVuY2UgOiBUSU1FU1RBTVAgTk9UIE5VTEwg XFwKKy1sYXN0IG9jY3VyZW5jZSA6IFRJTUVTVEFNUCBOT1QgTlVMTCBcXAorK2ZpcnN0IG9jY3Vy cmVuY2UgOiBUSU1FU1RBTVAgTk9UIE5VTEwgXFwKKytsYXN0IG9jY3VycmVuY2UgOiBUSU1FU1RB TVAgTk9UIE5VTEwgXFwKKyB9e30KKyAKKyBcdW1sY2xhc3NbeD00LHk9LTJde3Byb2JsZW0gcmVw b3J0fXsKK0BAIC02MTYsOCArNjE2LDggQEAgUGFydCBvZiByZXBvcnRzIGlzIHBvcHVsYXRlZCBm cm9tICRcbXUkcmVwb3J0cy4KKyBcdW1sY2xhc3NbeD0tNCx5PTBde3JlcG9ydH17CisgaWQgOiBQ UklNQVJZIEtFWSBBVVRPSU5DUkVNRU5UIFxcCisgdHlwZSA6IEVOVU0gKFVTRVJTUEFDRSwgS0VS TkVMLCBQWVRIT04sIFNFTElOVVgpIFxcCistZmlyc3Qgb2NjdXJlbmNlIDogVElNRVNUQU1QIFxc CistbGFzdCBvY2N1cmVuY2UgOiBUSU1FU1RBTVAgXFwKKytmaXJzdCBvY2N1cnJlbmNlIDogVElN RVNUQU1QIFxcCisrbGFzdCBvY2N1cnJlbmNlIDogVElNRVNUQU1QIFxcCisgY291bnQgOiBJTlQg XFwKKyBjb21wb25lbnQgaWQgOiBGT1JFSUdOIEtFWSBcXAorIHByb2JsZW0gaWQgOiBGT1JFSUdO IEtFWQorZGlmZiAtLWdpdCBhL3NyYy9kYnVzL2FicnRfcG9sa2l0LnBvbGljeSBiL3NyYy9kYnVz L2FicnRfcG9sa2l0LnBvbGljeQoraW5kZXggYTM0MjVkOS4uMmM3NTIzMyAxMDA2NDQKKy0tLSBh L3NyYy9kYnVzL2FicnRfcG9sa2l0LnBvbGljeQorKysrIGIvc3JjL2RidXMvYWJydF9wb2xraXQu cG9saWN5CitAQCAtMTcsNyArMTcsNyBAQCBDb3B5cmlnaHQgKGMpIDIwMTIgQUJSVCBUZWFtIDxj cmFzaC1jYXRjaGVyQGZlZG9yYWhvc3RlZC5jb20+CisgICA8IS0tIGJ5IGRlZmF1bHQgb25seSBy b290IGNhbiBzZWUgb3RoZXIgdXNlcnMgcHJvYmxlbXMgLS0+CisgICA8YWN0aW9uIGlkPSJvcmcu ZnJlZWRlc2t0b3AucHJvYmxlbXMuZ2V0YWxsIj4KKyAgICAgPGRlc2NyaXB0aW9uPkdldCBwcm9i bGVtcyBmcm9tIGFsbCB1c2VyczwvZGVzY3JpcHRpb24+CistICAgIDxtZXNzYWdlPlJlYWRpbmcg b3RoZXJzIHByb2JsZW1zIHJlcXVpcmVzIGF1dGhlbnRpY2F0aW9uPC9tZXNzYWdlPgorKyAgICA8 bWVzc2FnZT5SZWFkaW5nIG90aGVyIHVzZXJzJyBwcm9ibGVtcyByZXF1aXJlcyBhdXRoZW50aWNh dGlvbjwvbWVzc2FnZT4KKyAgICAgPGRlZmF1bHRzPgorICAgICAgIDxhbGxvd19hbnk+YXV0aF9h ZG1pbjwvYWxsb3dfYW55PgorICAgICAgIDxhbGxvd19hY3RpdmU+YXV0aF9hZG1pbl9rZWVwPC9h bGxvd19hY3RpdmU+CitAQCAtMjgsNyArMjgsNyBAQCBDb3B5cmlnaHQgKGMpIDIwMTIgQUJSVCBU ZWFtIDxjcmFzaC1jYXRjaGVyQGZlZG9yYWhvc3RlZC5jb20+CisgICA8IS0tIGJ5IGRlZmF1bHQg b25seSByb290IGNhbiBhY2Nlc3MgY29uZmlndXJhdGlvbiAgLS0+CisgICA8YWN0aW9uIGlkPSJj b20ucmVkaGF0LnByb2JsZW1zLmNvbmZpZ3VyYXRpb24udXBkYXRlIj4KKyAgICAgPGRlc2NyaXB0 aW9uPlNldCB2YWx1ZSBvZiBjb25maWd1cmF0aW9uIHByb3BlcnRpZXM8L2Rlc2NyaXB0aW9uPgor LSAgICA8bWVzc2FnZT5VcGRhdGUgY29uZmlndXJhdGlvbiB2YWx1ZXMgcmV1cXVpcmVzIGF1dGhl bnRpY2F0aW9uPC9tZXNzYWdlPgorKyAgICA8bWVzc2FnZT5VcGRhdGluZyBjb25maWd1cmF0aW9u IHZhbHVlcyByZXF1aXJlcyBhdXRoZW50aWNhdGlvbjwvbWVzc2FnZT4KKyAgICAgPGRlZmF1bHRz PgorICAgICAgIDxhbGxvd19hbnk+YXV0aF9hZG1pbjwvYWxsb3dfYW55PgorICAgICAgIDxhbGxv d19hY3RpdmU+YXV0aF9hZG1pbl9rZWVwPC9hbGxvd19hY3RpdmU+CistLSAKKzIuNC4xCisKCmRp ZmYgLS1naXQgYS8wMDE4LWFwcGxldC1taWdyYXRlLUF1dG9yZXBvcnRpbmctb3B0aW9ucy10by1H U2V0dGluZ3MucGF0Y2ggYi8wMDE4LWFwcGxldC1taWdyYXRlLUF1dG9yZXBvcnRpbmctb3B0aW9u cy10by1HU2V0dGluZ3MucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u ZGI2N2U1NQotLS0gL2Rldi9udWxsCisrKyBiLzAwMTgtYXBwbGV0LW1pZ3JhdGUtQXV0b3JlcG9y dGluZy1vcHRpb25zLXRvLUdTZXR0aW5ncy5wYXRjaApAQCAtMCwwICsxLDEyMyBAQAorRnJvbSA3 MGIyZTY5ODFiNjY3ZDVjZmIzMWY4OTQ1MjdlMTZmM2VlZWQxNGM5IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQorRnJvbTogSmFrdWIgRmlsYWsgPGpmaWxha0ByZWRoYXQuY29tPgorRGF0ZTogRnJp LCAxNSBNYXkgMjAxNSAxNDo0NTo0MCArMDIwMAorU3ViamVjdDogW1BBVENIXSBhcHBsZXQ6IG1p Z3JhdGUgQXV0b3JlcG9ydGluZyBvcHRpb25zIHRvIEdTZXR0aW5ncworCitSZWFkIHRoZSBvcHRp b24ncyB2YWx1ZSBmcm9tIHRoZSBhcHAncyBjb25maWd1cmF0aW9uIGZpbGUsIHVwZGF0ZSB0aGUK K2dub21lIHNldHRpbmcgaWYgbmVlZGVkIGFuZCByZW1vdmUgdGhlIG9wdGlvbiBmcm9tIHRoZSBh cHAncworY29uZmlndXJhdGlvbiBmaWxlIGluIG9yZGVyIHRvIHNraXAgdGhlIG1pZ3JhdGlvbiBh dCBuZXh0IHN0YXJ0LgorCitSZWxhdGVkIHRvICM5NjYKKworU2lnbmVkLW9mZi1ieTogSmFrdWIg RmlsYWsgPGpmaWxha0ByZWRoYXQuY29tPgorLS0tCisgc3JjL2FwcGxldC9hcHBsZXQuYyB8IDYw ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tCisg MSBmaWxlIGNoYW5nZWQsIDU1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2RpZmYg LS1naXQgYS9zcmMvYXBwbGV0L2FwcGxldC5jIGIvc3JjL2FwcGxldC9hcHBsZXQuYworaW5kZXgg NGRmNjlmYy4uYjUzNDgzOSAxMDA2NDQKKy0tLSBhL3NyYy9hcHBsZXQvYXBwbGV0LmMKKysrKyBi L3NyYy9hcHBsZXQvYXBwbGV0LmMKK0BAIC0zNiw2ICszNiwxMCBAQAorICNpbmNsdWRlICJsaWJh YnJ0LmgiCisgI2luY2x1ZGUgInByb2JsZW1fYXBpLmgiCisgCisrI2RlZmluZSBBUFBfTkFNRSAi YWJydC1hcHBsZXQiCisrI2RlZmluZSBHU19TQ0hFTUFfSURfUFJJVkFDWSAib3JnLmdub21lLmRl c2t0b3AucHJpdmFjeSIKKysjZGVmaW5lIEdTX1BSSVZBQ1lfT1BUX0FVVE9fUkVQT1JUSU5HICJy ZXBvcnQtdGVjaG5pY2FsLXByb2JsZW1zIgorKworIC8qIGxpYm5vdGlmeSBhY3Rpb24ga2V5cyAq LworICNkZWZpbmUgQV9SRVBPUlRfUkVQT1JUICJSRVBPUlQiCisgI2RlZmluZSBBX1JFU1RBUlRf QVBQTElDQVRJT04gIlJFU1RBUlQiCitAQCAtNTUsMTUgKzU5LDYwIEBAIHN0YXRpYyBib29sIGlz X2F1dG9yZXBvcnRpbmdfZW5hYmxlZCh2b2lkKQorICAgICBHU2V0dGluZ3MgKnNldHRpbmdzOwor ICAgICBnYm9vbGVhbiByZXQ7CisgCistICAgIHNldHRpbmdzID0gZ19zZXR0aW5nc19uZXcgKCJv cmcuZ25vbWUuZGVza3RvcC5wcml2YWN5Iik7CistICAgIHJldCA9IGdfc2V0dGluZ3NfZ2V0X2Jv b2xlYW4gKHNldHRpbmdzLCAicmVwb3J0LXRlY2huaWNhbC1wcm9ibGVtcyIpOworKyAgICBzZXR0 aW5ncyA9IGdfc2V0dGluZ3NfbmV3IChHU19TQ0hFTUFfSURfUFJJVkFDWSk7CisrICAgIHJldCA9 IGdfc2V0dGluZ3NfZ2V0X2Jvb2xlYW4gKHNldHRpbmdzLCBHU19QUklWQUNZX09QVF9BVVRPX1JF UE9SVElORyk7CisgICAgIGdfb2JqZWN0X3VucmVmIChzZXR0aW5ncyk7CisgICAgIHJldHVybiBy ZXQ7CisgfQorIAorK3N0YXRpYyB2b2lkIG1pZ3JhdGVfYXV0b19yZXBvcnRpbmdfdG9fZ3NldHRp bmdzKHZvaWQpCisreworKyNkZWZpbmUgT1BUX05BTUUgIkF1dG9yZXBvcnRpbmdFbmFibGVkIgor KyAgICBtYXBfc3RyaW5nX3QgKnNldHRpbmdzID0gbmV3X21hcF9zdHJpbmcoKTsKKysgICAgaWYg KCFsb2FkX2FwcF9jb25mX2ZpbGUoQVBQX05BTUUsIHNldHRpbmdzKSkKKysgICAgICAgIGdvdG8g ZmluaXRvOworKworKyAgICAvKiBTaWxlbnRseSBpZ25vcmUgbm90IGNvbmZpZ3VyZWQgb3B0aW9u cyAqLworKyAgICBpbnQgc3ZfbG9nbW9kZSA9IGxvZ21vZGU7CisrICAgIC8qIGJ1dCBvbmx5IGlm IHdlIHJ1biBpbiBzaWxlbnQgbW9kZSAobm8gLXYgb24gY29tbWFuZCBsaW5lKSAqLworKyAgICBs b2dtb2RlID0gZ192ZXJib3NlID09IDAgPyAwIDogc3ZfbG9nbW9kZTsKKysKKysgICAgaW50IGF1 dG9fcmVwb3J0aW5nID0gMDsKKysgICAgaW50IGNvbmZpZ3VyZWQgPSB0cnlfZ2V0X21hcF9zdHJp bmdfaXRlbV9hc19ib29sKHNldHRpbmdzLCBPUFRfTkFNRSwgJmF1dG9fcmVwb3J0aW5nKTsKKysK KysgICAgbG9nbW9kZSA9IHN2X2xvZ21vZGU7CisrCisrICAgIGlmICghY29uZmlndXJlZCkKKysg ICAgICAgIGdvdG8gZmluaXRvOworKworKyAgICAvKiBFbmFibGUgdGhlIEdTIG9wdGlvbiBpZiBB dXRvcmVwb3J0aW5nRW5hYmxlZCBpcyB0cnVlIGJlY2F1c2UgdGhlIHVzZXIKKysgICAgICogdHVy bmVkIHRoZSBBdXRvcmVwb3J0aW5nIGluIGFicnQtYXBwbGV0IGluIGEgYmVmb3JlIEdTLgorKyAg ICAgKgorKyAgICAgKiBEbyBub3QgZGlzYWJsZSB0aGUgR1Mgb3B0aW9uIGlmIEF1dG9yZXBvcnRp bmdFdmVudCBpcyBmYWxzZSBiZWNhdXNlIHRoZQorKyAgICAgKiBHUyBvcHRpb24gaXMgZmFsc2Ug YnkgZGVmYXVsdCwgdGh1cyBkaXNhYmxpbmcgd291bGQgcmV2ZXJ0IHRoZSB1c2VyJ3MKKysgICAg ICogZGVjaXNpb24gdG8gIGF1dG9tYXRpY2FsbHkgcmVwb3J0IHRlY2huaWNhbCBwcm9ibGVtcy4K KysgICAgICovCisrICAgIGlmIChhdXRvX3JlcG9ydGluZykKKysgICAgeworKyAgICAgICAgR1Nl dHRpbmdzICpzZXR0aW5ncyA9IGdfc2V0dGluZ3NfbmV3KEdTX1NDSEVNQV9JRF9QUklWQUNZKTsK KysgICAgICAgIGdfc2V0dGluZ3Nfc2V0X2Jvb2xlYW4oc2V0dGluZ3MsIEdTX1BSSVZBQ1lfT1BU X0FVVE9fUkVQT1JUSU5HLCBUUlVFKTsKKysgICAgICAgIGdfb2JqZWN0X3VucmVmKHNldHRpbmdz KTsKKysgICAgfQorKworKyAgICByZW1vdmVfbWFwX3N0cmluZ19pdGVtKHNldHRpbmdzLCBPUFRf TkFNRSk7CisrICAgIHNhdmVfYXBwX2NvbmZfZmlsZShBUFBfTkFNRSwgc2V0dGluZ3MpOworKwor KyAgICBsb2coIlN1Y2Nlc3NmdWxseSBtaWdyYXRlZCAiQVBQX05BTUUiOiJPUFRfTkFNRSIgdG8g IkdTX1NDSEVNQV9JRF9QUklWQUNZIjoiR1NfUFJJVkFDWV9PUFRfQVVUT19SRVBPUlRJTkcpOwor KworKyN1bmRlZiBPUFRfTkFNRQorK2Zpbml0bzoKKysgICAgZnJlZV9tYXBfc3RyaW5nKHNldHRp bmdzKTsKKysgICAgcmV0dXJuOworK30KKysKKyBzdGF0aWMgY29uc3QgY2hhciAqZ2V0X2F1dG9y ZXBvcnRfZXZlbnRfbmFtZSh2b2lkKQorIHsKKy0gICAgbG9hZF91c2VyX3NldHRpbmdzKCJhYnJ0 LWFwcGxldCIpOworKyAgICBsb2FkX3VzZXJfc2V0dGluZ3MoQVBQX05BTUUpOworICAgICBjb25z dCBjaGFyICpjb25maWd1cmVkID0gZ2V0X3VzZXJfc2V0dGluZygiQXV0b3JlcG9ydGluZ0V2ZW50 Iik7CisgICAgIHJldHVybiBjb25maWd1cmVkID8gY29uZmlndXJlZCA6IGdfc2V0dGluZ3NfYXV0 b3JlcG9ydGluZ19ldmVudDsKKyB9CitAQCAtNTU0LDcgKzYwMyw3IEBAIHN0YXRpYyBOb3RpZnlO b3RpZmljYXRpb24gKm5ld193YXJuX25vdGlmaWNhdGlvbihjb25zdCBjaGFyICpib2R5KQorIAor ICAgICBub3RpZnlfbm90aWZpY2F0aW9uX3NldF91cmdlbmN5KG5vdGlmaWNhdGlvbiwgTk9USUZZ X1VSR0VOQ1lfTk9STUFMKTsKKyAgICAgbm90aWZ5X25vdGlmaWNhdGlvbl9zZXRfdGltZW91dChu b3RpZmljYXRpb24sIE5PVElGWV9FWFBJUkVTX0RFRkFVTFQpOworLSAgICBub3RpZnlfbm90aWZp Y2F0aW9uX3NldF9oaW50KG5vdGlmaWNhdGlvbiwgImRlc2t0b3AtZW50cnkiLCBnX3ZhcmlhbnRf bmV3X3N0cmluZygiYWJydC1hcHBsZXQiKSk7CisrICAgIG5vdGlmeV9ub3RpZmljYXRpb25fc2V0 X2hpbnQobm90aWZpY2F0aW9uLCAiZGVza3RvcC1lbnRyeSIsIGdfdmFyaWFudF9uZXdfc3RyaW5n KEFQUF9OQU1FKSk7CisgCisgICAgIHJldHVybiBub3RpZmljYXRpb247CisgfQorQEAgLTExNDcs MTMgKzExOTYsMTQgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQorICAgICAvKnVu c2lnbmVkIG9wdHMgPSovIHBhcnNlX29wdHMoYXJnYywgYXJndiwgcHJvZ3JhbV9vcHRpb25zLCBw cm9ncmFtX3VzYWdlX3N0cmluZyk7CisgCisgICAgIG1pZ3JhdGVfdG9feGRnX2RpcnMoKTsKKysg ICAgbWlncmF0ZV9hdXRvX3JlcG9ydGluZ190b19nc2V0dGluZ3MoKTsKKyAKKyAgICAgZXhwb3J0 X2FicnRfZW52dmFycygwKTsKKyAgICAgbXNnX3ByZWZpeCA9IGdfcHJvZ25hbWU7CisgCisgICAg IGxvYWRfYWJydF9jb25mKCk7CisgICAgIGxvYWRfZXZlbnRfY29uZmlnX2RhdGEoKTsKKy0gICAg bG9hZF91c2VyX3NldHRpbmdzKCJhYnJ0LWFwcGxldCIpOworKyAgICBsb2FkX3VzZXJfc2V0dGlu Z3MoQVBQX05BTUUpOworIAorICAgICAvKiBJbml0aWFsaXplIG91ciAoZGJ1c19hYnJ0KSBtYWNo aW5lcnkgYnkgZmlsdGVyaW5nCisgICAgICAqIGZvciBzaWduYWxzOgorLS0gCisyLjQuMQorCgpk aWZmIC0tZ2l0IGEvMDAxOS1jb25maWctVUktcmVhZC1nbGFkZS1mcm9tLWEtbG9jYWwtZmlsZS1m aXJzdC5wYXRjaCBiLzAwMTktY29uZmlnLVVJLXJlYWQtZ2xhZGUtZnJvbS1hLWxvY2FsLWZpbGUt Zmlyc3QucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDM4MTc0NAot LS0gL2Rldi9udWxsCisrKyBiLzAwMTktY29uZmlnLVVJLXJlYWQtZ2xhZGUtZnJvbS1hLWxvY2Fs LWZpbGUtZmlyc3QucGF0Y2gKQEAgLTAsMCArMSwzOSBAQAorRnJvbSBlYjFlNDVhMWU4MDcwYmVl NmJhNDRmMzI1ZjdkZDBjYTg5MDBkYzc3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTog SmFrdWIgRmlsYWsgPGpmaWxha0ByZWRoYXQuY29tPgorRGF0ZTogU2F0LCAxNiBNYXkgMjAxNSAw Njo0NjoxNyArMDIwMAorU3ViamVjdDogW1BBVENIXSBjb25maWcgVUk6IHJlYWQgZ2xhZGUgZnJv bSBhIGxvY2FsIGZpbGUgZmlyc3QKKworSWYgeW91IHJlYWQgdGhlIHN5c3RlbSBmaWxlIGZpcnN0 LCB5b3Ugd29uJ3QgYmUgYWJsZSB0byB0aGUgYXBwbGljYXRpb24KK2Zyb20gYSBkZXZlbG9wbWVu dCBkaXJlY3RvcnkuCisKK1NpZ25lZC1vZmYtYnk6IEpha3ViIEZpbGFrIDxqZmlsYWtAcmVkaGF0 LmNvbT4KKy0tLQorIHNyYy9jb25maWd1cmF0aW9uLWd1aS9hYnJ0LWNvbmZpZy13aWRnZXQuYyB8 IDggKysrKy0tLS0KKyAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9u cygtKQorCitkaWZmIC0tZ2l0IGEvc3JjL2NvbmZpZ3VyYXRpb24tZ3VpL2FicnQtY29uZmlnLXdp ZGdldC5jIGIvc3JjL2NvbmZpZ3VyYXRpb24tZ3VpL2FicnQtY29uZmlnLXdpZGdldC5jCitpbmRl eCA2NjQxODBkLi4yYzc1NDI5IDEwMDY0NAorLS0tIGEvc3JjL2NvbmZpZ3VyYXRpb24tZ3VpL2Fi cnQtY29uZmlnLXdpZGdldC5jCisrKysgYi9zcmMvY29uZmlndXJhdGlvbi1ndWkvYWJydC1jb25m aWctd2lkZ2V0LmMKK0BAIC0yMjEsMTQgKzIyMSwxNCBAQCBhYnJ0X2NvbmZpZ193aWRnZXRfaW5p dChBYnJ0Q29uZmlnV2lkZ2V0ICpzZWxmKQorICAgICBzZWxmLT5wcml2LT5idWlsZGVyID0gZ3Rr X2J1aWxkZXJfbmV3KCk7CisgICAgIGd0a19idWlsZGVyX3NldF90cmFuc2xhdGlvbl9kb21haW4o c2VsZi0+cHJpdi0+YnVpbGRlciwgR0VUVEVYVF9QQUNLQUdFKTsKKyAKKy0gICAgZ3RrX2J1aWxk ZXJfYWRkX2Zyb21fZmlsZShzZWxmLT5wcml2LT5idWlsZGVyLCBBQlJUX1VJX0RJUiAiLyIgVUlf RklMRV9OQU1FLCAmZXJyb3IpOworKyAgICBndGtfYnVpbGRlcl9hZGRfZnJvbV9maWxlKHNlbGYt PnByaXYtPmJ1aWxkZXIsIFVJX0ZJTEVfTkFNRSwgJmVycm9yKTsKKyAgICAgaWYoZXJyb3IgIT0g TlVMTCkgeworLSAgICAgICAgZ193YXJuaW5nKCJGYWlsZWQgdG8gbG9hZCAnJXMnOiAlcyIsIEFC UlRfVUlfRElSICIvIiBVSV9GSUxFX05BTUUsIGVycm9yLT5tZXNzYWdlKTsKKysgICAgICAgIGxv Z19kZWJ1ZygiRmFpbGVkIHRvIGxvYWQgJyVzJzogJXMiLCBVSV9GSUxFX05BTUUsIGVycm9yLT5t ZXNzYWdlKTsKKyAgICAgICAgIGdfZXJyb3JfZnJlZShlcnJvcik7CisgICAgICAgICBlcnJvciA9 IE5VTEw7CistICAgICAgICBndGtfYnVpbGRlcl9hZGRfZnJvbV9maWxlKHNlbGYtPnByaXYtPmJ1 aWxkZXIsIFVJX0ZJTEVfTkFNRSwgJmVycm9yKTsKKysgICAgICAgIGd0a19idWlsZGVyX2FkZF9m cm9tX2ZpbGUoc2VsZi0+cHJpdi0+YnVpbGRlciwgQUJSVF9VSV9ESVIgIi8iIFVJX0ZJTEVfTkFN RSwgJmVycm9yKTsKKyAgICAgICAgIGlmKGVycm9yICE9IE5VTEwpIHsKKy0gICAgICAgICAgICBn X3dhcm5pbmcoIkZhaWxlZCB0byBsb2FkICclcyc6ICVzIiwgVUlfRklMRV9OQU1FLCBlcnJvci0+ bWVzc2FnZSk7CisrICAgICAgICAgICAgZ193YXJuaW5nKCJGYWlsZWQgdG8gbG9hZCAnJXMnOiAl cyIsIEFCUlRfVUlfRElSICIvIiBVSV9GSUxFX05BTUUsIGVycm9yLT5tZXNzYWdlKTsKKyAgICAg ICAgICAgICBnX2Vycm9yX2ZyZWUoZXJyb3IpOworICAgICAgICAgICAgIHJldHVybjsKKyAgICAg ICAgIH0KKy0tIAorMi40LjEKKwoKZGlmZiAtLWdpdCBhLzAwMjAtY29uZmlnLVVJLWVuYWJsZS1v cHRpb25zLXdpdGhvdXQtY29uZmlnLWZpbGVzLnBhdGNoIGIvMDAyMC1jb25maWctVUktZW5hYmxl LW9wdGlvbnMtd2l0aG91dC1jb25maWctZmlsZXMucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMC4uNWRkODNmZAotLS0gL2Rldi9udWxsCisrKyBiLzAwMjAtY29uZmlnLVVJ LWVuYWJsZS1vcHRpb25zLXdpdGhvdXQtY29uZmlnLWZpbGVzLnBhdGNoCkBAIC0wLDAgKzEsNTUg QEAKK0Zyb20gNWQ1NDQwMjhjM2RkM2Y0YWY5ZDRkYTgzYTRjNTdkMmMwNWMwOTAxNCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IEpha3ViIEZpbGFrIDxqZmlsYWtAcmVkaGF0LmNvbT4K K0RhdGU6IFNhdCwgMTYgTWF5IDIwMTUgMDY6NTE6MDkgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSF0g Y29uZmlnIFVJOiBlbmFibGUgb3B0aW9ucyB3aXRob3V0IGNvbmZpZyBmaWxlcworCitTaWduZWQt b2ZmLWJ5OiBKYWt1YiBGaWxhayA8amZpbGFrQHJlZGhhdC5jb20+CistLS0KKyBzcmMvY29uZmln dXJhdGlvbi1ndWkvYWJydC1jb25maWctd2lkZ2V0LmMgfCAxNCArKysrKysrKysrKystLQorIDEg ZmlsZSBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitkaWZmIC0t Z2l0IGEvc3JjL2NvbmZpZ3VyYXRpb24tZ3VpL2FicnQtY29uZmlnLXdpZGdldC5jIGIvc3JjL2Nv bmZpZ3VyYXRpb24tZ3VpL2FicnQtY29uZmlnLXdpZGdldC5jCitpbmRleCAyYzc1NDI5Li44YmZj MjY5IDEwMDY0NAorLS0tIGEvc3JjL2NvbmZpZ3VyYXRpb24tZ3VpL2FicnQtY29uZmlnLXdpZGdl dC5jCisrKysgYi9zcmMvY29uZmlndXJhdGlvbi1ndWkvYWJydC1jb25maWctd2lkZ2V0LmMKK0BA IC0xNzUsMTAgKzE3NSwxMyBAQCBvbl9zd2l0Y2hfYWN0aXZhdGUoR09iamVjdCAgICAgICAqb2Jq ZWN0LAorICAgICAgICAgR1BhcmFtU3BlYyAgICAgKnNwZWMsCisgICAgICAgICBBYnJ0Q29uZmln V2lkZ2V0ICpjb25maWcpCisgeworKyAgICBBYnJ0Q29uZmlnV2lkZ2V0T3B0aW9uICpvcHRpb24g PSBnX29iamVjdF9nZXRfZGF0YShHX09CSkVDVChvYmplY3QpLCAiYWJydC1vcHRpb24iKTsKKysg ICAgaWYgKG9wdGlvbi0+Y29uZmlnID09IE5VTEwpCisrICAgICAgICByZXR1cm47CisrCisgICAg IGNvbnN0IGdib29sZWFuIHN0YXRlID0gZ3RrX3N3aXRjaF9nZXRfYWN0aXZlKEdUS19TV0lUQ0go b2JqZWN0KSk7CisgICAgIGNvbnN0IGNoYXIgKmNvbnN0IHZhbCA9IHN0YXRlID8gInllcyIgOiAi bm8iOworIAorLSAgICBBYnJ0Q29uZmlnV2lkZ2V0T3B0aW9uICpvcHRpb24gPSBnX29iamVjdF9n ZXRfZGF0YShHX09CSkVDVChvYmplY3QpLCAiYWJydC1vcHRpb24iKTsKKyAgICAgbG9nX2RlYnVn KCIlcyA6ICVzIiwgb3B0aW9uLT5uYW1lLCB2YWwpOworICAgICBhYnJ0X2FwcF9jb25maWd1cmF0 aW9uX3NldF92YWx1ZShvcHRpb24tPmNvbmZpZywgb3B0aW9uLT5uYW1lLCB2YWwpOworICAgICBh YnJ0X2FwcF9jb25maWd1cmF0aW9uX3NhdmUob3B0aW9uLT5jb25maWcpOworQEAgLTE5MSw3ICsx OTQsMTEgQEAgdXBkYXRlX29wdGlvbl9jdXJyZW50X3ZhbHVlKEFicnRDb25maWdXaWRnZXQgKnNl bGYsIGVudW0gQWJydE9wdGlvbnMgb3BpZCkKKyAgICAgYXNzZXJ0KChvcGlkID49IF9BQlJUX09Q VF9CRUdJTl8gJiYgb3BpZCA8IF9BQlJUX09QVF9FTkRfKSB8fCAhIk91dCBvZiByYW5nZSBPcHRp b24gSUQgdmFsdWUiKTsKKyAKKyAgICAgQWJydENvbmZpZ1dpZGdldE9wdGlvbiAqb3B0aW9uID0g JihzZWxmLT5wcml2LT5vcHRpb25zW29waWRdKTsKKy0gICAgY29uc3QgY2hhciAqdmFsID0gYWJy dF9hcHBfY29uZmlndXJhdGlvbl9nZXRfdmFsdWUob3B0aW9uLT5jb25maWcsIG9wdGlvbi0+bmFt ZSk7CisrCisrICAgIGNvbnN0IGNoYXIgKnZhbCA9IE5VTEw7CisrICAgIGlmIChvcHRpb24tPmNv bmZpZyAhPSBOVUxMKQorKyAgICAgICAgdmFsID0gYWJydF9hcHBfY29uZmlndXJhdGlvbl9nZXRf dmFsdWUob3B0aW9uLT5jb25maWcsIG9wdGlvbi0+bmFtZSk7CisrCisgICAgIG9wdGlvbi0+Y3Vy cmVudF92YWx1ZSA9IHZhbCA/IHN0cmluZ190b19ib29sKHZhbCkgOiBvcHRpb24tPmRlZmF1bHRf dmFsdWU7CisgfQorIAorQEAgLTIwOSw2ICsyMTYsOSBAQCBjb25uZWN0X3N3aXRjaF93aXRoX29w dGlvbihBYnJ0Q29uZmlnV2lkZ2V0ICpzZWxmLCBlbnVtIEFicnRPcHRpb25zIG9waWQsIGNvbnN0 CisgICAgIGdfb2JqZWN0X3NldF9kYXRhKEdfT0JKRUNUKGdzdyksICJhYnJ0LW9wdGlvbiIsIG9w dGlvbik7CisgICAgIGdfc2lnbmFsX2Nvbm5lY3QoR19PQkpFQ1QoZ3N3KSwgIm5vdGlmeTo6YWN0 aXZlIiwKKyAgICAgICAgICAgICBHX0NBTExCQUNLKG9uX3N3aXRjaF9hY3RpdmF0ZSksIHNlbGYp OworKworKyAgICBpZiAob3B0aW9uLT5jb25maWcgPT0gTlVMTCkKKysgICAgICAgIGd0a193aWRn ZXRfc2V0X3NlbnNpdGl2ZShHVEtfV0lER0VUKGdzdyksIEZBTFNFKTsKKyB9CisgCisgc3RhdGlj IHZvaWQKKy0tIAorMi40LjEKKwoKZGlmZiAtLWdpdCBhLzAwMjEtY29uZmlnLVVJLUF1dG9tYXRp Yy1yZXBvcnRpbmctZnJvbS1HU2V0dGluZ3MucGF0Y2ggYi8wMDIxLWNvbmZpZy1VSS1BdXRvbWF0 aWMtcmVwb3J0aW5nLWZyb20tR1NldHRpbmdzLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAuLjI5YThhYmQKLS0tIC9kZXYvbnVsbAorKysgYi8wMDIxLWNvbmZpZy1VSS1B dXRvbWF0aWMtcmVwb3J0aW5nLWZyb20tR1NldHRpbmdzLnBhdGNoCkBAIC0wLDAgKzEsNjAyIEBA CitGcm9tIGFiZGVkYWZkM2E1MzBhZDRiYWE5OTIwMTBhM2NmYzg3NjQ1ZDk4ZDEgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCitGcm9tOiBKYWt1YiBGaWxhayA8amZpbGFrQHJlZGhhdC5jb20+CitE YXRlOiBTYXQsIDE2IE1heSAyMDE1IDA2OjUxOjM3ICswMjAwCitTdWJqZWN0OiBbUEFUQ0hdIGNv bmZpZyBVSTogQXV0b21hdGljIHJlcG9ydGluZyBmcm9tIEdTZXR0aW5ncworCitJZiBQcml2YWN5 IHBhbmVscyBleGlzdHM6CisgIE1ha2UgdGhlIHdpZGdldCBpbnNlbnNpdGl2ZSBiZWNhdXNlIHRo ZSB1c2VyIGNhbiBvbmx5IHJlYWQgaXRzIHZhbHVlLgorICBBZGQgYSBidXR0b24gbGF1bmNoaW5n IFByaXZhY3kgcGFuZWwuCitFbHNlOgorICBSZWFkL3dyaXRlIHRoZSBHU2V0dGluZ3MgYW5kIHNo b3cgYSB3YXJuaW5nIGFib3V0IG1vZGlmeWluZyB0aGUKKyAgR1NldHRpbmdzLgorCitTaWduZWQt b2ZmLWJ5OiBKYWt1YiBGaWxhayA8amZpbGFrQHJlZGhhdC5jb20+CistLS0KKyBwby9QT1RGSUxF Uy5pbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKKyBzcmMvY29uZmln dXJhdGlvbi1ndWkvYWJydC1jb25maWctd2lkZ2V0LmMgICAgIHwgMjAxICsrKysrKysrKysrKysr KysrKysrKysrLS0KKyBzcmMvY29uZmlndXJhdGlvbi1ndWkvYWJydC1jb25maWctd2lkZ2V0Lmds YWRlIHwgIDgyICsrKystLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDIxNyBpbnNlcnRpb25zKCsp LCA2NyBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3BvL1BPVEZJTEVTLmluIGIvcG8vUE9U RklMRVMuaW4KK2luZGV4IDBkYTEzOTYuLjhjMzE0MzggMTAwNjQ0CistLS0gYS9wby9QT1RGSUxF Uy5pbgorKysrIGIvcG8vUE9URklMRVMuaW4KK0BAIC0zLDYgKzMsNyBAQAorICMgUGxlYXNlIGtl ZXAgdGhpcyBmaWxlIHNvcnRlZCBhbHBoYWJldGljYWxseS4KKyBzcmMvYXBwbGV0L2FicnQtYXBw bGV0LmRlc2t0b3AuaW4KKyBzcmMvYXBwbGV0L2FwcGxldC5jCisrc3JjL2NvbmZpZ3VyYXRpb24t Z3VpL2FicnQtY29uZmlnLXdpZGdldC5jCisgc3JjL2NvbmZpZ3VyYXRpb24tZ3VpL2FicnQtY29u ZmlnLXdpZGdldC5nbGFkZQorIHNyYy9jb25maWd1cmF0aW9uLWd1aS9zeXN0ZW0tY29uZmlnLWFi cnQuYworIHNyYy9jb25maWd1cmF0aW9uLWd1aS9tYWluLmMKK2RpZmYgLS1naXQgYS9zcmMvY29u ZmlndXJhdGlvbi1ndWkvYWJydC1jb25maWctd2lkZ2V0LmMgYi9zcmMvY29uZmlndXJhdGlvbi1n dWkvYWJydC1jb25maWctd2lkZ2V0LmMKK2luZGV4IDhiZmMyNjkuLmM5YjBiMDIgMTAwNjQ0Cist LS0gYS9zcmMvY29uZmlndXJhdGlvbi1ndWkvYWJydC1jb25maWctd2lkZ2V0LmMKKysrKyBiL3Ny Yy9jb25maWd1cmF0aW9uLWd1aS9hYnJ0LWNvbmZpZy13aWRnZXQuYworQEAgLTIxLDYgKzIxLDgg QEAKKyAjZW5kaWYKKyAKKyAjaW5jbHVkZSAiYWJydC1jb25maWctd2lkZ2V0LmgiCisrI2luY2x1 ZGUgPHNhdHlyL3V0aWxzLmg+CisrI2luY2x1ZGUgPGdpby9nZGVza3RvcGFwcGluZm8uaD4KKyAK KyAjaW5jbHVkZSAibGliYWJydC5oIgorICNpbmNsdWRlIDxhc3NlcnQuaD4KK0BAIC0zMiwxOSAr MzQsMzYgQEAKKyAKKyAjZGVmaW5lIFVJX0ZJTEVfTkFNRSAiYWJydC1jb25maWctd2lkZ2V0Lmds YWRlIgorIAorKy8qIEFicnRDb25maWdXaWRnZXRQcml2YXRlOgorKyAqICAgICArIEFicnRDb25m aWdXaWRnZXRPcHRpb24gPT0gImFicnQtb3B0aW9uIiBvZiBHdGtTd2l0Y2gKKysgKiAgICAgKyBB YnJ0Q29uZmlnV2lkZ2V0T3B0aW9uID09ICJhYnJ0LW9wdGlvbiIgb2YgR3RrU3dpdGNoCisrICog ICAgICsgLi4uCisrICoKKysgKiAgICAgKyBBYnJ0QXBwQ29uZmlndXJhdGlvbiA9PSBjb25maWcg b2YgQWJydENvbmZpZ1dpZGdldE9wdGlvbgorKyAqICAgICArIEFicnRBcHBDb25maWd1cmF0aW9u ID09IGNvbmZpZyBvZiBBYnJ0Q29uZmlnV2lkZ2V0T3B0aW9uCisrICogICAgICsgLi4uCisrICov CisrCisrLyogVGhpcyBzdHJ1Y3R1cmUgcmVwcmVzZW50cyBlaXRoZXIgYW4gQUJSVCBjb25maWd1 cmF0aW9uIGZpbGUgb3IgYSBHU2V0dGluZ3MKKysgKiBzY2hlbWEuCisrICovCisgdHlwZWRlZiBz dHJ1Y3QgeworLSAgICBjaGFyICphcHBfbmFtZTsKKy0gICAgbWFwX3N0cmluZ190ICpzZXR0aW5n czsKKysgICAgY2hhciAqYXBwX25hbWU7ICAgICAgICAgICAgIC8vLzwgZS5nIGFicnQtYXBwbGV0 LCBvcmcuZ25vbWUuZGVza3RvcC5wcml2YWN5CisrICAgIG1hcF9zdHJpbmdfdCAqc2V0dGluZ3M7 ICAgICAvLy88IEFCUlQgY29uZmlndXJhdGlvbiBmaWxlCisrICAgIEdTZXR0aW5ncyAqZ2xpYl9z ZXR0aW5nczsgICAvLy88IEdTZXR0aW5ncworIH0gQWJydEFwcENvbmZpZ3VyYXRpb247CisgCisr LyogVGhpcyBzdHJ1Y3R1cmUgcmVwcmVzZW50cyBhIHNpbmdsZSBzd2l0Y2guCisrICovCisgdHlw ZWRlZiBzdHJ1Y3QgeworLSAgICBjb25zdCBjaGFyICpuYW1lOworKyAgICBjb25zdCBjaGFyICpu YW1lOyAgICAgICAgICAgLy8vPCBlLmcuIGFza19zdGVhbF9kaXIsIHJlcG9ydC10ZWNobmljYWwt cHJvYmxlbXMKKyAgICAgR3RrU3dpdGNoICp3aWRnZXQ7CisgICAgIGdib29sZWFuIGRlZmF1bHRf dmFsdWU7CisgICAgIGdib29sZWFuIGN1cnJlbnRfdmFsdWU7CisgICAgIEFicnRBcHBDb25maWd1 cmF0aW9uICpjb25maWc7CisgfSBBYnJ0Q29uZmlnV2lkZ2V0T3B0aW9uOworIAorKy8qIEVhY2gg Y29uZmlndXJhdGlvbiBvcHRpb24gaGFzIGl0cyBvd24gbnVtYmVyLiAqLworIGVudW0gQWJydE9w dGlvbnMKKyB7CisgICAgIF9BQlJUX09QVF9CRUdJTl8sCitAQCAtNjAsMTEgKzc5LDE1IEBAIGVu dW0gQWJydE9wdGlvbnMKKyAgICAgX0FCUlRfT1BUX0VORF8sCisgfTsKKyAKKysvKiBUaGlzIHN0 cnVjdHVyZSBob2xkcyBwcml2YXRlIGRhdGEgb2YgQWJydENvbmZpZ1dpZGdldAorKyAqLworIHN0 cnVjdCBBYnJ0Q29uZmlnV2lkZ2V0UHJpdmF0ZSB7CisgICAgIEd0a0J1aWxkZXIgICAqYnVpbGRl cjsKKyAgICAgQWJydEFwcENvbmZpZ3VyYXRpb24gKnJlcG9ydF9ndGtfY29uZjsKKyAgICAgQWJy dEFwcENvbmZpZ3VyYXRpb24gKmFicnRfYXBwbGV0X2NvbmY7CisrICAgIEFicnRBcHBDb25maWd1 cmF0aW9uICpwcml2YWN5X2dzZXR0aW5nczsKKyAKKysgICAgLyogU3RhdGljIGFycmF5IGZvciBh bGwgc3dpdGNoZXMgKi8KKyAgICAgQWJydENvbmZpZ1dpZGdldE9wdGlvbiBvcHRpb25zW19BQlJU X09QVF9FTkRfXTsKKyB9OworIAorQEAgLTc5LDYgKzEwMiw4IEBAIHN0YXRpYyBndWludCBzX3Np Z25hbHNbU05fTEFTVF9TSUdOQUxdID0geyAwIH07CisgCisgc3RhdGljIHZvaWQgYWJydF9jb25m aWdfd2lkZ2V0X2ZpbmFsaXplKEdPYmplY3QgKm9iamVjdCk7CisgCisrLyogTmV3IEFCUlQgY29u ZmlndXJhdGlvbiBmaWxlIHdyYXBwZXIKKysgKi8KKyBzdGF0aWMgQWJydEFwcENvbmZpZ3VyYXRp b24gKgorIGFicnRfYXBwX2NvbmZpZ3VyYXRpb25fbmV3KGNvbnN0IGNoYXIgKmFwcF9uYW1lKQor IHsKK0BAIC04Niw2ICsxMTEsNyBAQCBhYnJ0X2FwcF9jb25maWd1cmF0aW9uX25ldyhjb25zdCBj aGFyICphcHBfbmFtZSkKKyAKKyAgICAgY29uZi0+YXBwX25hbWUgPSB4c3RyZHVwKGFwcF9uYW1l KTsKKyAgICAgY29uZi0+c2V0dGluZ3MgPSBuZXdfbWFwX3N0cmluZygpOworKyAgICBjb25mLT5n bGliX3NldHRpbmdzID0gTlVMTDsKKyAKKyAgICAgaWYoIWxvYWRfYXBwX2NvbmZfZmlsZShjb25m LT5hcHBfbmFtZSwgY29uZi0+c2V0dGluZ3MpKSB7CisgICAgICAgICBnX3dhcm5pbmcoIkZhaWxl ZCB0byBsb2FkIGNvbmZpZyBmb3IgJyVzJyIsIGNvbmYtPmFwcF9uYW1lKTsKK0BAIC05NCwyMiAr MTIwLDUwIEBAIGFicnRfYXBwX2NvbmZpZ3VyYXRpb25fbmV3KGNvbnN0IGNoYXIgKmFwcF9uYW1l KQorICAgICByZXR1cm4gY29uZjsKKyB9CisgCisrLyogTmV3IEdTZXR0aW5ncyB3cmFwcGVyCisr ICovCisrc3RhdGljIEFicnRBcHBDb25maWd1cmF0aW9uICoKKythYnJ0X2FwcF9jb25maWd1cmF0 aW9uX25ld19nbGliKGNvbnN0IGNoYXIgKnNjaGVtYSkKKyt7CisrICAgIEFicnRBcHBDb25maWd1 cmF0aW9uICpjb25mID0geG1hbGxvYyhzaXplb2YoKmNvbmYpKTsKKysKKysgICAgY29uZi0+YXBw X25hbWUgPSB4c3RyZHVwKHNjaGVtYSk7CisrICAgIGNvbmYtPnNldHRpbmdzID0gTlVMTDsKKysg ICAgY29uZi0+Z2xpYl9zZXR0aW5ncyA9IGdfc2V0dGluZ3NfbmV3KGNvbmYtPmFwcF9uYW1lKTsK KysKKysgICAgcmV0dXJuIGNvbmY7CisrfQorKworIHN0YXRpYyB2b2lkCisgYWJydF9hcHBfY29u ZmlndXJhdGlvbl9zZXRfdmFsdWUoQWJydEFwcENvbmZpZ3VyYXRpb24gKmNvbmYsIGNvbnN0IGNo YXIgKm5hbWUsIGNvbnN0IGNoYXIgKnZhbHVlKQorIHsKKy0gICAgc2V0X2FwcF91c2VyX3NldHRp bmcoY29uZi0+c2V0dGluZ3MsIG5hbWUsIHZhbHVlKTsKKysgICAgaWYgKGNvbmYtPnNldHRpbmdz KQorKyAgICAgICAgc2V0X2FwcF91c2VyX3NldHRpbmcoY29uZi0+c2V0dGluZ3MsIG5hbWUsIHZh bHVlKTsKKysgICAgZWxzZSBpZiAoY29uZi0+Z2xpYl9zZXR0aW5ncykKKysgICAgICAgIGdfc2V0 dGluZ3Nfc2V0X2Jvb2xlYW4oY29uZi0+Z2xpYl9zZXR0aW5ncywgbmFtZSwgc3RyaW5nX3RvX2Jv b2wodmFsdWUpKTsKKysgICAgZWxzZQorKyAgICAgICAgYXNzZXJ0KCEiQlVHOiBub3QgcHJvcGVy bHkgaW5pdGlhbGl6ZWQgQWJydEFwcENvbmZpZ3VyYXRpb24iKTsKKyB9CisgCisgc3RhdGljIGNv bnN0IGNoYXIgKgorIGFicnRfYXBwX2NvbmZpZ3VyYXRpb25fZ2V0X3ZhbHVlKEFicnRBcHBDb25m aWd1cmF0aW9uICpjb25mLCBjb25zdCBjaGFyICpuYW1lKQorIHsKKy0gICAgcmV0dXJuIGdldF9h cHBfdXNlcl9zZXR0aW5nKGNvbmYtPnNldHRpbmdzLCBuYW1lKTsKKysgICAgaWYgKGNvbmYtPnNl dHRpbmdzKQorKyAgICAgICAgcmV0dXJuIGdldF9hcHBfdXNlcl9zZXR0aW5nKGNvbmYtPnNldHRp bmdzLCBuYW1lKTsKKysKKysgICAgaWYgKGNvbmYtPmdsaWJfc2V0dGluZ3MpCisrICAgICAgICBy ZXR1cm4gZ19zZXR0aW5nc19nZXRfYm9vbGVhbihjb25mLT5nbGliX3NldHRpbmdzLCBuYW1lKSA/ ICJ5ZXMiIDogIm5vIjsKKysKKysgICAgYXNzZXJ0KCEiQlVHOiBub3QgcHJvcGVybHkgaW5pdGlh bGl6ZWQgQWJydEFwcENvbmZpZ3VyYXRpb24iKTsKKyB9CisgCisgc3RhdGljIHZvaWQKKyBhYnJ0 X2FwcF9jb25maWd1cmF0aW9uX3NhdmUoQWJydEFwcENvbmZpZ3VyYXRpb24gKmNvbmYpCisgewor LSAgICBzYXZlX2FwcF9jb25mX2ZpbGUoY29uZi0+YXBwX25hbWUsIGNvbmYtPnNldHRpbmdzKTsK KysgICAgaWYgKGNvbmYtPnNldHRpbmdzKQorKyAgICAgICAgc2F2ZV9hcHBfY29uZl9maWxlKGNv bmYtPmFwcF9uYW1lLCBjb25mLT5zZXR0aW5ncyk7CisrCisrICAgIC8qIE5vIG5lZWQgdG8gc2F2 ZSBHU2V0dGluZ3MgYmVjYXVzZSBjaGFuZ2VzIGFyZSBhcHBsaWVkIGluc3RhbnRseSAqLworIH0K KyAKKyBzdGF0aWMgdm9pZAorQEAgLTEyMSw4ICsxNzUsMTcgQEAgYWJydF9hcHBfY29uZmlndXJh dGlvbl9mcmVlKEFicnRBcHBDb25maWd1cmF0aW9uICpjb25mKQorICAgICBmcmVlKGNvbmYtPmFw cF9uYW1lKTsKKyAgICAgY29uZi0+YXBwX25hbWUgPSAodm9pZCAqKTB4REVBREJFQUY7CisgCist ICAgIGZyZWVfbWFwX3N0cmluZyhjb25mLT5zZXR0aW5ncyk7CistICAgIGNvbmYtPnNldHRpbmdz ID0gKHZvaWQgKikweERFQURCRUFGOworKyAgICBpZiAoY29uZi0+c2V0dGluZ3MpCisrICAgIHsK KysgICAgICAgIGZyZWVfbWFwX3N0cmluZyhjb25mLT5zZXR0aW5ncyk7CisrICAgICAgICBjb25m LT5zZXR0aW5ncyA9ICh2b2lkICopMHhERUFEQkVBRjsKKysgICAgfQorKworKyAgICBpZiAoY29u Zi0+Z2xpYl9zZXR0aW5ncykKKysgICAgeworKyAgICAgICAgZ19vYmplY3RfdW5yZWYoY29uZi0+ Z2xpYl9zZXR0aW5ncyk7CisrICAgICAgICBjb25mLT5nbGliX3NldHRpbmdzID0gKHZvaWQgKikw eERFQURCRUFGOworKyAgICB9CisgfQorIAorIHN0YXRpYyB2b2lkCitAQCAtMTYxLDYgKzIyNCw5 IEBAIGFicnRfY29uZmlnX3dpZGdldF9maW5hbGl6ZShHT2JqZWN0ICpvYmplY3QpCisgICAgIGFi cnRfYXBwX2NvbmZpZ3VyYXRpb25fZnJlZShzZWxmLT5wcml2LT5hYnJ0X2FwcGxldF9jb25mKTsK KyAgICAgc2VsZi0+cHJpdi0+YWJydF9hcHBsZXRfY29uZiA9IE5VTEw7CisgCisrICAgIGFicnRf YXBwX2NvbmZpZ3VyYXRpb25fZnJlZShzZWxmLT5wcml2LT5wcml2YWN5X2dzZXR0aW5ncyk7Cisr ICAgIHNlbGYtPnByaXYtPnByaXZhY3lfZ3NldHRpbmdzID0gTlVMTDsKKysKKyAgICAgR19PQkpF Q1RfQ0xBU1MoYWJydF9jb25maWdfd2lkZ2V0X3BhcmVudF9jbGFzcyktPmZpbmFsaXplKG9iamVj dCk7CisgfQorIAorQEAgLTIxNyw4ICsyODMsMzEgQEAgY29ubmVjdF9zd2l0Y2hfd2l0aF9vcHRp b24oQWJydENvbmZpZ1dpZGdldCAqc2VsZiwgZW51bSBBYnJ0T3B0aW9ucyBvcGlkLCBjb25zdAor ICAgICBnX3NpZ25hbF9jb25uZWN0KEdfT0JKRUNUKGdzdyksICJub3RpZnk6OmFjdGl2ZSIsCisg ICAgICAgICAgICAgR19DQUxMQkFDSyhvbl9zd2l0Y2hfYWN0aXZhdGUpLCBzZWxmKTsKKyAKKy0g ICAgaWYgKG9wdGlvbi0+Y29uZmlnID09IE5VTEwpCistICAgICAgICBndGtfd2lkZ2V0X3NldF9z ZW5zaXRpdmUoR1RLX1dJREdFVChnc3cpLCBGQUxTRSk7CisrICAgIC8qIElmIHRoZSBvcHRpb24g aGFzIG5vIGNvbmZpZywgbWFrZSB0aGUgY29ycmVzcG9uZGluZyBpbnNlbnNpdGl2ZS4gKi8KKysg ICAgZ3RrX3dpZGdldF9zZXRfc2Vuc2l0aXZlKEdUS19XSURHRVQoZ3N3KSwgb3B0aW9uLT5jb25m aWcgIT0gTlVMTCk7CisrfQorKworK3N0YXRpYyB2b2lkCisrcHBfbGF1bmNoZXJfY2xpY2tlZChH dGtCdXR0b24gKmxhdW5jaGVyLCBncG9pbnRlciAqdW51c2VkX2RhdGEpCisreworKyAgICBHRGVz a3RvcEFwcEluZm8gKmFwcCA9IGdfb2JqZWN0X2dldF9kYXRhKEdfT0JKRUNUKGxhdW5jaGVyKSwg ImxhdW5jaGVkLWFwcCIpOworKyAgICBHRXJyb3IgKmVyciA9IE5VTEw7CisrICAgIGlmICghZ19h cHBfaW5mb19sYXVuY2goR19BUFBfSU5GTyhhcHApLCBOVUxMLCBOVUxMLCAmZXJyKSkKKysgICAg eworKyAgICAgICAgcGVycm9yX21zZygiQ291bGQgbm90IGxhdW5jaCAnJXMnOiAlcyIsCisrICAg ICAgICAgICAgICAgIGdfZGVza3RvcF9hcHBfaW5mb19nZXRfZmlsZW5hbWUoR19ERVNLVE9QX0FQ UF9JTkZPIChhcHApKSwKKysgICAgICAgICAgICAgICAgZXJyLT5tZXNzYWdlKTsKKysgICAgfQor K30KKysKKytzdGF0aWMgdm9pZAorK29zX3JlbGVhc2VfY2FsbGJhY2soY2hhciAqa2V5LCBjaGFy ICp2YWx1ZSwgdm9pZCAqZGF0YSkKKyt7CisrICAgIGlmIChzdHJjbXAoa2V5LCAiUFJJVkFDWV9Q T0xJQ1kiKSA9PSAwKQorKyAgICAgICAgKihjaGFyICoqKWRhdGEgPSB2YWx1ZTsKKysgICAgZWxz ZQorKyAgICAgICAgZnJlZSh2YWx1ZSk7CisrICAgIGZyZWUoa2V5KTsKKyB9CisgCisgc3RhdGlj IHZvaWQKK0BAIC0yNDksNiArMzM4LDcgQEAgYWJydF9jb25maWdfd2lkZ2V0X2luaXQoQWJydENv bmZpZ1dpZGdldCAqc2VsZikKKyAKKyAgICAgc2VsZi0+cHJpdi0+cmVwb3J0X2d0a19jb25mID0g YWJydF9hcHBfY29uZmlndXJhdGlvbl9uZXcoInJlcG9ydC1ndGsiKTsKKyAgICAgc2VsZi0+cHJp di0+YWJydF9hcHBsZXRfY29uZiA9IGFicnRfYXBwX2NvbmZpZ3VyYXRpb25fbmV3KCJhYnJ0LWFw cGxldCIpOworKyAgICBzZWxmLT5wcml2LT5wcml2YWN5X2dzZXR0aW5ncyA9IGFicnRfYXBwX2Nv bmZpZ3VyYXRpb25fbmV3X2dsaWIoIm9yZy5nbm9tZS5kZXNrdG9wLnByaXZhY3kiKTsKKyAKKyAg ICAgLyogSW5pdGlhbGl6ZSBvcHRpb25zICovCisgICAgIC8qIHJlcG9ydC1ndGsgKi8KK0BAIC0y NTksMTUgKzM0OSw5OCBAQCBhYnJ0X2NvbmZpZ193aWRnZXRfaW5pdChBYnJ0Q29uZmlnV2lkZ2V0 ICpzZWxmKQorICAgICBzZWxmLT5wcml2LT5vcHRpb25zW0FCUlRfT1BUX1VQTE9BRF9DT1JFRFVN UF0ubmFtZSA9ICJhYnJ0X2FuYWx5emVfc21hcnRfYXNrX3VwbG9hZF9jb3JlZHVtcCI7CisgICAg IHNlbGYtPnByaXYtPm9wdGlvbnNbQUJSVF9PUFRfVVBMT0FEX0NPUkVEVU1QXS5kZWZhdWx0X3Zh bHVlID0gVFJVRTsKKyAgICAgc2VsZi0+cHJpdi0+b3B0aW9uc1tBQlJUX09QVF9VUExPQURfQ09S RURVTVBdLmNvbmZpZyA9IHNlbGYtPnByaXYtPnJlcG9ydF9ndGtfY29uZjsKKy0KKyAgICAgc2Vs Zi0+cHJpdi0+b3B0aW9uc1tBQlJUX09QVF9QUklWQVRFX1RJQ0tFVF0ubmFtZSA9IENSRUFURV9Q UklWQVRFX1RJQ0tFVDsKKyAgICAgc2VsZi0+cHJpdi0+b3B0aW9uc1tBQlJUX09QVF9QUklWQVRF X1RJQ0tFVF0uZGVmYXVsdF92YWx1ZSA9IEZBTFNFOworICAgICBzZWxmLT5wcml2LT5vcHRpb25z W0FCUlRfT1BUX1BSSVZBVEVfVElDS0VUXS5jb25maWcgPSBzZWxmLT5wcml2LT5yZXBvcnRfZ3Rr X2NvbmY7CisgCisgICAgIC8qIGFicnQtYXBwbGV0ICovCistICAgIHNlbGYtPnByaXYtPm9wdGlv bnNbQUJSVF9PUFRfU0VORF9VUkVQT1JUXS5uYW1lID0gIkF1dG9yZXBvcnRpbmdFbmFibGVkIjsK Ky0gICAgc2VsZi0+cHJpdi0+b3B0aW9uc1tBQlJUX09QVF9TRU5EX1VSRVBPUlRdLmRlZmF1bHRf dmFsdWUgPSBnX3NldHRpbmdzX2F1dG9yZXBvcnRpbmc7CistICAgIHNlbGYtPnByaXYtPm9wdGlv bnNbQUJSVF9PUFRfU0VORF9VUkVQT1JUXS5jb25maWcgPSBzZWxmLT5wcml2LT5hYnJ0X2FwcGxl dF9jb25mOworKyAgICBzZWxmLT5wcml2LT5vcHRpb25zW0FCUlRfT1BUX1NFTkRfVVJFUE9SVF0u bmFtZSA9ICJyZXBvcnQtdGVjaG5pY2FsLXByb2JsZW1zIjsKKysgICAgc2VsZi0+cHJpdi0+b3B0 aW9uc1tBQlJUX09QVF9TRU5EX1VSRVBPUlRdLmRlZmF1bHRfdmFsdWUgPQorKyAgICAgICAgICAg IHN0cmluZ190b19ib29sKGFicnRfYXBwX2NvbmZpZ3VyYXRpb25fZ2V0X3ZhbHVlKHNlbGYtPnBy aXYtPnByaXZhY3lfZ3NldHRpbmdzLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZXBvcnQtdGVjaG5pY2FsLXByb2JsZW1zIikp OworKyAgICB7CisrICAgICAgICAvKiBHZXQgdGhlIGNvbnRhaW5lciB3aWRnZXQgZm9yIHRoZSBs YXVjaCBidXR0b24gYW5kIHdhcm5pbmdzICovCisrICAgICAgICBHdGtXaWRnZXQgKmhib3hfYXV0 b19yZXBvcnRpbmcgPSBXSUQoImhib3hfYXV0b19yZXBvcnRpbmciKTsKKysgICAgICAgIGFzc2Vy dChoYm94X2F1dG9fcmVwb3J0aW5nKTsKKysKKysgICAgICAgIC8qIEJlIGFibGUgdG8gdXNlIGFu b3RoZXIgZGVza3RvcCBmaWxlIHdoaWxlIGRlYnVnZ2luZyAqLworKyAgICAgICAgY29uc3QgY2hh ciAqZ3BwX2FwcCA9IGdldGVudigiQUJSVF9QUklWQUNZX0FQUF9ERVNLVE9QIik7CisrICAgICAg ICBpZiAoZ3BwX2FwcCA9PSBOVUxMKQorKyAgICAgICAgICAgIGdwcF9hcHAgPSAiZ25vbWUtcHJp dmFjeS1wYW5lbC5kZXNrdG9wIjsKKysKKysgICAgICAgIEdEZXNrdG9wQXBwSW5mbyAqYXBwID0g Z19kZXNrdG9wX2FwcF9pbmZvX25ldyhncHBfYXBwKTsKKysgICAgICAgIGNoYXIgKm1lc3NhZ2Ug PSBOVUxMOworKyAgICAgICAgY2hhciAqbWFya3VwID0gTlVMTDsKKysgICAgICAgIGlmICghYXBw KQorKyAgICAgICAgeworKyAgICAgICAgICAgIC8qIE1ha2UgdGhlIHN3aXRjaCBlZGl0YWJsZSAq LworKyAgICAgICAgICAgIHNlbGYtPnByaXYtPm9wdGlvbnNbQUJSVF9PUFRfU0VORF9VUkVQT1JU XS5jb25maWcgPSBzZWxmLT5wcml2LT5wcml2YWN5X2dzZXR0aW5nczsKKysKKysgICAgICAgICAg ICBjaGFyICpvc19yZWxlYXNlID0geG1hbGxvY19vcGVuX3JlYWRfY2xvc2UoIi9ldGMvb3MtcmVs ZWFzZSIsIC8qbm8gc2l6ZSBsaW1pdCovTlVMTCk7CisrICAgICAgICAgICAgY2hhciAqcHJpdmFj eV9wb2xpY3kgPSBOVUxMOworKworKyAgICAgICAgICAgIC8qIFRyeSB0byBnZXQgdGhlIHZhbHVl IG9mIFBSSVZBQ1lfUE9MSUNZIGZyb20gL2V0Yy9vcy1yZWxlYXNlICovCisrICAgICAgICAgICAg c3JfcGFyc2Vfb3NfcmVsZWFzZShvc19yZWxlYXNlLCBvc19yZWxlYXNlX2NhbGxiYWNrLCAodm9p ZCAqKSZwcml2YWN5X3BvbGljeSk7CisrCisrICAgICAgICAgICAgbWVzc2FnZSA9IHhhc3ByaW50 ZihfKCJUaGUgY29uZmlndXJhdGlvbiBvcHRpb24gYWJvdmUgaGFzIGJlZW4gbW92ZWQgdG8gR1Nl dHRpbmdzIGFuZCAiCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0aGUgc3dp dGNoIGlzIGxpbmtlZCB0byB0aGUgdmFsdWUgb2YgdGhlIHNldHRpbmcgJ3JlcG9ydC10ZWNobmlj YWwtcHJvYmxlbXMnICIKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb20g dGhlIHNjaGVtYSAnb3JnLmdub21lLmRlc2t0b3AucHJpdmFjeScuIikpOworKworKyAgICAgICAg ICAgIC8qIERvIG5vdCBhZGQgUHJpdmFjeSBQb2xpY3kgbGluayBpZiAvZXRjL29zLXJlbGVhc2Ug ZG9lcyBub3QgY29udGFpbiBQUklWQUNZX1BPTElDWSAqLworKyAgICAgICAgICAgIGlmIChwcml2 YWN5X3BvbGljeSAhPSBOVUxMKQorKyAgICAgICAgICAgICAgICBtYXJrdXAgPSB4YXNwcmludGYo IjxpPiVzPC9pPlxuXG48YSBocmVmPVwiJXNcIj5Qcml2YWN5IFBvbGljeTwvYT4iLCBtZXNzYWdl LCBwcml2YWN5X3BvbGljeSk7CisrICAgICAgICAgICAgZWxzZQorKyAgICAgICAgICAgICAgICBt YXJrdXAgPSB4YXNwcmludGYoIjxpPiVzPC9pPiIsIG1lc3NhZ2UpOworKworKyAgICAgICAgICAg IGZyZWUocHJpdmFjeV9wb2xpY3kpOworKyAgICAgICAgICAgIGZyZWUob3NfcmVsZWFzZSk7Cisr ICAgICAgICB9CisrICAgICAgICBlbHNlCisrICAgICAgICB7CisrICAgICAgICAgICAgLyogTWFr ZSB0aGUgc3dpdGNoIHJlYWQtb25seSAqLworKyAgICAgICAgICAgIHNlbGYtPnByaXYtPm9wdGlv bnNbQUJSVF9PUFRfU0VORF9VUkVQT1JUXS5jb25maWcgPSBOVUxMOworKworKyAgICAgICAgICAg IG1lc3NhZ2UgPSB4YXNwcmludGYoXygiVGhlIGNvbmZpZ3VyYXRpb24gb3B0aW9uIGFib3ZlIGNh biBiZSBjb25maWd1cmVkIGluIikpOworKyAgICAgICAgICAgIG1hcmt1cCA9IHhhc3ByaW50Zigi PGk+JXM8L2k+IiwgbWVzc2FnZSk7CisrCisrICAgICAgICAgICAgR3RrV2lkZ2V0ICpsYXVuY2hl ciA9IGd0a19idXR0b25fbmV3X3dpdGhfbGFiZWwoZ19hcHBfaW5mb19nZXRfZGlzcGxheV9uYW1l KEdfQVBQX0lORk8oYXBwKSkpOworKworKyAgICAgICAgICAgIC8qIEhlcmUgd2UgY291bGQgcGFz cyB0aGUgbGF1bmNoZXIgdG8gcHBfbGF1bmNoZXJfY2xpY2tlZCgpIGFzIHRoZQorKyAgICAgICAg ICAgICAqIDR0aCBhcmd1bWVudCBvZiBnX3NpZ25hbF9jb25uZWN0KCkgYnV0IHdlIHdvdWxkIGxl ZWsgdGhlCisrICAgICAgICAgICAgICogbGF1bmNoZXIncyBtZW1vcnkuIFRoZXJlZm9yZSB3ZSBu ZWVkIHRvIGZpbmQgYSB3YXkgaG93IHRvIGZyZWUKKysgICAgICAgICAgICAgKiB0aGUgbGF1bmNo ZXIgd2hlbiBpdCBpcyBub3QgbmVlZGVkIGFueW1vcmUuIEd0a1dpZGdldCBpbmhlcml0cworKyAg ICAgICAgICAgICAqIGZyb20gR09iamVjdCB3aGljaCBvZmZlcnMgYSBmdW5jdGlvbmFsaXR5IGZv ciBhdHRhY2hpbmcgYW4KKysgICAgICAgICAgICAgKiBhcmJpdHJhcnkgZGF0YSB0byBpdHMgaW5z dGFuY2VzLiBUaGUgbGFzdCBhcmd1bWVudCBpcyBhIGZ1bmN0aW9uCisrICAgICAgICAgICAgICog Y2FsbGVkIHRvIGRlc3Ryb3kgdGhlIGFyYmlyYXJ0eSBkYXRhIHdoZW4gdGhlIGluc3RhbmNlIGlz IGJlaW5nCisrICAgICAgICAgICAgICogZGVzdG9yeWVkLiAqLworKyAgICAgICAgICAgIGdfb2Jq ZWN0X3NldF9kYXRhX2Z1bGwoR19PQkpFQ1QobGF1bmNoZXIpLCAibGF1bmNoZWQtYXBwIiwgYXBw LCBnX29iamVjdF91bnJlZik7CisrICAgICAgICAgICAgZ19zaWduYWxfY29ubmVjdChsYXVuY2hl ciwgImNsaWNrZWQiLCBHX0NBTExCQUNLKHBwX2xhdW5jaGVyX2NsaWNrZWQpLCBOVUxMKTsKKysK KysgICAgICAgICAgICAvKiBNYWtlIHRoZSBsYXVuY2hlciBidXR0b24gbmFycm93LCBvdGhlcndp c2UgaXQgd291bGQgZXhwYW5kIHRvCisrICAgICAgICAgICAgICogdGhlIHdpZHRoIG9mIHRoZSB3 YXJuaW5pZy4gKi8KKysgICAgICAgICAgICBndGtfd2lkZ2V0X3NldF9oZXhwYW5kKGxhdW5jaGVy LCBGQUxTRSk7CisrICAgICAgICAgICAgZ3RrX3dpZGdldF9zZXRfdmV4cGFuZChsYXVuY2hlciwg RkFMU0UpOworKworKyAgICAgICAgICAgIC8qIE1ha2UgdGhlIGxhdW5jaGVyIGJ1dHRvbiBhbGxp Z25lZCBvbiBjZW50ZXIgb2YgdGhlIHdhcm5pbmcuICovCisrICAgICAgICAgICAgZ3RrX3dpZGdl dF9zZXRfaGFsaWduKGxhdW5jaGVyLCBHVEtfQUxJR05fQ0VOVEVSKTsKKysgICAgICAgICAgICBn dGtfd2lkZ2V0X3NldF92YWxpZ24obGF1bmNoZXIsIEdUS19BTElHTl9DRU5URVIpOworKworKyAg ICAgICAgICAgIGd0a19ib3hfcGFja19lbmQoR1RLX0JPWChoYm94X2F1dG9fcmVwb3J0aW5nKSwg bGF1bmNoZXIsIGZhbHNlLCBmYWxzZSwgMCk7CisrICAgICAgICB9CisrCisrCisrICAgICAgICBH dGtXaWRnZXQgKmxibCA9IGd0a19sYWJlbF9uZXcobWVzc2FnZSk7CisrICAgICAgICBndGtfbGFi ZWxfc2V0X21hcmt1cChHVEtfTEFCRUwobGJsKSwgbWFya3VwKTsKKysgICAgICAgIC8qIERvIG5v dCBleHBhbmQgdGhlIHdpbmRvdyBieSB0b28gbG9uZyB3YXJuaW5nLiAqLworKyAgICAgICAgZ3Rr X2xhYmVsX3NldF9saW5lX3dyYXAoR1RLX0xBQkVMKGxibCksIFRSVUUpOworKyAgICAgICAgLyog TGV0IHVzZXJzIHRvIGNvcHkgdGhlIHdhcm5pbmcuICovCisrICAgICAgICBndGtfbGFiZWxfc2V0 X3NlbGVjdGFibGUoR1RLX0xBQkVMKGxibCksIFRSVUUpOworKworKyAgICAgICAgZnJlZShtYXJr dXApOworKyAgICAgICAgZnJlZShtZXNzYWdlKTsKKysKKysgICAgICAgIGd0a19ib3hfcGFja19z dGFydChHVEtfQk9YKGhib3hfYXV0b19yZXBvcnRpbmcpLCBsYmwsIGZhbHNlLCBmYWxzZSwgMCk7 CisrICAgIH0KKyAKKyAgICAgc2VsZi0+cHJpdi0+b3B0aW9uc1tBQlJUX09QVF9TSE9SVEVORURf UkVQT1JUSU5HXS5uYW1lID0gIlNob3J0ZW5lZFJlcG9ydGluZyI7CisgICAgIHNlbGYtPnByaXYt Pm9wdGlvbnNbQUJSVF9PUFRfU0hPUlRFTkVEX1JFUE9SVElOR10uZGVmYXVsdF92YWx1ZSA9IGdf c2V0dGluZ3Nfc2hvcnRlbmVkcmVwb3J0aW5nOworZGlmZiAtLWdpdCBhL3NyYy9jb25maWd1cmF0 aW9uLWd1aS9hYnJ0LWNvbmZpZy13aWRnZXQuZ2xhZGUgYi9zcmMvY29uZmlndXJhdGlvbi1ndWkv YWJydC1jb25maWctd2lkZ2V0LmdsYWRlCitpbmRleCAzYWE1NjZjLi43ZjYxM2M3IDEwMDY0NAor LS0tIGEvc3JjL2NvbmZpZ3VyYXRpb24tZ3VpL2FicnQtY29uZmlnLXdpZGdldC5nbGFkZQorKysr IGIvc3JjL2NvbmZpZ3VyYXRpb24tZ3VpL2FicnQtY29uZmlnLXdpZGdldC5nbGFkZQorQEAgLTEs NiArMSw3IEBACisgPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKys8IS0t IEdlbmVyYXRlZCB3aXRoIGdsYWRlIDMuMTguMyAtLT4KKyA8aW50ZXJmYWNlPgorLSAgPCEtLSBp bnRlcmZhY2UtcmVxdWlyZXMgZ3RrKyAzLjAgLS0+CisrICA8cmVxdWlyZXMgbGliPSJndGsrIiB2 ZXJzaW9uPSIzLjAiLz4KKyAgIDxvYmplY3QgY2xhc3M9Ikd0a1dpbmRvdyIgaWQ9IndpbmRvdzEi PgorICAgICA8cHJvcGVydHkgbmFtZT0iY2FuX2ZvY3VzIj5GYWxzZTwvcHJvcGVydHk+CisgICAg IDxjaGlsZD4KK0BAIC0xMSw3ICsxMiw2IEBACisgICAgICAgICA8cHJvcGVydHkgbmFtZT0ibWFy Z2luX3JpZ2h0Ij4xMDwvcHJvcGVydHk+CisgICAgICAgICA8cHJvcGVydHkgbmFtZT0ibWFyZ2lu X3RvcCI+MTA8L3Byb3BlcnR5PgorICAgICAgICAgPHByb3BlcnR5IG5hbWU9Im1hcmdpbl9ib3R0 b20iPjEwPC9wcm9wZXJ0eT4KKy0gICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJyb3dfaG9tb2dlbmVv dXMiPlRydWU8L3Byb3BlcnR5PgorICAgICAgICAgPGNoaWxkPgorICAgICAgICAgICA8b2JqZWN0 IGNsYXNzPSJHdGtMYWJlbCIgaWQ9ImxhYmVsMiI+CisgICAgICAgICAgICAgPHByb3BlcnR5IG5h bWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgorQEAgLTI2LDggKzI2LDYgQEAKKyAgICAgICAg ICAgPHBhY2tpbmc+CisgICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9ImxlZnRfYXR0YWNoIj4w PC9wcm9wZXJ0eT4KKyAgICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0idG9wX2F0dGFjaCI+MTwv cHJvcGVydHk+CistICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9IndpZHRoIj4xPC9wcm9wZXJ0 eT4KKy0gICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0iaGVpZ2h0Ij4xPC9wcm9wZXJ0eT4KKyAg ICAgICAgICAgPC9wYWNraW5nPgorICAgICAgICAgPC9jaGlsZD4KKyAgICAgICAgIDxjaGlsZD4K K0BAIC00NCw4ICs0Miw2IEBACisgICAgICAgICAgIDxwYWNraW5nPgorICAgICAgICAgICAgIDxw cm9wZXJ0eSBuYW1lPSJsZWZ0X2F0dGFjaCI+MDwvcHJvcGVydHk+CisgICAgICAgICAgICAgPHBy b3BlcnR5IG5hbWU9InRvcF9hdHRhY2giPjM8L3Byb3BlcnR5PgorLSAgICAgICAgICAgIDxwcm9w ZXJ0eSBuYW1lPSJ3aWR0aCI+MTwvcHJvcGVydHk+CistICAgICAgICAgICAgPHByb3BlcnR5IG5h bWU9ImhlaWdodCI+MTwvcHJvcGVydHk+CisgICAgICAgICAgIDwvcGFja2luZz4KKyAgICAgICAg IDwvY2hpbGQ+CisgICAgICAgICA8Y2hpbGQ+CitAQCAtNTksOCArNTUsNiBAQAorICAgICAgICAg ICA8cGFja2luZz4KKyAgICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0ibGVmdF9hdHRhY2giPjE8 L3Byb3BlcnR5PgorICAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ0b3BfYXR0YWNoIj4wPC9w cm9wZXJ0eT4KKy0gICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0id2lkdGgiPjE8L3Byb3BlcnR5 PgorLSAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJoZWlnaHQiPjE8L3Byb3BlcnR5PgorICAg ICAgICAgICA8L3BhY2tpbmc+CisgICAgICAgICA8L2NoaWxkPgorICAgICAgICAgPGNoaWxkPgor QEAgLTc0LDEzICs2OCwxMiBAQAorICAgICAgICAgICA8cGFja2luZz4KKyAgICAgICAgICAgICA8 cHJvcGVydHkgbmFtZT0ibGVmdF9hdHRhY2giPjE8L3Byb3BlcnR5PgorICAgICAgICAgICAgIDxw cm9wZXJ0eSBuYW1lPSJ0b3BfYXR0YWNoIj4xPC9wcm9wZXJ0eT4KKy0gICAgICAgICAgICA8cHJv cGVydHkgbmFtZT0id2lkdGgiPjE8L3Byb3BlcnR5PgorLSAgICAgICAgICAgIDxwcm9wZXJ0eSBu YW1lPSJoZWlnaHQiPjE8L3Byb3BlcnR5PgorICAgICAgICAgICA8L3BhY2tpbmc+CisgICAgICAg ICA8L2NoaWxkPgorICAgICAgICAgPGNoaWxkPgorICAgICAgICAgICA8b2JqZWN0IGNsYXNzPSJH dGtTd2l0Y2giIGlkPSJzd2l0Y2hfc2VuZF91cmVwb3J0Ij4KKyAgICAgICAgICAgICA8cHJvcGVy dHkgbmFtZT0idmlzaWJsZSI+VHJ1ZTwvcHJvcGVydHk+CisrICAgICAgICAgICAgPHByb3BlcnR5 IG5hbWU9InNlbnNpdGl2ZSI+RmFsc2U8L3Byb3BlcnR5PgorICAgICAgICAgICAgIDxwcm9wZXJ0 eSBuYW1lPSJjYW5fZm9jdXMiPlRydWU8L3Byb3BlcnR5PgorICAgICAgICAgICAgIDxwcm9wZXJ0 eSBuYW1lPSJoYWxpZ24iPmVuZDwvcHJvcGVydHk+CisgICAgICAgICAgICAgPHByb3BlcnR5IG5h bWU9InZhbGlnbiI+Y2VudGVyPC9wcm9wZXJ0eT4KK0BAIC04OSw4ICs4Miw2IEBACisgICAgICAg ICAgIDxwYWNraW5nPgorICAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJsZWZ0X2F0dGFjaCI+ MTwvcHJvcGVydHk+CisgICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9InRvcF9hdHRhY2giPjM8 L3Byb3BlcnR5PgorLSAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ3aWR0aCI+MTwvcHJvcGVy dHk+CistICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9ImhlaWdodCI+MTwvcHJvcGVydHk+Cisg ICAgICAgICAgIDwvcGFja2luZz4KKyAgICAgICAgIDwvY2hpbGQ+CisgICAgICAgICA8Y2hpbGQ+ CitAQCAtMTA2LDkgKzk3LDcgQEAKKyAgICAgICAgICAgPC9vYmplY3Q+CisgICAgICAgICAgIDxw YWNraW5nPgorICAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJsZWZ0X2F0dGFjaCI+MDwvcHJv cGVydHk+CistICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9InRvcF9hdHRhY2giPjQ8L3Byb3Bl cnR5PgorLSAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ3aWR0aCI+MTwvcHJvcGVydHk+Cist ICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9ImhlaWdodCI+MTwvcHJvcGVydHk+CisrICAgICAg ICAgICAgPHByb3BlcnR5IG5hbWU9InRvcF9hdHRhY2giPjU8L3Byb3BlcnR5PgorICAgICAgICAg ICA8L3BhY2tpbmc+CisgICAgICAgICA8L2NoaWxkPgorICAgICAgICAgPGNoaWxkPgorQEAgLTEy MSw5ICsxMTAsNyBAQAorICAgICAgICAgICA8L29iamVjdD4KKyAgICAgICAgICAgPHBhY2tpbmc+ CisgICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9ImxlZnRfYXR0YWNoIj4xPC9wcm9wZXJ0eT4K Ky0gICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0idG9wX2F0dGFjaCI+NDwvcHJvcGVydHk+Cist ICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9IndpZHRoIj4xPC9wcm9wZXJ0eT4KKy0gICAgICAg ICAgICA8cHJvcGVydHkgbmFtZT0iaGVpZ2h0Ij4xPC9wcm9wZXJ0eT4KKysgICAgICAgICAgICA8 cHJvcGVydHkgbmFtZT0idG9wX2F0dGFjaCI+NTwvcHJvcGVydHk+CisgICAgICAgICAgIDwvcGFj a2luZz4KKyAgICAgICAgIDwvY2hpbGQ+CisgICAgICAgICA8Y2hpbGQ+CitAQCAtMTM2LDkgKzEy Myw3IEBACisgICAgICAgICAgIDwvb2JqZWN0PgorICAgICAgICAgICA8cGFja2luZz4KKyAgICAg ICAgICAgICA8cHJvcGVydHkgbmFtZT0ibGVmdF9hdHRhY2giPjE8L3Byb3BlcnR5PgorLSAgICAg ICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ0b3BfYXR0YWNoIj41PC9wcm9wZXJ0eT4KKy0gICAgICAg ICAgICA8cHJvcGVydHkgbmFtZT0id2lkdGgiPjE8L3Byb3BlcnR5PgorLSAgICAgICAgICAgIDxw cm9wZXJ0eSBuYW1lPSJoZWlnaHQiPjE8L3Byb3BlcnR5PgorKyAgICAgICAgICAgIDxwcm9wZXJ0 eSBuYW1lPSJ0b3BfYXR0YWNoIj42PC9wcm9wZXJ0eT4KKyAgICAgICAgICAgPC9wYWNraW5nPgor ICAgICAgICAgPC9jaGlsZD4KKyAgICAgICAgIDxjaGlsZD4KK0BAIC0xNTQsOSArMTM5LDcgQEAK KyAgICAgICAgICAgPC9vYmplY3Q+CisgICAgICAgICAgIDxwYWNraW5nPgorICAgICAgICAgICAg IDxwcm9wZXJ0eSBuYW1lPSJsZWZ0X2F0dGFjaCI+MDwvcHJvcGVydHk+CistICAgICAgICAgICAg PHByb3BlcnR5IG5hbWU9InRvcF9hdHRhY2giPjU8L3Byb3BlcnR5PgorLSAgICAgICAgICAgIDxw cm9wZXJ0eSBuYW1lPSJ3aWR0aCI+MTwvcHJvcGVydHk+CistICAgICAgICAgICAgPHByb3BlcnR5 IG5hbWU9ImhlaWdodCI+MTwvcHJvcGVydHk+CisrICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9 InRvcF9hdHRhY2giPjY8L3Byb3BlcnR5PgorICAgICAgICAgICA8L3BhY2tpbmc+CisgICAgICAg ICA8L2NoaWxkPgorICAgICAgICAgPGNoaWxkPgorQEAgLTE3Miw4ICsxNTUsNiBAQAorICAgICAg ICAgICA8cGFja2luZz4KKyAgICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0ibGVmdF9hdHRhY2gi PjI8L3Byb3BlcnR5PgorICAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ0b3BfYXR0YWNoIj4w PC9wcm9wZXJ0eT4KKy0gICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0id2lkdGgiPjE8L3Byb3Bl cnR5PgorLSAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJoZWlnaHQiPjE8L3Byb3BlcnR5Pgor ICAgICAgICAgICA8L3BhY2tpbmc+CisgICAgICAgICA8L2NoaWxkPgorICAgICAgICAgPGNoaWxk PgorQEAgLTE4OCw4ICsxNjksNiBAQAorICAgICAgICAgICA8cGFja2luZz4KKyAgICAgICAgICAg ICA8cHJvcGVydHkgbmFtZT0ibGVmdF9hdHRhY2giPjI8L3Byb3BlcnR5PgorICAgICAgICAgICAg IDxwcm9wZXJ0eSBuYW1lPSJ0b3BfYXR0YWNoIj4xPC9wcm9wZXJ0eT4KKy0gICAgICAgICAgICA8 cHJvcGVydHkgbmFtZT0id2lkdGgiPjE8L3Byb3BlcnR5PgorLSAgICAgICAgICAgIDxwcm9wZXJ0 eSBuYW1lPSJoZWlnaHQiPjE8L3Byb3BlcnR5PgorICAgICAgICAgICA8L3BhY2tpbmc+CisgICAg ICAgICA8L2NoaWxkPgorICAgICAgICAgPGNoaWxkPgorQEAgLTIwNCw4ICsxODMsNiBAQAorICAg ICAgICAgICA8cGFja2luZz4KKyAgICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0ibGVmdF9hdHRh Y2giPjI8L3Byb3BlcnR5PgorICAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ0b3BfYXR0YWNo Ij4zPC9wcm9wZXJ0eT4KKy0gICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0id2lkdGgiPjE8L3By b3BlcnR5PgorLSAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJoZWlnaHQiPjE8L3Byb3BlcnR5 PgorICAgICAgICAgICA8L3BhY2tpbmc+CisgICAgICAgICA8L2NoaWxkPgorICAgICAgICAgPGNo aWxkPgorQEAgLTIxOSw5ICsxOTYsNyBAQAorICAgICAgICAgICA8L29iamVjdD4KKyAgICAgICAg ICAgPHBhY2tpbmc+CisgICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9ImxlZnRfYXR0YWNoIj4y PC9wcm9wZXJ0eT4KKy0gICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0idG9wX2F0dGFjaCI+NDwv cHJvcGVydHk+CistICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9IndpZHRoIj4xPC9wcm9wZXJ0 eT4KKy0gICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0iaGVpZ2h0Ij4xPC9wcm9wZXJ0eT4KKysg ICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0idG9wX2F0dGFjaCI+NTwvcHJvcGVydHk+CisgICAg ICAgICAgIDwvcGFja2luZz4KKyAgICAgICAgIDwvY2hpbGQ+CisgICAgICAgICA8Y2hpbGQ+CitA QCAtMjM1LDkgKzIxMCw3IEBACisgICAgICAgICAgIDwvb2JqZWN0PgorICAgICAgICAgICA8cGFj a2luZz4KKyAgICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0ibGVmdF9hdHRhY2giPjI8L3Byb3Bl cnR5PgorLSAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ0b3BfYXR0YWNoIj41PC9wcm9wZXJ0 eT4KKy0gICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0id2lkdGgiPjE8L3Byb3BlcnR5PgorLSAg ICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJoZWlnaHQiPjE8L3Byb3BlcnR5PgorKyAgICAgICAg ICAgIDxwcm9wZXJ0eSBuYW1lPSJ0b3BfYXR0YWNoIj42PC9wcm9wZXJ0eT4KKyAgICAgICAgICAg PC9wYWNraW5nPgorICAgICAgICAgPC9jaGlsZD4KKyAgICAgICAgIDxjaGlsZD4KK0BAIC0yNTQs OCArMjI3LDYgQEAKKyAgICAgICAgICAgPHBhY2tpbmc+CisgICAgICAgICAgICAgPHByb3BlcnR5 IG5hbWU9ImxlZnRfYXR0YWNoIj4wPC9wcm9wZXJ0eT4KKyAgICAgICAgICAgICA8cHJvcGVydHkg bmFtZT0idG9wX2F0dGFjaCI+MDwvcHJvcGVydHk+CistICAgICAgICAgICAgPHByb3BlcnR5IG5h bWU9IndpZHRoIj4xPC9wcm9wZXJ0eT4KKy0gICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0iaGVp Z2h0Ij4xPC9wcm9wZXJ0eT4KKyAgICAgICAgICAgPC9wYWNraW5nPgorICAgICAgICAgPC9jaGls ZD4KKyAgICAgICAgIDxjaGlsZD4KK0BAIC0yNzAsOCArMjQxLDYgQEAKKyAgICAgICAgICAgPHBh Y2tpbmc+CisgICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9ImxlZnRfYXR0YWNoIj4yPC9wcm9w ZXJ0eT4KKyAgICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0idG9wX2F0dGFjaCI+MjwvcHJvcGVy dHk+CistICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9IndpZHRoIj4xPC9wcm9wZXJ0eT4KKy0g ICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0iaGVpZ2h0Ij4xPC9wcm9wZXJ0eT4KKyAgICAgICAg ICAgPC9wYWNraW5nPgorICAgICAgICAgPC9jaGlsZD4KKyAgICAgICAgIDxjaGlsZD4KK0BAIC0y ODYsOCArMjU1LDYgQEAKKyAgICAgICAgICAgPHBhY2tpbmc+CisgICAgICAgICAgICAgPHByb3Bl cnR5IG5hbWU9ImxlZnRfYXR0YWNoIj4wPC9wcm9wZXJ0eT4KKyAgICAgICAgICAgICA8cHJvcGVy dHkgbmFtZT0idG9wX2F0dGFjaCI+MjwvcHJvcGVydHk+CistICAgICAgICAgICAgPHByb3BlcnR5 IG5hbWU9IndpZHRoIj4xPC9wcm9wZXJ0eT4KKy0gICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0i aGVpZ2h0Ij4xPC9wcm9wZXJ0eT4KKyAgICAgICAgICAgPC9wYWNraW5nPgorICAgICAgICAgPC9j aGlsZD4KKyAgICAgICAgIDxjaGlsZD4KK0BAIC0zMDEsOCArMjY4LDYgQEAKKyAgICAgICAgICAg PHBhY2tpbmc+CisgICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9ImxlZnRfYXR0YWNoIj4xPC9w cm9wZXJ0eT4KKyAgICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0idG9wX2F0dGFjaCI+MjwvcHJv cGVydHk+CistICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9IndpZHRoIj4xPC9wcm9wZXJ0eT4K Ky0gICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0iaGVpZ2h0Ij4xPC9wcm9wZXJ0eT4KKyAgICAg ICAgICAgPC9wYWNraW5nPgorICAgICAgICAgPC9jaGlsZD4KKyAgICAgICAgIDxjaGlsZD4KK0BA IC0zMTYsOSArMjgxLDcgQEAKKyAgICAgICAgICAgPC9vYmplY3Q+CisgICAgICAgICAgIDxwYWNr aW5nPgorICAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJsZWZ0X2F0dGFjaCI+MDwvcHJvcGVy dHk+CistICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9InRvcF9hdHRhY2giPjY8L3Byb3BlcnR5 PgorLSAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ3aWR0aCI+MTwvcHJvcGVydHk+CistICAg ICAgICAgICAgPHByb3BlcnR5IG5hbWU9ImhlaWdodCI+MTwvcHJvcGVydHk+CisrICAgICAgICAg ICAgPHByb3BlcnR5IG5hbWU9InRvcF9hdHRhY2giPjc8L3Byb3BlcnR5PgorICAgICAgICAgICA8 L3BhY2tpbmc+CisgICAgICAgICA8L2NoaWxkPgorICAgICAgICAgPGNoaWxkPgorQEAgLTMzMSw5 ICsyOTQsNyBAQAorICAgICAgICAgICA8L29iamVjdD4KKyAgICAgICAgICAgPHBhY2tpbmc+Cisg ICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9ImxlZnRfYXR0YWNoIj4xPC9wcm9wZXJ0eT4KKy0g ICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0idG9wX2F0dGFjaCI+NjwvcHJvcGVydHk+CistICAg ICAgICAgICAgPHByb3BlcnR5IG5hbWU9IndpZHRoIj4xPC9wcm9wZXJ0eT4KKy0gICAgICAgICAg ICA8cHJvcGVydHkgbmFtZT0iaGVpZ2h0Ij4xPC9wcm9wZXJ0eT4KKysgICAgICAgICAgICA8cHJv cGVydHkgbmFtZT0idG9wX2F0dGFjaCI+NzwvcHJvcGVydHk+CisgICAgICAgICAgIDwvcGFja2lu Zz4KKyAgICAgICAgIDwvY2hpbGQ+CisgICAgICAgICA8Y2hpbGQ+CitAQCAtMzQ3LDExICszMDgs MjYgQEAKKyAgICAgICAgICAgPC9vYmplY3Q+CisgICAgICAgICAgIDxwYWNraW5nPgorICAgICAg ICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJsZWZ0X2F0dGFjaCI+MjwvcHJvcGVydHk+CistICAgICAg ICAgICAgPHByb3BlcnR5IG5hbWU9InRvcF9hdHRhY2giPjY8L3Byb3BlcnR5PgorLSAgICAgICAg ICAgIDxwcm9wZXJ0eSBuYW1lPSJ3aWR0aCI+MTwvcHJvcGVydHk+CistICAgICAgICAgICAgPHBy b3BlcnR5IG5hbWU9ImhlaWdodCI+MTwvcHJvcGVydHk+CisrICAgICAgICAgICAgPHByb3BlcnR5 IG5hbWU9InRvcF9hdHRhY2giPjc8L3Byb3BlcnR5PgorICAgICAgICAgICA8L3BhY2tpbmc+Cisg ICAgICAgICA8L2NoaWxkPgorKyAgICAgICAgPGNoaWxkPgorKyAgICAgICAgICA8b2JqZWN0IGNs YXNzPSJHdGtCb3giIGlkPSJoYm94X2F1dG9fcmVwb3J0aW5nIj4KKysgICAgICAgICAgICA8cHJv cGVydHkgbmFtZT0idmlzaWJsZSI+VHJ1ZTwvcHJvcGVydHk+CisrICAgICAgICAgICAgPHByb3Bl cnR5IG5hbWU9ImNhbl9mb2N1cyI+RmFsc2U8L3Byb3BlcnR5PgorKyAgICAgICAgICAgIDxjaGls ZD4KKysgICAgICAgICAgICAgIDxwbGFjZWhvbGRlci8+CisrICAgICAgICAgICAgPC9jaGlsZD4K KysgICAgICAgICAgPC9vYmplY3Q+CisrICAgICAgICAgIDxwYWNraW5nPgorKyAgICAgICAgICAg IDxwcm9wZXJ0eSBuYW1lPSJsZWZ0X2F0dGFjaCI+MDwvcHJvcGVydHk+CisrICAgICAgICAgICAg PHByb3BlcnR5IG5hbWU9InRvcF9hdHRhY2giPjQ8L3Byb3BlcnR5PgorKyAgICAgICAgICAgIDxw cm9wZXJ0eSBuYW1lPSJ3aWR0aCI+MjwvcHJvcGVydHk+CisrICAgICAgICAgIDwvcGFja2luZz4K KysgICAgICAgIDwvY2hpbGQ+CisrICAgICAgICA8Y2hpbGQ+CisrICAgICAgICAgIDxwbGFjZWhv bGRlci8+CisrICAgICAgICA8L2NoaWxkPgorICAgICAgIDwvb2JqZWN0PgorICAgICA8L2NoaWxk PgorICAgPC9vYmplY3Q+CistLSAKKzIuNC4xCisKCmRpZmYgLS1naXQgYS9hYnJ0LnNwZWMgYi9h YnJ0LnNwZWMKaW5kZXggYTQ1YjE3NC4uMDExMDEzYSAxMDA2NDQKLS0tIGEvYWJydC5zcGVjCisr KyBiL2FicnQuc3BlYwpAQCAtNDYsNyArNDYsNyBAQAogU3VtbWFyeTogQXV0b21hdGljIGJ1ZyBk ZXRlY3Rpb24gYW5kIHJlcG9ydGluZyB0b29sCiBOYW1lOiBhYnJ0CiBWZXJzaW9uOiAyLjUuMQot UmVsZWFzZTogMiV7P2Rpc3R9CitSZWxlYXNlOiAzJXs/ZGlzdH0KIExpY2Vuc2U6IEdQTHYyKwog R3JvdXA6IEFwcGxpY2F0aW9ucy9TeXN0ZW0KIFVSTDogaHR0cHM6Ly9naXRodWIuY29tL2FicnQv YWJydC93aWtpL0FCUlQtUHJvamVjdApAQCAtNTYsNiArNTYsMjggQEAgUGF0Y2gwOiBkaXNhYmxl LU9wZW5HUEdDaGVjay1pbi1GZWRvcmEtUmF3aGlkZS5wYXRjaAogCiAjIGdpdCBmb3JtYXQtcGF0 Y2ggJSV7VmVyc2lvbn0gLS10b3BvLW9yZGVyIC1OIC1NOwogIyBpPTE7IGZvciBwIGluIGBscyAw Ki5wYXRjaGA7IGRvIHByaW50ZiAiUGF0Y2glMDRkOiAlc1xuIiAkaSAkcDsgKChpKyspKTsgZG9u ZQorI1BhdGNoMDAwMTogMDAwMS10ZXN0c3VpdGUtZ3JhYi1iZWFrZXJsaWItc3RvcmVkLWxvZy1m aWxlcy1mcm9tLXZhci10LnBhdGNoCisjUGF0Y2gwMDAyOiAwMDAyLXRlc3RzdWl0ZS1hZGQtdGhl LW1hY2hpbmVpZC10ZXN0LWNhc2UtdG8tcmhlbDYucGF0Y2gKKyNQYXRjaDAwMDM6IDAwMDMtdGVz dHN1aXRlLWFkZC10ZXN0LWZvci1hYnJ0LWNsaS1yZXBvcnQtdmlhLXJlcG9ydGVyLS5wYXRjaAor UGF0Y2gwMDA0OiAwMDA0LWFwcGxldC1zd2l0Y2gtdG8tRC1CdXMtbWV0aG9kcy5wYXRjaAorUGF0 Y2gwMDA1OiAwMDA1LWxpYi1hZGQtbmV3LWtlcm5lbC10YWludC1mbGFncy5wYXRjaAorUGF0Y2gw MDA2OiAwMDA2LXVwbG9hZC12YWxpZGF0ZS1hbmQtc2FuaXRpemUtdXBsb2FkZWQtZHVtcC1kaXJl Y3RvcmkucGF0Y2gKKyNQYXRjaDAwMDc6IDAwMDctdGVzdHN1aXRlLWRvbi10LXJ1bi13aG9sZS10 ZXN0LWlmLXJlcG9ydGVyLW1hbnRpc2J0LS5wYXRjaAorUGF0Y2gwMDA4OiAwMDA4LWEtYS1zLXAt ZC1hZGQtbmV3LWtub3duLWludGVycHJldGVyLXRvLWNvbmYtZmlsZS5wYXRjaAorI1BhdGNoMDAw OTogMDAwOS1hYnJ0LWRldGVjdC1EdW1wTG9jYXRpb24tZnJvbS1hYnJ0LmNvbmYtaW5zdGVhZC1v Zi11LnBhdGNoCitQYXRjaDAwMTA6IDAwMTAtYXBwbGV0LWZpeC1wcm9ibGVtLWluZm8tZG91Ymxl LWZyZWUucGF0Y2gKK1BhdGNoMDAxMTogMDAxMS1jbGktZG8tbm90LWV4aXQtd2l0aC1zZWdmYXVs dC1pZi1kYnVzLWZhaWxzLnBhdGNoCisjUGF0Y2gwMDEyOiAwMDEyLXNwZWMtYWRkLWEtZGVwZW5k ZW5jeS1vbi1hYnJ0LWRidXMtdG8tYWJydC1jbGkucGF0Y2gKK1BhdGNoMDAxMzogMDAxMy1hYnJ0 LWF1dG8tcmVwb3J0aW5nLXJlcXVpcmUtcmh0c3VwcG9ydC5jb25mLWZpbGUtb25sLnBhdGNoCisj UGF0Y2gwMDE0OiAwMDE0LXNwZWMtYWRkLUFVVEhFTlRJQ0FURURfQVVUT1JFUE9SVElORy1jb25k aXRpb25hbC5wYXRjaAorUGF0Y2gwMDE1OiAwMDE1LWFicnQtYWN0aW9uLWxpc3QtZHNvcy1kby1u b3QtZGVjb2RlLW5vdC1leGlzdGluZy1vYmoucGF0Y2gKK1BhdGNoMDAxNjogMDAxNi1kb2MtcG9s a2l0LVNwZWxsaW5nLWdyYW1tYXItZml4ZXMucGF0Y2gKKyNQYXRjaDAwMTc6IDAwMTctdGVzdHN1 aXRlLWFkZC1uZXctdmVyc2lvbi1vZi1weXRob24taW50ZXJwcmV0ZXJzLnBhdGNoCitQYXRjaDAw MTg6IDAwMTgtYXBwbGV0LW1pZ3JhdGUtQXV0b3JlcG9ydGluZy1vcHRpb25zLXRvLUdTZXR0aW5n cy5wYXRjaAorUGF0Y2gwMDE5OiAwMDE5LWNvbmZpZy1VSS1yZWFkLWdsYWRlLWZyb20tYS1sb2Nh bC1maWxlLWZpcnN0LnBhdGNoCitQYXRjaDAwMjA6IDAwMjAtY29uZmlnLVVJLWVuYWJsZS1vcHRp b25zLXdpdGhvdXQtY29uZmlnLWZpbGVzLnBhdGNoCitQYXRjaDAwMjE6IDAwMjEtY29uZmlnLVVJ LUF1dG9tYXRpYy1yZXBvcnRpbmctZnJvbS1HU2V0dGluZ3MucGF0Y2gKKyNQYXRjaDAwMjI6IDAw MjItdGVzdHN1aXRlLXRlc3Qtc2FmZW5lc3Mtb2YtY3JlYXRpbmctdXNlci1jb3Jlcy5wYXRjaAog CiAjICclJWF1dG9zZXR1cCAtUyBnaXQnIC0+IGdpdAogQnVpbGRSZXF1aXJlczogZ2l0CkBAIC0y OTEsNiArMzEzLDcgQEAgR3JvdXA6IFVzZXIgSW50ZXJmYWNlL0Rlc2t0b3BzCiBSZXF1aXJlczog JXtuYW1lfSA9ICV7dmVyc2lvbn0tJXtyZWxlYXNlfQogUmVxdWlyZXM6IGxpYnJlcG9ydC1jbGkg Pj0gJXtsaWJyZXBvcnRfdmVyfQogUmVxdWlyZXM6IGFicnQtbGlicyA9ICV7dmVyc2lvbn0tJXty ZWxlYXNlfQorUmVxdWlyZXM6IGFicnQtZGJ1cwogCiAlZGVzY3JpcHRpb24gdHVpCiBUaGlzIHBh Y2thZ2UgY29udGFpbnMgYSBzaW1wbGUgY29tbWFuZCBsaW5lIGNsaWVudCBmb3IgcHJvY2Vzc2lu ZyBhYnJ0IHJlcG9ydHMKQEAgLTQ1OSw4ICs0ODIsOCBAQCB0byB0aGUgc2hlbGwKICMgRGVmYXVs dCAnX19zY21fYXBwbHlfZ2l0JyBpcyAnZ2l0IGFwcGx5ICYmIGdpdCBjb21taXQnIGJ1dCB0aGlz IHdvcmtmbG93CiAjIGRvZXNuJ3QgYWxsb3cgdXMgdG8gY3JlYXRlIGEgbmV3IGZpbGUgd2l0aGlu IGEgcGF0Y2gsIHNvIHdlIGhhdmUgdG8gdXNlCiAjICdnaXQgYW0nIChzZWUgL3Vzci9saWIvcnBt L21hY3JvcyBmb3IgbW9yZSBkZXRhaWxzKQotJWRlZmluZSBfX3NjbV9hcHBseV9naXQocXA6bTop ICV7X19naXR9IGFtCi0jJSVkZWZpbmUgX19zY21fYXBwbHlfZ2l0KHFwOm06KSAlJXtfX2dpdH0g YW0gLS1leGNsdWRlIGxpYnJlcG9ydC5zcGVjLmluIC0tZXhjbHVkZSAuZ2l0aWdub3JlCisjJSVk ZWZpbmUgX19zY21fYXBwbHlfZ2l0KHFwOm06KSAlJXtfX2dpdH0gYW0KKyVkZWZpbmUgX19zY21f YXBwbHlfZ2l0KHFwOm06KSAle19fZ2l0fSBhbSAtLWV4Y2x1ZGUgZG9jL2Rlc2lnbiAtLWV4Y2x1 ZGUgZG9jL3Byb2plY3QvYWJydC50ZXgKICVhdXRvc2V0dXAgLVMgZ2l0CiAKICVidWlsZApAQCAt MTAyMiw2ICsxMDQ1LDE4IEBAIGd0ay11cGRhdGUtaWNvbi1jYWNoZSAle19kYXRhZGlyfS9pY29u cy9oaWNvbG9yICY+L2Rldi9udWxsIHx8IDoKICVjb25maWcobm9yZXBsYWNlKSAle19zeXNjb25m ZGlyfS9wcm9maWxlLmQvYWJydC1jb25zb2xlLW5vdGlmaWNhdGlvbi5zaAogCiAlY2hhbmdlbG9n CisqIFdlZCBNYXkgMjAgMjAxNSBNYXRlaiBIYWJybmFsIDxtaGFicm5hbEByZWRoYXQuY29tPiAy LjUuMS0zCistIGFwcGxldDogc3dpdGNoIHRvIEQtQnVzIG1ldGhvZHMKKy0gdXBsb2FkOiB2YWxp ZGF0ZSBhbmQgc2FuaXRpemUgdXBsb2FkZWQgZHVtcCBkaXJlY3RvcmllcworLSBhcHBsZXQ6IHN3 aXRjaCB0byBELUJ1cyBtZXRob2RzCistIGxpYjogYWRkIG5ldyBrZXJuZWwgdGFpbnQgZmxhZ3MK Ky0gYWJydC1hdXRvLXJlcG9ydGluZzogcmVxdWlyZSByaHRzdXBwb3J0LmNvbmYgZmlsZSBvbmx5 IG9uIFJIRUwKKy0gZG9jLCBwb2xraXQ6IFNwZWxsaW5nL2dyYW1tYXIgZml4ZXMKKy0gYXBwbGV0 OiBtaWdyYXRlIEF1dG9yZXBvcnRpbmcgb3B0aW9ucyB0byBHU2V0dGluZ3MKKy0gY29uZmlnIFVJ OiByZWFkIGdsYWRlIGZyb20gYSBsb2NhbCBmaWxlIGZpcnN0CistIGNvbmZpZyBVSTogQXV0b21h dGljIHJlcG9ydGluZyBmcm9tIEdTZXR0aW5ncworLSBSZXNvbHZlczogIzEyMTc5MDEKKwogKiBN b24gQXByIDEzIDIwMTUgSmFrdWIgRmlsYWsgPGpmaWxha0ByZWRoYXQuY29tPiAyLjUuMS0yCiAt IFJlbW92ZSBubyBsb25nZXIgbmVlZGVkIHBvc3R0cmFucyBzY3JpcHRsZXQgY29weWluZyBhbmFs eXplciB0byB0eXBlCiAK