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: Rich Mattes To: git-commits@fedoraproject.org Subject: [rpms/pcl] f44: Remove unused patches Date: Thu, 25 Jun 2026 05:49:20 GMT Message-ID: <178236656047.1.3006462063288542523.rpms-pcl-ed1d39529a3c@fedoraproject.org> List-ID: X-Git-Repo: rpms/pcl X-Git-Branch: f44 X-Git-Rev: ed1d39529a3c5bf4e35940893f36c37590c7f933 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvcGNsCkJyYW5jaCA6 IGY0NApDb21taXQgOiBlZDFkMzk1MjlhM2M1YmY0ZTM1OTQwODkzZjM2YzM3NTkwYzdmOTMzCkF1 dGhvciA6IFJpY2ggTWF0dGVzIDxyaWNobWF0dGVzQGdtYWlsLmNvbT4KRGF0ZSAgIDogMjAxMy0x MC0wNVQxMjo1NTowNC0wNDowMApTdGF0cyAgOiArMC8tNDU0IGluIDMgZmlsZShzKQpVUkwgICAg OiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL3BjbC9jL2VkMWQzOTUyOWEzYzVi ZjRlMzU5NDA4OTNmMzZjMzc1OTBjN2Y5MzM/YnJhbmNoPWY0NAoKTG9nOgpSZW1vdmUgdW51c2Vk IHBhdGNoZXMKCi0tLQpkaWZmIC0tZ2l0IGEvUENMLTEuMy4xLVNvdXJjZS1mZWRvcmEucGF0Y2gg Yi9QQ0wtMS4zLjEtU291cmNlLWZlZG9yYS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggZWJlODkzZC4uMDAwMDAwMAotLS0gYS9QQ0wtMS4zLjEtU291cmNlLWZlZG9yYS5wYXRj aAorKysgL2Rldi9udWxsCkBAIC0xLDEwOSArMCwwIEBACi1kaWZmIC11ck4gUENMLTEuMy4xLVNv dXJjZS9jbWFrZS9wY2xfdGFyZ2V0cy5jbWFrZSBQQ0wtMS4zLjEtU291cmNlLmZlZG9yYS9jbWFr ZS9wY2xfdGFyZ2V0cy5jbWFrZQotLS0tIFBDTC0xLjMuMS1Tb3VyY2UvY21ha2UvcGNsX3Rhcmdl dHMuY21ha2UJMjAxMS0xMi0wMyAwMDozNTo0OC4wMDAwMDAwMDAgKzAxMDAKLSsrKyBQQ0wtMS4z LjEtU291cmNlLmZlZG9yYS9jbWFrZS9wY2xfdGFyZ2V0cy5jbWFrZQkyMDEyLTAxLTE2IDE5OjQw OjQzLjQzMzY5MDE3MiArMDEwMAotQEAgLTEsNSArMSw3IEBACi0gaW5jbHVkZSgke1BST0pFQ1Rf U09VUkNFX0RJUn0vY21ha2UvcGNsX3V0aWxzLmNtYWtlKQotIAotK3NldChQQ0xfUEtHQ09ORklH X1NVRkZJWCAiLSR7UENMX01BSk9SX1ZFUlNJT059LiR7UENMX01JTk9SX1ZFUlNJT059IiBDQUNI RSBTVFJJTkcgIlN1ZmZpeCB0byBhcHBlbmQgdG8gcGtnLWNvbmZpZyBmaWxlcyIpCi0rCi0gIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIwotICMgQWRkIGFuIG9wdGlvbiB0byBidWlsZCBhIHN1YnN5c3Rl bSBvciBub3QuCi0gIyBfdmFyIFRoZSBuYW1lIG9mIHRoZSB2YXJpYWJsZSB0byBzdG9yZSB0aGUg b3B0aW9uIGluLgotQEAgLTMzMSwxNCArMzMzLDE0IEBACi0gICAgIExJU1RfVE9fU1RSSU5HKF9l eHRfZGVwc19zdHIgIiR7X2V4dF9kZXBzfSIpCi0gICAgIHNldChQS0dfRVhURVJOQUxfREVQUyAk e19leHRfZGVwc19zdHJ9KQotICAgICBmb3JlYWNoKF9kZXAgJHtfcGNsX2RlcHN9KQotLSAgICAg IHNldChQS0dfRVhURVJOQUxfREVQUyAiJHtQS0dfRVhURVJOQUxfREVQU30gcGNsXyR7X2RlcH0t JHtQQ0xfTUFKT1JfVkVSU0lPTn0uJHtQQ0xfTUlOT1JfVkVSU0lPTn0iKQotKyAgICAgIHNldChQ S0dfRVhURVJOQUxfREVQUyAiJHtQS0dfRVhURVJOQUxfREVQU30gcGNsXyR7X2RlcH0ke1BDTF9Q S0dDT05GSUdfU1VGRklYfSIpCi0gICAgIGVuZGZvcmVhY2goX2RlcCkKLSAgICAgc2V0KFBLR19J TlRFUk5BTF9ERVBTICIiKQotICAgICBmb3JlYWNoKF9kZXAgJHtfaW50X2RlcHN9KQotICAgICAg ICAgc2V0KFBLR19JTlRFUk5BTF9ERVBTICIke1BLR19JTlRFUk5BTF9ERVBTfSAtbCR7X2RlcH0i KQotICAgICBlbmRmb3JlYWNoKF9kZXApCi0gCi0tICAgIHNldChfcGNfZmlsZSAke0NNQUtFX0NV UlJFTlRfQklOQVJZX0RJUn0vJHtfbmFtZX0tJHtQQ0xfTUFKT1JfVkVSU0lPTn0uJHtQQ0xfTUlO T1JfVkVSU0lPTn0ucGMpCi0rICAgIHNldChfcGNfZmlsZSAke0NNQUtFX0NVUlJFTlRfQklOQVJZ X0RJUn0vJHtfbmFtZX0ke1BDTF9QS0dDT05GSUdfU1VGRklYfS5wYykKLSAgICAgY29uZmlndXJl X2ZpbGUoJHtQUk9KRUNUX1NPVVJDRV9ESVJ9L2NtYWtlL3BrZ2NvbmZpZy5jbWFrZS5pbiAke19w Y19maWxlfQotICAgICAgICAgQE9OTFkpCi0gICAgIGluc3RhbGwoRklMRVMgJHtfcGNfZmlsZX0g REVTVElOQVRJT04gJHtQS0dDRkdfSU5TVEFMTF9ESVJ9Ci1kaWZmIC11ck4gUENMLTEuMy4xLVNv dXJjZS9jbWFrZS9wY2xfdXRpbHMuY21ha2UgUENMLTEuMy4xLVNvdXJjZS5mZWRvcmEvY21ha2Uv cGNsX3V0aWxzLmNtYWtlCi0tLS0gUENMLTEuMy4xLVNvdXJjZS9jbWFrZS9wY2xfdXRpbHMuY21h a2UJMjAxMS0xMi0wMyAwMDozNTo0OC4wMDAwMDAwMDAgKzAxMDAKLSsrKyBQQ0wtMS4zLjEtU291 cmNlLmZlZG9yYS9jbWFrZS9wY2xfdXRpbHMuY21ha2UJMjAxMi0wMS0xNiAxOTo0MDo0My40MzQ2 OTAxNjkgKzAxMDAKLUBAIC04MSw3ICs4MSw3IEBACi0gIyBzdWJkaXJlY3RvcnkgbmFtZWQgYWZ0 ZXIgdGhlIGxpYnJhcnkgaW4gcXVlc3Rpb24gKGUuZy4KLSAjICJyZWdpc3RyYXRpb24vYmxvcmds ZS5oIikKLSBtYWNybyhTRVRfSU5TVEFMTF9ESVJTKQotLSAgICBzZXQoTElCX0lOU1RBTExfRElS ICJsaWIiKQotKyAgICBzZXQoTElCX0lOU1RBTExfRElSICJsaWIke0xJQl9TVUZGSVh9IikKLSAg ICAgc2V0KElOQ0xVREVfSU5TVEFMTF9ST09UCi0gICAgICAgICAiaW5jbHVkZS8ke1BST0pFQ1Rf TkFNRV9MT1dFUn0tJHtQQ0xfTUFKT1JfVkVSU0lPTn0uJHtQQ0xfTUlOT1JfVkVSU0lPTn0iKQot ICAgICBzZXQoSU5DTFVERV9JTlNUQUxMX0RJUiAiJHtJTkNMVURFX0lOU1RBTExfUk9PVH0vcGNs IikKLWRpZmYgLXVyTiBQQ0wtMS4zLjEtU291cmNlL0NNYWtlTGlzdHMudHh0IFBDTC0xLjMuMS1T b3VyY2UuZmVkb3JhL0NNYWtlTGlzdHMudHh0Ci0tLS0gUENMLTEuMy4xLVNvdXJjZS9DTWFrZUxp c3RzLnR4dAkyMDExLTEyLTAzIDAwOjM1OjQ4LjAwMDAwMDAwMCArMDEwMAotKysrIFBDTC0xLjMu MS1Tb3VyY2UuZmVkb3JhL0NNYWtlTGlzdHMudHh0CTIwMTItMDEtMTYgMTk6NDA6NDMuNDM1Njkw MTY2ICswMTAwCi1AQCAtOTYsMTEgKzk2LDExIEBACi0gIyMjCi0gU0VUKENNQUtFX1NLSVBfQlVJ TERfUlBBVEggIEZBTFNFKQotIFNFVChDTUFLRV9CVUlMRF9XSVRIX0lOU1RBTExfUlBBVEggRkFM U0UpIAotLVNFVChDTUFLRV9JTlNUQUxMX1JQQVRIICIke0NNQUtFX0lOU1RBTExfUFJFRklYfS9s aWIiKQotK1NFVChDTUFLRV9JTlNUQUxMX1JQQVRIICIke0NNQUtFX0lOU1RBTExfUFJFRklYfS9s aWIke0xJQl9TVUZGSVh9IikKLSBTRVQoQ01BS0VfSU5TVEFMTF9SUEFUSF9VU0VfTElOS19QQVRI IFRSVUUpCi0tTElTVChGSU5EIENNQUtFX1BMQVRGT1JNX0lNUExJQ0lUX0xJTktfRElSRUNUT1JJ RVMgIiR7Q01BS0VfSU5TVEFMTF9QUkVGSVh9L2xpYiIgaXNfc3lzdGVtX2RpcikKLStMSVNUKEZJ TkQgQ01BS0VfUExBVEZPUk1fSU1QTElDSVRfTElOS19ESVJFQ1RPUklFUyAiJHtDTUFLRV9JTlNU QUxMX1BSRUZJWH0vbGliJHtMSUJfU1VGRklYfSIgaXNfc3lzdGVtX2RpcikKLSBJRigiJHtpc19z eXN0ZW1fZGlyfSIgU1RSRVFVQUwgIi0xIikKLS0gICBTRVQoQ01BS0VfSU5TVEFMTF9SUEFUSCAi JHtDTUFLRV9JTlNUQUxMX1BSRUZJWH0vbGliIikKLSsgICBTRVQoQ01BS0VfSU5TVEFMTF9SUEFU SCAiJHtDTUFLRV9JTlNUQUxMX1BSRUZJWH0vbGliJHtMSUJfU1VGRklYfSIpCi0gRU5ESUYoIiR7 aXNfc3lzdGVtX2Rpcn0iIFNUUkVRVUFMICItMSIpCi0gCi0gIyMjIC0tLVsgRmluZCB1bml2ZXJz YWwgZGVwZW5kZW5jaWVzCi1kaWZmIC11ck4gUENMLTEuMy4xLVNvdXJjZS9pby9DTWFrZUxpc3Rz LnR4dCBQQ0wtMS4zLjEtU291cmNlLmZlZG9yYS9pby9DTWFrZUxpc3RzLnR4dAotLS0tIFBDTC0x LjMuMS1Tb3VyY2UvaW8vQ01ha2VMaXN0cy50eHQJMjAxMS0xMi0wMyAwMDozNTo0OC4wMDAwMDAw MDAgKzAxMDAKLSsrKyBQQ0wtMS4zLjEtU291cmNlLmZlZG9yYS9pby9DTWFrZUxpc3RzLnR4dAky MDEyLTAxLTE2IDE5OjQwOjQzLjQzNjY5MDE2MyArMDEwMAotQEAgLTExMiw5ICsxMTIsMTAgQEAK LSAgICAgZW5kaWYoT1BFTk5JX0ZPVU5EKQotIAotICAgICBzZXQoRVhUX0RFUFMgZWlnZW4zKQot LSAgICBpZihPUEVOTklfRk9VTkQpCi0tICAgICAgbGlzdChBUFBFTkQgRVhUX0RFUFMgb3Blbm5p LWRldikKLS0gICAgZW5kaWYoT1BFTk5JX0ZPVU5EKQotKyAgICAjIERpc2FibGUgb24gRmVkb3Jh LCB0aGVyZSBpcyBubyBwa2ctY29uZmlnIGZpbGUKLSsgICAgI2lmKE9QRU5OSV9GT1VORCkKLSsg ICAgIyAgbGlzdChBUFBFTkQgRVhUX0RFUFMgb3Blbm5pLWRldikKLSsgICAgI2VuZGlmKE9QRU5O SV9GT1VORCkKLSAgICAgUENMX01BS0VfUEtHQ09ORklHKCR7TElCX05BTUV9ICR7U1VCU1lTX05B TUV9ICIke1NVQlNZU19ERVNDfSIKLSAgICAgICAiJHtTVUJTWVNfREVQU30iICIke0VYVF9ERVBT fSIgIiIgIiIgIiIpCi0gCi1kaWZmIC11ck4gUENMLTEuMy4xLVNvdXJjZS9QQ0xDb25maWcuY21h a2UuaW4gUENMLTEuMy4xLVNvdXJjZS5mZWRvcmEvUENMQ29uZmlnLmNtYWtlLmluCi0tLS0gUENM LTEuMy4xLVNvdXJjZS9QQ0xDb25maWcuY21ha2UuaW4JMjAxMS0xMi0wMyAwMDozNTo0OC4wMDAw MDAwMDAgKzAxMDAKLSsrKyBQQ0wtMS4zLjEtU291cmNlLmZlZG9yYS9QQ0xDb25maWcuY21ha2Uu aW4JMjAxMi0wMS0xNiAxOTo0NzowNy40MDQ2NDM3MzkgKzAxMDAKLUBAIC0zMDQsOSArMzA0LDEz IEBACi0gIyBQQ0xDb25maWcuY21ha2UgaXMgaW5zdGFsbGVkIHRvIFBDTF9ST09UL2NtYWtlCi0g ICBnZXRfZmlsZW5hbWVfY29tcG9uZW50KFBDTF9ST09UICIke1BDTF9ESVJ9IiBQQVRIKQotIGVs c2UoV0lOMzIpCi0tIyBQQ0xDb25maWcuY21ha2UgaXMgaW5zdGFsbGVkIHRvIFBDTF9ST09UL3No YXJlL3BjbC14LnkKLSsgICMgUENMQ29uZmlnLmNtYWtlIGlzIGluc3RhbGxlZCB0byBQQ0xfUk9P VC9zaGFyZS9wY2wteC55IG9yIFBDTF9ST09UL2xpYiR7TElCX1NVRkZJWH0vY21ha2UvcGNsCi0g ICBnZXRfZmlsZW5hbWVfY29tcG9uZW50KFBDTF9ST09UICIke1BDTF9ESVJ9IiBQQVRIKQotICAg Z2V0X2ZpbGVuYW1lX2NvbXBvbmVudChQQ0xfUk9PVCAiJHtQQ0xfUk9PVH0iIFBBVEgpCi0rICBp ZiAoJHtQQ0xfRElSfSBNQVRDSEVTICIuKmxpYi4qIikKLSsgICAgIyBQQ0xDb25maWcuY21ha2Ug aXMgaW5zdGFsbGVkIHRvIFBDTF9ST09UL2xpYiR7TElCX1NVRkZJWH0vY21ha2UvcGNsCi0rICAg IGdldF9maWxlbmFtZV9jb21wb25lbnQoUENMX1JPT1QgIiR7UENMX1JPT1R9IiBQQVRIKQotKyAg ZW5kaWYoKQotIGVuZGlmKFdJTjMyKQotIAotICMgY2hlY2sgd2hldGhlciBQQ0xDb25maWcuY21h a2UgaXMgZm91bmQgaW50byBhIFBDTCBpbnN0YWxsYXRpb24gb3IgaW4gYSBidWlsZCB0cmVlCi1k aWZmIC11ck4gUENMLTEuMy4xLVNvdXJjZS92aXN1YWxpemF0aW9uL0NNYWtlTGlzdHMudHh0IFBD TC0xLjMuMS1Tb3VyY2UuZmVkb3JhL3Zpc3VhbGl6YXRpb24vQ01ha2VMaXN0cy50eHQKLS0tLSBQ Q0wtMS4zLjEtU291cmNlL3Zpc3VhbGl6YXRpb24vQ01ha2VMaXN0cy50eHQJMjAxMS0xMi0wMyAw MDozNTo0OC4wMDAwMDAwMDAgKzAxMDAKLSsrKyBQQ0wtMS4zLjEtU291cmNlLmZlZG9yYS92aXN1 YWxpemF0aW9uL0NNYWtlTGlzdHMudHh0CTIwMTItMDEtMTYgMTk6NDA6NDMuNDM3NjkwMTYwICsw MTAwCi1AQCAtODEsOSArODEsOSBAQAotICAgICAgdGFyZ2V0X2xpbmtfbGlicmFyaWVzKCR7TElC X05BTUV9IHBjbF9pbyBwY2xfa2R0cmVlIHBjbF9yYW5nZV9pbWFnZSAKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB2dGtDb21tb24gdnRrV2lkZ2V0cyB2dGtIeWJyaWQp Ci0gICAgIHNldChFWFRfREVQUyAiIikKLS0gICAgaWYoT1BFTk5JX0ZPVU5EKQotLSAgICAgIGxp c3QoQVBQRU5EIEVYVF9ERVBTIG9wZW5uaS1kZXYpCi0tICAgIGVuZGlmKE9QRU5OSV9GT1VORCkK LSsgICAgI2lmKE9QRU5OSV9GT1VORCkKLSsgICAgIyAgbGlzdChBUFBFTkQgRVhUX0RFUFMgb3Bl bm5pLWRldikKLSsgICAgI2VuZGlmKE9QRU5OSV9GT1VORCkKLSAgICAgUENMX01BS0VfUEtHQ09O RklHKCR7TElCX05BTUV9ICR7U1VCU1lTX05BTUV9ICIke1NVQlNZU19ERVNDfSIKLSAgICAgICAi JHtTVUJTWVNfREVQU30iICIke0VYVF9ERVBTfSIgIiIgIiIgIiIpCi0gCgpkaWZmIC0tZ2l0IGEv cGNsLTEuMy4xLWdjYzQ3LnBhdGNoIGIvcGNsLTEuMy4xLWdjYzQ3LnBhdGNoCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCA5ODE0NWVjLi4wMDAwMDAwCi0tLSBhL3BjbC0xLjMuMS1nY2M0 Ny5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI2MyArMCwwIEBACi1kaWZmIC11cCAuL2ZlYXR1 cmVzL2luY2x1ZGUvcGNsL2ZlYXR1cmVzL2ltcGwvZnBmaF9vbXAuaHBwLmdjYzQ3IC4vZmVhdHVy ZXMvaW5jbHVkZS9wY2wvZmVhdHVyZXMvaW1wbC9mcGZoX29tcC5ocHAKLS0tLSAuL2ZlYXR1cmVz L2luY2x1ZGUvcGNsL2ZlYXR1cmVzL2ltcGwvZnBmaF9vbXAuaHBwLmdjYzQ3CTIwMTItMDEtMTQg MTY6MDA6NDIuNjY0OTg4ODUxIC0wNTAwCi0rKysgLi9mZWF0dXJlcy9pbmNsdWRlL3BjbC9mZWF0 dXJlcy9pbXBsL2ZwZmhfb21wLmhwcAkyMDEyLTAxLTE0IDE2OjAxOjMxLjk5NzgzMTM4OCAtMDUw MAotQEAgLTk0LDcgKzk0LDcgQEAgcGNsOjpGUEZIRXN0aW1hdGlvbk9NUDxQb2ludEluVCwgUG9p bnROVAotICAgICB0aGlzLT5zZWFyY2hGb3JOZWlnaGJvcnMgKCpzdXJmYWNlXywgcF9pZHgsIHNl YXJjaF9wYXJhbWV0ZXJfLCBubl9pbmRpY2VzLCBubl9kaXN0cyk7Ci0gCi0gICAgIC8vIEVzdGlt YXRlIHRoZSBTUEZIIHNpZ25hdHVyZSBhcm91bmQgcF9pZHgKLS0gICAgY29tcHV0ZVBvaW50U1BG SFNpZ25hdHVyZSAoKnN1cmZhY2VfLCAqbm9ybWFsc18sIHBfaWR4LCBpLCBubl9pbmRpY2VzLCBo aXN0X2YxXywgaGlzdF9mMl8sIGhpc3RfZjNfKTsKLSsgICAgdGhpcy0+Y29tcHV0ZVBvaW50U1BG SFNpZ25hdHVyZSAoKnN1cmZhY2VfLCAqbm9ybWFsc18sIHBfaWR4LCBpLCBubl9pbmRpY2VzLCBo aXN0X2YxXywgaGlzdF9mMl8sIGhpc3RfZjNfKTsKLSAKLSAgICAgLy8gUG9wdWxhdGUgYSBsb29r dXAgdGFibGUgZm9yIGNvbnZlcnRpbmcgYSBwb2ludCBpbmRleCB0byBpdHMgY29ycmVzcG9uZGlu ZyByb3cgaW4gdGhlIHNwZmhfaGlzdF8qIG1hdHJpY2VzCi0gICAgIHNwZmhfaGlzdF9sb29rdXBb cF9pZHhdID0gaTsKLWRpZmYgLXVwIC4vZmVhdHVyZXMvaW5jbHVkZS9wY2wvZmVhdHVyZXMvaW1w bC9zaG90X29tcC5ocHAuZ2NjNDcgLi9mZWF0dXJlcy9pbmNsdWRlL3BjbC9mZWF0dXJlcy9pbXBs L3Nob3Rfb21wLmhwcAotLS0tIC4vZmVhdHVyZXMvaW5jbHVkZS9wY2wvZmVhdHVyZXMvaW1wbC9z aG90X29tcC5ocHAuZ2NjNDcJMjAxMi0wMS0xNCAxNzowOToxMi4zMDM0MTAxOTYgLTA1MDAKLSsr KyAuL2ZlYXR1cmVzL2luY2x1ZGUvcGNsL2ZlYXR1cmVzL2ltcGwvc2hvdF9vbXAuaHBwCTIwMTIt MDEtMTQgMTc6MTA6MDAuODcxMjI1Mjc0IC0wNTAwCi1AQCAtODYsNyArODYsNyBAQCBwY2w6OlNI T1RFc3RpbWF0aW9uT01QPFBvaW50SW5ULCBQb2ludE5UCi0gI2Vsc2UKLSAgICAgaW50IHRpZCA9 IDA7Ci0gI2VuZGlmCi0tCWNvbXB1dGVQb2ludFNIT1QgKCgqaW5kaWNlc18pW2lkeF0sIG5uX2lu ZGljZXMsIG5uX2Rpc3RzLCBzaG90W3RpZF0sIHJmc1t0aWRdKTsKLSsJdGhpcy0+Y29tcHV0ZVBv aW50U0hPVCAoKCppbmRpY2VzXylbaWR4XSwgbm5faW5kaWNlcywgbm5fZGlzdHMsIHNob3RbdGlk XSwgcmZzW3RpZF0pOwotIAotIAkvLyBDb3B5IGludG8gdGhlIHJlc3VsdGFudCBjbG91ZAotICAg ICBmb3IgKGludCBkID0gMDsgZCA8IHNob3RbdGlkXS5zaXplICgpOyArK2QpCi1AQCAtMTQzLDcg KzE0Myw3IEBAIHBjbDo6U0hPVEVzdGltYXRpb25PTVA8cGNsOjpQb2ludFhZWlJHQkEKLSAjZWxz ZQotICAgICBpbnQgdGlkID0gMDsKLSAjZW5kaWYKLS0gICAgY29tcHV0ZVBvaW50U0hPVCAoKCpp bmRpY2VzXylbaWR4XSwgbm5faW5kaWNlcywgbm5fZGlzdHMsIHNob3RbdGlkXSwgcmZzW3RpZF0p OwotKyAgICB0aGlzLT5jb21wdXRlUG9pbnRTSE9UICgoKmluZGljZXNfKVtpZHhdLCBubl9pbmRp Y2VzLCBubl9kaXN0cywgc2hvdFt0aWRdLCByZnNbdGlkXSk7Ci0gCi0gICAgIC8vIENvcHkgaW50 byB0aGUgcmVzdWx0YW50IGNsb3VkCi0gICAgIGZvciAoaW50IGQgPSAwOyBkIDwgc2hvdFt0aWRd LnNpemUgKCk7ICsrZCkKLWRpZmYgLXVwIC4vZmVhdHVyZXMvaW5jbHVkZS9wY2wvZmVhdHVyZXMv aW1wbC9zcGluX2ltYWdlLmhwcC5nY2M0NyAuL2ZlYXR1cmVzL2luY2x1ZGUvcGNsL2ZlYXR1cmVz L2ltcGwvc3Bpbl9pbWFnZS5ocHAKLS0tLSAuL2ZlYXR1cmVzL2luY2x1ZGUvcGNsL2ZlYXR1cmVz L2ltcGwvc3Bpbl9pbWFnZS5ocHAuZ2NjNDcJMjAxMi0wMS0xNCAxNjo0NToxMS4yNzc2NjM5NTQg LTA1MDAKLSsrKyAuL2ZlYXR1cmVzL2luY2x1ZGUvcGNsL2ZlYXR1cmVzL2ltcGwvc3Bpbl9pbWFn ZS5ocHAJMjAxMi0wMS0xNCAxNjo0NjowMy41ODE2MTg4ODggLTA1MDAKLUBAIC0xMDcsNyArMTA3 LDcgQEAgU3BpbkltYWdlRXN0aW1hdGlvbjxQb2ludEluVCwgUG9pbnROVCwgUAotIAotICAgc3Rk Ojp2ZWN0b3I8aW50PiBubl9pbmRpY2VzOwotICAgc3RkOjp2ZWN0b3I8ZmxvYXQ+IG5uX3Nxcl9k aXN0czsKLS0gIGNvbnN0IGludCBuZWlnaGJfY250ID0gc2VhcmNoRm9yTmVpZ2hib3JzIChpbmRl eCwgc2VhcmNoX3JhZGl1c18sIG5uX2luZGljZXMsIG5uX3Nxcl9kaXN0cyk7Ci0rICBjb25zdCBp bnQgbmVpZ2hiX2NudCA9IHRoaXMtPnNlYXJjaEZvck5laWdoYm9ycyAoaW5kZXgsIHNlYXJjaF9y YWRpdXNfLCBubl9pbmRpY2VzLCBubl9zcXJfZGlzdHMpOwotICAgaWYgKG5laWdoYl9jbnQgPCAo aW50KW1pbl9wdHNfbmVpZ2hiXykKLSAgIHsKLSAgICAgdGhyb3cgUENMRXhjZXB0aW9uICgKLWRp ZmYgLXVwIC4vZmVhdHVyZXMvaW5jbHVkZS9wY2wvZmVhdHVyZXMvc3Bpbl9pbWFnZS5oLmdjYzQ3 IC4vZmVhdHVyZXMvaW5jbHVkZS9wY2wvZmVhdHVyZXMvc3Bpbl9pbWFnZS5oCi0tLS0gLi9mZWF0 dXJlcy9pbmNsdWRlL3BjbC9mZWF0dXJlcy9zcGluX2ltYWdlLmguZ2NjNDcJMjAxMi0wMS0xNCAx Njo0MzozNS4xNjg3NDQ3NTQgLTA1MDAKLSsrKyAuL2ZlYXR1cmVzL2luY2x1ZGUvcGNsL2ZlYXR1 cmVzL3NwaW5faW1hZ2UuaAkyMDEyLTAxLTE0IDE2OjQ0OjUzLjM3MTk5NDcwNCAtMDUwMAotQEAg LTE1Nyw3ICsxNTcsNyBAQCBuYW1lc3BhY2UgcGNsCi0gICAgICAgc2V0SW5wdXRXaXRoTm9ybWFs cyAoY29uc3QgUG9pbnRDbG91ZEluQ29uc3RQdHImIGlucHV0LCAKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBQb2ludENsb3VkTkNvbnN0UHRyJiBub3JtYWxzKQotICAgICAgIHsK LS0gICAgICAgIHNldElucHV0Q2xvdWQgKGlucHV0KTsKLSsgICAgICAgIHRoaXMtPnNldElucHV0 Q2xvdWQgKGlucHV0KTsKLSAgICAgICAgIGlucHV0X25vcm1hbHNfID0gbm9ybWFsczsKLSAgICAg ICB9Ci0gCi1AQCAtMTc0LDggKzE3NCw4IEBAIG5hbWVzcGFjZSBwY2wKLSAgICAgICBzZXRTZWFy Y2hTdXJmYWNlV2l0aE5vcm1hbHMgKGNvbnN0IFBvaW50Q2xvdWRJbkNvbnN0UHRyJiBzdXJmYWNl LCAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFBvaW50Q2xvdWRO Q29uc3RQdHImIG5vcm1hbHMpCi0gICAgICAgewotLSAgICAgICAgc2V0U2VhcmNoU3VyZmFjZSAo c3VyZmFjZSk7Ci0tICAgICAgICBzZXRJbnB1dE5vcm1hbHMgKG5vcm1hbHMpOwotKyAgICAgICAg dGhpcy0+c2V0U2VhcmNoU3VyZmFjZSAoc3VyZmFjZSk7Ci0rICAgICAgICB0aGlzLT5zZXRJbnB1 dE5vcm1hbHMgKG5vcm1hbHMpOwotICAgICAgIH0KLSAKLSAgICAgICAvKiogXGJyaWVmIFNldHMg c2luZ2xlIHZlY3RvciBhIHJvdGF0aW9uIGF4aXMgZm9yIGFsbCBpbnB1dCBwb2ludHMuCi1kaWZm IC11cCAuL29jdHJlZS9pbmNsdWRlL3BjbC9vY3RyZWUvaW1wbC9vY3RyZWVfcG9pbnRjbG91ZC5o cHAuZ2NjNDcgLi9vY3RyZWUvaW5jbHVkZS9wY2wvb2N0cmVlL2ltcGwvb2N0cmVlX3BvaW50Y2xv dWQuaHBwCi0tLS0gLi9vY3RyZWUvaW5jbHVkZS9wY2wvb2N0cmVlL2ltcGwvb2N0cmVlX3BvaW50 Y2xvdWQuaHBwLmdjYzQ3CTIwMTItMDEtMTQgMTU6MjU6MjYuNzA1NjU2Mzc3IC0wNTAwCi0rKysg Li9vY3RyZWUvaW5jbHVkZS9wY2wvb2N0cmVlL2ltcGwvb2N0cmVlX3BvaW50Y2xvdWQuaHBwCTIw MTItMDEtMTQgMTU6MjY6MjkuNjI0OTk4OTc3IC0wNTAwCi1AQCAtNzYzLDEwICs3NjMsMTAgQEAg bmFtZXNwYWNlIHBjbAotICAgICAgICAgLy8gaXRlcmF0ZSBvdmVyIGFsbCBjaGlsZHJlbgotICAg ICAgICAgZm9yIChjaGlsZElkeCA9IDA7IGNoaWxkSWR4IDwgODsgY2hpbGRJZHgrKykKLSAgICAg ICAgIHsKLS0gICAgICAgICAgaWYgKGJyYW5jaEhhc0NoaWxkICgqbm9kZV9hcmcsIGNoaWxkSWR4 KSkKLSsgICAgICAgICAgaWYgKHRoaXMtPmJyYW5jaEhhc0NoaWxkICgqbm9kZV9hcmcsIGNoaWxk SWR4KSkKLSAgICAgICAgICAgewotICAgICAgICAgICAgIGNvbnN0IE9jdHJlZU5vZGUgKiBjaGls ZE5vZGU7Ci0tICAgICAgICAgICAgY2hpbGROb2RlID0gZ2V0QnJhbmNoQ2hpbGQgKCpub2RlX2Fy ZywgY2hpbGRJZHgpOwotKyAgICAgICAgICAgIGNoaWxkTm9kZSA9IHRoaXMtPmdldEJyYW5jaENo aWxkICgqbm9kZV9hcmcsIGNoaWxkSWR4KTsKLSAKLSAgICAgICAgICAgICAvLyBnZW5lcmF0ZSBu ZXcga2V5IGZvciBjdXJyZW50IGJyYW5jaCB2b3hlbAotICAgICAgICAgICAgIE9jdHJlZUtleSBu ZXdLZXk7Ci1kaWZmIC11cCAuL29jdHJlZS9pbmNsdWRlL3BjbC9vY3RyZWUvaW1wbC9vY3RyZWVf c2VhcmNoLmhwcC5nY2M0NyAuL29jdHJlZS9pbmNsdWRlL3BjbC9vY3RyZWUvaW1wbC9vY3RyZWVf c2VhcmNoLmhwcAotLS0tIC4vb2N0cmVlL2luY2x1ZGUvcGNsL29jdHJlZS9pbXBsL29jdHJlZV9z ZWFyY2guaHBwLmdjYzQ3CTIwMTItMDEtMTQgMTU6MjA6MjguOTI0NTY5NDYzIC0wNTAwCi0rKysg Li9vY3RyZWUvaW5jbHVkZS9wY2wvb2N0cmVlL2ltcGwvb2N0cmVlX3NlYXJjaC5ocHAJMjAxMi0w MS0xNCAxNTozNTozNy4zNjMwNjQ3NjMgLTA1MDAKLUBAIC01MSw5ICs1MSw5IEBAIHBjbDo6b2N0 cmVlOjpPY3RyZWVQb2ludENsb3VkU2VhcmNoPFBvaW4KLSAgIGJvb2wgYl9zdWNjZXNzID0gZmFs c2U7Ci0gCi0gICAvLyBnZW5lcmF0ZSBrZXkKLS0gIGdlbk9jdHJlZUtleWZvclBvaW50IChwb2lu dCwga2V5KTsKLSsgIHRoaXMtPmdlbk9jdHJlZUtleWZvclBvaW50IChwb2ludCwga2V5KTsKLSAK LS0gIExlYWZUKiBsZWFmID0gZ2V0TGVhZiAoa2V5KTsKLSsgIExlYWZUKiBsZWFmID0gdGhpcy0+ Z2V0TGVhZiAoa2V5KTsKLSAKLSAgIGlmIChsZWFmKQotICAgewotQEAgLTE5Niw3ICsxOTYsNyBA QCBwY2w6Om9jdHJlZTo6T2N0cmVlUG9pbnRDbG91ZFNlYXJjaDxQb2luCi0gICAvLyBpdGVyYXRl IG92ZXIgYWxsIGNoaWxkcmVuCi0gICBmb3IgKGNoaWxkSWR4ID0gMDsgY2hpbGRJZHggPCA4OyBj aGlsZElkeCsrKQotICAgewotLSAgICBpZiAoYnJhbmNoSGFzQ2hpbGQgKCpub2RlLCBjaGlsZElk eCkpCi0rICAgIGlmICh0aGlzLT5icmFuY2hIYXNDaGlsZCAoKm5vZGUsIGNoaWxkSWR4KSkKLSAg ICAgewotICAgICAgIFBvaW50VCB2b3hlbENlbnRlcjsKLSAKLUBAIC0yMDUsMTAgKzIwNSwxMCBA QCBwY2w6Om9jdHJlZTo6T2N0cmVlUG9pbnRDbG91ZFNlYXJjaDxQb2luCi0gICAgICAgc2VhcmNo RW50cnlIZWFwW2NoaWxkSWR4XS5rZXkueiA9IChrZXkueiA8PCAxKSArICghIShjaGlsZElkeCAm ICgxIDw8IDApKSk7Ci0gCi0gICAgICAgLy8gZ2VuZXJhdGUgdm94ZWwgY2VudGVyIHBvaW50IGZv ciB2b3hlbCBhdCBrZXkKLS0gICAgICBnZW5Wb3hlbENlbnRlckZyb21PY3RyZWVLZXkgKHNlYXJj aEVudHJ5SGVhcFtjaGlsZElkeF0ua2V5LCB0cmVlRGVwdGgsIHZveGVsQ2VudGVyKTsKLSsgICAg ICB0aGlzLT5nZW5Wb3hlbENlbnRlckZyb21PY3RyZWVLZXkgKHNlYXJjaEVudHJ5SGVhcFtjaGls ZElkeF0ua2V5LCB0cmVlRGVwdGgsIHZveGVsQ2VudGVyKTsKLSAKLSAgICAgICAvLyBnZW5lcmF0 ZSBuZXcgcHJpb3JpdHkgcXVldWUgZWxlbWVudAotLSAgICAgIHNlYXJjaEVudHJ5SGVhcFtjaGls ZElkeF0ubm9kZSA9IGdldEJyYW5jaENoaWxkICgqbm9kZSwgY2hpbGRJZHgpOwotKyAgICAgIHNl YXJjaEVudHJ5SGVhcFtjaGlsZElkeF0ubm9kZSA9IHRoaXMtPmdldEJyYW5jaENoaWxkICgqbm9k ZSwgY2hpbGRJZHgpOwotICAgICAgIHNlYXJjaEVudHJ5SGVhcFtjaGlsZElkeF0ucG9pbnREaXN0 YW5jZSA9IHBvaW50U3F1YXJlZERpc3QgKHZveGVsQ2VudGVyLCBwb2ludCk7Ci0gICAgIH0KLSAg ICAgZWxzZQotQEAgLTMwMywxMSArMzAzLDExIEBAIHBjbDo6b2N0cmVlOjpPY3RyZWVQb2ludENs b3VkU2VhcmNoPFBvaW4KLSAgIC8vIGl0ZXJhdGUgb3ZlciBhbGwgY2hpbGRyZW4KLSAgIGZvciAo Y2hpbGRJZHggPSAwOyBjaGlsZElkeCA8IDg7IGNoaWxkSWR4KyspCi0gICB7Ci0tICAgIGlmICgh YnJhbmNoSGFzQ2hpbGQgKCpub2RlLCBjaGlsZElkeCkpCi0rICAgIGlmICghdGhpcy0+YnJhbmNo SGFzQ2hpbGQgKCpub2RlLCBjaGlsZElkeCkpCi0gICAgICAgY29udGludWU7Ci0gCi0gICAgIGNv bnN0IE9jdHJlZU5vZGUqIGNoaWxkTm9kZTsKLS0gICAgY2hpbGROb2RlID0gZ2V0QnJhbmNoQ2hp bGQgKCpub2RlLCBjaGlsZElkeCk7Ci0rICAgIGNoaWxkTm9kZSA9IHRoaXMtPmdldEJyYW5jaENo aWxkICgqbm9kZSwgY2hpbGRJZHgpOwotIAotICAgICBPY3RyZWVLZXkgbmV3S2V5OwotICAgICBQ b2ludFQgdm94ZWxDZW50ZXI7Ci1AQCAtMzE5LDcgKzMxOSw3IEBAIHBjbDo6b2N0cmVlOjpPY3Ry ZWVQb2ludENsb3VkU2VhcmNoPFBvaW4KLSAgICAgbmV3S2V5LnogPSAoa2V5LnogPDwgMSkgKyAo ISEoY2hpbGRJZHggJiAoMSA8PCAwKSkpOwotIAotICAgICAvLyBnZW5lcmF0ZSB2b3hlbCBjZW50 ZXIgcG9pbnQgZm9yIHZveGVsIGF0IGtleQotLSAgICBnZW5Wb3hlbENlbnRlckZyb21PY3RyZWVL ZXkgKG5ld0tleSwgdHJlZURlcHRoLCB2b3hlbENlbnRlcik7Ci0rICAgIHRoaXMtPmdlblZveGVs Q2VudGVyRnJvbU9jdHJlZUtleSAobmV3S2V5LCB0cmVlRGVwdGgsIHZveGVsQ2VudGVyKTsKLSAK LSAgICAgLy8gY2FsY3VsYXRlIGRpc3RhbmNlIHRvIHNlYXJjaCBwb2ludAotICAgICBzcXVhcmVk RGlzdCA9IHBvaW50U3F1YXJlZERpc3QgKChjb25zdCBQb2ludFQgJil2b3hlbENlbnRlciwgcG9p bnQpOwotQEAgLTM5NSw3ICszOTUsNyBAQCBwY2w6Om9jdHJlZTo6T2N0cmVlUG9pbnRDbG91ZFNl YXJjaDxQb2luCi0gICAvLyBpdGVyYXRlIG92ZXIgYWxsIGNoaWxkcmVuCi0gICBmb3IgKGNoaWxk SWR4ID0gMDsgY2hpbGRJZHggPCA4OyBjaGlsZElkeCsrKQotICAgewotLSAgICBpZiAoIWJyYW5j aEhhc0NoaWxkICgqbm9kZSwgY2hpbGRJZHgpKQotKyAgICBpZiAoIXRoaXMtPmJyYW5jaEhhc0No aWxkICgqbm9kZSwgY2hpbGRJZHgpKQotICAgICAgIGNvbnRpbnVlOwotIAotICAgICBQb2ludFQg dm94ZWxDZW50ZXI7Ci1AQCAtNDA2LDcgKzQwNiw3IEBAIHBjbDo6b2N0cmVlOjpPY3RyZWVQb2lu dENsb3VkU2VhcmNoPFBvaW4KLSAgICAgbmV3S2V5LnogPSAoa2V5LnogPDwgMSkgKyAoISEoY2hp bGRJZHggJiAoMSA8PCAwKSkpOwotIAotICAgICAvLyBnZW5lcmF0ZSB2b3hlbCBjZW50ZXIgcG9p bnQgZm9yIHZveGVsIGF0IGtleQotLSAgICBnZW5Wb3hlbENlbnRlckZyb21PY3RyZWVLZXkgKG5l d0tleSwgdHJlZURlcHRoLCB2b3hlbENlbnRlcik7Ci0rICAgIHRoaXMtPmdlblZveGVsQ2VudGVy RnJvbU9jdHJlZUtleSAobmV3S2V5LCB0cmVlRGVwdGgsIHZveGVsQ2VudGVyKTsKLSAKLSAgICAg dm94ZWxQb2ludERpc3QgPSBwb2ludFNxdWFyZWREaXN0ICh2b3hlbENlbnRlciwgcG9pbnQpOwot IAotQEAgLTQyMiw3ICs0MjIsNyBAQCBwY2w6Om9jdHJlZTo6T2N0cmVlUG9pbnRDbG91ZFNlYXJj aDxQb2luCi0gICAvLyBtYWtlIHN1cmUgd2UgZm91bmQgYXQgbGVhc3Qgb25lIGJyYW5jaCBjaGls ZAotICAgYXNzZXJ0IChtaW5DaGlsZElkeDw4KTsKLSAKLS0gIGNoaWxkTm9kZSA9IGdldEJyYW5j aENoaWxkICgqbm9kZSwgbWluQ2hpbGRJZHgpOwotKyAgY2hpbGROb2RlID0gdGhpcy0+Z2V0QnJh bmNoQ2hpbGQgKCpub2RlLCBtaW5DaGlsZElkeCk7Ci0gCi0gICBpZiAodHJlZURlcHRoIDwgdGhp cy0+b2N0cmVlRGVwdGhfKQotICAgewotQEAgLTU0NSw3ICs1NDUsNyBAQCBwY2w6Om9jdHJlZTo6 T2N0cmVlUG9pbnRDbG91ZFNlYXJjaDxQb2luCi0gICB7Ci0gICAgIFBvaW50VCBuZXdQb2ludDsK LSAKLS0gICAgZ2VuTGVhZk5vZGVDZW50ZXJGcm9tT2N0cmVlS2V5IChrZXksIG5ld1BvaW50KTsK LSsgICAgdGhpcy0+Z2VuTGVhZk5vZGVDZW50ZXJGcm9tT2N0cmVlS2V5IChrZXksIG5ld1BvaW50 KTsKLSAKLSAgICAgdm94ZWxDZW50ZXJMaXN0LnB1c2hfYmFjayAobmV3UG9pbnQpOwotIAotQEAg LTU3Niw3ICs1NzYsNyBAQCBwY2w6Om9jdHJlZTo6T2N0cmVlUG9pbnRDbG91ZFNlYXJjaDxQb2lu Ci0gICAgICAgY2hpbGRJZHggPSBhOwotIAotICAgICAvLyBjaGlsZE5vZGUgPT0gMCBpZiBjaGls ZE5vZGUgZG9lc24ndCBleGlzdAotLSAgICBjaGlsZE5vZGUgPSBnZXRCcmFuY2hDaGlsZCAoKE9j dHJlZUJyYW5jaCYpKm5vZGUsIGNoaWxkSWR4KTsKLSsgICAgY2hpbGROb2RlID0gdGhpcy0+Z2V0 QnJhbmNoQ2hpbGQgKChPY3RyZWVCcmFuY2gmKSpub2RlLCBjaGlsZElkeCk7Ci0gCi0gICAgIC8v IEdlbmVyYXRlIG5ldyBrZXkgZm9yIGN1cnJlbnQgYnJhbmNoIHZveGVsCi0gICAgIGNoaWxkS2V5 LnggPSAoa2V5LnggPDwgMSkgfCAoISEoY2hpbGRJZHggJiAoMSA8PCAyKSkpOwotQEAgLTcwMCw3 ICs3MDAsNyBAQCBwY2w6Om9jdHJlZTo6T2N0cmVlUG9pbnRDbG91ZFNlYXJjaDxQb2luCi0gICAg ICAgY2hpbGRJZHggPSBhOwotIAotICAgICAvLyBjaGlsZE5vZGUgPT0gMCBpZiBjaGlsZE5vZGUg ZG9lc24ndCBleGlzdAotLSAgICBjaGlsZE5vZGUgPSBnZXRCcmFuY2hDaGlsZCAoKE9jdHJlZUJy YW5jaCYpKm5vZGUsIGNoaWxkSWR4KTsKLSsgICAgY2hpbGROb2RlID0gdGhpcy0+Z2V0QnJhbmNo Q2hpbGQgKChPY3RyZWVCcmFuY2gmKSpub2RlLCBjaGlsZElkeCk7Ci0gICAgIC8vIEdlbmVyYXRl IG5ldyBrZXkgZm9yIGN1cnJlbnQgYnJhbmNoIHZveGVsCi0gICAgIGNoaWxkS2V5LnggPSAoa2V5 LnggPDwgMSkgfCAoISEoY2hpbGRJZHggJiAoMSA8PCAyKSkpOwotICAgICBjaGlsZEtleS55ID0g KGtleS55IDw8IDEpIHwgKCEhKGNoaWxkSWR4ICYgKDEgPDwgMSkpKTsKLWRpZmYgLXVwIC4vb2N0 cmVlL2luY2x1ZGUvcGNsL29jdHJlZS9vY3RyZWVfc2VhcmNoLmguZ2NjNDcgLi9vY3RyZWUvaW5j bHVkZS9wY2wvb2N0cmVlL29jdHJlZV9zZWFyY2guaAotZGlmZiAtdXAgLi9yZWdpc3RyYXRpb24v aW5jbHVkZS9wY2wvcmVnaXN0cmF0aW9uL2ltcGwvaWNwLmhwcC5nY2M0NyAuL3JlZ2lzdHJhdGlv bi9pbmNsdWRlL3BjbC9yZWdpc3RyYXRpb24vaW1wbC9pY3AuaHBwCi0tLS0gLi9yZWdpc3RyYXRp b24vaW5jbHVkZS9wY2wvcmVnaXN0cmF0aW9uL2ltcGwvaWNwLmhwcC5nY2M0NwkyMDEyLTAxLTE0 IDE4OjAzOjMyLjMwNzg4MjIzOCAtMDUwMAotKysrIC4vcmVnaXN0cmF0aW9uL2luY2x1ZGUvcGNs L3JlZ2lzdHJhdGlvbi9pbXBsL2ljcC5ocHAJMjAxMi0wMS0xNCAxODowNzoxNS43OTExNDYzMTUg LTA1MDAKLUBAIC04Nyw3ICs4Nyw3IEBAIHBjbDo6SXRlcmF0aXZlQ2xvc2VzdFBvaW50PFBvaW50 U291cmNlLAotICAgICAvLyBJdGVyYXRpbmcgb3ZlciB0aGUgZW50aXJlIGluZGV4IHZlY3RvciBh bmQgIGZpbmQgYWxsIGNvcnJlc3BvbmRlbmNlcwotICAgICBmb3IgKHNpemVfdCBpZHggPSAwOyBp ZHggPCBpbmRpY2VzXy0+c2l6ZSAoKTsgKytpZHgpCi0gICAgIHsKLS0gICAgICBpZiAoIXNlYXJj aEZvck5laWdoYm9ycyAob3V0cHV0LCAoKmluZGljZXNfKVtpZHhdLCBubl9pbmRpY2VzLCBubl9k aXN0cykpCi0rICAgICAgaWYgKCF0aGlzLT5zZWFyY2hGb3JOZWlnaGJvcnMgKG91dHB1dCwgKCpp bmRpY2VzXylbaWR4XSwgbm5faW5kaWNlcywgbm5fZGlzdHMpKQotICAgICAgIHsKLSAgICAgICAg IFBDTF9FUlJPUiAoIltwY2w6OiVzOjpjb21wdXRlVHJhbnNmb3JtYXRpb25dIFVuYWJsZSB0byBm aW5kIGEgbmVhcmVzdCBuZWlnaGJvciBpbiB0aGUgdGFyZ2V0IGRhdGFzZXQgZm9yIHBvaW50ICVk IGluIHRoZSBzb3VyY2UhXG4iLCBnZXRDbGFzc05hbWUgKCkuY19zdHIgKCksICgqaW5kaWNlc18p W2lkeF0pOwotICAgICAgICAgcmV0dXJuOwotQEAgLTE5MCw3ICsxOTAsNyBAQCBwY2w6Okl0ZXJh dGl2ZUNsb3Nlc3RQb2ludDxQb2ludFNvdXJjZSwKLSAKLSAgICAgaWYgKG5yX2l0ZXJhdGlvbnNf ID49IG1heF9pdGVyYXRpb25zXyB8fAotICAgICAgICAgZmFicyAoKHRyYW5zZm9ybWF0aW9uXyAt IHByZXZpb3VzX3RyYW5zZm9ybWF0aW9uXykuc3VtICgpKSA8IHRyYW5zZm9ybWF0aW9uX2Vwc2ls b25fIHx8Ci0tICAgICAgICBmYWJzIChnZXRGaXRuZXNzU2NvcmUgKGNvcnJlc3BvbmRlbmNlX2Rp c3RhbmNlc18sIHByZXZpb3VzX2NvcnJlc3BvbmRlbmNlX2Rpc3RhbmNlcykpIDw9IGV1Y2xpZGVh bl9maXRuZXNzX2Vwc2lsb25fCi0rICAgICAgICBmYWJzICh0aGlzLT5nZXRGaXRuZXNzU2NvcmUg KGNvcnJlc3BvbmRlbmNlX2Rpc3RhbmNlc18sIHByZXZpb3VzX2NvcnJlc3BvbmRlbmNlX2Rpc3Rh bmNlcykpIDw9IGV1Y2xpZGVhbl9maXRuZXNzX2Vwc2lsb25fCi0gICAgICAgICkKLSAgICAgewot ICAgICAgIGNvbnZlcmdlZF8gPSB0cnVlOwotQEAgLTIwMSw3ICsyMDEsNyBAQCBwY2w6Okl0ZXJh dGl2ZUNsb3Nlc3RQb2ludDxQb2ludFNvdXJjZSwKLSAgICAgICBQQ0xfREVCVUcgKCJmYWJzICgo dHJhbnNmb3JtYXRpb25fIC0gcHJldmlvdXNfdHJhbnNmb3JtYXRpb25fKS5zdW0gKCkpICglZikg PCB0cmFuc2Zvcm1hdGlvbl9lcHNpbG9uXyAoJWYpXG4iLAotICAgICAgICAgICAgICAgICAgZmFi cyAoKHRyYW5zZm9ybWF0aW9uXyAtIHByZXZpb3VzX3RyYW5zZm9ybWF0aW9uXykuc3VtICgpKSwg dHJhbnNmb3JtYXRpb25fZXBzaWxvbl8pOwotICAgICAgIFBDTF9ERUJVRyAoImZhYnMgKGdldEZp dG5lc3NTY29yZSAoY29ycmVzcG9uZGVuY2VfZGlzdGFuY2VzXywgcHJldmlvdXNfY29ycmVzcG9u ZGVuY2VfZGlzdGFuY2VzKSkgKCVmKSA8PSBldWNsaWRlYW5fZml0bmVzc19lcHNpbG9uXyAoJWYp XG4iLAotLSAgICAgICAgICAgICAgICAgZmFicyAoZ2V0Rml0bmVzc1Njb3JlIChjb3JyZXNwb25k ZW5jZV9kaXN0YW5jZXNfLCBwcmV2aW91c19jb3JyZXNwb25kZW5jZV9kaXN0YW5jZXMpKSwKLSsg ICAgICAgICAgICAgICAgIGZhYnMgKHRoaXMtPmdldEZpdG5lc3NTY29yZSAoY29ycmVzcG9uZGVu Y2VfZGlzdGFuY2VzXywgcHJldmlvdXNfY29ycmVzcG9uZGVuY2VfZGlzdGFuY2VzKSksCi0gICAg ICAgICAgICAgICAgICBldWNsaWRlYW5fZml0bmVzc19lcHNpbG9uXyk7Ci0gCi0gICAgIH0KLWRp ZmYgLXVwIC4vc3VyZmFjZS9pbmNsdWRlL3BjbC9zdXJmYWNlL2ltcGwvbWFyY2hpbmdfY3ViZXNf Z3JlZWR5X2RvdC5ocHAuZ2NjNDcgLi9zdXJmYWNlL2luY2x1ZGUvcGNsL3N1cmZhY2UvaW1wbC9t YXJjaGluZ19jdWJlc19ncmVlZHlfZG90LmhwcAotLS0tIC4vc3VyZmFjZS9pbmNsdWRlL3BjbC9z dXJmYWNlL2ltcGwvbWFyY2hpbmdfY3ViZXNfZ3JlZWR5X2RvdC5ocHAuZ2NjNDcJMjAxMi0wMS0x NCAxNzo0OToyNi42MjA1ODI1NDAgLTA1MDAKLSsrKyAuL3N1cmZhY2UvaW5jbHVkZS9wY2wvc3Vy ZmFjZS9pbXBsL21hcmNoaW5nX2N1YmVzX2dyZWVkeV9kb3QuaHBwCTIwMTItMDEtMTQgMTc6NDk6 NTAuMjQ1NDY1MjQxIC0wNTAwCi1AQCAtNzIsMTEgKzcyLDExIEBAIHBjbDo6TWFyY2hpbmdDdWJl c0dyZWVkeURvdDxQb2ludE5UPjo6dm8KLSAKLSAgICAgLy8gdGhlIHZlcnRpY2VzIGFyZSBzaGFy ZWQgYnkgOCB2b3hlbHMsIHNvIHdlIG5lZWQgdG8gdXBkYXRlIGFsbCA4IG9mIHRoZW0KLSAgICAg SGFzaE1hcCBuZWlnaGJvcl9saXN0OwotLSAgICBnZXROZWlnaGJvckxpc3QxRCAoY2VsbF9kYXRh LCBpbmRleF8zZCwgbmVpZ2hib3JfbGlzdCk7Ci0rICAgIHRoaXMtPmdldE5laWdoYm9yTGlzdDFE IChjZWxsX2RhdGEsIGluZGV4XzNkLCBuZWlnaGJvcl9saXN0KTsKLSAgICAgQk9PU1RfRk9SRUFD SCAodHlwZW5hbWUgSGFzaE1hcDo6dmFsdWVfdHlwZSBlbnRyeSwgbmVpZ2hib3JfbGlzdCkKLSAg ICAgewotICAgICAgIEVpZ2VuOjpWZWN0b3IzaSBpM2Q7Ci0tICAgICAgZ2V0SW5kZXhJbjNEIChl bnRyeS5maXJzdCwgaTNkKTsKLSsgICAgICB0aGlzLT5nZXRJbmRleEluM0QgKGVudHJ5LmZpcnN0 LCBpM2QpOwotICAgICAgIC8vIGdldENlbGxDZW50ZXJGcm9tSW5kZXggKGNvbnN0IEVpZ2VuOjpW ZWN0b3IzaSAmaW5kZXgsIEVpZ2VuOjpWZWN0b3I0ZiAmY2VudGVyKSBjb25zdAotICAgICAgIEVp Z2VuOjpWZWN0b3I0ZiBwb3NWZWN0b3I7Ci0gICAgICAgTWFyY2hpbmdDdWJlczxQb2ludE5UPjo6 Z2V0Q2VsbENlbnRlckZyb21JbmRleCAoaTNkLCBwb3NWZWN0b3IpOwotZGlmZiAtdXAgLi9zdXJm YWNlL2luY2x1ZGUvcGNsL3N1cmZhY2UvaW1wbC9tYXJjaGluZ19jdWJlc19ncmVlZHkuaHBwLmdj YzQ3IC4vc3VyZmFjZS9pbmNsdWRlL3BjbC9zdXJmYWNlL2ltcGwvbWFyY2hpbmdfY3ViZXNfZ3Jl ZWR5LmhwcAotLS0tIC4vc3VyZmFjZS9pbmNsdWRlL3BjbC9zdXJmYWNlL2ltcGwvbWFyY2hpbmdf Y3ViZXNfZ3JlZWR5LmhwcC5nY2M0NwkyMDEyLTAxLTE0IDE3OjQ3OjIzLjA1MTk2NTYxOSAtMDUw MAotKysrIC4vc3VyZmFjZS9pbmNsdWRlL3BjbC9zdXJmYWNlL2ltcGwvbWFyY2hpbmdfY3ViZXNf Z3JlZWR5LmhwcAkyMDEyLTAxLTE0IDE3OjQ4OjA2LjcxNTU5NzAzNCAtMDUwMAotQEAgLTcyLDEx ICs3MiwxMSBAQCBwY2w6Ok1hcmNoaW5nQ3ViZXNHcmVlZHk8UG9pbnROVD46OnZveGVsCi0gCi0g ICAgIC8vIHRoZSB2ZXJ0aWNlcyBhcmUgc2hhcmVkIGJ5IDggdm94ZWxzLCBzbyB3ZSBuZWVkIHRv IHVwZGF0ZSBhbGwgOCBvZiB0aGVtCi0gICAgIEhhc2hNYXAgbmVpZ2hib3JfbGlzdDsKLS0gICAg Z2V0TmVpZ2hib3JMaXN0MUQgKGNlbGxfZGF0YSwgaW5kZXhfM2QsIG5laWdoYm9yX2xpc3QpOwot KyAgICB0aGlzLT5nZXROZWlnaGJvckxpc3QxRCAoY2VsbF9kYXRhLCBpbmRleF8zZCwgbmVpZ2hi b3JfbGlzdCk7Ci0gICAgIEJPT1NUX0ZPUkVBQ0ggKHR5cGVuYW1lIEhhc2hNYXA6OnZhbHVlX3R5 cGUgZW50cnksIG5laWdoYm9yX2xpc3QpCi0gICAgIHsKLSAgICAgICBFaWdlbjo6VmVjdG9yM2kg aTNkOwotLSAgICAgIGdldEluZGV4SW4zRChlbnRyeS5maXJzdCwgaTNkKTsKLSsgICAgICB0aGlz LT5nZXRJbmRleEluM0QoZW50cnkuZmlyc3QsIGkzZCk7Ci0gICAgICAgLy8gaWYgdGhlIG5laWdo Ym9yIGRvZXNuJ3QgZXhpc3QsIGFkZCBpdCwgb3RoZXJ3aXNlIHdlIG5lZWQgdG8gZG8gYW4gT1Ig b3BlcmF0aW9uIG9uIHRoZSB2ZXJ0aWNlcwotICAgICAgIGlmIChjZWxsX2hhc2hfbWFwXy5maW5k IChlbnRyeS5maXJzdCkgPT0gY2VsbF9oYXNoX21hcF8uZW5kICgpKQotICAgICAgIHsKCmRpZmYg LS1naXQgYS9wY2wtMS41LjEtZ2NjNDcucGF0Y2ggYi9wY2wtMS41LjEtZ2NjNDcucGF0Y2gKZGVs ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNkMjAyYTUuLjAwMDAwMDAKLS0tIGEvcGNsLTEu NS4xLWdjYzQ3LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsODIgKzAsMCBAQAotZGlmZiAtdXAg Li90cmFja2luZy9pbmNsdWRlL3BjbC90cmFja2luZy9pbXBsL2tsZF9hZGFwdGl2ZV9wYXJ0aWNs ZV9maWx0ZXIuaHBwLmdjYzQ3IC4vdHJhY2tpbmcvaW5jbHVkZS9wY2wvdHJhY2tpbmcvaW1wbC9r bGRfYWRhcHRpdmVfcGFydGljbGVfZmlsdGVyLmhwcAotLS0tIC4vdHJhY2tpbmcvaW5jbHVkZS9w Y2wvdHJhY2tpbmcvaW1wbC9rbGRfYWRhcHRpdmVfcGFydGljbGVfZmlsdGVyLmhwcC5nY2M0Nwky MDEyLTAyLTI3IDE5OjUyOjUzLjgxMzMxODYzMiAtMDUwMAotKysrIC4vdHJhY2tpbmcvaW5jbHVk ZS9wY2wvdHJhY2tpbmcvaW1wbC9rbGRfYWRhcHRpdmVfcGFydGljbGVfZmlsdGVyLmhwcAkyMDEy LTAyLTI3IDE5OjUzOjIyLjgxNTM2NDk1NCAtMDUwMAotQEAgLTU0LDcgKzU0LDcgQEAgcGNsOjp0 cmFja2luZzo6S0xEQWRhcHRpdmVQYXJ0aWNsZUZpbHRlcgotICAgLy8gaW5pdGlhbGl6aW5nIGZv ciBzYW1wbGluZyB3aXRob3V0IHJlcGxhY2VtZW50Ci0gICBzdGQ6OnZlY3RvcjxpbnQ+IGEgKHBh cnRpY2xlc18tPnBvaW50cy5zaXplICgpKTsKLSAgIHN0ZDo6dmVjdG9yPGRvdWJsZT4gcSAocGFy dGljbGVzXy0+cG9pbnRzLnNpemUgKCkpOwotLSAgZ2VuQWxpYXNUYWJsZSAoYSwgcSwgcGFydGlj bGVzXyk7Ci0rICB0aGlzLT5nZW5BbGlhc1RhYmxlIChhLCBxLCBwYXJ0aWNsZXNfKTsKLSAgIAot ICAgY29uc3Qgc3RkOjp2ZWN0b3I8ZG91YmxlPiB6ZXJvX21lYW4gKFN0YXRlVDo6c3RhdGVEaW1l bnNpb24gKCksIDAuMCk7Ci0gICAKLWRpZmYgLXVwIC4vdHJhY2tpbmcvaW5jbHVkZS9wY2wvdHJh Y2tpbmcvaW1wbC9rbGRfYWRhcHRpdmVfcGFydGljbGVfZmlsdGVyX29tcC5ocHAuZ2NjNDcgLi90 cmFja2luZy9pbmNsdWRlL3BjbC90cmFja2luZy9pbXBsL2tsZF9hZGFwdGl2ZV9wYXJ0aWNsZV9m aWx0ZXJfb21wLmhwcAotLS0tIC4vdHJhY2tpbmcvaW5jbHVkZS9wY2wvdHJhY2tpbmcvaW1wbC9r bGRfYWRhcHRpdmVfcGFydGljbGVfZmlsdGVyX29tcC5ocHAuZ2NjNDcJMjAxMi0wMi0yNyAyMDow NToyOC4zNzQ2MjQ5NTQgLTA1MDAKLSsrKyAuL3RyYWNraW5nL2luY2x1ZGUvcGNsL3RyYWNraW5n L2ltcGwva2xkX2FkYXB0aXZlX3BhcnRpY2xlX2ZpbHRlcl9vbXAuaHBwCTIwMTItMDItMjcgMjA6 MDY6NDAuMzA1MTk2MjYwIC0wNTAwCi1AQCAtOCwxNCArOCwxNCBAQCBwY2w6OnRyYWNraW5nOjpL TERBZGFwdGl2ZVBhcnRpY2xlRmlsdGVyCi0gICB7Ci0gI3ByYWdtYSBvbXAgcGFyYWxsZWwgZm9y IHNjaGVkdWxlIChkeW5hbWljLCB0aHJlYWRzXykKLSAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBw YXJ0aWNsZV9udW1fOyBpKyspCi0tICAgICAgY29tcHV0ZVRyYW5zZm9ybWVkUG9pbnRDbG91ZFdp dGhvdXROb3JtYWwgKHBhcnRpY2xlc18tPnBvaW50c1tpXSwgKnRyYW5zZWRfcmVmZXJlbmNlX3Zl Y3Rvcl9baV0pOwotKyAgICAgIHRoaXMtPmNvbXB1dGVUcmFuc2Zvcm1lZFBvaW50Q2xvdWRXaXRo b3V0Tm9ybWFsIChwYXJ0aWNsZXNfLT5wb2ludHNbaV0sICp0cmFuc2VkX3JlZmVyZW5jZV92ZWN0 b3JfW2ldKTsKLSAgICAgCi0gICAgIFBvaW50Q2xvdWRJblB0ciBjb2hlcmVuY2VfaW5wdXQgKG5l dyBQb2ludENsb3VkSW4pOwotLSAgICBjcm9wSW5wdXRQb2ludENsb3VkIChpbnB1dF8sICpjb2hl cmVuY2VfaW5wdXQpOwotKyAgICB0aGlzLT5jcm9wSW5wdXRQb2ludENsb3VkIChpbnB1dF8sICpj b2hlcmVuY2VfaW5wdXQpOwotICAgICBpZiAoY2hhbmdlX2NvdW50ZXJfID09IDApCi0gICAgIHsK LSAgICAgICAvLyB0ZXN0IGNoYW5nZSBkZXRlY3RvcgotLSAgICAgIGlmICghdXNlX2NoYW5nZV9k ZXRlY3Rvcl8gfHwgdGVzdENoYW5nZURldGVjdGlvbiAoY29oZXJlbmNlX2lucHV0KSkKLSsgICAg ICBpZiAoIXVzZV9jaGFuZ2VfZGV0ZWN0b3JfIHx8IHRoaXMtPnRlc3RDaGFuZ2VEZXRlY3Rpb24g KGNvaGVyZW5jZV9pbnB1dCkpCi0gICAgICAgewotICAgICAgICAgY2hhbmdlZF8gPSB0cnVlOwot ICAgICAgICAgY2hhbmdlX2NvdW50ZXJfID0gY2hhbmdlX2RldGVjdG9yX2ludGVydmFsXzsKLUBA IC01NCwxMSArNTQsMTEgQEAgcGNsOjp0cmFja2luZzo6S0xEQWRhcHRpdmVQYXJ0aWNsZUZpbHRl cgotICNwcmFnbWEgb21wIHBhcmFsbGVsIGZvciBzY2hlZHVsZSAoZHluYW1pYywgdGhyZWFkc18p Ci0gICAgIGZvciAoaW50IGkgPSAwOyBpIDwgcGFydGljbGVfbnVtXzsgaSsrKQotICAgICB7Ci0t ICAgICAgY29tcHV0ZVRyYW5zZm9ybWVkUG9pbnRDbG91ZFdpdGhOb3JtYWwgKHBhcnRpY2xlc18t PnBvaW50c1tpXSwgKmluZGljZXNfbGlzdFtpXSwgKnRyYW5zZWRfcmVmZXJlbmNlX3ZlY3Rvcl9b aV0pOwotKyAgICAgIHRoaXMtPmNvbXB1dGVUcmFuc2Zvcm1lZFBvaW50Q2xvdWRXaXRoTm9ybWFs IChwYXJ0aWNsZXNfLT5wb2ludHNbaV0sICppbmRpY2VzX2xpc3RbaV0sICp0cmFuc2VkX3JlZmVy ZW5jZV92ZWN0b3JfW2ldKTsKLSAgICAgfQotICAgICAKLSAgICAgUG9pbnRDbG91ZEluUHRyIGNv aGVyZW5jZV9pbnB1dCAobmV3IFBvaW50Q2xvdWRJbik7Ci0tICAgIGNyb3BJbnB1dFBvaW50Q2xv dWQgKGlucHV0XywgKmNvaGVyZW5jZV9pbnB1dCk7Ci0rICAgIHRoaXMtPmNyb3BJbnB1dFBvaW50 Q2xvdWQgKGlucHV0XywgKmNvaGVyZW5jZV9pbnB1dCk7Ci0gICAgIAotICAgICBjb2hlcmVuY2Vf LT5zZXRUYXJnZXRDbG91ZCAoY29oZXJlbmNlX2lucHV0KTsKLSAgICAgY29oZXJlbmNlXy0+aW5p dENvbXB1dGUgKCk7Ci1kaWZmIC11cCAuL3RyYWNraW5nL2luY2x1ZGUvcGNsL3RyYWNraW5nL2lt cGwvcGFydGljbGVfZmlsdGVyX29tcC5ocHAuZ2NjNDcgLi90cmFja2luZy9pbmNsdWRlL3BjbC90 cmFja2luZy9pbXBsL3BhcnRpY2xlX2ZpbHRlcl9vbXAuaHBwCi0tLS0gLi90cmFja2luZy9pbmNs dWRlL3BjbC90cmFja2luZy9pbXBsL3BhcnRpY2xlX2ZpbHRlcl9vbXAuaHBwLmdjYzQ3CTIwMTIt MDItMjcgMTk6MzY6MzAuODE4Mjg3MzQ3IC0wNTAwCi0rKysgLi90cmFja2luZy9pbmNsdWRlL3Bj bC90cmFja2luZy9pbXBsL3BhcnRpY2xlX2ZpbHRlcl9vbXAuaHBwCTIwMTItMDItMjcgMTk6NTI6 MzMuNDQxNTg1MDE3IC0wNTAwCi1AQCAtOCwxNCArOCwxNCBAQCBwY2w6OnRyYWNraW5nOjpQYXJ0 aWNsZUZpbHRlck9NUFRyYWNrZXI8Ci0gICB7Ci0gI3ByYWdtYSBvbXAgcGFyYWxsZWwgZm9yIHNj aGVkdWxlIChkeW5hbWljLCB0aHJlYWRzXykKLSAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBwYXJ0 aWNsZV9udW1fOyBpKyspCi0tICAgICAgY29tcHV0ZVRyYW5zZm9ybWVkUG9pbnRDbG91ZFdpdGhv dXROb3JtYWwgKHBhcnRpY2xlc18tPnBvaW50c1tpXSwgKnRyYW5zZWRfcmVmZXJlbmNlX3ZlY3Rv cl9baV0pOwotKyAgICAgIHRoaXMtPmNvbXB1dGVUcmFuc2Zvcm1lZFBvaW50Q2xvdWRXaXRob3V0 Tm9ybWFsIChwYXJ0aWNsZXNfLT5wb2ludHNbaV0sICp0cmFuc2VkX3JlZmVyZW5jZV92ZWN0b3Jf W2ldKTsKLSAgICAgCi0gICAgIFBvaW50Q2xvdWRJblB0ciBjb2hlcmVuY2VfaW5wdXQgKG5ldyBQ b2ludENsb3VkSW4pOwotLSAgICBjcm9wSW5wdXRQb2ludENsb3VkIChpbnB1dF8sICpjb2hlcmVu Y2VfaW5wdXQpOwotKyAgICB0aGlzLT5jcm9wSW5wdXRQb2ludENsb3VkIChpbnB1dF8sICpjb2hl cmVuY2VfaW5wdXQpOwotICAgICBpZiAoY2hhbmdlX2NvdW50ZXJfID09IDApCi0gICAgIHsKLSAg ICAgICAvLyB0ZXN0IGNoYW5nZSBkZXRlY3RvcgotLSAgICAgIGlmICghdXNlX2NoYW5nZV9kZXRl Y3Rvcl8gfHwgdGVzdENoYW5nZURldGVjdGlvbiAoY29oZXJlbmNlX2lucHV0KSkKLSsgICAgICBp ZiAoIXVzZV9jaGFuZ2VfZGV0ZWN0b3JfIHx8IHRoaXMtPnRlc3RDaGFuZ2VEZXRlY3Rpb24gKGNv aGVyZW5jZV9pbnB1dCkpCi0gICAgICAgewotICAgICAgICAgY2hhbmdlZF8gPSB0cnVlOwotICAg ICAgICAgY2hhbmdlX2NvdW50ZXJfID0gY2hhbmdlX2RldGVjdG9yX2ludGVydmFsXzsKLUBAIC01 NCwxMSArNTQsMTEgQEAgcGNsOjp0cmFja2luZzo6UGFydGljbGVGaWx0ZXJPTVBUcmFja2VyPAot ICNwcmFnbWEgb21wIHBhcmFsbGVsIGZvciBzY2hlZHVsZSAoZHluYW1pYywgdGhyZWFkc18pCi0g ICAgIGZvciAoaW50IGkgPSAwOyBpIDwgcGFydGljbGVfbnVtXzsgaSsrKQotICAgICB7Ci0tICAg ICAgY29tcHV0ZVRyYW5zZm9ybWVkUG9pbnRDbG91ZFdpdGhOb3JtYWwgKHBhcnRpY2xlc18tPnBv aW50c1tpXSwgKmluZGljZXNfbGlzdFtpXSwgKnRyYW5zZWRfcmVmZXJlbmNlX3ZlY3Rvcl9baV0p OwotKyAgICAgIHRoaXMtPmNvbXB1dGVUcmFuc2Zvcm1lZFBvaW50Q2xvdWRXaXRoTm9ybWFsIChw YXJ0aWNsZXNfLT5wb2ludHNbaV0sICppbmRpY2VzX2xpc3RbaV0sICp0cmFuc2VkX3JlZmVyZW5j ZV92ZWN0b3JfW2ldKTsKLSAgICAgfQotICAgICAKLSAgICAgUG9pbnRDbG91ZEluUHRyIGNvaGVy ZW5jZV9pbnB1dCAobmV3IFBvaW50Q2xvdWRJbik7Ci0tICAgIGNyb3BJbnB1dFBvaW50Q2xvdWQg KGlucHV0XywgKmNvaGVyZW5jZV9pbnB1dCk7Ci0rICAgIHRoaXMtPmNyb3BJbnB1dFBvaW50Q2xv dWQgKGlucHV0XywgKmNvaGVyZW5jZV9pbnB1dCk7Ci0gICAgIAotICAgICBjb2hlcmVuY2VfLT5z ZXRUYXJnZXRDbG91ZCAoY29oZXJlbmNlX2lucHV0KTsKLSAgICAgY29oZXJlbmNlXy0+aW5pdENv bXB1dGUgKCk7Cg==