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: Marek Polacek To: git-commits@fedoraproject.org Subject: [rpms/gcc] rhel-f41-base: Remove 3 gcc13-fortran-* patches Date: Mon, 29 Jun 2026 12:30:16 GMT Message-ID: <178273621682.1.9125654778994035898.rpms-gcc-27512209124b@fedoraproject.org> List-ID: X-Git-Repo: rpms/gcc X-Git-Branch: rhel-f41-base X-Git-Rev: 27512209124baf03388abd25ac046368a449b344 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2NjCkJyYW5jaCA6 IHJoZWwtZjQxLWJhc2UKQ29tbWl0IDogMjc1MTIyMDkxMjRiYWYwMzM4OGFiZDI1YWMwNDYzNjhh NDQ5YjM0NApBdXRob3IgOiBNYXJlayBQb2xhY2VrIDxwb2xhY2VrQHJlZGhhdC5jb20+CkRhdGUg ICA6IDIwMjMtMDYtMTZUMTQ6MzE6MjQtMDQ6MDAKU3RhdHMgIDogKzAvLTEyNzcgaW4gNCBmaWxl KHMpClVSTCAgICA6IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvZ2NjL2MvMjc1 MTIyMDkxMjRiYWYwMzM4OGFiZDI1YWMwNDYzNjhhNDQ5YjM0ND9icmFuY2g9cmhlbC1mNDEtYmFz ZQoKTG9nOgpSZW1vdmUgMyBnY2MxMy1mb3J0cmFuLSogcGF0Y2hlcwoKLS0tCmRpZmYgLS1naXQg YS9nY2Muc3BlYyBiL2djYy5zcGVjCmluZGV4IGEzM2NlMmQuLjNkZDdmMDQgMTAwNjQ0Ci0tLSBh L2djYy5zcGVjCisrKyBiL2djYy5zcGVjCkBAIC0yOTAsOSArMjkwLDYgQEAgUGF0Y2gxMTogZ2Nj MTMtZC1zaGFyZWQtbGlicGhvYm9zLnBhdGNoCiBQYXRjaDUwOiBpc2wtcmgyMTU1MTI3LnBhdGNo CiAKIFBhdGNoMTAwOiBnY2MxMy1mb3J0cmFuLWZkZWMtZHVwbGljYXRlcy5wYXRjaAotUGF0Y2gx MDE6IGdjYzEzLWZvcnRyYW4tZmxvZ2ljYWwtYXMtaW50ZWdlci5wYXRjaAotUGF0Y2gxMDI6IGdj YzEzLWZvcnRyYW4tZmRlYy1vdmVycmlkZS1raW5kLnBhdGNoCi1QYXRjaDEwMzogZ2NjMTMtZm9y dHJhbi1mZGVjLW5vbi1sb2dpY2FsLWlmLnBhdGNoCiAKICMgT24gQVJNIEVBQkkgc3lzdGVtcywg d2UgZG8gd2FudCAtZ251ZWFiaSB0byBiZSBwYXJ0IG9mIHRoZQogIyB0YXJnZXQgdHJpcGxlLgpA QCAtODY4LDkgKzg2NSw2IEBAIHRvdWNoIC1yIGlzbC0wLjI0L200L2F4X3Byb2dfY3h4X2Zvcl9i dWlsZC5tNCBpc2wtMC4yNC9tNC9heF9wcm9nX2NjX2Zvcl9idWlsZC5tCiAKICVpZiAwJXs/cmhl bH0gPj0gOQogJXBhdGNoIC1QMTAwIC1wMSAtYiAuZm9ydHJhbi1mZGVjLWR1cGxpY2F0ZXN+Ci0l cGF0Y2ggLVAxMDEgLXAxIC1iIC5mb3J0cmFuLWZsb2dpY2FsLWFzLWludGVnZXJ+Ci0lcGF0Y2gg LVAxMDIgLXAxIC1iIC5mb3J0cmFuLWZkZWMtb3ZlcnJpZGUta2luZH4KLSVwYXRjaCAtUDEwMyAt cDEgLWIgLmZvcnRyYW4tZmRlYy1ub24tbG9naWNhbC1pZn4KICVlbmRpZgogCiAlaWZhcmNoICV7 YXJtfQoKZGlmZiAtLWdpdCBhL2djYzEzLWZvcnRyYW4tZmRlYy1ub24tbG9naWNhbC1pZi5wYXRj aCBiL2djYzEzLWZvcnRyYW4tZmRlYy1ub24tbG9naWNhbC1pZi5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggM2UzYzkxNS4uMDAwMDAwMAotLS0gYS9nY2MxMy1mb3J0cmFuLWZk ZWMtbm9uLWxvZ2ljYWwtaWYucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzNzggKzAsMCBAQAot RnJvbSBjYzg3ZGRiODQxMDE3YmIwOTc2YjA1MDkxNzMzNjA5ZWUxN2Q3ZjA1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQotRnJvbTogTWFyayBFZ2dsZXN0b24gPG1hcmtlZ2dsZXN0b25AZ2NjLmdu dS5vcmc+Ci1EYXRlOiBGcmksIDIyIEphbiAyMDIxIDEzOjE1OjE3ICswMDAwCi1TdWJqZWN0OiBb UEFUQ0ggMDcvMTBdIEFsbG93IG5vbi1sb2dpY2FsIGV4cHJlc3Npb25zIGluIElGIHN0YXRlbWVu dHMKLQotVXNlIC1mZGVjLW5vbi1sb2dpY2FsLWlmIHRvIGVuYWJsZSBmZWF0dXJlLiBBbHNvIGVu YWJsZWQgdXNpbmcgLWZkZWMuCi0tLS0KLSBnY2MvZm9ydHJhbi9sYW5nLm9wdCAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgNCArKwotIGdjYy9mb3J0cmFuL29wdGlvbnMuY2MgICAgICAgICAg ICAgICAgICAgICAgICB8ICAxICsKLSBnY2MvZm9ydHJhbi9yZXNvbHZlLmNjICAgICAgICAgICAg ICAgICAgICAgICAgfCA2MCArKysrKysrKysrKysrKysrLS0tCi0gLi4uZ2ljYWxfZXhwcmVzc2lv bnNfaWZfc3RhdGVtZW50c19ibG9ja3NfMS5mIHwgMjUgKysrKysrKysKLSAuLi5naWNhbF9leHBy ZXNzaW9uc19pZl9zdGF0ZW1lbnRzX2Jsb2Nrc18yLmYgfCAyNSArKysrKysrKwotIC4uLmdpY2Fs X2V4cHJlc3Npb25zX2lmX3N0YXRlbWVudHNfYmxvY2tzXzMuZiB8IDI1ICsrKysrKysrCi0gLi4u Z2ljYWxfZXhwcmVzc2lvbnNfaWZfc3RhdGVtZW50c19ibG9ja3NfNC5mIHwgNDUgKysrKysrKysr KysrKysKLSAuLi5naWNhbF9leHByZXNzaW9uc19pZl9zdGF0ZW1lbnRzX2Jsb2Nrc181LmYgfCA0 NSArKysrKysrKysrKysrKwotIC4uLmdpY2FsX2V4cHJlc3Npb25zX2lmX3N0YXRlbWVudHNfYmxv Y2tzXzYuZiB8IDQ1ICsrKysrKysrKysrKysrCi0gOSBmaWxlcyBjaGFuZ2VkLCAyNjYgaW5zZXJ0 aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKLSBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0 ZS9nZm9ydHJhbi5kZy9kZWNfbG9naWNhbF9leHByZXNzaW9uc19pZl9zdGF0ZW1lbnRzX2Jsb2Nr c18xLmYKLSBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNf bG9naWNhbF9leHByZXNzaW9uc19pZl9zdGF0ZW1lbnRzX2Jsb2Nrc18yLmYKLSBjcmVhdGUgbW9k ZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfbG9naWNhbF9leHByZXNzaW9u c19pZl9zdGF0ZW1lbnRzX2Jsb2Nrc18zLmYKLSBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3Rz dWl0ZS9nZm9ydHJhbi5kZy9kZWNfbG9naWNhbF9leHByZXNzaW9uc19pZl9zdGF0ZW1lbnRzX2Js b2Nrc180LmYKLSBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9k ZWNfbG9naWNhbF9leHByZXNzaW9uc19pZl9zdGF0ZW1lbnRzX2Jsb2Nrc181LmYKLSBjcmVhdGUg bW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfbG9naWNhbF9leHByZXNz aW9uc19pZl9zdGF0ZW1lbnRzX2Jsb2Nrc182LmYKLQotZGlmZiAtLWdpdCBhL2djYy9mb3J0cmFu L2xhbmcub3B0IGIvZ2NjL2ZvcnRyYW4vbGFuZy5vcHQKLWluZGV4IDRhMjY5ZWJiMjJkLi5kODg2 YzJmMzNlZCAxMDA2NDQKLS0tLSBhL2djYy9mb3J0cmFuL2xhbmcub3B0Ci0rKysgYi9nY2MvZm9y dHJhbi9sYW5nLm9wdAotQEAgLTUwNiw2ICs1MDYsMTAgQEAgZmRlYy1vdmVycmlkZS1raW5kCi0g Rm9ydHJhbiBWYXIoZmxhZ19kZWNfb3ZlcnJpZGVfa2luZCkKLSBFbmFibGUgc3VwcG9ydCBmb3Ig cGVyIHZhcmlhYmxlIGtpbmQgc3BlY2lmaWNhdGlvbi4KLSAKLStmZGVjLW5vbi1sb2dpY2FsLWlm Ci0rRm9ydHJhbiBWYXIoZmxhZ19kZWNfbm9uX2xvZ2ljYWxfaWYpCi0rRW5hYmxlIHN1cHBvcnQg Zm9yIG5vbi1sb2dpY2FsIGV4cHJlc3Npb25zIGluIGlmIHN0YXRlbWVudHMuCi0rCi0gZmRlYy1z dHJ1Y3R1cmUKLSBGb3J0cmFuIFZhcihmbGFnX2RlY19zdHJ1Y3R1cmUpCi0gRW5hYmxlIHN1cHBv cnQgZm9yIERFQyBTVFJVQ1RVUkUvUkVDT1JELgotZGlmZiAtLWdpdCBhL2djYy9mb3J0cmFuL29w dGlvbnMuY2MgYi9nY2MvZm9ydHJhbi9vcHRpb25zLmNjCi1pbmRleCBlZGJhYjQ4M2IzNi4uYTk0 NmM4Njc5MGEgMTAwNjQ0Ci0tLS0gYS9nY2MvZm9ydHJhbi9vcHRpb25zLmNjCi0rKysgYi9nY2Mv Zm9ydHJhbi9vcHRpb25zLmNjCi1AQCAtNzksNiArNzksNyBAQCBzZXRfZGVjX2ZsYWdzIChpbnQg dmFsdWUpCi0gICBTRVRfQklURkxBRyAoZmxhZ19kZWNfY2hhcl9jb252ZXJzaW9ucywgdmFsdWUs IHZhbHVlKTsKLSAgIFNFVF9CSVRGTEFHIChmbGFnX2RlY19kdXBsaWNhdGVzLCB2YWx1ZSwgdmFs dWUpOwotICAgU0VUX0JJVEZMQUcgKGZsYWdfZGVjX292ZXJyaWRlX2tpbmQsIHZhbHVlLCB2YWx1 ZSk7Ci0rICBTRVRfQklURkxBRyAoZmxhZ19kZWNfbm9uX2xvZ2ljYWxfaWYsIHZhbHVlLCB2YWx1 ZSk7Ci0gfQotIAotIC8qIEZpbmFsaXplIERFQyBmbGFncy4gICovCi1kaWZmIC0tZ2l0IGEvZ2Nj L2ZvcnRyYW4vcmVzb2x2ZS5jYyBiL2djYy9mb3J0cmFuL3Jlc29sdmUuY2MKLWluZGV4IGJjMGRm MGZkYjk5Li4wN2RkMDM5ZjNiZiAxMDA2NDQKLS0tLSBhL2djYy9mb3J0cmFuL3Jlc29sdmUuY2MK LSsrKyBiL2djYy9mb3J0cmFuL3Jlc29sdmUuY2MKLUBAIC0xMTAzMCwxMCArMTEwMzAsMzEgQEAg Z2ZjX3Jlc29sdmVfYmxvY2tzIChnZmNfY29kZSAqYiwgZ2ZjX25hbQotICAgICAgIHN3aXRjaCAo Yi0+b3ApCi0gCXsKLSAJY2FzZSBFWEVDX0lGOgotLQkgIGlmICh0ICYmIGItPmV4cHIxICE9IE5V TEwKLS0JICAgICAgJiYgKGItPmV4cHIxLT50cy50eXBlICE9IEJUX0xPR0lDQUwgfHwgYi0+ZXhw cjEtPnJhbmsgIT0gMCkpCi0tCSAgICBnZmNfZXJyb3IgKCJJRiBjbGF1c2UgYXQgJUwgcmVxdWly ZXMgYSBzY2FsYXIgTE9HSUNBTCBleHByZXNzaW9uIiwKLS0JCSAgICAgICAmYi0+ZXhwcjEtPndo ZXJlKTsKLSsJICBpZiAodCAmJiBiLT5leHByMSAhPSBOVUxMKQotKwkgICAgewotKwkgICAgICBp ZiAoZmxhZ19kZWNfbm9uX2xvZ2ljYWxfaWYgJiYgYi0+ZXhwcjEtPnRzLnR5cGUgIT0gQlRfTE9H SUNBTCkKLSsJCXsKLSsJCSAgZ2ZjX2V4cHIqIGNhc3Q7Ci0rCQkgIGNhc3QgPSBnZmNfbmUgKGIt PmV4cHIxLAotKwkJCQkgZ2ZjX2dldF9pbnRfZXhwciAoMSwgJmdmY19jdXJyZW50X2xvY3VzLCAw KSwKLSsJCQkJIElOVFJJTlNJQ19ORSk7Ci0rCQkgIGlmIChjYXN0ID09IE5VTEwpCi0rCQkgICAg Z2ZjX2ludGVybmFsX2Vycm9yICgiZ2ZjX3Jlc29sdmVfYmxvY2tzKCk6IEZhaWxlZCB0byBjYXN0 ICIKLSsJCQkJCSJ0byBMT0dJQ0FMIGluIElGIik7Ci0rCQkgIGItPmV4cHIxID0gY2FzdDsKLSsJ CSAgaWYgKHdhcm5fY29udmVyc2lvbl9leHRyYSkKLSsJCSAgICB7Ci0rCQkgICAgICBnZmNfd2Fy bmluZyAoT1BUX1djb252ZXJzaW9uX2V4dHJhLCAiTm9uLUxPR0lDQUwgdHlwZSBpbiIKLSsJCQkJ ICAgIiBJRiBzdGF0ZW1lbnQgY29uZGl0aW9uICVMIHdpbGwgYmUgdHJ1ZSBpZiIKLSsJCQkJICAg IiBpdCBldmFsdWF0ZXMgdG8gbm9uemVybyIsCi0rCQkJCSAgICZiLT5leHByMS0+d2hlcmUpOwot KwkJICAgIH0KLSsJCX0KLSsKLSsJICAgICAgaWYgKChiLT5leHByMS0+dHMudHlwZSAhPSBCVF9M T0dJQ0FMIHx8IGItPmV4cHIxLT5yYW5rICE9IDApKQotKwkJZ2ZjX2Vycm9yICgiSUYgY2xhdXNl IGF0ICVMIHJlcXVpcmVzIGEgc2NhbGFyIExPR0lDQUwgIgotKwkJCSAgICJleHByZXNzaW9uIiwg JmItPmV4cHIxLT53aGVyZSk7Ci0rCSAgICB9Ci0gCSAgYnJlYWs7Ci0gCi0gCWNhc2UgRVhFQ19X SEVSRToKLUBAIC0xMjU4NSwxMSArMTI2MDYsMzIgQEAgc3RhcnQ6Ci0gCSAgYnJlYWs7Ci0gCi0g CWNhc2UgRVhFQ19JRjoKLS0JICBpZiAodCAmJiBjb2RlLT5leHByMSAhPSBOVUxMCi0tCSAgICAg ICYmIChjb2RlLT5leHByMS0+dHMudHlwZSAhPSBCVF9MT0dJQ0FMCi0tCQkgIHx8IGNvZGUtPmV4 cHIxLT5yYW5rICE9IDApKQotLQkgICAgZ2ZjX2Vycm9yICgiSUYgY2xhdXNlIGF0ICVMIHJlcXVp cmVzIGEgc2NhbGFyIExPR0lDQUwgZXhwcmVzc2lvbiIsCi0tCQkgICAgICAgJmNvZGUtPmV4cHIx LT53aGVyZSk7Ci0rCSAgaWYgKHQgJiYgY29kZS0+ZXhwcjEgIT0gTlVMTCkKLSsJICAgIHsKLSsJ ICAgICAgaWYgKGZsYWdfZGVjX25vbl9sb2dpY2FsX2lmCi0rCQkgICYmIGNvZGUtPmV4cHIxLT50 cy50eXBlICE9IEJUX0xPR0lDQUwpCi0rCQl7Ci0rCQkgIGdmY19leHByKiBjYXN0OwotKwkJICBj YXN0ID0gZ2ZjX25lIChjb2RlLT5leHByMSwKLSsJCQkJIGdmY19nZXRfaW50X2V4cHIgKDEsICZn ZmNfY3VycmVudF9sb2N1cywgMCksCi0rCQkJCSBJTlRSSU5TSUNfTkUpOwotKwkJICBpZiAoY2Fz dCA9PSBOVUxMKQotKwkJICAgIGdmY19pbnRlcm5hbF9lcnJvciAoImdmY19yZXNvbHZlX2NvZGUo KTogRmFpbGVkIHRvIGNhc3QgIgotKwkJCQkJInRvIExPR0lDQUwgaW4gSUYiKTsKLSsJCSAgY29k ZS0+ZXhwcjEgPSBjYXN0OwotKwkJICBpZiAod2Fybl9jb252ZXJzaW9uX2V4dHJhKQotKwkJICAg IHsKLSsJCSAgICAgIGdmY193YXJuaW5nIChPUFRfV2NvbnZlcnNpb25fZXh0cmEsICJOb24tTE9H SUNBTCB0eXBlIGluIgotKwkJCQkgICAiIElGIHN0YXRlbWVudCBjb25kaXRpb24gJUwgd2lsbCBi ZSB0cnVlIGlmIgotKwkJCQkgICAiIGl0IGV2YWx1YXRlcyB0byBub256ZXJvIiwKLSsJCQkJICAg JmNvZGUtPmV4cHIxLT53aGVyZSk7Ci0rCQkgICAgfQotKwkJfQotKwotKwkgICAgICBpZiAoY29k ZS0+ZXhwcjEtPnRzLnR5cGUgIT0gQlRfTE9HSUNBTCB8fCBjb2RlLT5leHByMS0+cmFuayAhPSAw KQotKwkJZ2ZjX2Vycm9yICgiSUYgY2xhdXNlIGF0ICVMIHJlcXVpcmVzIGEgc2NhbGFyIExPR0lD QUwgIgotKwkJCSAgICJleHByZXNzaW9uIiwgJmNvZGUtPmV4cHIxLT53aGVyZSk7Ci0rCSAgICB9 Ci0gCSAgYnJlYWs7Ci0gCi0gCWNhc2UgRVhFQ19DQUxMOgotZGlmZiAtLWdpdCBhL2djYy90ZXN0 c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2xvZ2ljYWxfZXhwcmVzc2lvbnNfaWZfc3RhdGVtZW50c19i bG9ja3NfMS5mIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfbG9naWNhbF9leHByZXNz aW9uc19pZl9zdGF0ZW1lbnRzX2Jsb2Nrc18xLmYKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRl eCAwMDAwMDAwMDAwMC4uMDEwMWRiODkzY2EKLS0tLSAvZGV2L251bGwKLSsrKyBiL2djYy90ZXN0 c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2xvZ2ljYWxfZXhwcmVzc2lvbnNfaWZfc3RhdGVtZW50c19i bG9ja3NfMS5mCi1AQCAtMCwwICsxLDI1IEBACi0rISB7IGRnLWRvIHJ1biB9Ci0rISB7IGRnLW9w dGlvbnMgIi1mZGVjIC1XY29udmVyc2lvbi1leHRyYSIgfQotKyEKLSshIEFsbG93IGxvZ2ljYWwg ZXhwcmVzc2lvbnMgaW4gaWYgc3RhdGVtZW50cyBhbmQgYmxvY2tzCi0rIQotKyEgQ29udHJpYnV0 ZWQgYnkgRnJhbmNpc2NvIFJlZG9uZG8gTWFyY2hlbmEgPGZyYW5jaXNjby5tYXJjaGVtYUBjb2Rl dGhpbmsuY28udWs+Ci0rISAgICAgICAgICAgICBhbmQgSmVmZiBMYXcgPGxhd0ByZWRoYXQuY29t PgotKyEgTW9kaWZpZWQgYnkgTWFyayBFZ2dsZXN0b24gPG1hcmsuZWdnbGVzdG9uQGNvZGV0aGlu ay5jb20+Ci0rIQotKyAgICAgICAgUFJPR1JBTSBsb2dpY2FsX2V4cF9pZl9zdF9ibAotKyAgICAg ICAgICBJTlRFR0VSIGlwb3MvMS8KLSsgICAgICAgICAgSU5URUdFUiBpbmVnLzAvCi0rCi0rICAg ICAgICAgICEgVGVzdCBub24gbG9naWNhbCB2YXJpYWJsZXMKLSsgICAgICAgICAgaWYgKGluZWcp IFNUT1AgMSAhIHsgZGctd2FybmluZyAiaWYgaXQgZXZhbHVhdGVzIHRvIG5vbnplcm8iIH0KLSsg ICAgICAgICAgaWYgKDApIFNUT1AgMiAhIHsgZGctd2FybmluZyAiaWYgaXQgZXZhbHVhdGVzIHRv IG5vbnplcm8iIH0KLSsKLSsgICAgICAgICAgISBUZXN0IG5vbiBsb2dpY2FsIGV4cHJlc3Npb25z IGluIGlmIHN0YXRlbWVudHMKLSsgICAgICAgICAgaWYgKE1PRChpcG9zLCAxKSkgU1RPUCAzICEg eyBkZy13YXJuaW5nICJpZiBpdCBldmFsdWF0ZXMgdG8gbm9uemVybyIgfQotKwotKyAgICAgICAg ICAhIFRlc3Qgbm9uIGxvZ2ljYWwgZXhwcmVzc2lvbnMgaW4gaWYgYmxvY2tzCi0rICAgICAgICAg IGlmIChNT0QoMiAqIGlwb3MsIDIpKSB0aGVuICEgeyBkZy13YXJuaW5nICJpZiBpdCBldmFsdWF0 ZXMgdG8gbm9uemVybyIgfQotKyAgICAgICAgICAgIFNUT1AgNAotKyAgICAgICAgICBlbmRpZgot KyAgICAgICAgRU5ECi1kaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNf bG9naWNhbF9leHByZXNzaW9uc19pZl9zdGF0ZW1lbnRzX2Jsb2Nrc18yLmYgYi9nY2MvdGVzdHN1 aXRlL2dmb3J0cmFuLmRnL2RlY19sb2dpY2FsX2V4cHJlc3Npb25zX2lmX3N0YXRlbWVudHNfYmxv Y2tzXzIuZgotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAwMDAwLi44NzZmNGUw OTUwOAotLS0tIC9kZXYvbnVsbAotKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNf bG9naWNhbF9leHByZXNzaW9uc19pZl9zdGF0ZW1lbnRzX2Jsb2Nrc18yLmYKLUBAIC0wLDAgKzEs MjUgQEAKLSshIHsgZGctZG8gcnVuIH0KLSshIHsgZGctb3B0aW9ucyAiLWZkZWMtbm9uLWxvZ2lj YWwtaWYgLVdjb252ZXJzaW9uLWV4dHJhIiB9Ci0rIQotKyEgQWxsb3cgbG9naWNhbCBleHByZXNz aW9ucyBpbiBpZiBzdGF0ZW1lbnRzIGFuZCBibG9ja3MKLSshCi0rISBDb250cmlidXRlZCBieSBG cmFuY2lzY28gUmVkb25kbyBNYXJjaGVuYSA8ZnJhbmNpc2NvLm1hcmNoZW1hQGNvZGV0aGluay5j by51az4KLSshICAgICAgICAgICAgIGFuZCBKZWZmIExhdyA8bGF3QHJlZGhhdC5jb20+Ci0rISBN b2RpZmllZCBieSBNYXJrIEVnZ2xlc3RvbiA8bWFyay5lZ2dsZXN0b25AY29kZXRoaW5rLmNvbT4K LSshCi0rICAgICAgICBQUk9HUkFNIGxvZ2ljYWxfZXhwX2lmX3N0X2JsCi0rICAgICAgICAgIElO VEVHRVIgaXBvcy8xLwotKyAgICAgICAgICBJTlRFR0VSIGluZWcvMC8KLSsKLSsgICAgICAgICAg ISBUZXN0IG5vbiBsb2dpY2FsIHZhcmlhYmxlcwotKyAgICAgICAgICBpZiAoaW5lZykgU1RPUCAx ICEgeyBkZy13YXJuaW5nICJpZiBpdCBldmFsdWF0ZXMgdG8gbm9uemVybyIgfQotKyAgICAgICAg ICBpZiAoMCkgU1RPUCAyICEgeyBkZy13YXJuaW5nICJpZiBpdCBldmFsdWF0ZXMgdG8gbm9uemVy byIgfQotKwotKyAgICAgICAgICAhIFRlc3Qgbm9uIGxvZ2ljYWwgZXhwcmVzc2lvbnMgaW4gaWYg c3RhdGVtZW50cwotKyAgICAgICAgICBpZiAoTU9EKGlwb3MsIDEpKSBTVE9QIDMgISB7IGRnLXdh cm5pbmcgImlmIGl0IGV2YWx1YXRlcyB0byBub256ZXJvIiB9Ci0rCi0rICAgICAgICAgICEgVGVz dCBub24gbG9naWNhbCBleHByZXNzaW9ucyBpbiBpZiBibG9ja3MKLSsgICAgICAgICAgaWYgKE1P RCgyICogaXBvcywgMikpIHRoZW4gISB7IGRnLXdhcm5pbmcgImlmIGl0IGV2YWx1YXRlcyB0byBu b256ZXJvIiB9Ci0rICAgICAgICAgICAgU1RPUCA0Ci0rICAgICAgICAgIGVuZGlmCi0rICAgICAg ICBFTkQKLWRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19sb2dpY2Fs X2V4cHJlc3Npb25zX2lmX3N0YXRlbWVudHNfYmxvY2tzXzMuZiBiL2djYy90ZXN0c3VpdGUvZ2Zv cnRyYW4uZGcvZGVjX2xvZ2ljYWxfZXhwcmVzc2lvbnNfaWZfc3RhdGVtZW50c19ibG9ja3NfMy5m Ci1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAwMDAuLjM1Y2I0YzUxYjhkCi0t LS0gL2Rldi9udWxsCi0rKysgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19sb2dpY2Fs X2V4cHJlc3Npb25zX2lmX3N0YXRlbWVudHNfYmxvY2tzXzMuZgotQEAgLTAsMCArMSwyNSBAQAot KyEgeyBkZy1kbyBjb21waWxlIH0KLSshIHsgZGctb3B0aW9ucyAiLWZkZWMgLWZuby1kZWMtbm9u LWxvZ2ljYWwtaWYiIH0KLSshCi0rISBBbGxvdyBsb2dpY2FsIGV4cHJlc3Npb25zIGluIGlmIHN0 YXRlbWVudHMgYW5kIGJsb2NrcwotKyEKLSshIENvbnRyaWJ1dGVkIGJ5IEZyYW5jaXNjbyBSZWRv bmRvIE1hcmNoZW5hIDxmcmFuY2lzY28ubWFyY2hlbWFAY29kZXRoaW5rLmNvLnVrPgotKyEgICAg ICAgICAgICAgYW5kIEplZmYgTGF3IDxsYXdAcmVkaGF0LmNvbT4KLSshIE1vZGlmaWVkIGJ5IE1h cmsgRWdnbGVzdG9uIDxtYXJrLmVnZ2xlc3RvbkBjb2RldGhpbmsuY29tPgotKyEKLSsgICAgICAg IFBST0dSQU0gbG9naWNhbF9leHBfaWZfc3RfYmwKLSsgICAgICAgICAgSU5URUdFUiBpcG9zLzEv Ci0rICAgICAgICAgIElOVEVHRVIgaW5lZy8wLwotKwotKyAgICAgICAgICAhIFRlc3Qgbm9uIGxv Z2ljYWwgdmFyaWFibGVzCi0rICAgICAgICAgIGlmIChpbmVnKSBTVE9QIDEgISB7IGRnLWVycm9y ICJJRiBjbGF1c2UgYXQiIH0KLSsgICAgICAgICAgaWYgKDApIFNUT1AgMiAhIHsgZGctZXJyb3Ig IklGIGNsYXVzZSBhdCIgfQotKwotKyAgICAgICAgICAhIFRlc3Qgbm9uIGxvZ2ljYWwgZXhwcmVz c2lvbnMgaW4gaWYgc3RhdGVtZW50cwotKyAgICAgICAgICBpZiAoTU9EKGlwb3MsIDEpKSBTVE9Q IDMgISB7IGRnLWVycm9yICJJRiBjbGF1c2UgYXQiIH0KLSsKLSsgICAgICAgICAgISBUZXN0IG5v biBsb2dpY2FsIGV4cHJlc3Npb25zIGluIGlmIGJsb2NrcwotKyAgICAgICAgICBpZiAoTU9EKDIg KiBpcG9zLCAyKSkgdGhlbiAhIHsgZGctZXJyb3IgIklGIGNsYXVzZSBhdCIgfQotKyAgICAgICAg ICAgIFNUT1AgNAotKyAgICAgICAgICBlbmRpZgotKyAgICAgICAgRU5ECi1kaWZmIC0tZ2l0IGEv Z2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfbG9naWNhbF9leHByZXNzaW9uc19pZl9zdGF0 ZW1lbnRzX2Jsb2Nrc180LmYgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19sb2dpY2Fs X2V4cHJlc3Npb25zX2lmX3N0YXRlbWVudHNfYmxvY2tzXzQuZgotbmV3IGZpbGUgbW9kZSAxMDA2 NDQKLWluZGV4IDAwMDAwMDAwMDAwLi43YjYwYjYwODI3ZgotLS0tIC9kZXYvbnVsbAotKysrIGIv Z2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfbG9naWNhbF9leHByZXNzaW9uc19pZl9zdGF0 ZW1lbnRzX2Jsb2Nrc180LmYKLUBAIC0wLDAgKzEsNDUgQEAKLSshIHsgZGctZG8gcnVuIH0KLSsh IHsgZGctb3B0aW9ucyAiLWZkZWMgLVdjb252ZXJzaW9uLWV4dHJhIiB9Ci0rIQotKyEgQ29udHJp YnV0ZWQgYnkgRnJhbmNpc2NvIFJlZG9uZG8gTWFyY2hlbmEgPGZyYW5jaXNjby5tYXJjaGVtYUBj b2RldGhpbmsuY28udWs+Ci0rISAgICAgICAgICAgICBhbmQgSmVmZiBMYXcgPGxhd0ByZWRoYXQu Y29tPgotKyEgTW9kaWZpZWQgYnkgTWFyayBFZ2dsZXN0b24gPG1hcmsuZWdnbGVzdG9uQGNvZGV0 aGluay5jb20+Ci0rIQotKyAgICAgICBmdW5jdGlvbiBvdGhlcnN1YjEoKQotKyAgICAgICAgaW50 ZWdlcio0IG90aGVyc3ViMQotKyAgICAgICAgb3RoZXJzdWIxID0gOQotKyAgICAgICBlbmQKLSsK LSsgICAgICAgZnVuY3Rpb24gb3RoZXJzdWIyKCkKLSsgICAgICAgIGludGVnZXIqNCBvdGhlcnN1 YjIKLSsgICAgICAgIG90aGVyc3ViMiA9IDAKLSsgICAgICAgZW5kCi0rCi0rICAgICAgIHByb2dy YW0gTUFJTgotKyAgICAgICAgaW50ZWdlcio0IG90aGVyc3ViMQotKyAgICAgICAgaW50ZWdlcio0 IG90aGVyc3ViMgotKyAgICAgICAgaW50ZWdlciBhIC8xLwotKyAgICAgICAgaW50ZWdlciBiIC8y LyAgICAgICAgCi0rIAotKyAgICAgICAgaWYgKG90aGVyc3ViMSgpKSB0aGVuICEgeyBkZy13YXJu aW5nICJpZiBpdCBldmFsdWF0ZXMgdG8gbm9uemVybyIgfQotKyAgICAgICAgICAgd3JpdGUoKiwq KSAiT0siCi0rICAgICAgICBlbHNlCi0rICAgICAgICAgICBzdG9wIDEKLSsgICAgICAgIGVuZCBp ZgotKyAgICAgICAgaWYgKG90aGVyc3ViMigpKSB0aGVuICEgeyBkZy13YXJuaW5nICJpZiBpdCBl dmFsdWF0ZXMgdG8gbm9uemVybyIgfQotKyAgICAgICAgICAgc3RvcCAyCi0rICAgICAgICBlbHNl Ci0rICAgICAgICAgICB3cml0ZSgqLCopICJPSyIKLSsgICAgICAgIGVuZCBpZgotKyAgICAgICAg aWYgKGEtYikgdGhlbiAhIHsgZGctd2FybmluZyAiaWYgaXQgZXZhbHVhdGVzIHRvIG5vbnplcm8i IH0KLSsgICAgICAgICAgIHdyaXRlKCosKikgIk9LIgotKyAgICAgICAgZWxzZQotKyAgICAgICAg ICAgc3RvcCAzCi0rICAgICAgICBlbmQgaWYKLSsgICAgICAgIGlmIChiLShhKzEpKSB0aGVuICEg eyBkZy13YXJuaW5nICJpZiBpdCBldmFsdWF0ZXMgdG8gbm9uemVybyIgfQotKyAgICAgICAgICAg c3RvcCAzCi0rICAgICAgICBlbHNlCi0rICAgICAgICAgICB3cml0ZSgqLCopICJPSyIKLSsgICAg ICAgIGVuZCBpZgotKyAgICAgICBlbmQKLSsKLWRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dm b3J0cmFuLmRnL2RlY19sb2dpY2FsX2V4cHJlc3Npb25zX2lmX3N0YXRlbWVudHNfYmxvY2tzXzUu ZiBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2xvZ2ljYWxfZXhwcmVzc2lvbnNfaWZf c3RhdGVtZW50c19ibG9ja3NfNS5mCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAw MDAwMDAuLjgwMzM2ZjQ4Y2ExCi0tLS0gL2Rldi9udWxsCi0rKysgYi9nY2MvdGVzdHN1aXRlL2dm b3J0cmFuLmRnL2RlY19sb2dpY2FsX2V4cHJlc3Npb25zX2lmX3N0YXRlbWVudHNfYmxvY2tzXzUu ZgotQEAgLTAsMCArMSw0NSBAQAotKyEgeyBkZy1kbyBydW4gfQotKyEgeyBkZy1vcHRpb25zICIt ZmRlYy1ub24tbG9naWNhbC1pZiAtV2NvbnZlcnNpb24tZXh0cmEiIH0KLSshCi0rISBDb250cmli dXRlZCBieSBGcmFuY2lzY28gUmVkb25kbyBNYXJjaGVuYSA8ZnJhbmNpc2NvLm1hcmNoZW1hQGNv ZGV0aGluay5jby51az4KLSshICAgICAgICAgICAgIGFuZCBKZWZmIExhdyA8bGF3QHJlZGhhdC5j b20+Ci0rISBNb2RpZmllZCBieSBNYXJrIEVnZ2xlc3RvbiA8bWFyay5lZ2dsZXN0b25AY29kZXRo aW5rLmNvbT4KLSshCi0rICAgICAgIGZ1bmN0aW9uIG90aGVyc3ViMSgpCi0rICAgICAgICBpbnRl Z2VyKjQgb3RoZXJzdWIxCi0rICAgICAgICBvdGhlcnN1YjEgPSA5Ci0rICAgICAgIGVuZAotKwot KyAgICAgICBmdW5jdGlvbiBvdGhlcnN1YjIoKQotKyAgICAgICAgaW50ZWdlcio0IG90aGVyc3Vi MgotKyAgICAgICAgb3RoZXJzdWIyID0gMAotKyAgICAgICBlbmQKLSsKLSsgICAgICAgcHJvZ3Jh bSBNQUlOCi0rICAgICAgICBpbnRlZ2VyKjQgb3RoZXJzdWIxCi0rICAgICAgICBpbnRlZ2VyKjQg b3RoZXJzdWIyCi0rICAgICAgICBpbnRlZ2VyIGEgLzEvCi0rICAgICAgICBpbnRlZ2VyIGIgLzIv ICAgICAgICAKLSsgCi0rICAgICAgICBpZiAob3RoZXJzdWIxKCkpIHRoZW4gISB7IGRnLXdhcm5p bmcgIk5vbi1MT0dJQ0FMIHR5cGUgaW4gSUYgc3RhdGVtZW50IiB9Ci0rICAgICAgICAgICB3cml0 ZSgqLCopICJPSyIKLSsgICAgICAgIGVsc2UKLSsgICAgICAgICAgIHN0b3AgMQotKyAgICAgICAg ZW5kIGlmCi0rICAgICAgICBpZiAob3RoZXJzdWIyKCkpIHRoZW4gISB7IGRnLXdhcm5pbmcgIk5v bi1MT0dJQ0FMIHR5cGUgaW4gSUYgc3RhdGVtZW50IiB9Ci0rICAgICAgICAgICBzdG9wIDIKLSsg ICAgICAgIGVsc2UKLSsgICAgICAgICAgIHdyaXRlKCosKikgIk9LIgotKyAgICAgICAgZW5kIGlm Ci0rICAgICAgICBpZiAoYS1iKSB0aGVuICEgeyBkZy13YXJuaW5nICJOb24tTE9HSUNBTCB0eXBl IGluIElGIHN0YXRlbWVudCIgfQotKyAgICAgICAgICAgd3JpdGUoKiwqKSAiT0siCi0rICAgICAg ICBlbHNlCi0rICAgICAgICAgICBzdG9wIDMKLSsgICAgICAgIGVuZCBpZgotKyAgICAgICAgaWYg KGItKGErMSkpIHRoZW4gISB7IGRnLXdhcm5pbmcgIk5vbi1MT0dJQ0FMIHR5cGUgaW4gSUYgc3Rh dGVtZW50IiB9Ci0rICAgICAgICAgICBzdG9wIDMKLSsgICAgICAgIGVsc2UKLSsgICAgICAgICAg IHdyaXRlKCosKikgIk9LIgotKyAgICAgICAgZW5kIGlmCi0rICAgICAgIGVuZAotKwotZGlmZiAt LWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2xvZ2ljYWxfZXhwcmVzc2lvbnNf aWZfc3RhdGVtZW50c19ibG9ja3NfNi5mIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNf bG9naWNhbF9leHByZXNzaW9uc19pZl9zdGF0ZW1lbnRzX2Jsb2Nrc182LmYKLW5ldyBmaWxlIG1v ZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwMDAwMC4uZTExMjVjYTcxN2EKLS0tLSAvZGV2L251bGwK LSsrKyBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2xvZ2ljYWxfZXhwcmVzc2lvbnNf aWZfc3RhdGVtZW50c19ibG9ja3NfNi5mCi1AQCAtMCwwICsxLDQ1IEBACi0rISB7IGRnLWRvIGNv bXBpbGUgfQotKyEgeyBkZy1vcHRpb25zICItZmRlYyAtZm5vLWRlYy1ub24tbG9naWNhbC1pZiIg fQotKyEKLSshIENvbnRyaWJ1dGVkIGJ5IEZyYW5jaXNjbyBSZWRvbmRvIE1hcmNoZW5hIDxmcmFu Y2lzY28ubWFyY2hlbWFAY29kZXRoaW5rLmNvLnVrPgotKyEgICAgICAgICAgICAgYW5kIEplZmYg TGF3IDxsYXdAcmVkaGF0LmNvbT4KLSshIE1vZGlmaWVkIGJ5IE1hcmsgRWdnbGVzdG9uIDxtYXJr LmVnZ2xlc3RvbkBjb2RldGhpbmsuY29tPgotKyEKLSsgICAgICAgZnVuY3Rpb24gb3RoZXJzdWIx KCkKLSsgICAgICAgIGludGVnZXIqNCBvdGhlcnN1YjEKLSsgICAgICAgIG90aGVyc3ViMSA9IDkK LSsgICAgICAgZW5kCi0rCi0rICAgICAgIGZ1bmN0aW9uIG90aGVyc3ViMigpCi0rICAgICAgICBp bnRlZ2VyKjQgb3RoZXJzdWIyCi0rICAgICAgICBvdGhlcnN1YjIgPSAwCi0rICAgICAgIGVuZAot KwotKyAgICAgICBwcm9ncmFtIE1BSU4KLSsgICAgICAgIGludGVnZXIqNCBvdGhlcnN1YjEKLSsg ICAgICAgIGludGVnZXIqNCBvdGhlcnN1YjIKLSsgICAgICAgIGludGVnZXIgYSAvMS8KLSsgICAg ICAgIGludGVnZXIgYiAvMi8gICAgICAgIAotKyAKLSsgICAgICAgIGlmIChvdGhlcnN1YjEoKSkg dGhlbiAhIHsgZGctZXJyb3IgIklGIGNsYXVzZSBhdCIgfQotKyAgICAgICAgICAgd3JpdGUoKiwq KSAiT0siCi0rICAgICAgICBlbHNlCi0rICAgICAgICAgICBzdG9wIDEKLSsgICAgICAgIGVuZCBp ZgotKyAgICAgICAgaWYgKG90aGVyc3ViMigpKSB0aGVuICEgeyBkZy1lcnJvciAiSUYgY2xhdXNl IGF0IiB9Ci0rICAgICAgICAgICBzdG9wIDIKLSsgICAgICAgIGVsc2UKLSsgICAgICAgICAgIHdy aXRlKCosKikgIk9LIgotKyAgICAgICAgZW5kIGlmCi0rICAgICAgICBpZiAoYS1iKSB0aGVuICEg eyBkZy1lcnJvciAiSUYgY2xhdXNlIGF0IiB9Ci0rICAgICAgICAgICB3cml0ZSgqLCopICJPSyIK LSsgICAgICAgIGVsc2UKLSsgICAgICAgICAgIHN0b3AgMwotKyAgICAgICAgZW5kIGlmCi0rICAg ICAgICBpZiAoYi0oYSsxKSkgdGhlbiAhIHsgZGctZXJyb3IgIklGIGNsYXVzZSBhdCIgfQotKyAg ICAgICAgICAgc3RvcCAzCi0rICAgICAgICBlbHNlCi0rICAgICAgICAgICB3cml0ZSgqLCopICJP SyIKLSsgICAgICAgIGVuZCBpZgotKyAgICAgICBlbmQKLSsKLS0tIAotMi4yNy4wCi0KCmRpZmYg LS1naXQgYS9nY2MxMy1mb3J0cmFuLWZkZWMtb3ZlcnJpZGUta2luZC5wYXRjaCBiL2djYzEzLWZv cnRyYW4tZmRlYy1vdmVycmlkZS1raW5kLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAzNzBmYTU2Li4wMDAwMDAwCi0tLSBhL2djYzEzLWZvcnRyYW4tZmRlYy1vdmVycmlkZS1r aW5kLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNTg4ICswLDAgQEAKLUZyb20gNzg2ODY5ZmQ2 MjgxM2U4MGRhOWI2NTQ1YTI5NWQ1M2MzNjI3NWMxOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK LUZyb206IE1hcmsgRWdnbGVzdG9uIDxtYXJrZWdnbGVzdG9uQGdjYy5nbnUub3JnPgotRGF0ZTog RnJpLCAyMiBKYW4gMjAyMSAxMzoxMjoxNCArMDAwMAotU3ViamVjdDogW1BBVENIIDA2LzEwXSBB bGxvdyBzdHJpbmcgbGVuZ3RoIGFuZCBraW5kIHRvIGJlIHNwZWNpZmllZCBvbiBhIHBlcgotIHZh cmlhYmxlIGJhc2lzLgotCi1UaGlzIGFsbG93cyBraW5kL2xlbmd0aCB0byBiZSBtaXhlZCB3aXRo IGFycmF5IHNwZWNpZmljYXRpb24gaW4KLWRlY2xhcmF0aW9ucy4KLQotZS5nLgotCi0gICAgICBJ TlRFR0VSKjQgeCoyLCB5KjgKLSAgICAgIENIQVJBQ1RFUiBuYW1lcyoyMCgxMCkKLSAgICAgIFJF QUwgdigxMDApKjgsIHZ2KjQoNTApCi0KLVRoZSBwZXItdmFyaWFibGUgc2l6ZSBvdmVycmlkZXMg dGhlIGtpbmQgb3IgbGVuZ3RoIHNwZWNpZmllZCBmb3IgdGhlIHR5cGUuCi0KLVVzZSAtZmRlYy1v dmVycmlkZS1raW5kIHRvIGVuYWJsZS4gQWxzbyBlbmFibGVkIGJ5IC1mZGVjLgotCi1Ob3RlOiB0 aGlzIGZlYXR1cmUgaXMgYSBtZXJnZXIgb2YgdHdvIHByZXZpb3VzbHkgc2VwYXJhdGUgZmVhdHVy ZXMuCi0KLU5vdyBhY2NlcHRzIG5hbWVkIGNvbnN0YW50cyBhcyBraW5kIHBhcmFtZXRlcnM6Ci0K LSAgICAgIElOVEVHRVIgQQotICAgICAgUEFSQU1FVEVSIChBPTIpCi0gICAgICBJTlRFR0VSIEIq KEEpCi0KLUNvbnRyaWJ1dGVkIGJ5IE1hcmsgRWdnbGVzdG9uIDxtYXJrLmVnZ2xlc3RvbkBjb2Rl dGhpbmsuY29tPgotCi1Ob3cgcmVqZWN0cyBpbnZhbGlkIGtpbmQgcGFyYW1ldGVycyBhbmQgcHJp bnRzIGVycm9yIG1lc3NhZ2VzOgotCi0gICAgICBJTlRFR0VSIFgqMwotCi1jYXVzZWQgYW4gaW50 ZXJuYWwgY29tcGlsZXIgZXJyb3IuCi0KLUNvbnRyaWJ1dGVkIGJ5IE1hcmsgRWdnbGVzdG9uIDxt YXJrLmVnZ2xlc3RvbkBjb2RldGhpbmsuY29tPgotLS0tCi0gZ2NjL2ZvcnRyYW4vZGVjbC5jYyAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTU2ICsrKysrKysrKysrKysrLS0tLQotIGdjYy9m b3J0cmFuL2xhbmcub3B0ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNCArCi0gZ2NjL2Zv cnRyYW4vb3B0aW9ucy5jYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKLSAuLi4vZGVj X21peGVkX2NoYXJfYXJyYXlfZGVjbGFyYXRpb25fMS5mICAgICAgfCAgMTMgKysKLSAuLi4vZGVj X21peGVkX2NoYXJfYXJyYXlfZGVjbGFyYXRpb25fMi5mICAgICAgfCAgMTMgKysKLSAuLi4vZGVj X21peGVkX2NoYXJfYXJyYXlfZGVjbGFyYXRpb25fMy5mICAgICAgfCAgMTMgKysKLSAuLi4vZ2Zv cnRyYW4uZGcvZGVjX3NwZWNfaW5fdmFyaWFibGVfMS5mICAgICAgfCAgMzEgKysrKwotIC4uLi9n Zm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJpYWJsZV8yLmYgICAgICB8ICAzMSArKysrCi0gLi4u L2dmb3J0cmFuLmRnL2RlY19zcGVjX2luX3ZhcmlhYmxlXzMuZiAgICAgIHwgIDMxICsrKysKLSAu Li4vZ2ZvcnRyYW4uZGcvZGVjX3NwZWNfaW5fdmFyaWFibGVfNC5mICAgICAgfCAgMTQgKysKLSAu Li4vZ2ZvcnRyYW4uZGcvZGVjX3NwZWNfaW5fdmFyaWFibGVfNS5mICAgICAgfCAgMTkgKysrCi0g Li4uL2dmb3J0cmFuLmRnL2RlY19zcGVjX2luX3ZhcmlhYmxlXzYuZiAgICAgIHwgIDE5ICsrKwot IC4uLi9nZm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJpYWJsZV83LmYgICAgICB8ICAxNSArKwot IC4uLi9nZm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJpYWJsZV84LmYgICAgICB8ICAxNCArKwot IDE0IGZpbGVzIGNoYW5nZWQsIDM0MCBpbnNlcnRpb25zKCspLCAzNCBkZWxldGlvbnMoLSkKLSBj cmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfbWl4ZWRfY2hh cl9hcnJheV9kZWNsYXJhdGlvbl8xLmYKLSBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0 ZS9nZm9ydHJhbi5kZy9kZWNfbWl4ZWRfY2hhcl9hcnJheV9kZWNsYXJhdGlvbl8yLmYKLSBjcmVh dGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfbWl4ZWRfY2hhcl9h cnJheV9kZWNsYXJhdGlvbl8zLmYKLSBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Zm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJpYWJsZV8xLmYKLSBjcmVhdGUgbW9kZSAxMDA2NDQg Z2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJpYWJsZV8yLmYKLSBjcmVh dGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJp YWJsZV8zLmYKLSBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9k ZWNfc3BlY19pbl92YXJpYWJsZV80LmYKLSBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0 ZS9nZm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJpYWJsZV81LmYKLSBjcmVhdGUgbW9kZSAxMDA2 NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJpYWJsZV82LmYKLSBj cmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3BlY19pbl92 YXJpYWJsZV83LmYKLSBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5k Zy9kZWNfc3BlY19pbl92YXJpYWJsZV84LmYKLQotZGlmZiAtLWdpdCBhL2djYy9mb3J0cmFuL2Rl Y2wuY2MgYi9nY2MvZm9ydHJhbi9kZWNsLmNjCi1pbmRleCA1YzhjMWI3OTgxYi4uZjdkYzlkODI2 M2QgMTAwNjQ0Ci0tLS0gYS9nY2MvZm9ydHJhbi9kZWNsLmNjCi0rKysgYi9nY2MvZm9ydHJhbi9k ZWNsLmNjCi1AQCAtMTIxMyw2ICsxMjEzLDU0IEBAIHN5bnRheDoKLSAgIHJldHVybiBNQVRDSF9F UlJPUjsKLSB9Ci0gCi0rLyogVGhpcyBtYXRjaGVzIHRoZSBub25zdGFuZGFyZCBraW5kIGdpdmVu IGFmdGVyIGEgdmFyaWFibGUgbmFtZSwgbGlrZToKLSsgICBJTlRFR0VSIHgqMiwgeSo0Ci0rICAg VGhlIHBlci12YXJpYWJsZSBraW5kIHdpbGwgb3ZlcnJpZGUgYW55IGtpbmQgZ2l2ZW4gaW4gdGhl IHR5cGUKLSsgICBkZWNsYXJhdGlvbi4KLSsqLwotKwotK3N0YXRpYyBtYXRjaAotK21hdGNoX3Bl cl9zeW1ib2xfa2luZCAoaW50ICpsZW5ndGgpCi0rewotKyAgbWF0Y2ggbTsKLSsgIGdmY19leHBy ICpleHByID0gTlVMTDsKLSsKLSsgIG0gPSBnZmNfbWF0Y2hfY2hhciAoJyonKTsKLSsgIGlmICht ICE9IE1BVENIX1lFUykKLSsgICAgcmV0dXJuIG07Ci0rCi0rICBtID0gZ2ZjX21hdGNoX3NtYWxs X2xpdGVyYWxfaW50IChsZW5ndGgsIE5VTEwpOwotKyAgaWYgKG0gPT0gTUFUQ0hfWUVTIHx8IG0g PT0gTUFUQ0hfRVJST1IpCi0rICAgIHJldHVybiBtOwotKwotKyAgaWYgKGdmY19tYXRjaF9jaGFy ICgnKCcpID09IE1BVENIX05PKQotKyAgICByZXR1cm4gTUFUQ0hfRVJST1I7Ci0rCi0rICBtID0g Z2ZjX21hdGNoX2V4cHIgKCZleHByKTsKLSsgIGlmIChtID09IE1BVENIX1lFUykKLSsgICAgewot KyAgICAgIG0gPSBNQVRDSF9FUlJPUjsgLy8gQXNzdW1lIGVycm9yCi0rICAgICAgaWYgKGdmY19l eHByX2NoZWNrX3R5cGVkIChleHByLCBnZmNfY3VycmVudF9ucywgZmFsc2UpKQotKwl7Ci0rCSAg aWYgKChleHByLT5leHByX3R5cGUgPT0gRVhQUl9DT05TVEFOVCkKLSsJICAgICAgJiYgKGV4cHIt PnRzLnR5cGUgPT0gQlRfSU5URUdFUikpCi0rCSAgICB7Ci0rCSAgICAgICpsZW5ndGggPSBtcHpf Z2V0X3NpKGV4cHItPnZhbHVlLmludGVnZXIpOwotKwkgICAgICBtID0gTUFUQ0hfWUVTOwotKwkg ICAgfQotKwl9Ci0rCi0rCWlmIChtID09IE1BVENIX1lFUykKLSsJICB7Ci0rCSAgICBpZiAoZ2Zj X21hdGNoX2NoYXIgKCcpJykgPT0gTUFUQ0hfTk8pCi0rCSAgICAgICBtID0gTUFUQ0hfRVJST1I7 Ci0rICB9Ci0rICAgICB9Ci0rCi0rICBpZiAoZXhwciAhPSBOVUxMKQotKyAgICAgZ2ZjX2ZyZWVf ZXhwciAoZXhwcik7Ci0rICByZXR1cm4gbTsKLSt9Ci0gCi0gLyogU3BlY2lhbCBzdWJyb3V0aW5l IGZvciBmaW5kaW5nIGEgc3ltYm9sLiAgQ2hlY2sgaWYgdGhlIG5hbWUgaXMgZm91bmQKLSAgICBp biB0aGUgY3VycmVudCBuYW1lIHNwYWNlLiAgSWYgbm90LCBhbmQgd2UncmUgY29tcGlsaW5nIGEg ZnVuY3Rpb24gb3IKLUBAIC0yNDQzLDYgKzI0OTEsMzUgQEAgY2hlY2tfZnVuY3Rpb25fbmFtZSAo Y2hhciAqbmFtZSkKLSB9Ci0gCi0gCi0rc3RhdGljIG1hdGNoCi0rbWF0Y2hfY2hhcmFjdGVyX2xl bmd0aF9jbGF1c2UgKGdmY19jaGFybGVuICoqY2wsIGJvb2wgKmNsX2RlZmVycmVkLCBpbnQgZWxl bSkKLSt7Ci0rICBnZmNfZXhwciogY2hhcl9sZW47Ci0rICBjaGFyX2xlbiA9IE5VTEw7Ci0rCi0r ICBtYXRjaCBtID0gbWF0Y2hfY2hhcl9sZW5ndGggKCZjaGFyX2xlbiwgY2xfZGVmZXJyZWQsIGZh bHNlKTsKLSsgIGlmIChtID09IE1BVENIX1lFUykKLSsgICAgewotKyAgICAgICpjbCA9IGdmY19u ZXdfY2hhcmxlbiAoZ2ZjX2N1cnJlbnRfbnMsIE5VTEwpOwotKyAgICAgICgqY2wpLT5sZW5ndGgg PSBjaGFyX2xlbjsKLSsgICAgfQotKyAgZWxzZSBpZiAobSA9PSBNQVRDSF9OTykKLSsgICAgewot KyAgICAgIGlmIChlbGVtID4gMQotKwkgICYmIChjdXJyZW50X3RzLnUuY2wtPmxlbmd0aCA9PSBO VUxMCi0rCSAgICAgIHx8IGN1cnJlbnRfdHMudS5jbC0+bGVuZ3RoLT5leHByX3R5cGUgIT0gRVhQ Ul9DT05TVEFOVCkpCi0rCXsKLSsJICAqY2wgPSBnZmNfbmV3X2NoYXJsZW4gKGdmY19jdXJyZW50 X25zLCBOVUxMKTsKLSsJICAoKmNsKS0+bGVuZ3RoID0gZ2ZjX2NvcHlfZXhwciAoY3VycmVudF90 cy51LmNsLT5sZW5ndGgpOwotKwl9Ci0rICAgICAgZWxzZQotKyAgICAgICpjbCA9IGN1cnJlbnRf dHMudS5jbDsKLSsKLSsgICAgICAqY2xfZGVmZXJyZWQgPSBjdXJyZW50X3RzLmRlZmVycmVkOwot KyAgICB9Ci0rICByZXR1cm4gbTsKLSt9Ci0rCi0gLyogTWF0Y2ggYSB2YXJpYWJsZSBuYW1lIHdp dGggYW4gb3B0aW9uYWwgaW5pdGlhbGl6ZXIuICBXaGVuIHRoaXMKLSAgICBzdWJyb3V0aW5lIGlz IGNhbGxlZCwgYSB2YXJpYWJsZSBpcyBleHBlY3RlZCB0byBiZSBwYXJzZWQgbmV4dC4KLSAgICBE ZXBlbmRpbmcgb24gd2hhdCBpcyBoYXBwZW5pbmcgYXQgdGhlIG1vbWVudCwgdXBkYXRlcyBlaXRo ZXIgdGhlCi1AQCAtMjQ1Myw3ICsyNTMwLDcgQEAgdmFyaWFibGVfZGVjbCAoaW50IGVsZW0pCi0g ewotICAgY2hhciBuYW1lW0dGQ19NQVhfU1lNQk9MX0xFTiArIDFdOwotICAgc3RhdGljIHVuc2ln bmVkIGludCBmaWxsX2lkID0gMDsKLS0gIGdmY19leHByICppbml0aWFsaXplciwgKmNoYXJfbGVu OwotKyAgZ2ZjX2V4cHIgKmluaXRpYWxpemVyOwotICAgZ2ZjX2FycmF5X3NwZWMgKmFzOwotICAg Z2ZjX2FycmF5X3NwZWMgKmNwX2FzOyAvKiBFeHRyYSBjb3B5IGZvciBDcmF5IFBvaW50ZWVzLiAg Ki8KLSAgIGdmY19jaGFybGVuICpjbDsKLUBAIC0yNDYyLDExICsyNTM5LDE1IEBAIHZhcmlhYmxl X2RlY2wgKGludCBlbGVtKQotICAgbWF0Y2ggbTsKLSAgIGJvb2wgdDsKLSAgIGdmY19zeW1ib2wg KnN5bTsKLSsgIG1hdGNoIGNsX21hdGNoOwotKyAgbWF0Y2gga2luZF9tYXRjaDsKLSsgIGludCBv dmVycmlkZGVuX2tpbmQ7Ci0gICBjaGFyIGM7Ci0gCi0gICBpbml0aWFsaXplciA9IE5VTEw7Ci0g ICBhcyA9IE5VTEw7Ci0gICBjcF9hcyA9IE5VTEw7Ci0rICBraW5kX21hdGNoID0gTUFUQ0hfTk87 Ci0gCi0gICAvKiBXaGVuIHdlIGdldCBoZXJlLCB3ZSd2ZSBqdXN0IG1hdGNoZWQgYSBsaXN0IG9m IGF0dHJpYnV0ZXMgYW5kCi0gICAgICBtYXliZSBhIHR5cGUgYW5kIGEgZG91YmxlIGNvbG9uLiAg VGhlIG5leHQgdGhpbmcgd2UgZXhwZWN0IHRvIHNlZQotQEAgLTI1MTksNiArMjYwMCwyOCBAQCB2 YXJpYWJsZV9kZWNsIChpbnQgZWxlbSkKLSAKLSAgIHZhcl9sb2N1cyA9IGdmY19jdXJyZW50X2xv Y3VzOwotIAotKwotKyAgY2wgPSBOVUxMOwotKyAgY2xfZGVmZXJyZWQgPSBmYWxzZTsKLSsgIGNs X21hdGNoID0gTUFUQ0hfTk87Ci0rCi0rICAvKiBDaGVjayBmb3IgYSBjaGFyYWN0ZXIgbGVuZ3Ro IGNsYXVzZSBiZWZvcmUgYW4gYXJyYXkgY2xhdXNlICovCi0rICBpZiAoZmxhZ19kZWNfb3ZlcnJp ZGVfa2luZCkKLSsgICAgewotKyAgICAgIGlmIChjdXJyZW50X3RzLnR5cGUgPT0gQlRfQ0hBUkFD VEVSKQotKwl7Ci0rCSAgY2xfbWF0Y2ggPSBtYXRjaF9jaGFyYWN0ZXJfbGVuZ3RoX2NsYXVzZSAo JmNsLCAmY2xfZGVmZXJyZWQsIGVsZW0pOwotKwkgIGlmIChjbF9tYXRjaCA9PSBNQVRDSF9FUlJP UikKLSsJICAgIGdvdG8gY2xlYW51cDsKLSsJfQotKyAgICAgIGVsc2UKLSsJewotKwkgIGtpbmRf bWF0Y2ggPSBtYXRjaF9wZXJfc3ltYm9sX2tpbmQgKCZvdmVycmlkZGVuX2tpbmQpOwotKwkgIGlm IChraW5kX21hdGNoID09IE1BVENIX0VSUk9SKQotKwkgICAgZ290byBjbGVhbnVwOwotKwl9Ci0r ICAgIH0KLSsKLSAgIC8qIE5vdyB3ZSBjb3VsZCBzZWUgdGhlIG9wdGlvbmFsIGFycmF5IHNwZWMu IG9yIGNoYXJhY3RlciBsZW5ndGguICAqLwotICAgbSA9IGdmY19tYXRjaF9hcnJheV9zcGVjICgm YXMsIHRydWUsIHRydWUpOwotICAgaWYgKG0gPT0gTUFUQ0hfRVJST1IpCi1AQCAtMjY2Nyw0MCAr Mjc3MCwxMiBAQCB2YXJpYWJsZV9kZWNsIChpbnQgZWxlbSkKLSAJfQotICAgICB9Ci0gCi0tICBj aGFyX2xlbiA9IE5VTEw7Ci0tICBjbCA9IE5VTEw7Ci0tICBjbF9kZWZlcnJlZCA9IGZhbHNlOwot LQotLSAgaWYgKGN1cnJlbnRfdHMudHlwZSA9PSBCVF9DSEFSQUNURVIpCi0rICAvKiBTZWNvbmQg Y2hhbmNlIGZvciBhIGNoYXJhY3RlciBsZW5ndGggY2xhdXNlICovCi0rICBpZiAoY2xfbWF0Y2gg PT0gTUFUQ0hfTk8gJiYgY3VycmVudF90cy50eXBlID09IEJUX0NIQVJBQ1RFUikKLSAgICAgewot LSAgICAgIHN3aXRjaCAobWF0Y2hfY2hhcl9sZW5ndGggKCZjaGFyX2xlbiwgJmNsX2RlZmVycmVk LCBmYWxzZSkpCi0tCXsKLS0JY2FzZSBNQVRDSF9ZRVM6Ci0tCSAgY2wgPSBnZmNfbmV3X2NoYXJs ZW4gKGdmY19jdXJyZW50X25zLCBOVUxMKTsKLS0KLS0JICBjbC0+bGVuZ3RoID0gY2hhcl9sZW47 Ci0tCSAgYnJlYWs7Ci0tCi0tCS8qIE5vbi1jb25zdGFudCBsZW5ndGhzIG5lZWQgdG8gYmUgY29w aWVkIGFmdGVyIHRoZSBmaXJzdAotLQkgICBlbGVtZW50LiAgQWxzbyBjb3B5IGFzc3VtZWQgbGVu Z3Rocy4gICovCi0tCWNhc2UgTUFUQ0hfTk86Ci0tCSAgaWYgKGVsZW0gPiAxCi0tCSAgICAgICYm IChjdXJyZW50X3RzLnUuY2wtPmxlbmd0aCA9PSBOVUxMCi0tCQkgIHx8IGN1cnJlbnRfdHMudS5j bC0+bGVuZ3RoLT5leHByX3R5cGUgIT0gRVhQUl9DT05TVEFOVCkpCi0tCSAgICB7Ci0tCSAgICAg IGNsID0gZ2ZjX25ld19jaGFybGVuIChnZmNfY3VycmVudF9ucywgTlVMTCk7Ci0tCSAgICAgIGNs LT5sZW5ndGggPSBnZmNfY29weV9leHByIChjdXJyZW50X3RzLnUuY2wtPmxlbmd0aCk7Ci0tCSAg ICB9Ci0tCSAgZWxzZQotLQkgICAgY2wgPSBjdXJyZW50X3RzLnUuY2w7Ci0tCi0tCSAgY2xfZGVm ZXJyZWQgPSBjdXJyZW50X3RzLmRlZmVycmVkOwotLQotLQkgIGJyZWFrOwotLQotLQljYXNlIE1B VENIX0VSUk9SOgotLQkgIGdvdG8gY2xlYW51cDsKLS0JfQotKyAgICAgIG0gPSBtYXRjaF9jaGFy YWN0ZXJfbGVuZ3RoX2NsYXVzZSAoJmNsLCAmY2xfZGVmZXJyZWQsIGVsZW0pOwotKyAgICAgIGlm IChtID09IE1BVENIX0VSUk9SKQotKwlnb3RvIGNsZWFudXA7Ci0gICAgIH0KLSAKLSAgIC8qIFRo ZSBkdW1teSBhcmd1bWVudHMgYW5kIHJlc3VsdCBvZiB0aGUgYWJyZXZpYXRlZCBmb3JtIG9mIE1P RFVMRQotQEAgLTI4MDIsNiArMjg3NywxOSBAQCB2YXJpYWJsZV9kZWNsIChpbnQgZWxlbSkKLSAg ICAgICBnb3RvIGNsZWFudXA7Ci0gICAgIH0KLSAKLSsgIGlmIChraW5kX21hdGNoID09IE1BVENI X1lFUykKLSsgICAgewotKyAgICAgIGdmY19maW5kX3N5bWJvbCAobmFtZSwgZ2ZjX2N1cnJlbnRf bnMsIDEsICZzeW0pOwotKyAgICAgIC8qIHN5bSAqbXVzdCogYmUgZm91bmQgYXQgdGhpcyBwb2lu dCAqLwotKyAgICAgIHN5bS0+dHMua2luZCA9IG92ZXJyaWRkZW5fa2luZDsKLSsgICAgICBpZiAo Z2ZjX3ZhbGlkYXRlX2tpbmQgKHN5bS0+dHMudHlwZSwgc3ltLT50cy5raW5kLCB0cnVlKSA8IDAp Ci0rCXsKLSsJICBnZmNfZXJyb3IgKCJLaW5kICVkIG5vdCBzdXBwb3J0ZWQgZm9yIHR5cGUgJXMg YXQgJUMiLAotKwkJICAgICBzeW0tPnRzLmtpbmQsIGdmY19iYXNpY190eXBlbmFtZSAoc3ltLT50 cy50eXBlKSk7Ci0rCSAgcmV0dXJuIE1BVENIX0VSUk9SOwotKwl9Ci0rICAgIH0KLSsKLSAgIGlm ICghY2hlY2tfZnVuY3Rpb25fbmFtZSAobmFtZSkpCi0gICAgIHsKLSAgICAgICBtID0gTUFUQ0hf RVJST1I7Ci1kaWZmIC0tZ2l0IGEvZ2NjL2ZvcnRyYW4vbGFuZy5vcHQgYi9nY2MvZm9ydHJhbi9s YW5nLm9wdAotaW5kZXggMjVjYzk0ODY5OWIuLjRhMjY5ZWJiMjJkIDEwMDY0NAotLS0tIGEvZ2Nj L2ZvcnRyYW4vbGFuZy5vcHQKLSsrKyBiL2djYy9mb3J0cmFuL2xhbmcub3B0Ci1AQCAtNTAyLDYg KzUwMiwxMCBAQCBmZGVjLW1hdGgKLSBGb3J0cmFuIFZhcihmbGFnX2RlY19tYXRoKQotIEVuYWJs ZSBsZWdhY3kgbWF0aCBpbnRyaW5zaWNzIGZvciBjb21wYXRpYmlsaXR5LgotIAotK2ZkZWMtb3Zl cnJpZGUta2luZAotK0ZvcnRyYW4gVmFyKGZsYWdfZGVjX292ZXJyaWRlX2tpbmQpCi0rRW5hYmxl IHN1cHBvcnQgZm9yIHBlciB2YXJpYWJsZSBraW5kIHNwZWNpZmljYXRpb24uCi0rCi0gZmRlYy1z dHJ1Y3R1cmUKLSBGb3J0cmFuIFZhcihmbGFnX2RlY19zdHJ1Y3R1cmUpCi0gRW5hYmxlIHN1cHBv cnQgZm9yIERFQyBTVFJVQ1RVUkUvUkVDT1JELgotZGlmZiAtLWdpdCBhL2djYy9mb3J0cmFuL29w dGlvbnMuY2MgYi9nY2MvZm9ydHJhbi9vcHRpb25zLmNjCi1pbmRleCBkNmJkMzZjM2E4YS4uZWRi YWI0ODNiMzYgMTAwNjQ0Ci0tLS0gYS9nY2MvZm9ydHJhbi9vcHRpb25zLmNjCi0rKysgYi9nY2Mv Zm9ydHJhbi9vcHRpb25zLmNjCi1AQCAtNzgsNiArNzgsNyBAQCBzZXRfZGVjX2ZsYWdzIChpbnQg dmFsdWUpCi0gICBTRVRfQklURkxBRyAoZmxhZ19kZWNfYmxhbmtfZm9ybWF0X2l0ZW0sIHZhbHVl LCB2YWx1ZSk7Ci0gICBTRVRfQklURkxBRyAoZmxhZ19kZWNfY2hhcl9jb252ZXJzaW9ucywgdmFs dWUsIHZhbHVlKTsKLSAgIFNFVF9CSVRGTEFHIChmbGFnX2RlY19kdXBsaWNhdGVzLCB2YWx1ZSwg dmFsdWUpOwotKyAgU0VUX0JJVEZMQUcgKGZsYWdfZGVjX292ZXJyaWRlX2tpbmQsIHZhbHVlLCB2 YWx1ZSk7Ci0gfQotIAotIC8qIEZpbmFsaXplIERFQyBmbGFncy4gICovCi1kaWZmIC0tZ2l0IGEv Z2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfbWl4ZWRfY2hhcl9hcnJheV9kZWNsYXJhdGlv bl8xLmYgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19taXhlZF9jaGFyX2FycmF5X2Rl Y2xhcmF0aW9uXzEuZgotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAwMDAwLi43 MDZlYTQxMTJhNAotLS0tIC9kZXYvbnVsbAotKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5k Zy9kZWNfbWl4ZWRfY2hhcl9hcnJheV9kZWNsYXJhdGlvbl8xLmYKLUBAIC0wLDAgKzEsMTMgQEAK LSshIHsgZGctZG8gcnVuIH0KLSshIHsgZGctb3B0aW9ucyAiLWZkZWMiIH0KLSshCi0rISBUZXN0 IGNoYXJhY3RlciBkZWNsYXJhdGlvbiB3aXRoIG1peGVkIHN0cmluZyBsZW5ndGggYW5kIGFycmF5 IHNwZWNpZmljYXRpb24KLSshCi0rISBDb250cmlidXRlZCBieSBKaW0gTWFjQXJ0aHVyIDxqaW0u bWFjYXJ0aHVyQGNvZGV0aGluay5jby51az4KLSshIE1vZGlmaWVkIGJ5IE1hcmsgRWdnbGVzdG9u IDxtYXJrLmVnZ2xlc3RvbkBjb2RldGhpbmsuY29tPgotKyEKLSsgICAgICAgUFJPR1JBTSBjaGFy YWN0ZXJfZGVjbGFyYXRpb24KLSsgICAgICAgICAgQ0hBUkFDVEVSIEFTUEVDX1NMRU5HVEgqMiAo NSkgLycwMScsJzAyJywnMDMnLCcwNCcsJzA1Jy8KLSsgICAgICAgICAgQ0hBUkFDVEVSIFNMRU5H VEhfQVNQRUMoNSkqMiAvJzAxJywnMDInLCcwMycsJzA0JywnMDUnLwotKyAgICAgICAgICBpZiAo QVNQRUNfU0xFTkdUSCgzKS5ORS5TTEVOR1RIX0FTUEVDKDMpKSBTVE9QIDEKLSsgICAgICAgIEVO RAotZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX21peGVkX2NoYXJf YXJyYXlfZGVjbGFyYXRpb25fMi5mIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfbWl4 ZWRfY2hhcl9hcnJheV9kZWNsYXJhdGlvbl8yLmYKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRl eCAwMDAwMDAwMDAwMC4uMjZkMmFjZjAxZGUKLS0tLSAvZGV2L251bGwKLSsrKyBiL2djYy90ZXN0 c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX21peGVkX2NoYXJfYXJyYXlfZGVjbGFyYXRpb25fMi5mCi1A QCAtMCwwICsxLDEzIEBACi0rISB7IGRnLWRvIHJ1biB9Ci0rISB7IGRnLW9wdGlvbnMgIi1mZGVj LW92ZXJyaWRlLWtpbmQiIH0KLSshCi0rISBUZXN0IGNoYXJhY3RlciBkZWNsYXJhdGlvbiB3aXRo IG1peGVkIHN0cmluZyBsZW5ndGggYW5kIGFycmF5IHNwZWNpZmljYXRpb24KLSshCi0rISBDb250 cmlidXRlZCBieSBKaW0gTWFjQXJ0aHVyIDxqaW0ubWFjYXJ0aHVyQGNvZGV0aGluay5jby51az4K LSshIE1vZGlmaWVkIGJ5IE1hcmsgRWdnbGVzdG9uIDxtYXJrLmVnZ2xlc3RvbkBjb2RldGhpbmsu Y29tPgotKyEKLSsgICAgICAgIFBST0dSQU0gY2hhcmFjdGVyX2RlY2xhcmF0aW9uCi0rICAgICAg ICAgIENIQVJBQ1RFUiBBU1BFQ19TTEVOR1RIKjIgKDUpIC8nMDEnLCcwMicsJzAzJywnMDQnLCcw NScvCi0rICAgICAgICAgIENIQVJBQ1RFUiBTTEVOR1RIX0FTUEVDKDUpKjIgLycwMScsJzAyJywn MDMnLCcwNCcsJzA1Jy8KLSsgICAgICAgICAgaWYgKEFTUEVDX1NMRU5HVEgoMykuTkUuU0xFTkdU SF9BU1BFQygzKSkgU1RPUCAxCi0rICAgICAgICBFTkQKLWRpZmYgLS1naXQgYS9nY2MvdGVzdHN1 aXRlL2dmb3J0cmFuLmRnL2RlY19taXhlZF9jaGFyX2FycmF5X2RlY2xhcmF0aW9uXzMuZiBiL2dj Yy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX21peGVkX2NoYXJfYXJyYXlfZGVjbGFyYXRpb25f My5mCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAwMDAuLjc2ZTRmMGJkYjkz Ci0tLS0gL2Rldi9udWxsCi0rKysgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19taXhl ZF9jaGFyX2FycmF5X2RlY2xhcmF0aW9uXzMuZgotQEAgLTAsMCArMSwxMyBAQAotKyEgeyBkZy1k byBjb21waWxlIH0KLSshIHsgZGctb3B0aW9ucyAiLWZkZWMtb3ZlcnJpZGUta2luZCAtZm5vLWRl Yy1vdmVycmlkZS1raW5kIiB9Ci0rIQotKyEgVGVzdCBjaGFyYWN0ZXIgZGVjbGFyYXRpb24gd2l0 aCBtaXhlZCBzdHJpbmcgbGVuZ3RoIGFuZCBhcnJheSBzcGVjaWZpY2F0aW9uCi0rIQotKyEgQ29u dHJpYnV0ZWQgYnkgSmltIE1hY0FydGh1ciA8amltLm1hY2FydGh1ckBjb2RldGhpbmsuY28udWs+ Ci0rISBNb2RpZmllZCBieSBNYXJrIEVnZ2xlc3RvbiA8bWFyay5lZ2dsZXN0b25AY29kZXRoaW5r LmNvbT4KLSshCi0rICAgICAgICBQUk9HUkFNIGNoYXJhY3Rlcl9kZWNsYXJhdGlvbgotKyAgICAg ICAgICBDSEFSQUNURVIgQVNQRUNfU0xFTkdUSCoyICg1KSAvJzAxJywnMDInLCcwMycsJzA0Jywn MDUnLyAhIHsgZGctZXJyb3IgIlN5bnRheCBlcnJvciIgfQotKyAgICAgICAgICBDSEFSQUNURVIg U0xFTkdUSF9BU1BFQyg1KSoyIC8nMDEnLCcwMicsJzAzJywnMDQnLCcwNScvCi0rICAgICAgICAg IGlmIChBU1BFQ19TTEVOR1RIKDMpLk5FLlNMRU5HVEhfQVNQRUMoMykpIFNUT1AgMSAhIHsgZGct ZXJyb3IgIiBPcGVyYW5kcyBvZiBjb21wYXJpc29uIG9wZXJhdG9yIiB9Ci0rICAgICAgICBFTkQK LWRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19zcGVjX2luX3Zhcmlh YmxlXzEuZiBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX3NwZWNfaW5fdmFyaWFibGVf MS5mCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAwMDAuLmVkZDBmNTg3NGI3 Ci0tLS0gL2Rldi9udWxsCi0rKysgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19zcGVj X2luX3ZhcmlhYmxlXzEuZgotQEAgLTAsMCArMSwzMSBAQAotKyEgeyBkZy1kbyBydW4gfQotKyEg eyBkZy1vcHRpb25zICItZmRlYyIgfQotKyEKLSshIFRlc3Qga2luZCBzcGVjaWZpY2F0aW9uIGlu IHZhcmlhYmxlIG5vdCBpbiB0eXBlCi0rIQotKyEgQ29udHJpYnV0ZWQgYnkgTWFyayBFZ2dsZXN0 b24gPG1hcmsuZWdnbGVzdG9uQGNvZGV0aGluay5jb20+Ci0rIQotKyAgICAgICAgcHJvZ3JhbSBz cGVjX2luX3ZhcgotKyAgICAgICAgICBpbnRlZ2VyKjggIGFpKjEsIGJpKjQsIGNpCi0rICAgICAg ICAgIHJlYWwqNCBhcio0LCBicio4LCBjcgotKwotKyAgICAgICAgICBhaSA9IDEKLSsgICAgICAg ICAgYXIgPSAxLjAKLSsgICAgICAgICAgYmkgPSAyCi0rICAgICAgICAgIGJyID0gMi4wCi0rICAg ICAgICAgIGNpID0gMwotKyAgICAgICAgICBjciA9IDMuMAotKwotKyAgICAgICAgICBpZiAoYWkg Lm5lLiAxKSBzdG9wIDEKLSsgICAgICAgICAgaWYgKGFicyhhciAtIDEuMCkgPiAxLjBELTYpIHN0 b3AgMgotKyAgICAgICAgICBpZiAoYmkgLm5lLiAyKSBzdG9wIDMKLSsgICAgICAgICAgaWYgKGFi cyhiciAtIDIuMCkgPiAxLjBELTYpIHN0b3AgNAotKyAgICAgICAgICBpZiAoY2kgLm5lLiAzKSBz dG9wIDUKLSsgICAgICAgICAgaWYgKGFicyhjciAtIDMuMCkgPiAxLjBELTYpIHN0b3AgNgotKyAg ICAgICAgICBpZiAoa2luZChhaSkgLm5lLiAxKSBzdG9wIDcKLSsgICAgICAgICAgaWYgKGtpbmQo YXIpIC5uZS4gNCkgc3RvcCA4Ci0rICAgICAgICAgIGlmIChraW5kKGJpKSAubmUuIDQpIHN0b3Ag OQotKyAgICAgICAgICBpZiAoa2luZChicikgLm5lLiA4KSBzdG9wIDEwCi0rICAgICAgICAgIGlm IChraW5kKGNpKSAubmUuIDgpIHN0b3AgMTEKLSsgICAgICAgICAgaWYgKGtpbmQoY3IpIC5uZS4g NCkgc3RvcCAxMgotKyAgICAgICAgZW5kCi1kaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9y dHJhbi5kZy9kZWNfc3BlY19pbl92YXJpYWJsZV8yLmYgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFu LmRnL2RlY19zcGVjX2luX3ZhcmlhYmxlXzIuZgotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4 IDAwMDAwMDAwMDAwLi5iZmFiYTU4NGRiYgotLS0tIC9kZXYvbnVsbAotKysrIGIvZ2NjL3Rlc3Rz dWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJpYWJsZV8yLmYKLUBAIC0wLDAgKzEsMzEg QEAKLSshIHsgZGctZG8gcnVuIH0KLSshIHsgZGctb3B0aW9ucyAiLWZkZWMtb3ZlcnJpZGUta2lu ZCIgfQotKyEKLSshIFRlc3Qga2luZCBzcGVjaWZpY2F0aW9uIGluIHZhcmlhYmxlIG5vdCBpbiB0 eXBlCi0rIQotKyEgQ29udHJpYnV0ZWQgYnkgTWFyayBFZ2dsZXN0b24gPG1hcmsuZWdnbGVzdG9u QGNvZGV0aGluay5jb20+Ci0rIQotKyAgICAgICAgcHJvZ3JhbSBzcGVjX2luX3ZhcgotKyAgICAg ICAgICBpbnRlZ2VyKjggIGFpKjEsIGJpKjQsIGNpCi0rICAgICAgICAgIHJlYWwqNCBhcio0LCBi cio4LCBjcgotKwotKyAgICAgICAgICBhaSA9IDEKLSsgICAgICAgICAgYXIgPSAxLjAKLSsgICAg ICAgICAgYmkgPSAyCi0rICAgICAgICAgIGJyID0gMi4wCi0rICAgICAgICAgIGNpID0gMwotKyAg ICAgICAgICBjciA9IDMuMAotKwotKyAgICAgICAgICBpZiAoYWkgLm5lLiAxKSBzdG9wIDEKLSsg ICAgICAgICAgaWYgKGFicyhhciAtIDEuMCkgPiAxLjBELTYpIHN0b3AgMgotKyAgICAgICAgICBp ZiAoYmkgLm5lLiAyKSBzdG9wIDMKLSsgICAgICAgICAgaWYgKGFicyhiciAtIDIuMCkgPiAxLjBE LTYpIHN0b3AgNAotKyAgICAgICAgICBpZiAoY2kgLm5lLiAzKSBzdG9wIDUKLSsgICAgICAgICAg aWYgKGFicyhjciAtIDMuMCkgPiAxLjBELTYpIHN0b3AgNgotKyAgICAgICAgICBpZiAoa2luZChh aSkgLm5lLiAxKSBzdG9wIDcKLSsgICAgICAgICAgaWYgKGtpbmQoYXIpIC5uZS4gNCkgc3RvcCA4 Ci0rICAgICAgICAgIGlmIChraW5kKGJpKSAubmUuIDQpIHN0b3AgOQotKyAgICAgICAgICBpZiAo a2luZChicikgLm5lLiA4KSBzdG9wIDEwCi0rICAgICAgICAgIGlmIChraW5kKGNpKSAubmUuIDgp IHN0b3AgMTEKLSsgICAgICAgICAgaWYgKGtpbmQoY3IpIC5uZS4gNCkgc3RvcCAxMgotKyAgICAg ICAgZW5kCi1kaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3BlY19p bl92YXJpYWJsZV8zLmYgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19zcGVjX2luX3Zh cmlhYmxlXzMuZgotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAwMDAwLi41ZmY0 MzRlNzQ2NgotLS0tIC9kZXYvbnVsbAotKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9k ZWNfc3BlY19pbl92YXJpYWJsZV8zLmYKLUBAIC0wLDAgKzEsMzEgQEAKLSshIHsgZGctZG8gY29t cGlsZSB9Ci0rISB7IGRnLW9wdGlvbnMgIi1mZGVjIC1mbm8tZGVjLW92ZXJyaWRlLWtpbmQiIH0K LSshCi0rISBUZXN0IGtpbmQgc3BlY2lmaWNhdGlvbiBpbiB2YXJpYWJsZSBub3QgaW4gdHlwZQot KyEKLSshIENvbnRyaWJ1dGVkIGJ5IE1hcmsgRWdnbGVzdG9uIDxtYXJrLmVnZ2xlc3RvbkBjb2Rl dGhpbmsuY29tPgotKyEKLSsgICAgICAgIHByb2dyYW0gc3BlY19pbl92YXIKLSsgICAgICAgICAg aW50ZWdlcio4ICBhaSoxLCBiaSo0LCBjaSAhIHsgZGctZXJyb3IgIlN5bnRheCBlcnJvciIgfQot KyAgICAgICAgICByZWFsKjQgYXIqNCwgYnIqOCwgY3IgISB7IGRnLWVycm9yICJTeW50YXggZXJy b3IiIH0KLSsKLSsgICAgICAgICAgYWkgPSAxCi0rICAgICAgICAgIGFyID0gMS4wCi0rICAgICAg ICAgIGJpID0gMgotKyAgICAgICAgICBiciA9IDIuMAotKyAgICAgICAgICBjaSA9IDMKLSsgICAg ICAgICAgY3IgPSAzLjAKLSsKLSsgICAgICAgICAgaWYgKGFpIC5uZS4gMSkgc3RvcCAxCi0rICAg ICAgICAgIGlmIChhYnMoYXIgLSAxLjApID4gMS4wRC02KSBzdG9wIDIKLSsgICAgICAgICAgaWYg KGJpIC5uZS4gMikgc3RvcCAzCi0rICAgICAgICAgIGlmIChhYnMoYnIgLSAyLjApID4gMS4wRC02 KSBzdG9wIDQKLSsgICAgICAgICAgaWYgKGNpIC5uZS4gMykgc3RvcCA1Ci0rICAgICAgICAgIGlm IChhYnMoY3IgLSAzLjApID4gMS4wRC02KSBzdG9wIDYKLSsgICAgICAgICAgaWYgKGtpbmQoYWkp IC5uZS4gMSkgc3RvcCA3Ci0rICAgICAgICAgIGlmIChraW5kKGFyKSAubmUuIDQpIHN0b3AgOAot KyAgICAgICAgICBpZiAoa2luZChiaSkgLm5lLiA0KSBzdG9wIDkKLSsgICAgICAgICAgaWYgKGtp bmQoYnIpIC5uZS4gOCkgc3RvcCAxMAotKyAgICAgICAgICBpZiAoa2luZChjaSkgLm5lLiA4KSBz dG9wIDExCi0rICAgICAgICAgIGlmIChraW5kKGNyKSAubmUuIDQpIHN0b3AgMTIKLSsgICAgICAg IGVuZAotZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX3NwZWNfaW5f dmFyaWFibGVfNC5mIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJp YWJsZV80LmYKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwMDAwMC4uYzAxOTgw ZThiOWQKLS0tLSAvZGV2L251bGwKLSsrKyBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVj X3NwZWNfaW5fdmFyaWFibGVfNC5mCi1AQCAtMCwwICsxLDE0IEBACi0rISB7IGRnLWRvIGNvbXBp bGUgfQotKyEKLSshIFRlc3Qga2luZCBzcGVjaWZpY2F0aW9uIGluIHZhcmlhYmxlIG5vdCBpbiB0 eXBlLiBUaGUgcGVyIHZhcmlhYmxlCi0rISBraW5kIHNwZWNpZmljYXRpb24gaXMgbm90IGVuYWJs ZWQgc28gdGhlc2Ugc2hvdWxkIGZhaWwKLSshCi0rISBDb250cmlidXRlZCBieSBNYXJrIEVnZ2xl c3RvbiA8bWFyay5lZ2dsZXN0b25AY29kZXRoaW5rLmNvbT4KLSshCi0rICAgICAgICBwcm9ncmFt IHNwZWNfaW5fdmFyCi0rICAgICAgICAgIGludGVnZXIgYQotKyAgICAgICAgICBwYXJhbWV0ZXIo YT0yKQotKyAgICAgICAgICBpbnRlZ2VyIGIqKGEpICEgeyBkZy1lcnJvciAiU3ludGF4IGVycm9y IiB9Ci0rICAgICAgICAgIHJlYWwgYyooOCkgICAgISB7IGRnLWVycm9yICJTeW50YXggZXJyb3Ii IH0KLSsgICAgICAgICAgbG9naWNhbCBkKjFfMSAhIHsgZGctZXJyb3IgIlN5bnRheCBlcnJvciIg fQotKyAgICAgICAgZW5kCi1kaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9k ZWNfc3BlY19pbl92YXJpYWJsZV81LmYgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19z cGVjX2luX3ZhcmlhYmxlXzUuZgotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAw MDAwLi5lMmYzOWRhM2Y0ZgotLS0tIC9kZXYvbnVsbAotKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9y dHJhbi5kZy9kZWNfc3BlY19pbl92YXJpYWJsZV81LmYKLUBAIC0wLDAgKzEsMTkgQEAKLSshIHsg ZGctZG8gcnVuIH0KLSshIHsgZGctb3B0aW9ucyAiLWZkZWMtb3ZlcnJpZGUta2luZCIgfQotKyEK LSshIFRlc3Qga2luZCBzcGVjaWZpY2F0aW9uIGluIHZhcmlhYmxlIG5vdCBpbiB0eXBlCi0rIQot KyEgQ29udHJpYnV0ZWQgYnkgTWFyayBFZ2dsZXN0b24gPG1hcmsuZWdnbGVzdG9uQGNvZGV0aGlu ay5jb20+Ci0rIQotKyAgICAgICAgcHJvZ3JhbSBzcGVjX2luX3ZhcgotKyAgICAgICAgICBpbnRl Z2VyIGEKLSsgICAgICAgICAgcGFyYW1ldGVyKGE9MikKLSsgICAgICAgICAgaW50ZWdlciBiKihh KQotKyAgICAgICAgICByZWFsIGMqKDgpCi0rICAgICAgICAgIGxvZ2ljYWwgZCooMV8xKQotKyAg ICAgICAgICBjaGFyYWN0ZXIgZSooYSkKLSsgICAgICAgICAgaWYgKGtpbmQoYikubmUuMikgc3Rv cCAxCi0rICAgICAgICAgIGlmIChraW5kKGMpLm5lLjgpIHN0b3AgMgotKyAgICAgICAgICBpZiAo a2luZChkKS5uZS4xKSBzdG9wIDMKLSsgICAgICAgICAgaWYgKGxlbihlKS5uZS4yKSBzdG9wIDQK LSsgICAgICAgIGVuZAotZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVj X3NwZWNfaW5fdmFyaWFibGVfNi5mIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3Bl Y19pbl92YXJpYWJsZV82LmYKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwMDAw MC4uNTY5NzQ3ODc0ZTMKLS0tLSAvZGV2L251bGwKLSsrKyBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRy YW4uZGcvZGVjX3NwZWNfaW5fdmFyaWFibGVfNi5mCi1AQCAtMCwwICsxLDE5IEBACi0rISB7IGRn LWRvIHJ1biB9Ci0rISB7IGRnLW9wdGlvbnMgIi1mZGVjIiB9Ci0rIQotKyEgVGVzdCBraW5kIHNw ZWNpZmljYXRpb24gaW4gdmFyaWFibGUgbm90IGluIHR5cGUKLSshCi0rISBDb250cmlidXRlZCBi eSBNYXJrIEVnZ2xlc3RvbiA8bWFyay5lZ2dsZXN0b25AY29kZXRoaW5rLmNvbT4KLSshCi0rICAg ICAgICBwcm9ncmFtIHNwZWNfaW5fdmFyCi0rICAgICAgICAgIGludGVnZXIgYQotKyAgICAgICAg ICBwYXJhbWV0ZXIoYT0yKQotKyAgICAgICAgICBpbnRlZ2VyIGIqKGEpCi0rICAgICAgICAgIHJl YWwgYyooOCkKLSsgICAgICAgICAgbG9naWNhbCBkKigxXzEpCi0rICAgICAgICAgIGNoYXJhY3Rl ciBlKihhKQotKyAgICAgICAgICBpZiAoa2luZChiKS5uZS4yKSBzdG9wIDEKLSsgICAgICAgICAg aWYgKGtpbmQoYykubmUuOCkgc3RvcCAyCi0rICAgICAgICAgIGlmIChraW5kKGQpLm5lLjEpIHN0 b3AgMwotKyAgICAgICAgICBpZiAobGVuKGUpLm5lLjIpIHN0b3AgNAotKyAgICAgICAgZW5kCi1k aWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJpYWJs ZV83LmYgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19zcGVjX2luX3ZhcmlhYmxlXzcu ZgotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAwMDAwLi5iOTc1YmZkMTVjNQot LS0tIC9kZXYvbnVsbAotKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3BlY19p bl92YXJpYWJsZV83LmYKLUBAIC0wLDAgKzEsMTUgQEAKLSshIHsgZGctZG8gY29tcGlsZSB9Ci0r ISB7IGRnLW9wdGlvbnMgIi1mZGVjIC1mbm8tZGVjLW92ZXJyaWRlLWtpbmQiIH0KLSshCi0rISBU ZXN0IGtpbmQgc3BlY2lmaWNhdGlvbiBpbiB2YXJpYWJsZSBub3QgaW4gdHlwZSBhcyB0aGUgcGVy IHZhcmlhYmxlCi0rISBraW5kIHNwZWNpZmljYXRpb24gaXMgbm90IGVuYWJsZXMgdGhlc2Ugc2hv dWxkIGZhaWwKLSshCi0rISBDb250cmlidXRlZCBieSBNYXJrIEVnZ2xlc3RvbiA8bWFyay5lZ2ds ZXN0b25AY29kZXRoaW5rLmNvbT4KLSshCi0rICAgICAgICBwcm9ncmFtIHNwZWNfaW5fdmFyCi0r ICAgICAgICAgIGludGVnZXIgYQotKyAgICAgICAgICBwYXJhbWV0ZXIoYT0yKQotKyAgICAgICAg ICBpbnRlZ2VyIGIqKGEpICEgeyBkZy1lcnJvciAiU3ludGF4IGVycm9yIiB9Ci0rICAgICAgICAg IHJlYWwgYyooOCkgICAgISB7IGRnLWVycm9yICJTeW50YXggZXJyb3IiIH0KLSsgICAgICAgICAg bG9naWNhbCBkKjFfMSAhIHsgZGctZXJyb3IgIlN5bnRheCBlcnJvciIgfQotKyAgICAgICAgZW5k Ci1kaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3BlY19pbl92YXJp YWJsZV84LmYgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19zcGVjX2luX3ZhcmlhYmxl XzguZgotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAwMDAwLi44NTczMmUwYmQ4 NQotLS0tIC9kZXYvbnVsbAotKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3Bl Y19pbl92YXJpYWJsZV84LmYKLUBAIC0wLDAgKzEsMTQgQEAKLSshIHsgZGctZG8gY29tcGlsZSB9 Ci0rISB7IGRnLW9wdGlvbnMgIi1mZGVjIiB9Ci0rIQotKyEgQ2hlY2sgdGhhdCBpbnZhbGlkIGtp bmQgdmFsdWVzIGFyZSByZWplY3RlZC4KLSshCi0rISBDb250cmlidXRlZCBieSBNYXJrIEVnZ2xl c3RvbiA8bWFyay5lZ2dsZXN0b25AY29kZXRoaW5rLmNvbT4KLSshCi0rICAgICAgICBwcm9ncmFt IHNwZWNfaW5fdmFyCi0rICAgICAgICAgIGludGVnZXIgYQotKyAgICAgICAgICBwYXJhbWV0ZXIo YT0zKQotKyAgICAgICAgICBpbnRlZ2VyIGIqKGEpICEgeyBkZy1lcnJvciAiS2luZCAzIG5vdCBz dXBwb3J0ZWQiIH0KLSsgICAgICAgICAgcmVhbCBjKig3OCkgICAhIHsgZGctZXJyb3IgIktpbmQg Nzggbm90IHN1cHBvcnRlZCIgfQotKyAgICAgICAgICBsb2dpY2FsIGQqKCopICEgeyBkZy1lcnJv ciAiSW52YWxpZCBjaGFyYWN0ZXIiIH0KLSsgICAgICAgIGVuZAotLS0gCi0yLjI3LjAKLQoKZGlm ZiAtLWdpdCBhL2djYzEzLWZvcnRyYW4tZmxvZ2ljYWwtYXMtaW50ZWdlci5wYXRjaCBiL2djYzEz LWZvcnRyYW4tZmxvZ2ljYWwtYXMtaW50ZWdlci5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggZjQwYjE0My4uMDAwMDAwMAotLS0gYS9nY2MxMy1mb3J0cmFuLWZsb2dpY2FsLWFz LWludGVnZXIucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzMDUgKzAsMCBAQAotRnJvbSA5YjQ1 ZjMwNjNkZmQyYjg5M2U3OTYzYTQ4MjhjMWIwYWZlY2RjNjhhIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQotRnJvbTogTWFyayBFZ2dsZXN0b24gPG1hcmtlZ2dsZXN0b25AZ2NjLmdudS5vcmc+Ci1E YXRlOiBGcmksIDIyIEphbiAyMDIxIDEyOjQxOjQ2ICswMDAwCi1TdWJqZWN0OiBbUEFUQ0ggMDIv MTBdIENvbnZlcnQgTE9HSUNBTCB0byBJTlRFR0VSIGZvciBhcml0aG1ldGljIG9wcywgYW5kIHZp Y2UKLSB2ZXJzYQotCi1XZSBhbGxvdyBjb252ZXJ0aW5nIExPR0lDQUwgdHlwZXMgdG8gSU5URUdF UiB3aGVuIGRvaW5nIGFyaXRobWV0aWMKLW9wZXJhdGlvbnMsIGFuZCBjb252ZXJ0aW5nIElOVEVH RVIgdHlwZXMgdG8gTE9HSUNBTCBmb3IgdXNlIGluCi1ib29sZWFuIG9wZXJhdGlvbnMuCi0KLVRo aXMgZmVhdHVyZSBpcyBlbmFibGVkIHdpdGggdGhlIC1mbG9naWNhbC1hcy1pbnRlZ2VyIGZsYWcu Ci0KLU5vdGU6IHVzaW5nIHRoaXMgZmVhdHVyZSB3aWxsIGRpc2FibGUgYml0d2lzZSBsb2dpY2Fs IG9wZXJhdGlvbnMgZW5hYmxlZCBieQotLWZkZWMuCi0tLS0KLSBnY2MvZm9ydHJhbi9sYW5nLm9w dCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKwotIGdjYy9mb3J0cmFuL3Jlc29sdmUu Y2MgICAgICAgICAgICAgICAgICAgICAgICB8IDU1ICsrKysrKysrKysrKysrKysrKy0KLSAuLi4v bG9naWNhbF90b19pbnRlZ2VyX2FuZF92aWNlX3ZlcnNhXzEuZiAgICAgfCAzMSArKysrKysrKysr KwotIC4uLi9sb2dpY2FsX3RvX2ludGVnZXJfYW5kX3ZpY2VfdmVyc2FfMi5mICAgICB8IDMxICsr KysrKysrKysrCi0gLi4uL2xvZ2ljYWxfdG9faW50ZWdlcl9hbmRfdmljZV92ZXJzYV8zLmYgICAg IHwgMzMgKysrKysrKysrKysKLSAuLi4vbG9naWNhbF90b19pbnRlZ2VyX2FuZF92aWNlX3ZlcnNh XzQuZiAgICAgfCAzMyArKysrKysrKysrKwotIDYgZmlsZXMgY2hhbmdlZCwgMTg2IGluc2VydGlv bnMoKyksIDEgZGVsZXRpb24oLSkKLSBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Zm9ydHJhbi5kZy9sb2dpY2FsX3RvX2ludGVnZXJfYW5kX3ZpY2VfdmVyc2FfMS5mCi0gY3JlYXRl IG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvbG9naWNhbF90b19pbnRlZ2Vy X2FuZF92aWNlX3ZlcnNhXzIuZgotIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2dm b3J0cmFuLmRnL2xvZ2ljYWxfdG9faW50ZWdlcl9hbmRfdmljZV92ZXJzYV8zLmYKLSBjcmVhdGUg bW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9sb2dpY2FsX3RvX2ludGVnZXJf YW5kX3ZpY2VfdmVyc2FfNC5mCi0KLWRpZmYgLS1naXQgYS9nY2MvZm9ydHJhbi9sYW5nLm9wdCBi L2djYy9mb3J0cmFuL2xhbmcub3B0Ci1pbmRleCA1MmJkNTIyMDUxZS4uYzRkYTI0OGYwN2MgMTAw NjQ0Ci0tLS0gYS9nY2MvZm9ydHJhbi9sYW5nLm9wdAotKysrIGIvZ2NjL2ZvcnRyYW4vbGFuZy5v cHQKLUBAIC00OTcsNiArNDk3LDEwIEBAIGZkZWMtc3RhdGljCi0gRm9ydHJhbiBWYXIoZmxhZ19k ZWNfc3RhdGljKQotIEVuYWJsZSBERUMtc3R5bGUgU1RBVElDIGFuZCBBVVRPTUFUSUMgYXR0cmli dXRlcy4KLSAKLStmbG9naWNhbC1hcy1pbnRlZ2VyCi0rRm9ydHJhbiBWYXIoZmxhZ19sb2dpY2Fs X2FzX2ludGVnZXIpCi0rQ29udmVydCBmcm9tIGludGVnZXIgdG8gbG9naWNhbCBvciBsb2dpY2Fs IHRvIGludGVnZXIgZm9yIGFyaXRobWV0aWMgb3BlcmF0aW9ucy4KLSsKLSBmZGVmYXVsdC1kb3Vi bGUtOAotIEZvcnRyYW4gVmFyKGZsYWdfZGVmYXVsdF9kb3VibGUpCi0gU2V0IHRoZSBkZWZhdWx0 IGRvdWJsZSBwcmVjaXNpb24ga2luZCB0byBhbiA4IGJ5dGUgd2lkZSB0eXBlLgotZGlmZiAtLWdp dCBhL2djYy9mb3J0cmFuL3Jlc29sdmUuY2MgYi9nY2MvZm9ydHJhbi9yZXNvbHZlLmNjCi1pbmRl eCBjMDc1ZDBmYTBjNC4uNGI5MGNiNTk5MDIgMTAwNjQ0Ci0tLS0gYS9nY2MvZm9ydHJhbi9yZXNv bHZlLmNjCi0rKysgYi9nY2MvZm9ydHJhbi9yZXNvbHZlLmNjCi1AQCAtNDAzNSw3ICs0MDM1LDYg QEAgbG9va3VwX3VvcF9mdXp6eSAoY29uc3QgY2hhciAqb3AsIGdmY19zeQotICAgcmV0dXJuIGdm Y19jbG9zZXN0X2Z1enp5X21hdGNoIChvcCwgY2FuZGlkYXRlcyk7Ci0gfQotIAotLQotIC8qIENh bGxiYWNrIGZpbmRpbmcgYW4gaW1wdXJlIGZ1bmN0aW9uIGFzIGFuIG9wZXJhbmQgdG8gYW4gLmFu ZC4gb3IKLSAgICAub3IuICBleHByZXNzaW9uLiAgUmVtZW1iZXIgdGhlIGxhc3QgZnVuY3Rpb24g d2FybmVkIGFib3V0IHRvCi0gICAgYXZvaWQgZG91YmxlIHdhcm5pbmdzIHdoZW4gcmVjdXJzaW5n LiAgKi8KLUBAIC00MDk1LDYgKzQwOTQsMjIgQEAgY29udmVydF9ob2xsZXJpdGhfdG9fY2hhcmFj dGVyIChnZmNfZXhwcgotICAgICB9Ci0gfQotIAotKy8qIElmIEUgaXMgYSBsb2dpY2FsLCBjb252 ZXJ0IGl0IHRvIGFuIGludGVnZXIgYW5kIGlzc3VlIGEgd2FybmluZwotKyAgIGZvciB0aGUgY29u dmVyc2lvbi4gICovCi0rCi0rc3RhdGljIHZvaWQKLStjb252ZXJ0X2ludGVnZXJfdG9fbG9naWNh bCAoZ2ZjX2V4cHIgKmUpCi0rewotKyAgaWYgKGUtPnRzLnR5cGUgPT0gQlRfSU5URUdFUikKLSsg ICAgewotKyAgICAgIC8qIENvbnZlcnQgdG8gTE9HSUNBTCAqLwotKyAgICAgIGdmY190eXBlc3Bl YyB0OwotKyAgICAgIHQudHlwZSA9IEJUX0xPR0lDQUw7Ci0rICAgICAgdC5raW5kID0gMTsKLSsg ICAgICBnZmNfY29udmVydF90eXBlX3dhcm4gKGUsICZ0LCAyLCAxKTsKLSsgICAgfQotK30KLSsK LSAvKiBDb252ZXJ0IHRvIG51bWVyaWMgYW5kIGlzc3VlIGEgd2FybmluZyBmb3IgdGhlIGNvbnZl cnNpb24uICAqLwotIAotIHN0YXRpYyB2b2lkCi1AQCAtNDEwNyw2ICs0MTIyLDIyIEBAIGNvbnZl cnRfdG9fbnVtZXJpYyAoZ2ZjX2V4cHIgKmEsIGdmY19leHAKLSAgIGdmY19jb252ZXJ0X3R5cGVf d2FybiAoYSwgJnQsIDIsIDEpOwotIH0KLSAKLSsvKiBJZiBFIGlzIGEgbG9naWNhbCwgY29udmVy dCBpdCB0byBhbiBpbnRlZ2VyIGFuZCBpc3N1ZSBhIHdhcm5pbmcKLSsgICBmb3IgdGhlIGNvbnZl cnNpb24uICAqLwotKwotK3N0YXRpYyB2b2lkCi0rY29udmVydF9sb2dpY2FsX3RvX2ludGVnZXIg KGdmY19leHByICplKQotK3sKLSsgIGlmIChlLT50cy50eXBlID09IEJUX0xPR0lDQUwpCi0rICAg IHsKLSsgICAgICAvKiBDb252ZXJ0IHRvIElOVEVHRVIgKi8KLSsgICAgICBnZmNfdHlwZXNwZWMg dDsKLSsgICAgICB0LnR5cGUgPSBCVF9JTlRFR0VSOwotKyAgICAgIHQua2luZCA9IDE7Ci0rICAg ICAgZ2ZjX2NvbnZlcnRfdHlwZV93YXJuIChlLCAmdCwgMiwgMSk7Ci0rICAgIH0KLSt9Ci0rCi0g LyogUmVzb2x2ZSBhbiBvcGVyYXRvciBleHByZXNzaW9uIG5vZGUuICBUaGlzIGNhbiBpbnZvbHZl IHJlcGxhY2luZyB0aGUKLSAgICBvcGVyYXRpb24gd2l0aCBhIHVzZXIgZGVmaW5lZCBmdW5jdGlv biBjYWxsLiAgKi8KLSAKLUBAIC00MTk4LDYgKzQyMjksMTIgQEAgcmVzb2x2ZV9vcGVyYXRvciAo Z2ZjX2V4cHIgKmUpCi0gICAgIGNhc2UgSU5UUklOU0lDX1RJTUVTOgotICAgICBjYXNlIElOVFJJ TlNJQ19ESVZJREU6Ci0gICAgIGNhc2UgSU5UUklOU0lDX1BPV0VSOgotKyAgICAgIGlmIChmbGFn X2xvZ2ljYWxfYXNfaW50ZWdlcikKLSsJewotKwkgIGNvbnZlcnRfbG9naWNhbF90b19pbnRlZ2Vy IChvcDEpOwotKwkgIGNvbnZlcnRfbG9naWNhbF90b19pbnRlZ2VyIChvcDIpOwotKwl9Ci0rCi0g ICAgICAgaWYgKGdmY19udW1lcmljX3RzICgmb3AxLT50cykgJiYgZ2ZjX251bWVyaWNfdHMgKCZv cDItPnRzKSkKLSAJewotIAkgIC8qIERvIG5vdCBwZXJmb3JtIGNvbnZlcnNpb25zIGlmIG9wZXJh bmRzIGFyZSBub3QgY29uZm9ybWFibGUgYXMKLUBAIC00MjQ1LDYgKzQyODIsMTMgQEAgcmVzb2x2 ZV9vcGVyYXRvciAoZ2ZjX2V4cHIgKmUpCi0gICAgIGNhc2UgSU5UUklOU0lDX09SOgotICAgICBj YXNlIElOVFJJTlNJQ19FUVY6Ci0gICAgIGNhc2UgSU5UUklOU0lDX05FUVY6Ci0rCi0rICAgICAg aWYgKGZsYWdfbG9naWNhbF9hc19pbnRlZ2VyKQotKwl7Ci0rCSAgY29udmVydF9pbnRlZ2VyX3Rv X2xvZ2ljYWwgKG9wMSk7Ci0rCSAgY29udmVydF9pbnRlZ2VyX3RvX2xvZ2ljYWwgKG9wMik7Ci0r CX0KLSsKLSAgICAgICBpZiAob3AxLT50cy50eXBlID09IEJUX0xPR0lDQUwgJiYgb3AyLT50cy50 eXBlID09IEJUX0xPR0lDQUwpCi0gCXsKLSAJICBlLT50cy50eXBlID0gQlRfTE9HSUNBTDsKLUBA IC00Mjk2LDYgKzQzNDAsOSBAQCByZXNvbHZlX29wZXJhdG9yIChnZmNfZXhwciAqZSkKLSAJICBn b3RvIHNpbXBsaWZ5X29wOwotIAl9Ci0gCi0rICAgICAgaWYgKGZsYWdfbG9naWNhbF9hc19pbnRl Z2VyKQotKwljb252ZXJ0X2ludGVnZXJfdG9fbG9naWNhbCAob3AxKTsKLSsKLSAgICAgICBpZiAo b3AxLT50cy50eXBlID09IEJUX0xPR0lDQUwpCi0gCXsKLSAJICBlLT50cy50eXBlID0gQlRfTE9H SUNBTDsKLUBAIC00MzM2LDYgKzQzODMsMTIgQEAgcmVzb2x2ZV9vcGVyYXRvciAoZ2ZjX2V4cHIg KmUpCi0gCSAgY29udmVydF9ob2xsZXJpdGhfdG9fY2hhcmFjdGVyIChvcDIpOwotIAl9Ci0gCi0r ICAgICAgaWYgKGZsYWdfbG9naWNhbF9hc19pbnRlZ2VyKQotKwl7Ci0rCSAgY29udmVydF9sb2dp Y2FsX3RvX2ludGVnZXIgKG9wMSk7Ci0rCSAgY29udmVydF9sb2dpY2FsX3RvX2ludGVnZXIgKG9w Mik7Ci0rCX0KLSsKLSAgICAgICBpZiAob3AxLT50cy50eXBlID09IEJUX0NIQVJBQ1RFUiAmJiBv cDItPnRzLnR5cGUgPT0gQlRfQ0hBUkFDVEVSCi0gCSAgJiYgb3AxLT50cy5raW5kID09IG9wMi0+ dHMua2luZCkKLSAJewotZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvbG9n aWNhbF90b19pbnRlZ2VyX2FuZF92aWNlX3ZlcnNhXzEuZiBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRy YW4uZGcvbG9naWNhbF90b19pbnRlZ2VyX2FuZF92aWNlX3ZlcnNhXzEuZgotbmV3IGZpbGUgbW9k ZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAwMDAwLi45MzhhOTFkOWU5YQotLS0tIC9kZXYvbnVsbAot KysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9sb2dpY2FsX3RvX2ludGVnZXJfYW5kX3Zp Y2VfdmVyc2FfMS5mCi1AQCAtMCwwICsxLDMxIEBACi0rISB7IGRnLWRvIHJ1biB9Ci0rISB7IGRn LW9wdGlvbnMgIi1zdGQ9bGVnYWN5IC1mbG9naWNhbC1hcy1pbnRlZ2VyIiB9Ci0rIQotKyEgVGVz dCBjb252ZXJzaW9uIGJldHdlZW4gbG9naWNhbCBhbmQgaW50ZWdlciBmb3IgbG9naWNhbCBvcGVy YXRvcnMKLSshCi0rISBUZXN0IGNhc2UgY29udHJpYnV0ZWQgYnkgSmltIE1hY0FydGh1ciA8amlt Lm1hY2FydGh1ckBjb2RldGhpbmsuY28udWs+Ci0rISBNb2RpZmllZCBmb3IgLWZsb2dpY2FsLWFz LWludGVnZXIgYnkgTWFyayBFZ2dsZXN0b24KLSshIDxtYXJrLmVnZ2xlc3RvbkBjb2RldGhpbmsu Y29tPgotKyEKLSsgICAgICAgIFBST0dSQU0gbG9naWNhbF9pbnRlZ2VyX2NvbnZlcnNpb24KLSsg ICAgICAgICAgTE9HSUNBTCBscG9zIC8udHJ1ZS4vCi0rICAgICAgICAgIElOVEVHRVIgaW5lZy8w LwotKyAgICAgICAgICBJTlRFR0VSIGlyZXMKLSsgICAgICAgICAgTE9HSUNBTCBscmVzCi0rCi0r ICAgICAgICAgICEgVGVzdCBMb2dpY2FscyBjb252ZXJ0ZWQgdG8gSW50ZWdlcnMKLSsgICAgICAg ICAgaWYgKChscG9zLkFORC5pbmVnKS5FUS4xKSBTVE9QIDMKLSsgICAgICAgICAgaWYgKChpbmVn LkFORC5scG9zKS5ORS4wKSBTVE9QIDQKLSsgICAgICAgICAgaXJlcyA9ICgudHJ1ZS4uQU5ELjAp Ci0rICAgICAgICAgIGlmIChpcmVzLk5FLjApIFNUT1AgNQotKyAgICAgICAgICBpcmVzID0gKDEu QU5ELi5mYWxzZS4pCi0rICAgICAgICAgIGlmIChpcmVzLkVRLjEpIFNUT1AgNgotKwotKyAgICAg ICAgICAhIFRlc3QgSW50ZWdlcnMgY29udmVydGVkIHRvIExvZ2ljYWxzCi0rICAgICAgICAgIGlm IChscG9zLkVRLmluZWcpIFNUT1AgNwotKyAgICAgICAgICBpZiAoaW5lZy5FUS5scG9zKSBTVE9Q IDgKLSsgICAgICAgICAgbHJlcyA9ICgudHJ1ZS4uRVEuMCkKLSsgICAgICAgICAgaWYgKGxyZXMp IFNUT1AgOQotKyAgICAgICAgICBscmVzID0gKDEuRVEuLmZhbHNlLikKLSsgICAgICAgICAgaWYg KGxyZXMpIFNUT1AgMTAKLSsgICAgICAgIEVORAotZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUv Z2ZvcnRyYW4uZGcvbG9naWNhbF90b19pbnRlZ2VyX2FuZF92aWNlX3ZlcnNhXzIuZiBiL2djYy90 ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvbG9naWNhbF90b19pbnRlZ2VyX2FuZF92aWNlX3ZlcnNhXzIu ZgotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAwMDAwLi45ZjE0NjIwMmJhNQot LS0tIC9kZXYvbnVsbAotKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9sb2dpY2FsX3Rv X2ludGVnZXJfYW5kX3ZpY2VfdmVyc2FfMi5mCi1AQCAtMCwwICsxLDMxIEBACi0rISB7IGRnLWRv IGNvbXBpbGUgfQotKyEgeyBkZy1vcHRpb25zICItc3RkPWxlZ2FjeSAtZmxvZ2ljYWwtYXMtaW50 ZWdlciAtZm5vLWxvZ2ljYWwtYXMtaW50ZWdlciIgfQotKyEKLSshIEJhc2VkIG9uIGxvZ2ljYWxf dG9faW50ZWdlcl9hbmRfdmljZV92ZXJzYV8xLmYgYnV0IHdpdGggb3B0aW9uIGRpc2FibGVkCi0r ISB0byB0ZXN0IGZvciBlcnJvciBtZXNzYWdlcy4KLSshCi0rISBUZXN0IGNhc2UgY29udHJpYnV0 ZWQgYnkgYnkgTWFyayBFZ2dsZXN0b24gPG1hcmsuZWdnbGVzdG9uQGNvZGV0aGluay5jb20+Ci0r IQotKyEKLSsgICAgICAgIFBST0dSQU0gbG9naWNhbF9pbnRlZ2VyX2NvbnZlcnNpb24KLSsgICAg ICAgICAgTE9HSUNBTCBscG9zIC8udHJ1ZS4vCi0rICAgICAgICAgIElOVEVHRVIgaW5lZy8wLwot KyAgICAgICAgICBJTlRFR0VSIGlyZXMKLSsgICAgICAgICAgTE9HSUNBTCBscmVzCi0rCi0rICAg ICAgICAgICEgVGVzdCBMb2dpY2FscyBjb252ZXJ0ZWQgdG8gSW50ZWdlcnMKLSsgICAgICAgICAg aWYgKChscG9zLkFORC5pbmVnKS5FUS4xKSBTVE9QIDMgISB7IGRnLWVycm9yICJPcGVyYW5kcyBv ZiBsb2dpY2FsIG9wZXJhdG9yIiB9Ci0rICAgICAgICAgIGlmICgoaW5lZy5BTkQubHBvcykuTkUu MCkgU1RPUCA0ICEgeyBkZy1lcnJvciAiT3BlcmFuZHMgb2YgbG9naWNhbCBvcGVyYXRvciIgfQot KyAgICAgICAgICBpcmVzID0gKC50cnVlLi5BTkQuMCkgISB7IGRnLWVycm9yICJPcGVyYW5kcyBv ZiBsb2dpY2FsIG9wZXJhdG9yIiB9Ci0rICAgICAgICAgIGlmIChpcmVzLk5FLjApIFNUT1AgNQot KyAgICAgICAgICBpcmVzID0gKDEuQU5ELi5mYWxzZS4pICEgeyBkZy1lcnJvciAiT3BlcmFuZHMg b2YgbG9naWNhbCBvcGVyYXRvciIgfQotKyAgICAgICAgICBpZiAoaXJlcy5FUS4xKSBTVE9QIDYK LSsKLSsgICAgICAgICAgISBUZXN0IEludGVnZXJzIGNvbnZlcnRlZCB0byBMb2dpY2FscwotKyAg ICAgICAgICBpZiAobHBvcy5FUS5pbmVnKSBTVE9QIDcgISB7IGRnLWVycm9yICJPcGVyYW5kcyBv ZiBjb21wYXJpc29uIG9wZXJhdG9yIiB9Ci0rICAgICAgICAgIGlmIChpbmVnLkVRLmxwb3MpIFNU T1AgOCAhIHsgZGctZXJyb3IgIk9wZXJhbmRzIG9mIGNvbXBhcmlzb24gb3BlcmF0b3IiIH0KLSsg ICAgICAgICAgbHJlcyA9ICgudHJ1ZS4uRVEuMCkgISB7IGRnLWVycm9yICJPcGVyYW5kcyBvZiBj b21wYXJpc29uIG9wZXJhdG9yIiB9Ci0rICAgICAgICAgIGlmIChscmVzKSBTVE9QIDkKLSsgICAg ICAgICAgbHJlcyA9ICgxLkVRLi5mYWxzZS4pICEgeyBkZy1lcnJvciAiT3BlcmFuZHMgb2YgY29t cGFyaXNvbiBvcGVyYXRvciIgfQotKyAgICAgICAgICBpZiAobHJlcykgU1RPUCAxMAotKyAgICAg ICAgRU5ECi1kaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9sb2dpY2FsX3Rv X2ludGVnZXJfYW5kX3ZpY2VfdmVyc2FfMy5mIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9s b2dpY2FsX3RvX2ludGVnZXJfYW5kX3ZpY2VfdmVyc2FfMy5mCi1uZXcgZmlsZSBtb2RlIDEwMDY0 NAotaW5kZXggMDAwMDAwMDAwMDAuLjQ0Njg3M2ViMmRjCi0tLS0gL2Rldi9udWxsCi0rKysgYi9n Y2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2xvZ2ljYWxfdG9faW50ZWdlcl9hbmRfdmljZV92ZXJz YV8zLmYKLUBAIC0wLDAgKzEsMzMgQEAKLSshIHsgZGctZG8gY29tcGlsZSB9Ci0rISB7IGRnLW9w dGlvbnMgIi1zdGQ9bGVnYWN5IC1mbG9naWNhbC1hcy1pbnRlZ2VyIiB9Ci0rIQotKyEgVGVzdCBj b252ZXJzaW9uIGJldHdlZW4gbG9naWNhbCBhbmQgaW50ZWdlciBmb3IgbG9naWNhbCBvcGVyYXRv cnMKLSshCi0rICAgICAgICBwcm9ncmFtIHRlc3QKLSsgICAgICAgICAgbG9naWNhbCBmIC8uZmFs c2UuLwotKyAgICAgICAgICBsb2dpY2FsIHQgLy50cnVlLi8KLSsgICAgICAgICAgcmVhbCB4Ci0r Ci0rICAgICAgICAgIHggPSA3LjcKLSsgICAgICAgICAgeCA9IHggKyB0KjMuMAotKyAgICAgICAg ICBpZiAoYWJzKHggLSAxMC43KS5ndC4wLjAwMDAxKSBzdG9wIDEKLSsgICAgICAgICAgeCA9IHgg KyAuZmFsc2UuKjUuMAotKyAgICAgICAgICBpZiAoYWJzKHggLSAxMC43KS5ndC4wLjAwMDAxKSBz dG9wIDIKLSsgICAgICAgICAgeCA9IHggLSAudHJ1ZS4qNS4wCi0rICAgICAgICAgIGlmIChhYnMo eCAtIDUuNykuZ3QuMC4wMDAwMSkgc3RvcCAzCi0rICAgICAgICAgIHggPSB4ICsgdAotKyAgICAg ICAgICBpZiAoYWJzKHggLSA2LjcpLmd0LjAuMDAwMDEpIHN0b3AgNAotKyAgICAgICAgICB4ID0g eCArIGYKLSsgICAgICAgICAgaWYgKGFicyh4IC0gNi43KS5ndC4wLjAwMDAxKSBzdG9wIDUKLSsg ICAgICAgICAgeCA9IHggLSB0Ci0rICAgICAgICAgIGlmIChhYnMoeCAtIDUuNykuZ3QuMC4wMDAw MSkgc3RvcCA2Ci0rICAgICAgICAgIHggPSB4IC0gZgotKyAgICAgICAgICBpZiAoYWJzKHggLSA1 LjcpLmd0LjAuMDAwMDEpIHN0b3AgNwotKyAgICAgICAgICB4ID0geCoqLnRydWUuCi0rICAgICAg ICAgIGlmIChhYnMoeCAtIDUuNykuZ3QuMC4wMDAwMSkgc3RvcCA4Ci0rICAgICAgICAgIHggPSB4 KiouZmFsc2UuCi0rICAgICAgICAgIGlmIChhYnMoeCAtIDEuMCkuZ3QuMC4wMDAwMSkgc3RvcCA5 Ci0rICAgICAgICAgIHggPSB4L3QKLSsgICAgICAgICAgaWYgKGFicyh4IC0gMS4wKS5ndC4wLjAw MDAxKSBzdG9wIDEwCi0rICAgICAgICAgIGlmICgoeC8uZmFsc2UuKS5sZS5odWdlKHgpKSBzdG9w IDExCi0rICAgICAgICBlbmQKLWRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRn L2xvZ2ljYWxfdG9faW50ZWdlcl9hbmRfdmljZV92ZXJzYV80LmYgYi9nY2MvdGVzdHN1aXRlL2dm b3J0cmFuLmRnL2xvZ2ljYWxfdG9faW50ZWdlcl9hbmRfdmljZV92ZXJzYV80LmYKLW5ldyBmaWxl IG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwMDAwMC4uNDMwMWE0OTg4ZDgKLS0tLSAvZGV2L251 bGwKLSsrKyBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvbG9naWNhbF90b19pbnRlZ2VyX2Fu ZF92aWNlX3ZlcnNhXzQuZgotQEAgLTAsMCArMSwzMyBAQAotKyEgeyBkZy1kbyBjb21waWxlIH0K LSshIHsgZGctb3B0aW9ucyAiLXN0ZD1sZWdhY3kgLWZsb2dpY2FsLWFzLWludGVnZXIgLWZuby1s b2dpY2FsLWFzLWludGVnZXIiIH0KLSshCi0rISBUZXN0IGNvbnZlcnNpb24gYmV0d2VlbiBsb2dp Y2FsIGFuZCBpbnRlZ2VyIGZvciBsb2dpY2FsIG9wZXJhdG9ycwotKyEKLSsgICAgICAgIHByb2dy YW0gdGVzdAotKyAgICAgICAgICBsb2dpY2FsIGYgLy5mYWxzZS4vCi0rICAgICAgICAgIGxvZ2lj YWwgdCAvLnRydWUuLwotKyAgICAgICAgICByZWFsIHgKLSsKLSsgICAgICAgICAgeCA9IDcuNwot KyAgICAgICAgICB4ID0geCArIHQqMy4wICEgeyBkZy1lcnJvciAiT3BlcmFuZHMgb2YgYmluYXJ5 IG51bWVyaWMiIH0KLSsgICAgICAgICAgaWYgKGFicyh4IC0gMTAuNykuZ3QuMC4wMDAwMSkgc3Rv cCAxCi0rICAgICAgICAgIHggPSB4ICsgLmZhbHNlLio1LjAgISB7IGRnLWVycm9yICJPcGVyYW5k cyBvZiBiaW5hcnkgbnVtZXJpYyIgfQotKyAgICAgICAgICBpZiAoYWJzKHggLSAxMC43KS5ndC4w LjAwMDAxKSBzdG9wIDIKLSsgICAgICAgICAgeCA9IHggLSAudHJ1ZS4qNS4wICEgeyBkZy1lcnJv ciAiT3BlcmFuZHMgb2YgYmluYXJ5IG51bWVyaWMiIH0KLSsgICAgICAgICAgaWYgKGFicyh4IC0g NS43KS5ndC4wLjAwMDAxKSBzdG9wIDMKLSsgICAgICAgICAgeCA9IHggKyB0ICEgeyBkZy1lcnJv ciAiT3BlcmFuZHMgb2YgYmluYXJ5IG51bWVyaWMiIH0KLSsgICAgICAgICAgaWYgKGFicyh4IC0g Ni43KS5ndC4wLjAwMDAxKSBzdG9wIDQKLSsgICAgICAgICAgeCA9IHggKyBmICEgeyBkZy1lcnJv ciAiT3BlcmFuZHMgb2YgYmluYXJ5IG51bWVyaWMiIH0KLSsgICAgICAgICAgaWYgKGFicyh4IC0g Ni43KS5ndC4wLjAwMDAxKSBzdG9wIDUKLSsgICAgICAgICAgeCA9IHggLSB0ICEgeyBkZy1lcnJv ciAiT3BlcmFuZHMgb2YgYmluYXJ5IG51bWVyaWMiIH0KLSsgICAgICAgICAgaWYgKGFicyh4IC0g NS43KS5ndC4wLjAwMDAxKSBzdG9wIDYKLSsgICAgICAgICAgeCA9IHggLSBmICEgeyBkZy1lcnJv ciAiT3BlcmFuZHMgb2YgYmluYXJ5IG51bWVyaWMiIH0KLSsgICAgICAgICAgaWYgKGFicyh4IC0g NS43KS5ndC4wLjAwMDAxKSBzdG9wIDcKLSsgICAgICAgICAgeCA9IHgqKi50cnVlLiAhIHsgZGct ZXJyb3IgIk9wZXJhbmRzIG9mIGJpbmFyeSBudW1lcmljIiB9Ci0rICAgICAgICAgIGlmIChhYnMo eCAtIDUuNykuZ3QuMC4wMDAwMSkgc3RvcCA4Ci0rICAgICAgICAgIHggPSB4KiouZmFsc2UuICEg eyBkZy1lcnJvciAiT3BlcmFuZHMgb2YgYmluYXJ5IG51bWVyaWMiIH0KLSsgICAgICAgICAgaWYg KGFicyh4IC0gMS4wKS5ndC4wLjAwMDAxKSBzdG9wIDkKLSsgICAgICAgICAgeCA9IHgvdCAhIHsg ZGctZXJyb3IgIk9wZXJhbmRzIG9mIGJpbmFyeSBudW1lcmljIiB9Ci0rICAgICAgICAgIGlmIChh YnMoeCAtIDEuMCkuZ3QuMC4wMDAwMSkgc3RvcCAxMAotKyAgICAgICAgICBpZiAoKHgvLmZhbHNl LikubGUuaHVnZSh4KSkgc3RvcCAxMSAhIHsgZGctZXJyb3IgIk9wZXJhbmRzIG9mIGJpbmFyeSBu dW1lcmljIiB9Ci0rICAgICAgICBlbmQKLS0tIAotMi4yNy4wCi0K