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: Jan Kratochvil To: git-commits@fedoraproject.org Subject: [rpms/gdb] fix-dup-patch: - Upgrade to the FSF GDB gdb-7.0 snapshot: 6.8.91.20090921 Date: Thu, 23 Jul 2026 18:29:16 GMT Message-ID: <178483135613.1.8643421652607978242.rpms-gdb-a8e7ccc4fd6c@fedoraproject.org> List-ID: X-Git-Repo: rpms/gdb X-Git-Branch: fix-dup-patch X-Git-Rev: a8e7ccc4fd6cc0bc84bd6ea41fdd39734d8ec68d ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvZ2RiCiAgICAgICAgICAgIEJyYW5jaCA6IGZpeC1kdXAtcGF0Y2gKICAgICAg ICAgICAgQ29tbWl0IDogYThlN2NjYzRmZDZjYzBiYzg0YmQ2ZWE0MWZkZDM5NzM0ZDhlYzY4ZAog ICAgICAgICAgICBBdXRob3IgOiBKYW4gS3JhdG9jaHZpbCA8amtyYXRvY2hAZmVkb3JhcHJvamVj dC5vcmc+CiAgICAgICAgICAgIERhdGUgICA6IDIwMDktMDktMjFUMTU6NDk6MzYrMDA6MDAKICAg ICAgICAgICAgU3RhdHMgIDogKzEwMjcvLTIzNyBpbiA2IGZpbGUocykKICAgICAgICAgICAgVVJM ICAgIDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9nZGIvYy9hOGU3Y2NjNGZk NmNjMGJjODRiZDZlYTQxZmRkMzk3MzRkOGVjNjhkP2JyYW5jaD1maXgtZHVwLXBhdGNoCgogICAg ICAgICAgICBMb2c6CiAgICAgICAgICAgIC0gVXBncmFkZSB0byB0aGUgRlNGIEdEQiBnZGItNy4w IHNuYXBzaG90OiA2LjguOTEuMjAwOTA5MjEKLSBhcmNoZXItamFua3JhdG9jaHZpbC1mZWRvcmEx MiBjb21taXQ6CiAgICAwZDVjMzhkZDg5MDUwYzBlZTFjZjA0OTY1NmYxNzdjMTcwZDY3NWQ0Ci0g W2V4cHJdIENoZWNrIGhhc19zdGFja19mcmFtZXMgYmVmb3JlIGNhbGxpbmcgZmluZF9wY19saW5l IChTYW1pCiAgICBXYWdpYWFsbGEpLgoKLS0tCmRpZmYgLS1naXQgYS8uY3ZzaWdub3JlIGIvLmN2 c2lnbm9yZQppbmRleCA4NTIyY2Q0Li40Y2Y3ZDA1IDEwMDY0NAotLS0gYS8uY3ZzaWdub3JlCisr KyBiLy5jdnNpZ25vcmUKQEAgLTEsMiArMSwyIEBACi1nZGItNi44LjkxLjIwMDkwOTE3LnRhci5i ejIKIGxpYnN0ZGMrKy12My1weXRob24tcjE1MTc5OC50YXIueHoKK2dkYi02LjguOTEuMjAwOTA5 MjEudGFyLmJ6MgoKZGlmZiAtLWdpdCBhL2dkYi02LjMtcGllLTIwMDUwMTEwLnBhdGNoIGIvZ2Ri LTYuMy1waWUtMjAwNTAxMTAucGF0Y2gKaW5kZXggMDQ3NTVlYS4uZmFhZDFmNyAxMDA2NDQKLS0t IGEvZ2RiLTYuMy1waWUtMjAwNTAxMTAucGF0Y2gKKysrIGIvZ2RiLTYuMy1waWUtMjAwNTAxMTAu cGF0Y2gKQEAgLTMyNCwxNiArMzI0LDYgQEAgSW5kZXg6IGdkYi02LjguOTEuMjAwOTA5MTcvZ2Ri L29iamZpbGVzLmMKICAgIGlmIChzeW1maWxlX29iamZpbGUgPT0gTlVMTCkKICAgICAgcmV0dXJu IDA7CiAgCi1AQCAtNDY3LDYgKzQ3OCw5IEBAIGZyZWVfb2JqZmlsZSAoc3RydWN0IG9iamZpbGUg Km9iamZpbGUpCi0gICBpZiAob2JqZmlsZSA9PSBzeW1maWxlX29iamZpbGUpCi0gICAgIHN5bWZp bGVfb2JqZmlsZSA9IE5VTEw7Ci0gCi0rICBpZiAob2JqZmlsZSA9PSBzeW1maWxlX29iamZpbGUp Ci0rICAgIHN5bWZpbGVfb2JqZmlsZSA9IE5VTEw7Ci0rCi0gICAvKiBCZWZvcmUgdGhlIHN5bWJv bCB0YWJsZSBjb2RlIHdhcyByZWRvbmUgdG8gbWFrZSBpdCBlYXNpZXIgdG8KLSAgICAgIHNlbGVj dGl2ZWx5IGxvYWQgYW5kIHJlbW92ZSBpbmZvcm1hdGlvbiBwYXJ0aWN1bGFyIHRvIGEgc3BlY2lm aWMKLSAgICAgIGxpbmthZ2UgdW5pdCwgZ2RiIHVzZWQgdG8gZG8gdGhlc2UgdGhpbmdzIHdoZW5l dmVyIHRoZSBtb25vbGl0aGljCiBJbmRleDogZ2RiLTYuOC45MS4yMDA5MDkxNy9nZGIvc29saWIt c3ZyNC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09CiAtLS0gZ2RiLTYuOC45MS4yMDA5MDkxNy5vcmlnL2dkYi9zb2xp Yi1zdnI0LmMJMjAwOS0wOS0xNyAxMjo0ODo1MC4wMDAwMDAwMDAgKzAyMDAKCmRpZmYgLS1naXQg YS9nZGItNi44LjUwLjIwMDkwOTIxLXVwc3RyZWFtLnBhdGNoIGIvZ2RiLTYuOC41MC4yMDA5MDky MS11cHN0cmVhbS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNzc4 NTUyCi0tLSAvZGV2L251bGwKKysrIGIvZ2RiLTYuOC41MC4yMDA5MDkyMS11cHN0cmVhbS5wYXRj aApAQCAtMCwwICsxLDk2NSBAQAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9n ZGIvQ2hhbmdlTG9nLHYKK3JldHJpZXZpbmcgcmV2aXNpb24gMS4xMDg3NC4yLjExCityZXRyaWV2 aW5nIHJldmlzaW9uIDEuMTA4NzQuMi4xMgorZGlmZiAtdSAtcjEuMTA4NzQuMi4xMSAtcjEuMTA4 NzQuMi4xMgorLS0tIHNyYy9nZGIvQ2hhbmdlTG9nCTIwMDkvMDkvMTkgMTY6MzY6MDgJMS4xMDg3 NC4yLjExCisrKysgc3JjL2dkYi9DaGFuZ2VMb2cJMjAwOS8wOS8yMSAwNjo1NzowMgkxLjEwODc0 LjIuMTIKK0BAIC0xLDMgKzEsNDcgQEAKKysyMDA5LTA5LTIxICBIdWkgWmh1ICA8dGVhd2F0ZXJA Z21haWwuY29tPgorKwkgICAgTWljaGFlbCBTbnlkZXIgIDxtc255ZGVyQHZtd2FyZS5jb20+Cisr CisrCSogYW1kNjQtbGludXgtdGRlcC5jIChhbWQ2NF9hbGxfYnV0X2lwX3JlZ2lzdGVyc19yZWNv cmQpOiBOZXcKKysJZnVuY3Rpb24uCisrCShhbWQ2NF9saW51eF9zeXNjYWxsX3JlY29yZCk6IENh bGwKKysJYW1kNjRfYWxsX2J1dF9pcF9yZWdpc3RlcnNfcmVjb3JkIGlmIHN5c2NhbGwgaXMKKysJ c3lzX3J0X3NpZ3JldHVybi4KKysJKEFNRDY0X0xJTlVYX3JlZHpvbmUsIEFNRDY0X0xJTlVYX3hz dGF0ZSwKKysJQU1ENjRfTElOVVhfZnJhbWVfc2l6ZSk6IE5ldyBtYWNyb3MuCisrCShhbWQ2NF9s aW51eF9yZWNvcmRfc2lnbmFsKTogTmV3IGZ1bmN0aW9uLgorKwkoYW1kNjRfbGludXhfaW5pdF9h YmkpOiBDYWxsIHNldF9nZGJhcmNoX3Byb2Nlc3NfcmVjb3JkX3NpZ25hbC4KKysKKysyMDA5LTA5 LTIxICBIdWkgWmh1ICA8dGVhd2F0ZXJAZ21haWwuY29tPgorKwkgICAgTWljaGFlbCBTbnlkZXIg IDxtc255ZGVyQHZtd2FyZS5jb20+CisrCisrCSogaTM4Ni1saW51eC10ZGVwLmMgKGkzODZfYWxs X2J1dF9pcF9yZWdpc3RlcnNfcmVjb3JkKTogTmV3CisrCWZ1bmN0aW9uLgorKwkoaTM4Nl9saW51 eF9pbnR4ODBfc3lzZW50ZXJfcmVjb3JkKTogQ2FsbAorKwlpMzg2X2FsbF9idXRfaXBfcmVnaXN0 ZXJzX3JlY29yZCBpZiBzeXNjYWxsIGlzIHN5c19zaWdyZXR1cm4KKysJb3Igc3lzX3J0X3NpZ3Jl dHVybi4KKysJKEkzODZfTElOVVhfeHN0YXRlLCBJMzg2X0xJTlVYX2ZyYW1lX3NpemUpOiBOZXcg bWFjcm9zLgorKwkoaTM4Nl9saW51eF9yZWNvcmRfc2lnbmFsKTogTmV3IGZ1bmN0aW9uLgorKwko aTM4Nl9saW51eF9pbml0X2FiaSk6IENhbGwgc2V0X2dkYmFyY2hfcHJvY2Vzc19yZWNvcmRfc2ln bmFsLgorKworKzIwMDktMDktMjEgIEh1aSBaaHUgIDx0ZWF3YXRlckBnbWFpbC5jb20+CisrCSAg ICBNaWNoYWVsIFNueWRlciAgPG1zbnlkZXJAdm13YXJlLmNvbT4KKysKKysJKiByZWNvcmQuYyAo cmVjb3JkX2VuZF9lbnRyeSk6IE5ldyBzdHJ1Y3QuCisrCShyZWNvcmRfdHlwZSk6IEFkZCBlbmQu CisrCShyZWNvcmRfYXJjaF9saXN0X2FkZF9lbmQpOiBTZXQgcmVjLT51LmVuZC5zaWd2YWwgdG8K KysJVEFSR0VUX1NJR05BTF8wLgorKwkocmVjb3JkX21lc3NhZ2VfYXJncyk6IE5ldyBzdHJ1Y3Qu CisrCShyZWNvcmRfbWVzc2FnZSk6IENhbGwgZ2RiYXJjaF9wcm9jZXNzX3JlY29yZF9zaWduYWwu CisrCShkb19yZWNvcmRfbWVzc2FnZSk6IEFkZCBhcmd1bWVudCAic2lnbmFsIi4KKysJKHJlY29y ZF9yZXN1bWUpOiBEaXR0by4KKysJKHJlY29yZF93YWl0KTogRGl0dG8uICBDaGVjayByZWNvcmRf bGlzdC0+dS5lbmQuc2lndmFsCisrCWluIHJlcGxheSBtb2RlLgorKworKzIwMDktMDktMjEgIEh1 aSBaaHUgIDx0ZWF3YXRlckBnbWFpbC5jb20+CisrCSAgICBNaWNoYWVsIFNueWRlciAgPG1zbnlk ZXJAdm13YXJlLmNvbT4KKysKKysJKiBnZGJhcmNoLnNoIChwcm9jZXNzX3JlY29yZF9zaWduYWwp OiBOZXcgaW50ZXJmYWNlLgorKworIDIwMDktMDktMTkgIE1heGltIEdyaWdvcmlldiAgPG1heGlt MjQwNUBnbWFpbC5jb20+CisgCisgCSogeHRlbnNhLXRkZXAuYyAoY2FsbDBfYW5hbHl6ZV9wcm9s b2d1ZSk6IFJlcGxhY2UgSU5UX01BWCBieSBVTklUX01BWC4KKz09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1JDUyBmaWxl OiAvY3ZzL3NyYy9zcmMvZ2RiL2dkYmFyY2guc2gsdgorcmV0cmlldmluZyByZXZpc2lvbiAxLjQ5 NgorcmV0cmlldmluZyByZXZpc2lvbiAxLjQ5Ni4yLjEKK2RpZmYgLXUgLXIxLjQ5NiAtcjEuNDk2 LjIuMQorLS0tIHNyYy9nZGIvZ2RiYXJjaC5zaAkyMDA5LzA5LzE1IDAzOjMwOjA1CTEuNDk2Cisr Kysgc3JjL2dkYi9nZGJhcmNoLnNoCTIwMDkvMDkvMjEgMDY6NTc6MDIJMS40OTYuMi4xCitAQCAt NzA5LDYgKzcwOSwxMCBAQAorICMgUmV0dXJuIC0xIGlmIHNvbWV0aGluZyBnb2VzIHdyb25nLCAw IG90aGVyd2lzZS4KKyBNOmludDpwcm9jZXNzX3JlY29yZDpzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2Nh Y2hlLCBDT1JFX0FERFIgYWRkcjpyZWdjYWNoZSwgYWRkcgorIAorKyMgU2F2ZSBwcm9jZXNzIHN0 YXRlIGFmdGVyIGEgc2lnbmFsLgorKyMgUmV0dXJuIC0xIGlmIHNvbWV0aGluZyBnb2VzIHdyb25n LCAwIG90aGVyd2lzZS4KKytNOmludDpwcm9jZXNzX3JlY29yZF9zaWduYWw6c3RydWN0IHJlZ2Nh Y2hlICpyZWdjYWNoZSwgZW51bSB0YXJnZXRfc2lnbmFsIHNpZ25hbDpyZWdjYWNoZSwgc2lnbmFs CisrCisgIyBTaWduYWwgdHJhbnNsYXRpb246IHRyYW5zbGF0ZSBpbmZlcmlvcidzIHNpZ25hbCAo aG9zdCdzKSBudW1iZXIgaW50bworICMgR0RCJ3MgcmVwcmVzZW50YXRpb24uCisgbTplbnVtIHRh cmdldF9zaWduYWw6dGFyZ2V0X3NpZ25hbF9mcm9tX2hvc3Q6aW50IHNpZ25vOnNpZ25vOjpkZWZh dWx0X3RhcmdldF9zaWduYWxfZnJvbV9ob3N0OjowCis9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitSQ1MgZmlsZTogL2N2 cy9zcmMvc3JjL2dkYi9nZGJhcmNoLmMsdgorcmV0cmlldmluZyByZXZpc2lvbiAxLjQ1MworcmV0 cmlldmluZyByZXZpc2lvbiAxLjQ1My4yLjEKK2RpZmYgLXUgLXIxLjQ1MyAtcjEuNDUzLjIuMQor LS0tIHNyYy9nZGIvZ2RiYXJjaC5jCTIwMDkvMDkvMTUgMDM6MzA6MDUJMS40NTMKKysrKyBzcmMv Z2RiL2dkYmFyY2guYwkyMDA5LzA5LzIxIDA2OjU3OjAyCTEuNDUzLjIuMQorQEAgLTI0MCw2ICsy NDAsNyBAQAorICAgZ2RiYXJjaF9zdGF0aWNfdHJhbnNmb3JtX25hbWVfZnR5cGUgKnN0YXRpY190 cmFuc2Zvcm1fbmFtZTsKKyAgIGludCBzb2Z1bl9hZGRyZXNzX21heWJlX21pc3Npbmc7CisgICBn ZGJhcmNoX3Byb2Nlc3NfcmVjb3JkX2Z0eXBlICpwcm9jZXNzX3JlY29yZDsKKysgIGdkYmFyY2hf cHJvY2Vzc19yZWNvcmRfc2lnbmFsX2Z0eXBlICpwcm9jZXNzX3JlY29yZF9zaWduYWw7CisgICBn ZGJhcmNoX3RhcmdldF9zaWduYWxfZnJvbV9ob3N0X2Z0eXBlICp0YXJnZXRfc2lnbmFsX2Zyb21f aG9zdDsKKyAgIGdkYmFyY2hfdGFyZ2V0X3NpZ25hbF90b19ob3N0X2Z0eXBlICp0YXJnZXRfc2ln bmFsX3RvX2hvc3Q7CisgICBnZGJhcmNoX2dldF9zaWdpbmZvX3R5cGVfZnR5cGUgKmdldF9zaWdp bmZvX3R5cGU7CitAQCAtMzc4LDYgKzM3OSw3IEBACisgICAwLCAgLyogc3RhdGljX3RyYW5zZm9y bV9uYW1lICovCisgICAwLCAgLyogc29mdW5fYWRkcmVzc19tYXliZV9taXNzaW5nICovCisgICAw LCAgLyogcHJvY2Vzc19yZWNvcmQgKi8KKysgIDAsICAvKiBwcm9jZXNzX3JlY29yZF9zaWduYWwg Ki8KKyAgIGRlZmF1bHRfdGFyZ2V0X3NpZ25hbF9mcm9tX2hvc3QsICAvKiB0YXJnZXRfc2lnbmFs X2Zyb21faG9zdCAqLworICAgZGVmYXVsdF90YXJnZXRfc2lnbmFsX3RvX2hvc3QsICAvKiB0YXJn ZXRfc2lnbmFsX3RvX2hvc3QgKi8KKyAgIDAsICAvKiBnZXRfc2lnaW5mb190eXBlICovCitAQCAt NjM1LDYgKzYzNyw3IEBACisgICAvKiBTa2lwIHZlcmlmeSBvZiBzdGF0aWNfdHJhbnNmb3JtX25h bWUsIGhhcyBwcmVkaWNhdGUgKi8KKyAgIC8qIFNraXAgdmVyaWZ5IG9mIHNvZnVuX2FkZHJlc3Nf bWF5YmVfbWlzc2luZywgaW52YWxpZF9wID09IDAgKi8KKyAgIC8qIFNraXAgdmVyaWZ5IG9mIHBy b2Nlc3NfcmVjb3JkLCBoYXMgcHJlZGljYXRlICovCisrICAvKiBTa2lwIHZlcmlmeSBvZiBwcm9j ZXNzX3JlY29yZF9zaWduYWwsIGhhcyBwcmVkaWNhdGUgKi8KKyAgIC8qIFNraXAgdmVyaWZ5IG9m IHRhcmdldF9zaWduYWxfZnJvbV9ob3N0LCBpbnZhbGlkX3AgPT0gMCAqLworICAgLyogU2tpcCB2 ZXJpZnkgb2YgdGFyZ2V0X3NpZ25hbF90b19ob3N0LCBpbnZhbGlkX3AgPT0gMCAqLworICAgLyog U2tpcCB2ZXJpZnkgb2YgZ2V0X3NpZ2luZm9fdHlwZSwgaGFzIHByZWRpY2F0ZSAqLworQEAgLTk3 MSw2ICs5NzQsMTIgQEAKKyAgICAgICAgICAgICAgICAgICAgICAgImdkYmFyY2hfZHVtcDogcHJv Y2Vzc19yZWNvcmQgPSA8JXM+XG4iLAorICAgICAgICAgICAgICAgICAgICAgICBob3N0X2FkZHJl c3NfdG9fc3RyaW5nIChnZGJhcmNoLT5wcm9jZXNzX3JlY29yZCkpOworICAgZnByaW50Zl91bmZp bHRlcmVkIChmaWxlLAorKyAgICAgICAgICAgICAgICAgICAgICAiZ2RiYXJjaF9kdW1wOiBnZGJh cmNoX3Byb2Nlc3NfcmVjb3JkX3NpZ25hbF9wKCkgPSAlZFxuIiwKKysgICAgICAgICAgICAgICAg ICAgICAgZ2RiYXJjaF9wcm9jZXNzX3JlY29yZF9zaWduYWxfcCAoZ2RiYXJjaCkpOworKyAgZnBy aW50Zl91bmZpbHRlcmVkIChmaWxlLAorKyAgICAgICAgICAgICAgICAgICAgICAiZ2RiYXJjaF9k dW1wOiBwcm9jZXNzX3JlY29yZF9zaWduYWwgPSA8JXM+XG4iLAorKyAgICAgICAgICAgICAgICAg ICAgICBob3N0X2FkZHJlc3NfdG9fc3RyaW5nIChnZGJhcmNoLT5wcm9jZXNzX3JlY29yZF9zaWdu YWwpKTsKKysgIGZwcmludGZfdW5maWx0ZXJlZCAoZmlsZSwKKyAgICAgICAgICAgICAgICAgICAg ICAgImdkYmFyY2hfZHVtcDogcHNfcmVnbnVtID0gJXNcbiIsCisgICAgICAgICAgICAgICAgICAg ICAgIHBsb25nZXN0IChnZGJhcmNoLT5wc19yZWdudW0pKTsKKyAgIGZwcmludGZfdW5maWx0ZXJl ZCAoZmlsZSwKK0BAIC0zMzA3LDYgKzMzMTYsMzAgQEAKKyAgIGdkYmFyY2gtPnByb2Nlc3NfcmVj b3JkID0gcHJvY2Vzc19yZWNvcmQ7CisgfQorIAorK2ludAorK2dkYmFyY2hfcHJvY2Vzc19yZWNv cmRfc2lnbmFsX3AgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoKQorK3sKKysgIGdkYl9hc3NlcnQg KGdkYmFyY2ggIT0gTlVMTCk7CisrICByZXR1cm4gZ2RiYXJjaC0+cHJvY2Vzc19yZWNvcmRfc2ln bmFsICE9IE5VTEw7CisrfQorKworK2ludAorK2dkYmFyY2hfcHJvY2Vzc19yZWNvcmRfc2lnbmFs IChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgc3RydWN0IHJlZ2NhY2hlICpyZWdjYWNoZSwgZW51 bSB0YXJnZXRfc2lnbmFsIHNpZ25hbCkKKyt7CisrICBnZGJfYXNzZXJ0IChnZGJhcmNoICE9IE5V TEwpOworKyAgZ2RiX2Fzc2VydCAoZ2RiYXJjaC0+cHJvY2Vzc19yZWNvcmRfc2lnbmFsICE9IE5V TEwpOworKyAgaWYgKGdkYmFyY2hfZGVidWcgPj0gMikKKysgICAgZnByaW50Zl91bmZpbHRlcmVk IChnZGJfc3RkbG9nLCAiZ2RiYXJjaF9wcm9jZXNzX3JlY29yZF9zaWduYWwgY2FsbGVkXG4iKTsK KysgIHJldHVybiBnZGJhcmNoLT5wcm9jZXNzX3JlY29yZF9zaWduYWwgKGdkYmFyY2gsIHJlZ2Nh Y2hlLCBzaWduYWwpOworK30KKysKKyt2b2lkCisrc2V0X2dkYmFyY2hfcHJvY2Vzc19yZWNvcmRf c2lnbmFsIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwKKysgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGdkYmFyY2hfcHJvY2Vzc19yZWNvcmRfc2lnbmFsX2Z0eXBlIHByb2Nlc3Nf cmVjb3JkX3NpZ25hbCkKKyt7CisrICBnZGJhcmNoLT5wcm9jZXNzX3JlY29yZF9zaWduYWwgPSBw cm9jZXNzX3JlY29yZF9zaWduYWw7CisrfQorKworIGVudW0gdGFyZ2V0X3NpZ25hbAorIGdkYmFy Y2hfdGFyZ2V0X3NpZ25hbF9mcm9tX2hvc3QgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLCBpbnQg c2lnbm8pCisgeworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQorUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvZ2RiYXJj aC5oLHYKK3JldHJpZXZpbmcgcmV2aXNpb24gMS40MDMKK3JldHJpZXZpbmcgcmV2aXNpb24gMS40 MDMuMi4xCitkaWZmIC11IC1yMS40MDMgLXIxLjQwMy4yLjEKKy0tLSBzcmMvZ2RiL2dkYmFyY2gu aAkyMDA5LzA5LzE1IDAzOjMwOjA1CTEuNDAzCisrKysgc3JjL2dkYi9nZGJhcmNoLmgJMjAwOS8w OS8yMSAwNjo1NzowMgkxLjQwMy4yLjEKK0BAIC04MjIsNiArODIyLDE1IEBACisgZXh0ZXJuIGlu dCBnZGJhcmNoX3Byb2Nlc3NfcmVjb3JkIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgc3RydWN0 IHJlZ2NhY2hlICpyZWdjYWNoZSwgQ09SRV9BRERSIGFkZHIpOworIGV4dGVybiB2b2lkIHNldF9n ZGJhcmNoX3Byb2Nlc3NfcmVjb3JkIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgZ2RiYXJjaF9w cm9jZXNzX3JlY29yZF9mdHlwZSAqcHJvY2Vzc19yZWNvcmQpOworIAorKy8qIFNhdmUgcHJvY2Vz cyBzdGF0ZSBhZnRlciBhIHNpZ25hbC4KKysgICBSZXR1cm4gLTEgaWYgc29tZXRoaW5nIGdvZXMg d3JvbmcsIDAgb3RoZXJ3aXNlLiAqLworKworK2V4dGVybiBpbnQgZ2RiYXJjaF9wcm9jZXNzX3Jl Y29yZF9zaWduYWxfcCAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gpOworKworK3R5cGVkZWYgaW50 IChnZGJhcmNoX3Byb2Nlc3NfcmVjb3JkX3NpZ25hbF9mdHlwZSkgKHN0cnVjdCBnZGJhcmNoICpn ZGJhcmNoLCBzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlLCBlbnVtIHRhcmdldF9zaWduYWwgc2ln bmFsKTsKKytleHRlcm4gaW50IGdkYmFyY2hfcHJvY2Vzc19yZWNvcmRfc2lnbmFsIChzdHJ1Y3Qg Z2RiYXJjaCAqZ2RiYXJjaCwgc3RydWN0IHJlZ2NhY2hlICpyZWdjYWNoZSwgZW51bSB0YXJnZXRf c2lnbmFsIHNpZ25hbCk7CisrZXh0ZXJuIHZvaWQgc2V0X2dkYmFyY2hfcHJvY2Vzc19yZWNvcmRf c2lnbmFsIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgZ2RiYXJjaF9wcm9jZXNzX3JlY29yZF9z aWduYWxfZnR5cGUgKnByb2Nlc3NfcmVjb3JkX3NpZ25hbCk7CisrCisgLyogU2lnbmFsIHRyYW5z bGF0aW9uOiB0cmFuc2xhdGUgaW5mZXJpb3IncyBzaWduYWwgKGhvc3QncykgbnVtYmVyIGludG8K KyAgICBHREIncyByZXByZXNlbnRhdGlvbi4gKi8KKyAKKz09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1JDUyBmaWxlOiAv Y3ZzL3NyYy9zcmMvZ2RiL3JlY29yZC5jLHYKK3JldHJpZXZpbmcgcmV2aXNpb24gMS4xNworcmV0 cmlldmluZyByZXZpc2lvbiAxLjE3LjIuMQorZGlmZiAtdSAtcjEuMTcgLXIxLjE3LjIuMQorLS0t IHNyYy9nZGIvcmVjb3JkLmMJMjAwOS8wOS8wOCAwMDo1MDo0MgkxLjE3CisrKysgc3JjL2dkYi9y ZWNvcmQuYwkyMDA5LzA5LzIxIDA2OjU3OjAzCTEuMTcuMi4xCitAQCAtNTksNiArNTksMTEgQEAK KyAgIGdkYl9ieXRlICp2YWw7CisgfTsKKyAKKytzdHJ1Y3QgcmVjb3JkX2VuZF9lbnRyeQorK3sK KysgIGVudW0gdGFyZ2V0X3NpZ25hbCBzaWd2YWw7CisrfTsKKysKKyBlbnVtIHJlY29yZF90eXBl CisgeworICAgcmVjb3JkX2VuZCA9IDAsCitAQCAtNzcsNiArODIsOCBAQAorICAgICBzdHJ1Y3Qg cmVjb3JkX3JlZ19lbnRyeSByZWc7CisgICAgIC8qIG1lbSAqLworICAgICBzdHJ1Y3QgcmVjb3Jk X21lbV9lbnRyeSBtZW07CisrICAgIC8qIGVuZCAqLworKyAgICBzdHJ1Y3QgcmVjb3JkX2VuZF9l bnRyeSBlbmQ7CisgICB9IHU7CisgfTsKKyAKK0BAIC0zMTQsNiArMzIxLDcgQEAKKyAgIHJlYy0+ cHJldiA9IE5VTEw7CisgICByZWMtPm5leHQgPSBOVUxMOworICAgcmVjLT50eXBlID0gcmVjb3Jk X2VuZDsKKysgIHJlYy0+dS5lbmQuc2lndmFsID0gVEFSR0VUX1NJR05BTF8wOworIAorICAgcmVj b3JkX2FyY2hfbGlzdF9hZGQgKHJlYyk7CisgCitAQCAtMzYwLDExICszNjgsMTcgQEAKKyAgIHJl Y29yZF9saXN0X3JlbGVhc2UgKHJlY29yZF9hcmNoX2xpc3RfdGFpbCk7CisgfQorIAorK3N0cnVj dCByZWNvcmRfbWVzc2FnZV9hcmdzIHsKKysgIHN0cnVjdCByZWdjYWNoZSAqcmVnY2FjaGU7Cisr ICBlbnVtIHRhcmdldF9zaWduYWwgc2lnbmFsOworK307CisrCisgc3RhdGljIGludAorIHJlY29y ZF9tZXNzYWdlICh2b2lkICphcmdzKQorIHsKKyAgIGludCByZXQ7CistICBzdHJ1Y3QgcmVnY2Fj aGUgKnJlZ2NhY2hlID0gYXJnczsKKysgIHN0cnVjdCByZWNvcmRfbWVzc2FnZV9hcmdzICpteWFy Z3MgPSBhcmdzOworKyAgc3RydWN0IGdkYmFyY2ggKmdkYmFyY2ggPSBnZXRfcmVnY2FjaGVfYXJj aCAobXlhcmdzLT5yZWdjYWNoZSk7CisgICBzdHJ1Y3QgY2xlYW51cCAqb2xkX2NsZWFudXBzID0g bWFrZV9jbGVhbnVwIChyZWNvcmRfbWVzc2FnZV9jbGVhbnVwcywgMCk7CisgCisgICByZWNvcmRf YXJjaF9saXN0X2hlYWQgPSBOVUxMOworQEAgLTM3Myw5ICszODcsNDQgQEAKKyAgIC8qIENoZWNr IHJlY29yZF9pbnNuX251bS4gICovCisgICByZWNvcmRfY2hlY2tfaW5zbl9udW0gKDEpOworIAor LSAgcmV0ID0gZ2RiYXJjaF9wcm9jZXNzX3JlY29yZCAoZ2V0X3JlZ2NhY2hlX2FyY2ggKHJlZ2Nh Y2hlKSwKKy0JCQkJcmVnY2FjaGUsCistCQkJCXJlZ2NhY2hlX3JlYWRfcGMgKHJlZ2NhY2hlKSk7 CisrICAvKiBJZiBnZGIgc2VuZHMgYSBzaWduYWwgdmFsdWUgdG8gdGFyZ2V0X3Jlc3VtZSwKKysg ICAgIHNhdmUgaXQgaW4gdGhlICdlbmQnIGZpZWxkIG9mIHRoZSBwcmV2aW91cyBpbnN0cnVjdGlv bi4KKysKKysgICAgIE1heWJlIHByb2Nlc3MgcmVjb3JkIHNob3VsZCByZWNvcmQgd2hhdCByZWFs bHkgaGFwcGVuZWQsCisrICAgICByYXRoZXIgdGhhbiB3aGF0IGdkYiBwcmV0ZW5kcyBoYXMgaGFw cGVuZWQuCisrCisrICAgICBTbyBpZiBMaW51eCBkZWxpdmVyZWQgdGhlIHNpZ25hbCB0byB0aGUg Y2hpbGQgcHJvY2VzcyBkdXJpbmcKKysgICAgIHRoZSByZWNvcmQgbW9kZSwgd2Ugd2lsbCByZWNv cmQgaXQgYW5kIGRlbGl2ZXIgaXQgYWdhaW4gaW4KKysgICAgIHRoZSByZXBsYXkgbW9kZS4KKysK KysgICAgIElmIHVzZXIgc2F5cyAiaWdub3JlIHRoaXMgc2lnbmFsIiBkdXJpbmcgdGhlIHJlY29y ZCBtb2RlLCB0aGVuCisrICAgICBpdCB3aWxsIGJlIGlnbm9yZWQgYWdhaW4gZHVyaW5nIHRoZSBy ZXBsYXkgbW9kZSAobm8gbWF0dGVyIGlmCisrICAgICB0aGUgdXNlciBzYXlzIHNvbWV0aGluZyBk aWZmZXJlbnQsIGxpa2UgImRlbGl2ZXIgdGhpcyBzaWduYWwiCisrICAgICBkdXJpbmcgdGhlIHJl cGxheSBtb2RlKS4KKysKKysgICAgIFVzZXIgc2hvdWxkIHVuZGVyc3RhbmQgdGhhdCBub3RoaW5n IGhlIGRvZXMgZHVyaW5nIHRoZSByZXBsYXkKKysgICAgIG1vZGUgd2lsbCBjaGFuZ2UgdGhlIGJl aGF2aW9yIG9mIHRoZSBjaGlsZC4gIElmIGhlIHRyaWVzLAorKyAgICAgdGhlbiB0aGF0IGlzIGEg dXNlciBlcnJvci4KKysKKysgICAgIEJ1dCB3ZSBzaG91bGQgc3RpbGwgZGVsaXZlciB0aGUgc2ln bmFsIHRvIGdkYiBkdXJpbmcgdGhlIHJlcGxheSwKKysgICAgIGlmIHdlIGRlbGl2ZXJlZCBpdCBk dXJpbmcgdGhlIHJlY29yZGluZy4gIFRoZXJlZm9yZSB3ZSBzaG91bGQKKysgICAgIHJlY29yZCB0 aGUgc2lnbmFsIGR1cmluZyByZWNvcmRfd2FpdCwgbm90IHJlY29yZF9yZXN1bWUuICAqLworKyAg aWYgKHJlY29yZF9saXN0ICE9ICZyZWNvcmRfZmlyc3QpICAgIC8qIEZJWE1FIGJldHRlciB3YXkg dG8gY2hlY2sgKi8KKysgICAgeworKyAgICAgIGdkYl9hc3NlcnQgKHJlY29yZF9saXN0LT50eXBl ID09IHJlY29yZF9lbmQpOworKyAgICAgIHJlY29yZF9saXN0LT51LmVuZC5zaWd2YWwgPSBteWFy Z3MtPnNpZ25hbDsKKysgICAgfQorKworKyAgaWYgKG15YXJncy0+c2lnbmFsID09IFRBUkdFVF9T SUdOQUxfMAorKyAgICAgIHx8ICFnZGJhcmNoX3Byb2Nlc3NfcmVjb3JkX3NpZ25hbF9wIChnZGJh cmNoKSkKKysgICAgcmV0ID0gZ2RiYXJjaF9wcm9jZXNzX3JlY29yZCAoZ2RiYXJjaCwKKysJCQkJ ICBteWFyZ3MtPnJlZ2NhY2hlLAorKwkJCQkgIHJlZ2NhY2hlX3JlYWRfcGMgKG15YXJncy0+cmVn Y2FjaGUpKTsKKysgIGVsc2UKKysgICAgcmV0ID0gZ2RiYXJjaF9wcm9jZXNzX3JlY29yZF9zaWdu YWwgKGdkYmFyY2gsCisrCQkJCQkgbXlhcmdzLT5yZWdjYWNoZSwKKysJCQkJCSBteWFyZ3MtPnNp Z25hbCk7CisrCisgICBpZiAocmV0ID4gMCkKKyAgICAgZXJyb3IgKF8oIlByb2Nlc3MgcmVjb3Jk OiBpbmZlcmlvciBwcm9ncmFtIHN0b3BwZWQuIikpOworICAgaWYgKHJldCA8IDApCitAQCAtMzk2 LDkgKzQ0NSwxNCBAQAorIH0KKyAKKyBzdGF0aWMgaW50CistZG9fcmVjb3JkX21lc3NhZ2UgKHN0 cnVjdCByZWdjYWNoZSAqcmVnY2FjaGUpCisrZG9fcmVjb3JkX21lc3NhZ2UgKHN0cnVjdCByZWdj YWNoZSAqcmVnY2FjaGUsCisrCQkgICBlbnVtIHRhcmdldF9zaWduYWwgc2lnbmFsKQorIHsKKy0g IHJldHVybiBjYXRjaF9lcnJvcnMgKHJlY29yZF9tZXNzYWdlLCByZWdjYWNoZSwgTlVMTCwgUkVU VVJOX01BU0tfQUxMKTsKKysgIHN0cnVjdCByZWNvcmRfbWVzc2FnZV9hcmdzIGFyZ3M7CisrCisr ICBhcmdzLnJlZ2NhY2hlID0gcmVnY2FjaGU7CisrICBhcmdzLnNpZ25hbCA9IHNpZ25hbDsKKysg IHJldHVybiBjYXRjaF9lcnJvcnMgKHJlY29yZF9tZXNzYWdlLCAmYXJncywgTlVMTCwgUkVUVVJO X01BU0tfQUxMKTsKKyB9CisgCisgLyogU2V0IHRvIDEgaWYgcmVjb3JkX3N0b3JlX3JlZ2lzdGVy cyBhbmQgcmVjb3JkX3hmZXJfcGFydGlhbAorQEAgLTUyMCwxMyArNTc0LDEzIEBACisgCisgc3Rh dGljIHZvaWQKKyByZWNvcmRfcmVzdW1lIChzdHJ1Y3QgdGFyZ2V0X29wcyAqb3BzLCBwdGlkX3Qg cHRpZCwgaW50IHN0ZXAsCistICAgICAgICAgICAgICAgZW51bSB0YXJnZXRfc2lnbmFsIHNpZ2du YWwpCisrICAgICAgICAgICAgICAgZW51bSB0YXJnZXRfc2lnbmFsIHNpZ25hbCkKKyB7CisgICBy ZWNvcmRfcmVzdW1lX3N0ZXAgPSBzdGVwOworIAorICAgaWYgKCFSRUNPUkRfSVNfUkVQTEFZKQor ICAgICB7CistICAgICAgaWYgKGRvX3JlY29yZF9tZXNzYWdlIChnZXRfY3VycmVudF9yZWdjYWNo ZSAoKSkpCisrICAgICAgaWYgKGRvX3JlY29yZF9tZXNzYWdlIChnZXRfY3VycmVudF9yZWdjYWNo ZSAoKSwgc2lnbmFsKSkKKyAgICAgICAgIHsKKyAgICAgICAgICAgcmVjb3JkX3Jlc3VtZV9lcnJv ciA9IDA7CisgICAgICAgICB9CitAQCAtNTM2LDcgKzU5MCw3IEBACisgICAgICAgICAgIHJldHVy bjsKKyAgICAgICAgIH0KKyAgICAgICByZWNvcmRfYmVuZWF0aF90b19yZXN1bWUgKHJlY29yZF9i ZW5lYXRoX3RvX3Jlc3VtZV9vcHMsIHB0aWQsIDEsCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBzaWdnbmFsKTsKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpZ25h bCk7CisgICAgIH0KKyB9CisgCitAQCAtNjExLDE1ICs2NjUsMTYgQEAKKyAJICAgICAgcmV0ID0g cmVjb3JkX2JlbmVhdGhfdG9fd2FpdCAocmVjb3JkX2JlbmVhdGhfdG9fd2FpdF9vcHMsCisgCQkJ CQkgICAgcHRpZCwgc3RhdHVzLCBvcHRpb25zKTsKKyAKKysJICAgICAgLyogSXMgdGhpcyBhIFNJ R1RSQVA/ICAqLworIAkgICAgICBpZiAoc3RhdHVzLT5raW5kID09IFRBUkdFVF9XQUlUS0lORF9T VE9QUEVECisgCQkgICYmIHN0YXR1cy0+dmFsdWUuc2lnID09IFRBUkdFVF9TSUdOQUxfVFJBUCkK KyAJCXsKKy0JCSAgLyogQ2hlY2sgaWYgdGhlcmUgaXMgYSBicmVha3BvaW50LiAgKi8KKysJCSAg LyogWWVzIC0tIGNoZWNrIGlmIHRoZXJlIGlzIGEgYnJlYWtwb2ludC4gICovCisgCQkgIHJlZ2lz dGVyc19jaGFuZ2VkICgpOworIAkJICB0bXBfcGMgPSByZWdjYWNoZV9yZWFkX3BjIChnZXRfY3Vy cmVudF9yZWdjYWNoZSAoKSk7CisgCQkgIGlmIChicmVha3BvaW50X2luc2VydGVkX2hlcmVfcCAo dG1wX3BjKSkKKyAJCSAgICB7CistCQkgICAgICAvKiBUaGVyZSBpcyBhIGJyZWFrcG9pbnQuICAq LworKwkJICAgICAgLyogVGhlcmUgaXMgYSBicmVha3BvaW50LiAgR0RCIHdpbGwgd2FudCB0byBz dG9wLiAgKi8KKyAJCSAgICAgIENPUkVfQUREUiBkZWNyX3BjX2FmdGVyX2JyZWFrID0KKyAJCQln ZGJhcmNoX2RlY3JfcGNfYWZ0ZXJfYnJlYWsKKyAJCQkoZ2V0X3JlZ2NhY2hlX2FyY2ggKGdldF9j dXJyZW50X3JlZ2NhY2hlICgpKSk7CitAQCAtNjMxLDggKzY4NiwxMiBAQAorIAkJICAgIH0KKyAJ CSAgZWxzZQorIAkJICAgIHsKKy0JCSAgICAgIC8qIFRoZXJlIGlzIG5vdCBhIGJyZWFrcG9pbnQu ICAqLworLQkJICAgICAgaWYgKCFkb19yZWNvcmRfbWVzc2FnZSAoZ2V0X2N1cnJlbnRfcmVnY2Fj aGUgKCkpKQorKwkJICAgICAgLyogVGhlcmUgaXMgbm90IGEgYnJlYWtwb2ludCwgYW5kIGdkYiBp cyBub3QKKysJCSAgICAgICAgIHN0ZXBwaW5nLCB0aGVyZWZvcmUgZ2RiIHdpbGwgbm90IHN0b3Au CisrCQkJIFRoZXJlZm9yZSB3ZSB3aWxsIG5vdCByZXR1cm4gdG8gZ2RiLgorKwkJICAgICAgICAg UmVjb3JkIHRoZSBpbnNuIGFuZCByZXN1bWUuICAqLworKwkJICAgICAgaWYgKCFkb19yZWNvcmRf bWVzc2FnZSAoZ2V0X2N1cnJlbnRfcmVnY2FjaGUgKCksCisrCQkJCQkgICAgICBUQVJHRVRfU0lH TkFMXzApKQorIAkJCXsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOworIAkJCX0K K0BAIC04MjcsNiArODg2LDEwIEBACisgCQkJCQkgICBnZGJhcmNoX2RlY3JfcGNfYWZ0ZXJfYnJl YWsgKGdkYmFyY2gpKTsKKyAJCSAgICAgIGNvbnRpbnVlX2ZsYWcgPSAwOworIAkJICAgIH0KKysJ CSAgLyogQ2hlY2sgdGFyZ2V0IHNpZ25hbCAqLworKwkJICBpZiAocmVjb3JkX2xpc3QtPnUuZW5k LnNpZ3ZhbCAhPSBUQVJHRVRfU0lHTkFMXzApCisrCQkgICAgLyogRklYTUU6IGJldHRlciB3YXkg dG8gY2hlY2sgKi8KKysJCSAgICBjb250aW51ZV9mbGFnID0gMDsKKyAJCX0KKyAJICAgIH0KKyAK K0BAIC04NTEsNiArOTE0LDkgQEAKKyByZXBsYXlfb3V0OgorICAgICAgIGlmIChyZWNvcmRfZ2V0 X3NpZykKKyAJc3RhdHVzLT52YWx1ZS5zaWcgPSBUQVJHRVRfU0lHTkFMX0lOVDsKKysgICAgICBl bHNlIGlmIChyZWNvcmRfbGlzdC0+dS5lbmQuc2lndmFsICE9IFRBUkdFVF9TSUdOQUxfMCkKKysJ LyogRklYTUU6IGJldHRlciB3YXkgdG8gY2hlY2sgKi8KKysJc3RhdHVzLT52YWx1ZS5zaWcgPSBy ZWNvcmRfbGlzdC0+dS5lbmQuc2lndmFsOworICAgICAgIGVsc2UKKyAJc3RhdHVzLT52YWx1ZS5z aWcgPSBUQVJHRVRfU0lHTkFMX1RSQVA7CisgCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitSQ1MgZmlsZTogL2N2cy9z cmMvc3JjL2dkYi9pMzg2LWxpbnV4LXRkZXAuYyx2CityZXRyaWV2aW5nIHJldmlzaW9uIDEuNjgK K3JldHJpZXZpbmcgcmV2aXNpb24gMS42OC4yLjEKK2RpZmYgLXUgLXIxLjY4IC1yMS42OC4yLjEK Ky0tLSBzcmMvZ2RiL2kzODYtbGludXgtdGRlcC5jCTIwMDkvMDkvMTUgMDM6MzA6MDYJMS42OAor KysrIHNyYy9nZGIvaTM4Ni1saW51eC10ZGVwLmMJMjAwOS8wOS8yMSAwNjo1NzowMwkxLjY4LjIu MQorQEAgLTM1OCw3ICszNTgsMzIgQEAKKyAgIHJlZ2NhY2hlX2Nvb2tlZF93cml0ZV91bnNpZ25l ZCAocmVnY2FjaGUsIEkzODZfTElOVVhfT1JJR19FQVhfUkVHTlVNLCAtMSk7CisgfQorIAorLXN0 YXRpYyBzdHJ1Y3QgbGludXhfcmVjb3JkX3RkZXAgaTM4Nl9saW51eF9yZWNvcmRfdGRlcDsKKysv KiBSZWNvcmQgYWxsIHJlZ2lzdGVycyBidXQgSVAgcmVnaXN0ZXIgZm9yIHByb2Nlc3MtcmVjb3Jk LiAgKi8KKysKKytzdGF0aWMgaW50CisraTM4Nl9hbGxfYnV0X2lwX3JlZ2lzdGVyc19yZWNvcmQg KHN0cnVjdCByZWdjYWNoZSAqcmVnY2FjaGUpCisreworKyAgaWYgKHJlY29yZF9hcmNoX2xpc3Rf YWRkX3JlZyAocmVnY2FjaGUsIEkzODZfRUFYX1JFR05VTSkpCisrICAgIHJldHVybiAtMTsKKysg IGlmIChyZWNvcmRfYXJjaF9saXN0X2FkZF9yZWcgKHJlZ2NhY2hlLCBJMzg2X0VDWF9SRUdOVU0p KQorKyAgICByZXR1cm4gLTE7CisrICBpZiAocmVjb3JkX2FyY2hfbGlzdF9hZGRfcmVnIChyZWdj YWNoZSwgSTM4Nl9FRFhfUkVHTlVNKSkKKysgICAgcmV0dXJuIC0xOworKyAgaWYgKHJlY29yZF9h cmNoX2xpc3RfYWRkX3JlZyAocmVnY2FjaGUsIEkzODZfRUJYX1JFR05VTSkpCisrICAgIHJldHVy biAtMTsKKysgIGlmIChyZWNvcmRfYXJjaF9saXN0X2FkZF9yZWcgKHJlZ2NhY2hlLCBJMzg2X0VT UF9SRUdOVU0pKQorKyAgICByZXR1cm4gLTE7CisrICBpZiAocmVjb3JkX2FyY2hfbGlzdF9hZGRf cmVnIChyZWdjYWNoZSwgSTM4Nl9FQlBfUkVHTlVNKSkKKysgICAgcmV0dXJuIC0xOworKyAgaWYg KHJlY29yZF9hcmNoX2xpc3RfYWRkX3JlZyAocmVnY2FjaGUsIEkzODZfRVNJX1JFR05VTSkpCisr ICAgIHJldHVybiAtMTsKKysgIGlmIChyZWNvcmRfYXJjaF9saXN0X2FkZF9yZWcgKHJlZ2NhY2hl LCBJMzg2X0VESV9SRUdOVU0pKQorKyAgICByZXR1cm4gLTE7CisrICBpZiAocmVjb3JkX2FyY2hf bGlzdF9hZGRfcmVnIChyZWdjYWNoZSwgSTM4Nl9FRkxBR1NfUkVHTlVNKSkKKysgICAgcmV0dXJu IC0xOworKworKyAgcmV0dXJuIDA7CisrfQorIAorIC8qIGkzODZfY2Fub25pY2FsaXplX3N5c2Nh bGwgbWFwcyBmcm9tIHRoZSBuYXRpdmUgaTM4NiBMaW51eCBzZXQKKyAgICBvZiBzeXNjYWxsIGlk cyBpbnRvIGEgY2Fub25pY2FsIHNldCBvZiBzeXNjYWxsIGlkcyB1c2VkIGJ5CitAQCAtMzgzLDYg KzQwOCw4IEBACisgCisgICAgUmV0dXJuIC0xIGlmIHNvbWV0aGluZyB3cm9uZy4gICovCisgCisr c3RhdGljIHN0cnVjdCBsaW51eF9yZWNvcmRfdGRlcCBpMzg2X2xpbnV4X3JlY29yZF90ZGVwOwor KworIHN0YXRpYyBpbnQKKyBpMzg2X2xpbnV4X2ludHg4MF9zeXNlbnRlcl9yZWNvcmQgKHN0cnVj dCByZWdjYWNoZSAqcmVnY2FjaGUpCisgeworQEAgLTQwMiw2ICs0MjksMTQgQEAKKyAgICAgICBy ZXR1cm4gLTE7CisgICAgIH0KKyAKKysgIGlmIChzeXNjYWxsX2dkYiA9PSBnZGJfc3lzX3NpZ3Jl dHVybgorKyAgICAgIHx8IHN5c2NhbGxfZ2RiID09IGdkYl9zeXNfcnRfc2lncmV0dXJuKQorKyAg IHsKKysgICAgIGlmIChpMzg2X2FsbF9idXRfaXBfcmVnaXN0ZXJzX3JlY29yZCAocmVnY2FjaGUp KQorKyAgICAgICByZXR1cm4gLTE7CisrICAgICByZXR1cm4gMDsKKysgICB9CisrCisgICByZXQg PSByZWNvcmRfbGludXhfc3lzdGVtX2NhbGwgKHN5c2NhbGxfZ2RiLCByZWdjYWNoZSwKKyAJCQkJ ICAmaTM4Nl9saW51eF9yZWNvcmRfdGRlcCk7CisgICBpZiAocmV0KQorQEAgLTQxMyw2ICs0NDgs NDAgQEAKKyAKKyAgIHJldHVybiAwOworIH0KKysKKysjZGVmaW5lIEkzODZfTElOVVhfeHN0YXRl CTI3MAorKyNkZWZpbmUgSTM4Nl9MSU5VWF9mcmFtZV9zaXplCTczMgorKworK2ludAorK2kzODZf bGludXhfcmVjb3JkX3NpZ25hbCAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsCisrICAgICAgICAg ICAgICAgICAgICAgICAgICBzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlLAorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgZW51bSB0YXJnZXRfc2lnbmFsIHNpZ25hbCkKKyt7CisrICBVTE9OR0VT VCBlc3A7CisrCisrICBpZiAoaTM4Nl9hbGxfYnV0X2lwX3JlZ2lzdGVyc19yZWNvcmQgKHJlZ2Nh Y2hlKSkKKysgICAgcmV0dXJuIC0xOworKworKyAgaWYgKHJlY29yZF9hcmNoX2xpc3RfYWRkX3Jl ZyAocmVnY2FjaGUsIEkzODZfRUlQX1JFR05VTSkpCisrICAgIHJldHVybiAtMTsKKysKKysgIC8q IFJlY29yZCB0aGUgY2hhbmdlIGluIHRoZSBzdGFjay4gICovCisrICByZWdjYWNoZV9yYXdfcmVh ZF91bnNpZ25lZCAocmVnY2FjaGUsIEkzODZfRVNQX1JFR05VTSwgJmVzcCk7CisrICAvKiBUaGlz IGlzIGZvciB4c3RhdGUuCisrICAgICBzcCAtPSBzaXplb2YgKHN0cnVjdCBfZnBzdGF0ZSk7ICAq LworKyAgZXNwIC09IEkzODZfTElOVVhfeHN0YXRlOworKyAgLyogVGhpcyBpcyBmb3IgZnJhbWVf c2l6ZS4KKysgICAgIHNwIC09IHNpemVvZiAoc3RydWN0IHJ0X3NpZ2ZyYW1lKTsgICovCisrICBl c3AgLT0gSTM4Nl9MSU5VWF9mcmFtZV9zaXplOworKyAgaWYgKHJlY29yZF9hcmNoX2xpc3RfYWRk X21lbSAoZXNwLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSTM4Nl9MSU5VWF94 c3RhdGUgKyBJMzg2X0xJTlVYX2ZyYW1lX3NpemUpKQorKyAgICByZXR1cm4gLTE7CisrCisrICBp ZiAocmVjb3JkX2FyY2hfbGlzdF9hZGRfZW5kICgpKQorKyAgICByZXR1cm4gLTE7CisrCisrICBy ZXR1cm4gMDsKKyt9CisgDAorIAorIHN0YXRpYyBMT05HRVNUCitAQCAtNTI5LDYgKzU5OCw3IEBA CisgICB0ZGVwLT5zY19udW1fcmVncyA9IEFSUkFZX1NJWkUgKGkzODZfbGludXhfc2NfcmVnX29m ZnNldCk7CisgCisgICBzZXRfZ2RiYXJjaF9wcm9jZXNzX3JlY29yZCAoZ2RiYXJjaCwgaTM4Nl9w cm9jZXNzX3JlY29yZCk7CisrICBzZXRfZ2RiYXJjaF9wcm9jZXNzX3JlY29yZF9zaWduYWwgKGdk YmFyY2gsIGkzODZfbGludXhfcmVjb3JkX3NpZ25hbCk7CisgCisgICAvKiBJbml0aWFsaXplIHRo ZSBpMzg2X2xpbnV4X3JlY29yZF90ZGVwLiAgKi8KKyAgIC8qIFRoZXNlIHZhbHVlcyBhcmUgdGhl IHNpemUgb2YgdGhlIHR5cGUgdGhhdCB3aWxsIGJlIHVzZWQgaW4gYSBzeXN0ZW0KKz09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KK1JDUyBmaWxlOiAvY3ZzL3NyYy9zcmMvZ2RiL2FtZDY0LWxpbnV4LXRkZXAuYyx2CityZXRy aWV2aW5nIHJldmlzaW9uIDEuMjkKK3JldHJpZXZpbmcgcmV2aXNpb24gMS4yOS4yLjEKK2RpZmYg LXUgLXIxLjI5IC1yMS4yOS4yLjEKKy0tLSBzcmMvZ2RiL2FtZDY0LWxpbnV4LXRkZXAuYwkyMDA5 LzA5LzE1IDAzOjMwOjA0CTEuMjkKKysrKyBzcmMvZ2RiL2FtZDY0LWxpbnV4LXRkZXAuYwkyMDA5 LzA5LzIxIDA2OjU3OjAzCTEuMjkuMi4xCitAQCAtMjg5LDE2ICsyODksNDggQEAKKyAgIHJlZ2Nh Y2hlX2Nvb2tlZF93cml0ZV91bnNpZ25lZCAocmVnY2FjaGUsIEFNRDY0X0xJTlVYX09SSUdfUkFY X1JFR05VTSwgLTEpOworIH0KKyAKKy0vKiBQYXJzZSB0aGUgYXJndW1lbnRzIG9mIGN1cnJlbnQg c3lzdGVtIGNhbGwgaW5zdHJ1Y3Rpb24gYW5kIHJlY29yZAorLSAgIHRoZSB2YWx1ZXMgb2YgdGhl IHJlZ2lzdGVycyBhbmQgbWVtb3J5IHRoYXQgd2lsbCBiZSBjaGFuZ2VkIGludG8KKy0gICAicmVj b3JkX2FyY2hfbGlzdCIuICBUaGlzIGluc3RydWN0aW9uIGlzICJzeXNjYWxsIi4KKy0KKy0gICBS ZXR1cm4gLTEgaWYgc29tZXRoaW5nIHdyb25nLiAgKi8KKysvKiBSZWNvcmQgYWxsIHJlZ2lzdGVy cyBidXQgSVAgcmVnaXN0ZXIgZm9yIHByb2Nlc3MtcmVjb3JkLiAgKi8KKyAKKy1zdGF0aWMgc3Ry dWN0IGxpbnV4X3JlY29yZF90ZGVwIGFtZDY0X2xpbnV4X3JlY29yZF90ZGVwOworK3N0YXRpYyBp bnQKKythbWQ2NF9hbGxfYnV0X2lwX3JlZ2lzdGVyc19yZWNvcmQgKHN0cnVjdCByZWdjYWNoZSAq cmVnY2FjaGUpCisreworKyAgaWYgKHJlY29yZF9hcmNoX2xpc3RfYWRkX3JlZyAocmVnY2FjaGUs IEFNRDY0X1JBWF9SRUdOVU0pKQorKyAgICByZXR1cm4gLTE7CisrICBpZiAocmVjb3JkX2FyY2hf bGlzdF9hZGRfcmVnIChyZWdjYWNoZSwgQU1ENjRfUkNYX1JFR05VTSkpCisrICAgIHJldHVybiAt MTsKKysgIGlmIChyZWNvcmRfYXJjaF9saXN0X2FkZF9yZWcgKHJlZ2NhY2hlLCBBTUQ2NF9SRFhf UkVHTlVNKSkKKysgICAgcmV0dXJuIC0xOworKyAgaWYgKHJlY29yZF9hcmNoX2xpc3RfYWRkX3Jl ZyAocmVnY2FjaGUsIEFNRDY0X1JCWF9SRUdOVU0pKQorKyAgICByZXR1cm4gLTE7CisrICBpZiAo cmVjb3JkX2FyY2hfbGlzdF9hZGRfcmVnIChyZWdjYWNoZSwgQU1ENjRfUlNQX1JFR05VTSkpCisr ICAgIHJldHVybiAtMTsKKysgIGlmIChyZWNvcmRfYXJjaF9saXN0X2FkZF9yZWcgKHJlZ2NhY2hl LCBBTUQ2NF9SQlBfUkVHTlVNKSkKKysgICAgcmV0dXJuIC0xOworKyAgaWYgKHJlY29yZF9hcmNo X2xpc3RfYWRkX3JlZyAocmVnY2FjaGUsIEFNRDY0X1JTSV9SRUdOVU0pKQorKyAgICByZXR1cm4g LTE7CisrICBpZiAocmVjb3JkX2FyY2hfbGlzdF9hZGRfcmVnIChyZWdjYWNoZSwgQU1ENjRfUkRJ X1JFR05VTSkpCisrICAgIHJldHVybiAtMTsKKysgIGlmIChyZWNvcmRfYXJjaF9saXN0X2FkZF9y ZWcgKHJlZ2NhY2hlLCBBTUQ2NF9SOF9SRUdOVU0pKQorKyAgICByZXR1cm4gLTE7CisrICBpZiAo cmVjb3JkX2FyY2hfbGlzdF9hZGRfcmVnIChyZWdjYWNoZSwgQU1ENjRfUjlfUkVHTlVNKSkKKysg ICAgcmV0dXJuIC0xOworKyAgaWYgKHJlY29yZF9hcmNoX2xpc3RfYWRkX3JlZyAocmVnY2FjaGUs IEFNRDY0X1IxMF9SRUdOVU0pKQorKyAgICByZXR1cm4gLTE7CisrICBpZiAocmVjb3JkX2FyY2hf bGlzdF9hZGRfcmVnIChyZWdjYWNoZSwgQU1ENjRfUjExX1JFR05VTSkpCisrICAgIHJldHVybiAt MTsKKysgIGlmIChyZWNvcmRfYXJjaF9saXN0X2FkZF9yZWcgKHJlZ2NhY2hlLCBBTUQ2NF9SMTJf UkVHTlVNKSkKKysgICAgcmV0dXJuIC0xOworKyAgaWYgKHJlY29yZF9hcmNoX2xpc3RfYWRkX3Jl ZyAocmVnY2FjaGUsIEFNRDY0X1IxM19SRUdOVU0pKQorKyAgICByZXR1cm4gLTE7CisrICBpZiAo cmVjb3JkX2FyY2hfbGlzdF9hZGRfcmVnIChyZWdjYWNoZSwgQU1ENjRfUjE0X1JFR05VTSkpCisr ICAgIHJldHVybiAtMTsKKysgIGlmIChyZWNvcmRfYXJjaF9saXN0X2FkZF9yZWcgKHJlZ2NhY2hl LCBBTUQ2NF9SMTVfUkVHTlVNKSkKKysgICAgcmV0dXJuIC0xOworKyAgaWYgKHJlY29yZF9hcmNo X2xpc3RfYWRkX3JlZyAocmVnY2FjaGUsIEFNRDY0X0VGTEFHU19SRUdOVU0pKQorKyAgICByZXR1 cm4gLTE7CisgCistI2RlZmluZSBSRUNPUkRfQVJDSF9HRVRfRlMJMHgxMDAzCistI2RlZmluZSBS RUNPUkRfQVJDSF9HRVRfR1MJMHgxMDA0CisrICByZXR1cm4gMDsKKyt9CisgCisgLyogYW1kNjRf Y2Fub25pY2FsaXplX3N5c2NhbGwgbWFwcyBmcm9tIHRoZSBuYXRpdmUgYW1kNjQgTGludXggc2V0 IAorICAgIG9mIHN5c2NhbGwgaWRzIGludG8gYSBjYW5vbmljYWwgc2V0IG9mIHN5c2NhbGwgaWRz IHVzZWQgYnkgCitAQCAtMTExMSw2ICsxMTQzLDE3IEBACisgICB9CisgfQorIAorKy8qIFBhcnNl IHRoZSBhcmd1bWVudHMgb2YgY3VycmVudCBzeXN0ZW0gY2FsbCBpbnN0cnVjdGlvbiBhbmQgcmVj b3JkCisrICAgdGhlIHZhbHVlcyBvZiB0aGUgcmVnaXN0ZXJzIGFuZCBtZW1vcnkgdGhhdCB3aWxs IGJlIGNoYW5nZWQgaW50bworKyAgICJyZWNvcmRfYXJjaF9saXN0Ii4gIFRoaXMgaW5zdHJ1Y3Rp b24gaXMgInN5c2NhbGwiLgorKworKyAgIFJldHVybiAtMSBpZiBzb21ldGhpbmcgd3JvbmcuICAq LworKworK3N0YXRpYyBzdHJ1Y3QgbGludXhfcmVjb3JkX3RkZXAgYW1kNjRfbGludXhfcmVjb3Jk X3RkZXA7CisrCisrI2RlZmluZSBSRUNPUkRfQVJDSF9HRVRfRlMJMHgxMDAzCisrI2RlZmluZSBS RUNPUkRfQVJDSF9HRVRfR1MJMHgxMDA0CisrCisgc3RhdGljIGludAorIGFtZDY0X2xpbnV4X3N5 c2NhbGxfcmVjb3JkIChzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlKQorIHsKK0BAIC0xMTIwLDI3 ICsxMTYzLDM5IEBACisgCisgICByZWdjYWNoZV9yYXdfcmVhZF91bnNpZ25lZCAocmVnY2FjaGUs IEFNRDY0X1JBWF9SRUdOVU0sICZzeXNjYWxsX25hdGl2ZSk7CisgCistICBzeXNjYWxsX2dkYiA9 IGFtZDY0X2Nhbm9uaWNhbGl6ZV9zeXNjYWxsIChzeXNjYWxsX25hdGl2ZSk7CistCistICBpZiAo c3lzY2FsbF9uYXRpdmUgPT0gYW1kNjRfc3lzX2FyY2hfcHJjdGwpIAorKyAgc3dpdGNoIChzeXNj YWxsX25hdGl2ZSkKKyAgICAgeworLSAgICAgIFVMT05HRVNUIGFyZzM7CistCistICAgICAgcmVn Y2FjaGVfcmF3X3JlYWRfdW5zaWduZWQgKHJlZ2NhY2hlLCBhbWQ2NF9saW51eF9yZWNvcmRfdGRl cC5hcmczLAorLQkJCQkgICZhcmczKTsKKy0gICAgICBpZiAoYXJnMyA9PSBSRUNPUkRfQVJDSF9H RVRfRlMgfHwgYXJnMyA9PSBSRUNPUkRfQVJDSF9HRVRfR1MpCistICAgICAgeworLQlDT1JFX0FE RFIgYWRkcjsKKy0KKy0JcmVnY2FjaGVfcmF3X3JlYWRfdW5zaWduZWQgKHJlZ2NhY2hlLCBhbWQ2 NF9saW51eF9yZWNvcmRfdGRlcC5hcmcyLAorLQkJCQkgICAgJmFkZHIpOworLQlpZiAocmVjb3Jk X2FyY2hfbGlzdF9hZGRfbWVtIChhZGRyLCAKKy0JCQkJICAgICAgYW1kNjRfbGludXhfcmVjb3Jk X3RkZXAuc2l6ZV91bG9uZykpCistCSAgcmV0dXJuIC0xOworLSAgICAgIH0KKy0gICAgICBnb3Rv IHJlY29yZF9yZWdzOworKyAgICBjYXNlIGFtZDY0X3N5c19ydF9zaWdyZXR1cm46CisrICAgICAg aWYgKGFtZDY0X2FsbF9idXRfaXBfcmVnaXN0ZXJzX3JlY29yZCAocmVnY2FjaGUpKQorKyAgICAg ICAgcmV0dXJuIC0xOworKyAgICAgIHJldHVybiAwOworKyAgICAgIGJyZWFrOworKworKyAgICBj YXNlIGFtZDY0X3N5c19hcmNoX3ByY3RsOgorKyAgICAgIGlmIChzeXNjYWxsX25hdGl2ZSA9PSBh bWQ2NF9zeXNfYXJjaF9wcmN0bCkKKysgICAgICAgIHsKKysgICAgICAgICAgVUxPTkdFU1QgYXJn MzsKKysKKysgICAgICAgICAgcmVnY2FjaGVfcmF3X3JlYWRfdW5zaWduZWQgKHJlZ2NhY2hlLCBh bWQ2NF9saW51eF9yZWNvcmRfdGRlcC5hcmczLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgJmFyZzMpOworKyAgICAgICAgICBpZiAoYXJnMyA9PSBSRUNPUkRfQVJDSF9H RVRfRlMgfHwgYXJnMyA9PSBSRUNPUkRfQVJDSF9HRVRfR1MpCisrICAgICAgICAgICAgeworKwkg ICAgICBDT1JFX0FERFIgYWRkcjsKKysKKysJICAgICAgcmVnY2FjaGVfcmF3X3JlYWRfdW5zaWdu ZWQgKHJlZ2NhY2hlLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGFtZDY0X2xpbnV4X3JlY29yZF90ZGVwLmFyZzIsCisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgJmFkZHIpOworKwkgICAgICBpZiAocmVjb3JkX2FyY2hfbGlzdF9h ZGRfbWVtIChhZGRyLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgYW1kNjRfbGludXhfcmVjb3JkX3RkZXAuc2l6ZV91bG9uZykpCisrICAgICAgICAgICAgICAg IHJldHVybiAtMTsKKysgICAgICAgICAgICB9CisrICAgICAgICAgIGdvdG8gcmVjb3JkX3JlZ3M7 CisrICAgICAgICB9CisrICAgICAgYnJlYWs7CisgICAgIH0KKyAKKysgIHN5c2NhbGxfZ2RiID0g YW1kNjRfY2Fub25pY2FsaXplX3N5c2NhbGwgKHN5c2NhbGxfbmF0aXZlKTsKKysKKyAgIGlmIChz eXNjYWxsX2dkYiA8IDApCisgICAgIHsKKyAgICAgICBwcmludGZfdW5maWx0ZXJlZCAoXygiUHJv Y2VzcyByZWNvcmQgYW5kIHJlcGxheSB0YXJnZXQgZG9lc24ndCAiCitAQCAtMTE2Myw2ICsxMjE4 LDQ0IEBACisgICBpZiAocmVjb3JkX2FyY2hfbGlzdF9hZGRfcmVnIChyZWdjYWNoZSwgQU1ENjRf UjExX1JFR05VTSkpCisgICAgIHJldHVybiAtMTsKKyAKKysgIHJldHVybiAwOworK30KKysKKysj ZGVmaW5lIEFNRDY0X0xJTlVYX3JlZHpvbmUgICAgMTI4CisrI2RlZmluZSBBTUQ2NF9MSU5VWF94 c3RhdGUgICAgIDUxMgorKyNkZWZpbmUgQU1ENjRfTElOVVhfZnJhbWVfc2l6ZSA1NjAKKysKKytp bnQKKythbWQ2NF9saW51eF9yZWNvcmRfc2lnbmFsIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwK KysgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlLAor KyAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudW0gdGFyZ2V0X3NpZ25hbCBzaWduYWwpCisr eworKyAgVUxPTkdFU1QgcnNwOworKworKyAgaWYgKGFtZDY0X2FsbF9idXRfaXBfcmVnaXN0ZXJz X3JlY29yZCAocmVnY2FjaGUpKQorKyAgICByZXR1cm4gLTE7CisrCisrICBpZiAocmVjb3JkX2Fy Y2hfbGlzdF9hZGRfcmVnIChyZWdjYWNoZSwgQU1ENjRfUklQX1JFR05VTSkpCisrICAgIHJldHVy biAtMTsKKysKKysgIC8qIFJlY29yZCB0aGUgY2hhbmdlIGluIHRoZSBzdGFjay4gICovCisrICBy ZWdjYWNoZV9yYXdfcmVhZF91bnNpZ25lZCAocmVnY2FjaGUsIEFNRDY0X1JTUF9SRUdOVU0sICZy c3ApOworKyAgLyogcmVkem9uZQorKyAgICAgc3AgLT0gMTI4OyAqLworKyAgcnNwIC09IEFNRDY0 X0xJTlVYX3JlZHpvbmU7CisrICAvKiBUaGlzIGlzIGZvciB4c3RhdGUuCisrICAgICBzcCAtPSBz aXplb2YgKHN0cnVjdCBfZnBzdGF0ZSk7ICAqLworKyAgcnNwIC09IEFNRDY0X0xJTlVYX3hzdGF0 ZTsKKysgIC8qIFRoaXMgaXMgZm9yIGZyYW1lX3NpemUuCisrICAgICBzcCAtPSBzaXplb2YgKHN0 cnVjdCBydF9zaWdmcmFtZSk7ICAqLworKyAgcnNwIC09IEFNRDY0X0xJTlVYX2ZyYW1lX3NpemU7 CisrICBpZiAocmVjb3JkX2FyY2hfbGlzdF9hZGRfbWVtIChyc3AsIEFNRDY0X0xJTlVYX3JlZHpv bmUKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBBTUQ2NF9MSU5VWF94 c3RhdGUKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBBTUQ2NF9MSU5V WF9mcmFtZV9zaXplKSkKKysgICAgcmV0dXJuIC0xOworKworKyAgaWYgKHJlY29yZF9hcmNoX2xp c3RfYWRkX2VuZCAoKSkKKysgICAgcmV0dXJuIC0xOworIAorICAgcmV0dXJuIDA7CisgfQorQEAg LTEyMTgsNiArMTMxMSw3IEBACisgICBzZXRfZ2RiYXJjaF9nZXRfc2lnaW5mb190eXBlIChnZGJh cmNoLCBsaW51eF9nZXRfc2lnaW5mb190eXBlKTsKKyAKKyAgIHNldF9nZGJhcmNoX3Byb2Nlc3Nf cmVjb3JkIChnZGJhcmNoLCBpMzg2X3Byb2Nlc3NfcmVjb3JkKTsKKysgIHNldF9nZGJhcmNoX3By b2Nlc3NfcmVjb3JkX3NpZ25hbCAoZ2RiYXJjaCwgYW1kNjRfbGludXhfcmVjb3JkX3NpZ25hbCk7 CisgCisgICAvKiBJbml0aWFsaXplIHRoZSBhbWQ2NF9saW51eF9yZWNvcmRfdGRlcC4gICovCisg ICAvKiBUaGVzZSB2YWx1ZXMgYXJlIHRoZSBzaXplIG9mIHRoZSB0eXBlIHRoYXQgd2lsbCBiZSB1 c2VkIGluIGEgc3lzdGVtCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09CitSQ1MgZmlsZTogL2N2cy9zcmMvc3JjL2dkYi9D aGFuZ2VMb2csdgorcmV0cmlldmluZyByZXZpc2lvbiAxLjEwODc0LjIuMTIKK3JldHJpZXZpbmcg cmV2aXNpb24gMS4xMDg3NC4yLjEzCitkaWZmIC11IC1yMS4xMDg3NC4yLjEyIC1yMS4xMDg3NC4y LjEzCistLS0gc3JjL2dkYi9DaGFuZ2VMb2cJMjAwOS8wOS8yMSAwNjo1NzowMgkxLjEwODc0LjIu MTIKKysrKyBzcmMvZ2RiL0NoYW5nZUxvZwkyMDA5LzA5LzIxIDEwOjE5OjU5CTEuMTA4NzQuMi4x MworQEAgLTEsMyArMSw4IEBACisrMjAwOS0wOS0yMSAgUGhpbCBNdWxkb29uICA8cG11bGRvb25A cmVkaGF0LmNvbT4KKysKKysJKiBweXRob24vcHktdmFsdWUuYyAodmFscHlfZ2V0aXRlbSk6IFRl c3QgdmFsdWUgYmVmb3JlIGFsbG93aW5nCisrCXN1YnNjcmlwdCBvcGVyYXRpb24uCisrCisgMjAw OS0wOS0yMSAgSHVpIFpodSAgPHRlYXdhdGVyQGdtYWlsLmNvbT4KKyAJICAgIE1pY2hhZWwgU255 ZGVyICA8bXNueWRlckB2bXdhcmUuY29tPgorIAorPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorUkNTIGZpbGU6IC9jdnMv c3JjL3NyYy9nZGIvcHl0aG9uL3B5LXZhbHVlLmMsdgorcmV0cmlldmluZyByZXZpc2lvbiAxLjEK K3JldHJpZXZpbmcgcmV2aXNpb24gMS4xLjIuMQorZGlmZiAtdSAtcjEuMSAtcjEuMS4yLjEKKy0t LSBzcmMvZ2RiL3B5dGhvbi9weS12YWx1ZS5jCTIwMDkvMDkvMDkgMTc6NDU6NDAJMS4xCisrKysg c3JjL2dkYi9weXRob24vcHktdmFsdWUuYwkyMDA5LzA5LzIxIDEwOjIwOjAwCTEuMS4yLjEKK0BA IC0zMjQsNyArMzI0LDE4IEBACisgCSAgICAgdHlwZS4gICovCisgCSAgc3RydWN0IHZhbHVlICpp ZHggPSBjb252ZXJ0X3ZhbHVlX2Zyb21fcHl0aG9uIChrZXkpOworIAkgIGlmIChpZHggIT0gTlVM TCkKKy0JICAgIHJlc192YWwgPSB2YWx1ZV9zdWJzY3JpcHQgKHRtcCwgdmFsdWVfYXNfbG9uZyAo aWR4KSk7CisrCSAgICB7CisrCSAgICAgIC8qIENoZWNrIHRoZSB2YWx1ZSdzIHR5cGUgaXMgc29t ZXRoaW5nIHRoYXQgY2FuIGJlIGFjY2Vzc2VkIHZpYQorKwkJIGEgc3Vic2NyaXB0LiAgKi8KKysJ ICAgICAgc3RydWN0IHR5cGUgKnR5cGU7CisrCSAgICAgIHRtcCA9IGNvZXJjZV9yZWYgKHRtcCk7 CisrCSAgICAgIHR5cGUgPSBjaGVja190eXBlZGVmICh2YWx1ZV90eXBlICh0bXApKTsKKysJICAg ICAgaWYgKFRZUEVfQ09ERSAodHlwZSkgIT0gVFlQRV9DT0RFX0FSUkFZCisrCQkgICYmIFRZUEVf Q09ERSAodHlwZSkgIT0gVFlQRV9DT0RFX1BUUikKKysJCSAgZXJyb3IoIF8oIkNhbm5vdCBzdWJz Y3JpcHQgcmVxdWVzdGVkIHR5cGUiKSk7CisrCSAgICAgIGVsc2UKKysJCXJlc192YWwgPSB2YWx1 ZV9zdWJzY3JpcHQgKHRtcCwgdmFsdWVfYXNfbG9uZyAoaWR4KSk7CisrCSAgICB9CisgCX0KKyAg ICAgfQorIAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQorUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvdGVzdHN1aXRl L0NoYW5nZUxvZyx2CityZXRyaWV2aW5nIHJldmlzaW9uIDEuMTk2MAorcmV0cmlldmluZyByZXZp c2lvbiAxLjE5NjAuMi4xCitkaWZmIC11IC1yMS4xOTYwIC1yMS4xOTYwLjIuMQorLS0tIHNyYy9n ZGIvdGVzdHN1aXRlL0NoYW5nZUxvZwkyMDA5LzA5LzE1IDE4OjUxOjI1CTEuMTk2MAorKysrIHNy Yy9nZGIvdGVzdHN1aXRlL0NoYW5nZUxvZwkyMDA5LzA5LzIxIDEwOjIwOjAwCTEuMTk2MC4yLjEK K0BAIC0xLDMgKzEsMTAgQEAKKysyMDA5LTA5LTIxICBQaGlsIE11bGRvb24gIDxwbXVsZG9vbkBy ZWRoYXQuY29tPgorKworKwkqIGdkYi5weXRob24vcHktdmFsdWUuZXhwICh0ZXN0X3N1YnNjcmlw dF9yZWdyZXNzaW9uKTogTmV3CisrCWZ1bmN0aW9uLiAgVGVzdCBmb3IgaW52YWxpZCBzdWJzY3Jp cHRzLgorKwkqIGdkYi5weXRob24vcHktdmFsdWUuYyAobWFpbik6IEFkZCB0ZXN0IGFycmF5LCBh bmQgcG9pbnRlciB0byBpdC4KKysJKHB0cl9yZWYpOiBOZXcgZnVuY3Rpb24uCisrCisgMjAwOS0w OS0xNSAgVG9tIFRyb21leSAgPHRyb21leUByZWRoYXQuY29tPgorIAorIAkqIGxpYi9taS1zdXBw b3J0LmV4cCAobWlfY3JlYXRlX3Zhcm9iaik6IFVwZGF0ZS4KKz09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1JDUyBmaWxl OiAvY3ZzL3NyYy9zcmMvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3B5LXZhbHVlLmMsdgorcmV0 cmlldmluZyByZXZpc2lvbiAxLjEKK3JldHJpZXZpbmcgcmV2aXNpb24gMS4xLjIuMQorZGlmZiAt dSAtcjEuMSAtcjEuMS4yLjEKKy0tLSBzcmMvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3B5LXZh bHVlLmMJMjAwOS8wOS8wOSAxNzo0NTo0MgkxLjEKKysrKyBzcmMvZ2RiL3Rlc3RzdWl0ZS9nZGIu cHl0aG9uL3B5LXZhbHVlLmMJMjAwOS8wOS8yMSAxMDoyMDowMAkxLjEuMi4xCitAQCAtMzcsNiAr MzcsMTMgQEAKKyAKKyBlbnVtIGUgZXZhbHVlID0gVFdPOworIAorKyNpZmRlZiBfX2NwbHVzcGx1 cworK3ZvaWQgcHRyX3JlZihpbnQqJiBycHRyX2ludCkKKyt7CisrICByZXR1cm47IC8qIGJyZWFr IHRvIGluc3BlY3QgcG9pbnRlciBieSByZWZlcmVuY2UuICovCisrfQorKyNlbmRpZgorKworIGlu dAorIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCisgeworQEAgLTQ2LDEwICs1MywxOCBA QAorICAgUFRSIHggPSAmczsKKyAgIGNoYXIgc3RbMTddID0gImRpdmlkZSBldCBpbXBlcmEiOwor ICAgY2hhciBudWxsc3RbMTddID0gImRpdmlkZVwwZXRcMGltcGVyYSI7CisrICBpbnQgYVszXSA9 IHsxLDIsM307CisrICBpbnQgKnAgPSBhOworKyAgaW50IGkgPSAyOworKyAgaW50ICpwdHJfaSA9 ICZpOworIAorICAgcy5hID0gMzsKKyAgIHMuYiA9IDU7CisgICB1LmEgPSA3OworIAorKyNpZmRl ZiBfX2NwbHVzcGx1cworKyAgcHRyX3JlZihwdHJfaSk7CisrI2VuZGlmCisrCisgICByZXR1cm4g MDsgICAgICAvKiBicmVhayB0byBpbnNwZWN0IHN0cnVjdCBhbmQgdW5pb24gKi8KKyB9Cis9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09CitSQ1MgZmlsZTogL2N2cy9zcmMvc3JjL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9w eS12YWx1ZS5leHAsdgorcmV0cmlldmluZyByZXZpc2lvbiAxLjEKK3JldHJpZXZpbmcgcmV2aXNp b24gMS4xLjIuMQorZGlmZiAtdSAtcjEuMSAtcjEuMS4yLjEKKy0tLSBzcmMvZ2RiL3Rlc3RzdWl0 ZS9nZGIucHl0aG9uL3B5LXZhbHVlLmV4cAkyMDA5LzA5LzA5IDE3OjQ1OjQyCTEuMQorKysrIHNy Yy9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHktdmFsdWUuZXhwCTIwMDkvMDkvMjEgMTA6MjA6 MDAJMS4xLjIuMQorQEAgLTI5Miw2ICsyOTIsNzUgQEAKKyAgICAgInByaW50IHZhbHVlJ3MgdHlw ZSIKKyB9CisgCisrIyBSZWdyZXNzaW9uIHRlc3QgZm9yIGludmFsaWQgc3Vic2NyaXB0IG9wZXJh dGlvbnMuICBUaGUgYnVnIHdhcyB0aGF0CisrIyB0aGUgdHlwZSBvZiB0aGUgdmFsdWUgd2FzIG5v dCBiZWluZyBjaGVja2VkIGJlZm9yZSBhbGxvd2luZyBhCisrIyBzdWJzY3JpcHQgb3BlcmF0aW9u IHRvIHByb2NlZWQuCisrCisrcHJvYyB0ZXN0X3N1YnNjcmlwdF9yZWdyZXNzaW9uIHtsYW5nfSB7 CisrCisrIGdsb2JhbCBzcmNkaXIgc3ViZGlyIHNyY2ZpbGUgYmluZmlsZSB0ZXN0ZmlsZSBoZXgK KysgaWYgeyBbZ2RiX2NvbXBpbGUgIiR7c3JjZGlyfS8ke3N1YmRpcn0vJHtzcmNmaWxlfSIgIiR7 YmluZmlsZX0iIGV4ZWN1dGFibGUgImRlYnVnICRsYW5nIl0gIT0gIiIgfSB7CisrICAgICB1bnRl c3RlZCAiQ291bGRuJ3QgY29tcGlsZSAke3NyY2ZpbGV9IGluICRsYW5nIG1vZGUiCisrICAgICBy ZXR1cm4gLTEKKysgfQorKworKyAjIFN0YXJ0IHdpdGggYSBmcmVzaCBnZGIuCisrIGdkYl9leGl0 CisrIGdkYl9zdGFydAorKyBnZGJfcmVpbml0aWFsaXplX2RpciAkc3JjZGlyLyRzdWJkaXIKKysg Z2RiX2xvYWQgJHtiaW5maWxlfQorKworKyBpZiAhW3J1bnRvX21haW4gXSB0aGVuIHsKKysgICAg IHBlcnJvciAiY291bGRuJ3QgcnVuIHRvIGJyZWFrcG9pbnQiCisrICAgICByZXR1cm4KKysgfQor KworKyBpZiB7JGxhbmcgPT0gImMrKyJ9IHsKKysgICAgIGdkYl9icmVha3BvaW50IFtnZGJfZ2V0 X2xpbmVfbnVtYmVyICJicmVhayB0byBpbnNwZWN0IHBvaW50ZXIgYnkgcmVmZXJlbmNlIl0KKysg ICAgIGdkYl9jb250aW51ZV90b19icmVha3BvaW50ICJicmVhayB0byBpbnNwZWN0IHBvaW50ZXIg YnkgcmVmZXJlbmNlIgorKworKyAgICAgZ2RiX3B5X3Rlc3Rfc2lsZW50X2NtZCAicHJpbnQgcnB0 cl9pbnQiIFwKKysJICJPYnRhaW4gYWRkcmVzcyIgMQorKyAgICAgZ2RiX3B5X3Rlc3Rfc2lsZW50 X2NtZCAicHl0aG9uIHJwdHIgPSBnZGIuaGlzdG9yeSgwKSIgXAorKwkgIk9idGFpbnMgdmFsdWUg ZnJvbSBHREIiIDEKKysgICAgIGdkYl90ZXN0ICJweXRob24gcHJpbnQgcnB0clxbMFxdIiAiMiIg IkNoZWNrIHBvaW50ZXIgcGFzc2VkIGFzIHJlZmVyZW5jZSIKKysgfQorKworKyBnZGJfYnJlYWtw b2ludCBbZ2RiX2dldF9saW5lX251bWJlciAiYnJlYWsgdG8gaW5zcGVjdCBzdHJ1Y3QgYW5kIHVu aW9uIl0KKysgZ2RiX2NvbnRpbnVlX3RvX2JyZWFrcG9pbnQgImJyZWFrIHRvIGluc3BlY3Qgc3Ry dWN0IGFuZCB1bmlvbiIKKysKKysgZ2RiX3B5X3Rlc3Rfc2lsZW50X2NtZCAicHl0aG9uIGludHYg PSBnZGIuVmFsdWUoMSkiIFwKKysgICAgICJDcmVhdGUgYSB2YWx1ZSBmb3Igc3Vic2NyaXB0IHRl c3QiIDEKKysgZ2RiX3B5X3Rlc3Rfc2lsZW50X2NtZCAicHl0aG9uIHN0cmluZ3YgPSBnZGIuVmFs dWUoXCJmb29cIikiIFwKKysgICAgICJDcmVhdGUgYSB2YWx1ZSBmb3Igc3Vic2NyaXB0IHRlc3Qi IDEKKysKKysgIyBUcnkgdG8gYWNjZXNzIGFuIGludCB3aXRoIGEgc3Vic2NyaXB0LiAgVGhpcyBz aG91bGQgZmFpbC4KKysgZ2RiX3Rlc3QgInB5dGhvbiBwcmludCBpbnR2IiAiMSIgIkJhc2VsaW5l IHByaW50IG9mIGEgUHl0aG9uIHZhbHVlIgorKyBnZGJfdGVzdCAicHl0aG9uIHByaW50IGludHZc WzBcXSIgIlJ1bnRpbWVFcnJvcjogQ2Fubm90IHN1YnNjcmlwdCByZXF1ZXN0ZWQgdHlwZS4qIiBc CisrICAgICAiQXR0ZW1wdCB0byBhY2Nlc3MgYW4gaW50ZWdlciB3aXRoIGEgc3Vic2NyaXB0Igor KworKyAjIFRyeSB0byBhY2Nlc3MgYSBzdHJpbmcgd2l0aCBhIHN1YnNjcmlwdC4gIFRoaXMgc2hv dWxkIHBhc3MuCisrIGdkYl90ZXN0ICJweXRob24gcHJpbnQgc3RyaW5ndiIgImZvby4iICJCYXNl bGluZSBwcmludCBvZiBhIFB5dGhvbiB2YWx1ZSIKKysgZ2RiX3Rlc3QgInB5dGhvbiBwcmludCBz dHJpbmd2XFswXF0iICJmLiIgIkF0dGVtcHQgdG8gYWNjZXNzIGEgc3RyaW5nIHdpdGggYSBzdWJz Y3JpcHQiCisrCisrICMgVHJ5IHRvIGFjY2VzcyBhbiBpbnQgYXJyYXkgdmlhIGEgcG9pbnRlciB3 aXRoIGEgc3Vic2NyaXB0LiAgVGhpcyBzaG91bGQgcGFzcy4KKysgZ2RiX3B5X3Rlc3Rfc2lsZW50 X2NtZCAicHJpbnQgcCIgIkJ1aWxkIHBvaW50ZXIgdG8gYXJyYXkiIDEKKysgZ2RiX3B5X3Rlc3Rf c2lsZW50X2NtZCAicHl0aG9uIHBvaW50ZXIgPSBnZGIuaGlzdG9yeSgwKSIgIiIgMQorKyBnZGJf dGVzdCAicHl0aG9uIHByaW50IHBvaW50ZXJcWzBcXSIgIjEiICJBY2Nlc3MgYXJyYXkgdmlhIHBv aW50ZXIgd2l0aCBpbnQgc3Vic2NyaXB0IgorKyBnZGJfdGVzdCAicHl0aG9uIHByaW50IHBvaW50 ZXJcW2ludHZcXSIgIjIiICJBY2Nlc3MgYXJyYXkgdmlhIHBvaW50ZXIgd2l0aCB2YWx1ZSBzdWJz Y3JpcHQiCisrCisrICMgVHJ5IHRvIGFjY2VzcyBhIHNpbmdsZSBkaW1lbnNpb24gYXJyYXkgd2l0 aCBhIHN1YnNjcmlwdCB0byB0aGUKKysgIyByZXN1bHQuICBUaGlzIHNob3VsZCBmYWlsLgorKyBn ZGJfdGVzdCAicHl0aG9uIHByaW50IHBvaW50ZXJcW2ludHZcXVxbMFxdIiAiUnVudGltZUVycm9y OiBDYW5ub3Qgc3Vic2NyaXB0IHJlcXVlc3RlZCB0eXBlLioiIFwKKysgICAgICJBdHRlbXB0IHRv IGFjY2VzcyBhbiBpbnRlZ2VyIHdpdGggYSBzdWJzY3JpcHQiCisrCisrICMgTGFzdGx5LCB0ZXN0 IHN1YnNjcmlwdCBhY2Nlc3MgdG8gYW4gYXJyYXkgd2l0aCBtdWx0aXBsZQorKyAjIGRpbWVuc2lv bnMuICBUaGlzIHNob3VsZCBwYXNzLgorKyBnZGJfcHlfdGVzdF9zaWxlbnRfY21kICJwcmludCB7 XCJmdSBcIixcImZvb1wiLFwiYmFyXCJ9IiAiQnVpbGQgYXJyYXkiIDEKKysgZ2RiX3B5X3Rlc3Rf c2lsZW50X2NtZCAicHl0aG9uIG1hcnJheSA9IGdkYi5oaXN0b3J5KDApIiAiIiAxCisrIGdkYl90 ZXN0ICJweXRob24gcHJpbnQgbWFycmF5XFsxXF1cWzJcXSIgIm8uIiAiVGVzdCBtdWx0aXBsZSBz dWJzY3JpcHQiCisrfQorKworICMgU3RhcnQgd2l0aCBhIGZyZXNoIGdkYi4KKyAKKyBnZGJfZXhp dAorQEAgLTMyMiwzICszOTEsOCBAQAorIAorIHRlc3RfdmFsdWVfaW5faW5mZXJpb3IKKyB0ZXN0 X3ZhbHVlX2FmdGVyX2RlYXRoCisrCisrIyBUaGUgZm9sbG93aW5nIHRlc3QgcmVjb21waWxlcyB0 aGUgYmluYXJ5IHRvIHRlc3QgZWl0aGVyIEMgb3IgQysrCisrIyB2YWx1ZXMuIAorK3Rlc3Rfc3Vi c2NyaXB0X3JlZ3Jlc3Npb24gImMrKyIKKyt0ZXN0X3N1YnNjcmlwdF9yZWdyZXNzaW9uICJjIgor PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQorUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvQ2hhbmdlTG9nLHYKK3JldHJp ZXZpbmcgcmV2aXNpb24gMS4xMDg3NC4yLjEzCityZXRyaWV2aW5nIHJldmlzaW9uIDEuMTA4NzQu Mi4xNAorZGlmZiAtdSAtcjEuMTA4NzQuMi4xMyAtcjEuMTA4NzQuMi4xNAorLS0tIHNyYy9nZGIv Q2hhbmdlTG9nCTIwMDkvMDkvMjEgMTA6MTk6NTkJMS4xMDg3NC4yLjEzCisrKysgc3JjL2dkYi9D aGFuZ2VMb2cJMjAwOS8wOS8yMSAxMDoyNToyOQkxLjEwODc0LjIuMTQKK0BAIC0xLDUgKzEsMTIg QEAKKyAyMDA5LTA5LTIxICBQaGlsIE11bGRvb24gIDxwbXVsZG9vbkByZWRoYXQuY29tPgorIAor KwlQUiBweXRob24vMTA2MzMKKysKKysJKiBjLWxhbmcuYyAoY19wcmludHN0cik6IERvIG5vdCBs b29wIHBhc3QgIG9wdGlvbnMtPnByaW50X21heCB3aGVuCisrCWl0ZXJhdGluZyB3aXRoIHdjaGFy X2l0ZXJhdGUuCisrCisrMjAwOS0wOS0yMSAgUGhpbCBNdWxkb29uICA8cG11bGRvb25AcmVkaGF0 LmNvbT4KKysKKyAJKiBweXRob24vcHktdmFsdWUuYyAodmFscHlfZ2V0aXRlbSk6IFRlc3QgdmFs dWUgYmVmb3JlIGFsbG93aW5nCisgCXN1YnNjcmlwdCBvcGVyYXRpb24uCisgCis9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 CitSQ1MgZmlsZTogL2N2cy9zcmMvc3JjL2dkYi9jLWxhbmcuYyx2CityZXRyaWV2aW5nIHJldmlz aW9uIDEuNzUKK3JldHJpZXZpbmcgcmV2aXNpb24gMS43NS40LjEKK2RpZmYgLXUgLXIxLjc1IC1y MS43NS40LjEKKy0tLSBzcmMvZ2RiL2MtbGFuZy5jCTIwMDkvMDcvMTAgMTA6MzU6MTYJMS43NQor KysrIHNyYy9nZGIvYy1sYW5nLmMJMjAwOS8wOS8yMSAxMDoyNToyOQkxLjc1LjQuMQorQEAgLTQ1 OSw3ICs0NTksNyBAQAorIAkgc2luZ2xlIGNoYXJhY3RlciBpbiBpc29sYXRpb24uICBUaGlzIG1h a2VzIHRoZSBjb2RlIHNpbXBsZXIKKyAJIGFuZCBwcm9iYWJseSBkb2VzIHRoZSBzZW5zaWJsZSB0 aGluZyBpbiB0aGUgbWFqb3JpdHkgb2YKKyAJIGNhc2VzLiAgKi8KKy0gICAgICB3aGlsZSAobnVt X2NoYXJzID09IDEpCisrICAgICAgd2hpbGUgKG51bV9jaGFycyA9PSAxICYmIHRoaW5nc19wcmlu dGVkIDwgb3B0aW9ucy0+cHJpbnRfbWF4KQorIAl7CisgCSAgLyogQ291bnQgdGhlIG51bWJlciBv ZiByZXBldGl0aW9ucy4gICovCisgCSAgdW5zaWduZWQgaW50IHJlcHMgPSAwOworPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQorUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvdGVzdHN1aXRlL0NoYW5nZUxvZyx2CityZXRy aWV2aW5nIHJldmlzaW9uIDEuMTk2MC4yLjEKK3JldHJpZXZpbmcgcmV2aXNpb24gMS4xOTYwLjIu MgorZGlmZiAtdSAtcjEuMTk2MC4yLjEgLXIxLjE5NjAuMi4yCistLS0gc3JjL2dkYi90ZXN0c3Vp dGUvQ2hhbmdlTG9nCTIwMDkvMDkvMjEgMTA6MjA6MDAJMS4xOTYwLjIuMQorKysrIHNyYy9nZGIv dGVzdHN1aXRlL0NoYW5nZUxvZwkyMDA5LzA5LzIxIDEwOjI1OjI5CTEuMTk2MC4yLjIKK0BAIC0x LDUgKzEsMTMgQEAKKyAyMDA5LTA5LTIxICBQaGlsIE11bGRvb24gIDxwbXVsZG9vbkByZWRoYXQu Y29tPgorIAorKwlQUiBweXRob24vMTA2MzMKKysKKysJKiBnZGIucHl0aG9uL3B5LXByZXR0eXBy aW50LmV4cCAoZ2RiX3B5X3Rlc3Rfc2lsZW50X2NtZCk6IE5ldworKwlGdW5jdGlvbi4KKysJKHJ1 bl9sYW5nX3Rlc3RzKTogQWRkIHByaW50IGVsZW1lbnRzIHRlc3QuCisrCisrMjAwOS0wOS0yMSAg UGhpbCBNdWxkb29uICA8cG11bGRvb25AcmVkaGF0LmNvbT4KKysKKyAJKiBnZGIucHl0aG9uL3B5 LXZhbHVlLmV4cCAodGVzdF9zdWJzY3JpcHRfcmVncmVzc2lvbik6IE5ldworIAlmdW5jdGlvbi4g IFRlc3QgZm9yIGludmFsaWQgc3Vic2NyaXB0cy4KKyAJKiBnZGIucHl0aG9uL3B5LXZhbHVlLmMg KG1haW4pOiBBZGQgdGVzdCBhcnJheSwgYW5kIHBvaW50ZXIgdG8gaXQuCis9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitS Q1MgZmlsZTogL2N2cy9zcmMvc3JjL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1wcmV0dHlw cmludC5leHAsdgorcmV0cmlldmluZyByZXZpc2lvbiAxLjEKK3JldHJpZXZpbmcgcmV2aXNpb24g MS4xLjIuMQorZGlmZiAtdSAtcjEuMSAtcjEuMS4yLjEKKy0tLSBzcmMvZ2RiL3Rlc3RzdWl0ZS9n ZGIucHl0aG9uL3B5LXByZXR0eXByaW50LmV4cAkyMDA5LzA5LzA5IDE3OjQ1OjQyCTEuMQorKysr IHNyYy9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHktcHJldHR5cHJpbnQuZXhwCTIwMDkvMDkv MjEgMTA6MjU6MzAJMS4xLjIuMQorQEAgLTM1LDYgKzM1LDE3IEBACisgICAgIC1yZSAiJGdkYl9w cm9tcHQgJCIJe30KKyB9CisgCisrIyBSdW4gYSBjb21tYW5kIGluIEdEQiwgYW5kIHJlcG9ydCBh IGZhaWx1cmUgaWYgYSBQeXRob24gZXhjZXB0aW9uIGlzIHRocm93bi4KKysjIElmIHJlcG9ydF9w YXNzIGlzIHRydWUsIHJlcG9ydCBhIHBhc3MgaWYgbm8gZXhjZXB0aW9uIGlzIHRocm93bi4KKytw cm9jIGdkYl9weV90ZXN0X3NpbGVudF9jbWQge2NtZCBuYW1lIHJlcG9ydF9wYXNzfSB7CisrICBn bG9iYWwgZ2RiX3Byb21wdAorKworKyAgZ2RiX3Rlc3RfbXVsdGlwbGUgJGNtZCAkbmFtZSB7Cisr ICAgICAgLXJlICJUcmFjZWJhY2suKiRnZGJfcHJvbXB0ICQiICB7IGZhaWwgJG5hbWUgfQorKyAg ICAgIC1yZSAiJGdkYl9wcm9tcHQgJCIJICAgICAgeyBpZiAkcmVwb3J0X3Bhc3MgeyBwYXNzICRu YW1lIH0gfQorKyAgfQorK30KKysKKyBwcm9jIHJ1bl9sYW5nX3Rlc3RzIHtsYW5nfSB7CisgICAg IGdsb2JhbCBzcmNkaXIgc3ViZGlyIHNyY2ZpbGUgYmluZmlsZSB0ZXN0ZmlsZSBoZXgKKyAgICAg aWYgeyBbZ2RiX2NvbXBpbGUgIiR7c3JjZGlyfS8ke3N1YmRpcn0vJHtzcmNmaWxlfSIgIiR7Ymlu ZmlsZX0iIGV4ZWN1dGFibGUgImRlYnVnICRsYW5nIl0gIT0gIiIgfSB7CitAQCAtNzksNiArOTAs MTEgQEAKKyAJZ2RiX3Rlc3QgInByaW50IGRlcml2ZWQiIFwKKyAJICAgICIgPSBcey4qPFZiYXNl MT4gPSBwcCBjbGFzcyBuYW1lOiBWYmFzZTEuKjxWYmFzZTI+ID0gXHsuKjxWaXJ0dWFsVGVzdD4g PSBwcCB2YWx1ZSB2YXJpYWJsZSBpczogMSwuKm1lbWJlcnMgb2YgVmJhc2UyOi4qX3ZwdHIuVmJh c2UyID0gJGhleC4qPFZiYXNlMz4gPSBcey4qbWVtYmVycyBvZiBWYmFzZTMuKm1lbWJlcnMgb2Yg RGVyaXZlZDouKnZhbHVlID0gMi4qIgorIAlnZGJfdGVzdCAicHJpbnQgbnMgIiAiXCJlbWJlZGRl ZFxcXFwwMDBudWxsXFxcXDAwMHN0cmluZ1wiIgorKwlnZGJfcHlfdGVzdF9zaWxlbnRfY21kICJz ZXQgcHJpbnQgZWxlbWVudHMgMyIgIiIgMQorKwlnZGJfdGVzdCAicHJpbnQgbnMiICJlbWJcLlwu XC4uIgorKwlnZGJfcHlfdGVzdF9zaWxlbnRfY21kICJzZXQgcHJpbnQgZWxlbWVudHMgMTAiICIi IDEKKysJZ2RiX3Rlc3QgInByaW50IG5zIiAiZW1iZWRkZWRcXFxcMDAwblwuXC5cLi4iCisrCWdk Yl9weV90ZXN0X3NpbGVudF9jbWQgInNldCBwcmludCBlbGVtZW50cyAyMDAiICIiIDEKKyAgICAg fQorIAorICAgICBnZGJfdGVzdCAicHJpbnQgeCIgIiA9ICRoZXggXCJ0aGlzIGlzIHhcIiIKCmRp ZmYgLS1naXQgYS9nZGItYXJjaGVyLnBhdGNoIGIvZ2RiLWFyY2hlci5wYXRjaAppbmRleCAwNGMz M2ExLi42MjM1YjlmIDEwMDY0NAotLS0gYS9nZGItYXJjaGVyLnBhdGNoCisrKyBiL2dkYi1hcmNo ZXIucGF0Y2gKQEAgLTIsNyArMiw3IEBAIGh0dHA6Ly9zb3VyY2V3YXJlLm9yZy9nZGIvd2lraS9Q cm9qZWN0QXJjaGVyCiBodHRwOi8vc291cmNld2FyZS5vcmcvZ2RiL3dpa2kvQXJjaGVyQnJhbmNo TWFuYWdlbWVudAogCiBHSVQgc25hcHNob3Q6Ci1jb21taXQgMTZmM2YwMWNjMmNiYzE1MjgzNDYy ZWFhYmRmY2RlOTJjZjQyY2RjNgorY29tbWl0IDBkNWMzOGRkODkwNTBjMGVlMWNmMDQ5NjU2ZjE3 N2MxNzBkNjc1ZDQKIAogYnJhbmNoIGBhcmNoZXInIC0gdGhlIG1lcmdlIG9mIGJyYW5jaGVzOgog YXJjaGVyLXRyb21leS1jYWxsLWZyYW1lLWNmYQpAQCAtMjMzNywxOCArMjMzNyw5IEBAIGluZGV4 IGY4ZTRmMTIuLjViNDdlMmUgMTAwNjQ0CiAgICB9CiAgfQogZGlmZiAtLWdpdCBhL2dkYi9jLWxh bmcuYyBiL2dkYi9jLWxhbmcuYwotaW5kZXggNGJhODFiYS4uYmMzNWEzZSAxMDA2NDQKK2luZGV4 IGQwMTQ5MGMuLmJjMzVhM2UgMTAwNjQ0CiAtLS0gYS9nZGIvYy1sYW5nLmMKICsrKyBiL2dkYi9j LWxhbmcuYwotQEAgLTQ1OSw3ICs0NTksNyBAQCBjX3ByaW50c3RyIChzdHJ1Y3QgdWlfZmlsZSAq c3RyZWFtLCBzdHJ1Y3QgdHlwZSAqdHlwZSwgY29uc3QgZ2RiX2J5dGUgKnN0cmluZywKLSAJIHNp bmdsZSBjaGFyYWN0ZXIgaW4gaXNvbGF0aW9uLiAgVGhpcyBtYWtlcyB0aGUgY29kZSBzaW1wbGVy Ci0gCSBhbmQgcHJvYmFibHkgZG9lcyB0aGUgc2Vuc2libGUgdGhpbmcgaW4gdGhlIG1ham9yaXR5 IG9mCi0gCSBjYXNlcy4gICovCi0tICAgICAgd2hpbGUgKG51bV9jaGFycyA9PSAxKQotKyAgICAg IHdoaWxlIChudW1fY2hhcnMgPT0gMSAmJiB0aGluZ3NfcHJpbnRlZCA8IG9wdGlvbnMtPnByaW50 X21heCkKLSAJewotIAkgIC8qIENvdW50IHRoZSBudW1iZXIgb2YgcmVwZXRpdGlvbnMuICAqLwot IAkgIHVuc2lnbmVkIGludCByZXBzID0gMDsKIEBAIC03MTUsNyArNzE1LDcgQEAgY19nZXRfc3Ry aW5nIChzdHJ1Y3QgdmFsdWUgKnZhbHVlLCBnZGJfYnl0ZSAqKmJ1ZmZlciwgaW50ICpsZW5ndGgs CiAgICAgICBJZiBsZW5ndGggcmV0dXJuZWQgZnJvbSByZWFkX3N0cmluZyB3YXMgPiAwLCByZXR1 cm4gdGhlIG51bWJlciBvZgogICAgICAgY2hhcmFjdGVycyByZWFkIGJ5IGRpdmlkaW5nIHRoZSBu dW1iZXIgb2YgYnl0ZXMgYnkgd2lkdGguICAqLwpAQCAtMzExMSw3ICszMTAyLDcgQEAgaW5kZXgg NjI4MDBiOC4uOTdkNTg3YiAxMDA2NDQKICAJCQl7ICQkID0gJDEuY29tcDsKICAJCQkgIGlmICgk MikgJCQgPSBmaWxsX2NvbXAgKERFTUFOR0xFX0NPTVBPTkVOVF9MT0NBTF9OQU1FLCAkJCwgJDIp OyB9CiBkaWZmIC0tZ2l0IGEvZ2RiL2NwLW5hbWVzcGFjZS5jIGIvZ2RiL2NwLW5hbWVzcGFjZS5j Ci1pbmRleCBkMmQ4ZjJlLi5iOTUwMTQ3IDEwMDY0NAoraW5kZXggZDJkOGYyZS4uYWYwYmEyOCAx MDA2NDQKIC0tLSBhL2dkYi9jcC1uYW1lc3BhY2UuYwogKysrIGIvZ2RiL2NwLW5hbWVzcGFjZS5j CiBAQCAtMzYsMTQgKzM2LDE3IEBAIHN0YXRpYyBzdHJ1Y3QgdXNpbmdfZGlyZWN0ICpjcF9jb3B5 X3VzaW5ncyAoc3RydWN0IHVzaW5nX2RpcmVjdCAqdXNpbmcsCkBAIC0zMjkxLDcgKzMyODIsNyBA QCBpbmRleCBkMmQ4ZjJlLi5iOTUwMTQ3IDEwMDY0NAogICAgICAgIGlmIChzeW0gIT0gTlVMTCkK ICAJcmV0dXJuIHN5bTsKICAgICAgfQotQEAgLTMyMCwyNSArMzc3LDgxIEBAIGxvb2t1cF9uYW1l c3BhY2Vfc2NvcGUgKGNvbnN0IGNoYXIgKm5hbWUsCitAQCAtMzIwLDI1ICszNzcsODcgQEAgbG9v a3VwX25hbWVzcGFjZV9zY29wZSAoY29uc3QgY2hhciAqbmFtZSwKICAgIG5hbWVzcGFjZSA9IGFs bG9jYSAoc2NvcGVfbGVuICsgMSk7CiAgICBzdHJuY3B5IChuYW1lc3BhY2UsIHNjb3BlLCBzY29w ZV9sZW4pOwogICAgbmFtZXNwYWNlW3Njb3BlX2xlbl0gPSAnXDAnOwpAQCAtMzM3MSwyMSArMzM2 MiwyNyBAQCBpbmRleCBkMmQ4ZjJlLi5iOTUwMTQ3IDEwMDY0NAogKyAgc3RydWN0IHVzaW5nX2Rp cmVjdCAqY3VycmVudDsKICsgIHN0cnVjdCBzeW1ib2wgKnN5bSA9IE5VTEw7CiArICBpbnQgZGly ZWN0aXZlX21hdGNoOwotKyAgaW50IGN1cnJlbnRfbGluZSA9IGZpbmRfcGNfbGluZSAoZ2V0X2Zy YW1lX3BjIChnZXRfc2VsZWN0ZWRfZnJhbWUgKE5VTEwpKSwgMCkubGluZTsKLSAKLS0gIC8qIEZp cnN0LCBnbyB0aHJvdWdoIHRoZSB1c2luZyBkaXJlY3RpdmVzLiAgSWYgYW55IG9mIHRoZW0gYWRk IG5ldworKyAgaW50IGN1cnJlbnRfbGluZTsKKysKICsgIGlmKCFkZWNsYXJhdGlvbl9vbmx5KQog KyAgICAvKiBGaXJzdCwgdHJ5IHRvIGZpbmQgdGhlIHN5bWJvbCBpbiB0aGUgZ2l2ZW4gbmFtZXNw YWNlLiAgKi8KICsgICAgc3ltID0gY3BfbG9va3VwX3N5bWJvbF9pbl9uYW1lc3BhY2UgKHNjb3Bl LCBuYW1lLCBibG9jaywgZG9tYWluKTsKLSsKKyAKKy0gIC8qIEZpcnN0LCBnbyB0aHJvdWdoIHRo ZSB1c2luZyBkaXJlY3RpdmVzLiAgSWYgYW55IG9mIHRoZW0gYWRkIG5ldwogKyAgaWYgKCBzeW0g IT0gTlVMTCkKICsgICAgcmV0dXJuIHN5bTsKICsKKysgIGlmIChoYXNfc3RhY2tfZnJhbWVzICgp KQorKyAgICBjdXJyZW50X2xpbmUgPSBmaW5kX3BjX2xpbmUgKGdldF9mcmFtZV9wYyAoZ2V0X3Nl bGVjdGVkX2ZyYW1lIChOVUxMKSksCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDApLmxpbmU7CisrICBlbHNlCisrICAgIGN1cnJlbnRfbGluZSA9IDA7Cisr CiArICAvKiBHbyB0aHJvdWdoIHRoZSB1c2luZyBkaXJlY3RpdmVzLiAgSWYgYW55IG9mIHRoZW0g YWRkIG5ldwogICAgICAgbmFtZXMgdG8gdGhlIG5hbWVzcGFjZSB3ZSdyZSBzZWFyY2hpbmcgaW4s IHNlZSBpZiB3ZSBjYW4gZmluZCBhCiAgICAgICBtYXRjaCBieSBhcHBseWluZyB0aGVtLiAgKi8K ICAKLUBAIC0zNDYsMzkgKzQ1OSw3NCBAQCBjcF9sb29rdXBfc3ltYm9sX25hbWVzcGFjZSAoY29u c3QgY2hhciAqbmFtZXNwYWNlLAorQEAgLTM0NiwzOSArNDY1LDc0IEBAIGNwX2xvb2t1cF9zeW1i b2xfbmFtZXNwYWNlIChjb25zdCBjaGFyICpuYW1lc3BhY2UsCiAgICAgICAgIGN1cnJlbnQgIT0g TlVMTDsKICAgICAgICAgY3VycmVudCA9IGN1cnJlbnQtPm5leHQpCiAgICAgIHsKQEAgLTM0ODgs NyArMzQ4NSw3IEBAIGluZGV4IGQyZDhmMmUuLmI5NTAxNDcgMTAwNjQ0CiAgfQogIAogIC8qIExv b2sgdXAgTkFNRSBpbiBCTE9DSydzIHN0YXRpYyBibG9jayBhbmQgaW4gZ2xvYmFsIGJsb2Nrcy4g IElmCi1AQCAtMzg4LDE3ICs1MzYsMTUgQEAgY3BfbG9va3VwX3N5bWJvbF9uYW1lc3BhY2UgKGNv bnN0IGNoYXIgKm5hbWVzcGFjZSwKK0BAIC0zODgsMTcgKzU0MiwxNSBAQCBjcF9sb29rdXBfc3lt Ym9sX25hbWVzcGFjZSAoY29uc3QgY2hhciAqbmFtZXNwYWNlLAogIAogIHN0YXRpYyBzdHJ1Y3Qg c3ltYm9sICoKICBsb29rdXBfc3ltYm9sX2ZpbGUgKGNvbnN0IGNoYXIgKm5hbWUsCkBAIC0zNTA3 LDcgKzM1MDQsNyBAQCBpbmRleCBkMmQ4ZjJlLi5iOTUwMTQ3IDEwMDY0NAogICAgaWYgKGFub255 bW91c19uYW1lc3BhY2UpCiAgICAgIHsKICAgICAgICAvKiBTeW1ib2xzIGRlZmluZWQgaW4gYW5v bnltb3VzIG5hbWVzcGFjZXMgaGF2ZSBleHRlcm5hbCBsaW5rYWdlCi1AQCAtNDA4LDEyICs1NTQs MTEgQEAgbG9va3VwX3N5bWJvbF9maWxlIChjb25zdCBjaGFyICpuYW1lLAorQEAgLTQwOCwxMiAr NTYwLDExIEBAIGxvb2t1cF9zeW1ib2xfZmlsZSAoY29uc3QgY2hhciAqbmFtZSwKICAgICAgICBj b25zdCBzdHJ1Y3QgYmxvY2sgKmdsb2JhbF9ibG9jayA9IGJsb2NrX2dsb2JhbF9ibG9jayAoYmxv Y2spOwogICAgICAgIAogICAgICAgIGlmIChnbG9iYWxfYmxvY2sgIT0gTlVMTCkKQEAgLTM1MjIs NyArMzUxOSw3IEBAIGluZGV4IGQyZDhmMmUuLmI5NTAxNDcgMTAwNjQ0CiAgICAgIH0KICAKICAg IGlmIChzeW0gIT0gTlVMTCkKLUBAIC00MzQsNiArNTc5LDcgQEAgbG9va3VwX3N5bWJvbF9maWxl IChjb25zdCBjaGFyICpuYW1lLAorQEAgLTQzNCw2ICs1ODUsNyBAQCBsb29rdXBfc3ltYm9sX2Zp bGUgKGNvbnN0IGNoYXIgKm5hbWUsCiAgICAgICAgc3ltID0gbG9va3VwX3Bvc3NpYmxlX25hbWVz cGFjZV9zeW1ib2wgKG5hbWUpOwogICAgICAgIGlmIChzeW0gIT0gTlVMTCkKICAJcmV0dXJuIHN5 bTsKQEAgLTM1MzAsNyArMzUyNyw3IEBAIGluZGV4IGQyZDhmMmUuLmI5NTAxNDcgMTAwNjQ0CiAg ICAgIH0KICAKICAgIHJldHVybiBOVUxMOwotQEAgLTQ2MSw5ICs2MDcsOCBAQCBjcF9sb29rdXBf bmVzdGVkX3R5cGUgKHN0cnVjdCB0eXBlICpwYXJlbnRfdHlwZSwKK0BAIC00NjEsOSArNjEzLDgg QEAgY3BfbG9va3VwX25lc3RlZF90eXBlIChzdHJ1Y3QgdHlwZSAqcGFyZW50X3R5cGUsCiAgCSAg IGxvb2t1cF9zeW1ib2xfbmFtZXNwYWNlIHdvcmtzIHdoZW4gbG9va2luZyB0aGVtIHVwLiAgKi8K ICAKICAJY29uc3QgY2hhciAqcGFyZW50X25hbWUgPSBUWVBFX1RBR19OQU1FIChwYXJlbnRfdHlw ZSk7CkBAIC0zNTQxLDcgKzM1MzgsNyBAQCBpbmRleCBkMmQ4ZjJlLi5iOTUwMTQ3IDEwMDY0NAog IAkJCQkJCQkgYmxvY2ssCiAgCQkJCQkJCSBWQVJfRE9NQUlOKTsKICAJaWYgKHN5bSA9PSBOVUxM IHx8IFNZTUJPTF9DTEFTUyAoc3ltKSAhPSBMT0NfVFlQRURFRikKLUBAIC03MDksNyArODU0LDcg QEAgY2hlY2tfb25lX3Bvc3NpYmxlX25hbWVzcGFjZV9zeW1ib2wgKGNvbnN0IGNoYXIgKm5hbWUs IGludCBsZW4sCitAQCAtNzA5LDcgKzg2MCw3IEBAIGNoZWNrX29uZV9wb3NzaWJsZV9uYW1lc3Bh Y2Vfc3ltYm9sIChjb25zdCBjaGFyICpuYW1lLCBpbnQgbGVuLAogIAogICAgbWVtY3B5IChuYW1l X2NvcHksIG5hbWUsIGxlbik7CiAgICBuYW1lX2NvcHlbbGVuXSA9ICdcMCc7CkBAIC0zNTUwLDcg KzM1NDcsNyBAQCBpbmRleCBkMmQ4ZjJlLi5iOTUwMTQ3IDEwMDY0NAogIAogICAgaWYgKHN5bSA9 PSBOVUxMKQogICAgICB7Ci1AQCAtNzQ5LDcgKzg5NCw3IEBAIGxvb2t1cF9wb3NzaWJsZV9uYW1l c3BhY2Vfc3ltYm9sIChjb25zdCBjaGFyICpuYW1lKQorQEAgLTc0OSw3ICs5MDAsNyBAQCBsb29r dXBfcG9zc2libGVfbmFtZXNwYWNlX3N5bWJvbCAoY29uc3QgY2hhciAqbmFtZSkKICAgICAgICBz dHJ1Y3Qgc3ltYm9sICpzeW07CiAgCiAgICAgICAgc3ltID0gbG9va3VwX2Jsb2NrX3N5bWJvbCAo Z2V0X3Bvc3NpYmxlX25hbWVzcGFjZV9ibG9jayAob2JqZmlsZSksCkBAIC0zNzkzLDcgKzM3OTAs NyBAQCBpbmRleCA3Y2IwMTZkLi5iYjllMzVhIDEwMDY0NAogICAgZGVmYXVsdF9zeW1maWxlX29m ZnNldHMsIC8qIHN5bV9vZmZzZXRzOiBwYXJzZSB1c2VyJ3Mgb2Zmc2V0cyB0bwogIAkJCSAgICAg IGludGVybmFsIGZvcm0gKi8KIGRpZmYgLS1naXQgYS9nZGIvZG9jL2dkYi50ZXhpbmZvIGIvZ2Ri L2RvYy9nZGIudGV4aW5mbwotaW5kZXggNWE1ZjU0Mi4uMmM2YmNlZiAxMDA2NDQKK2luZGV4IGYx NmI2ZTIuLmZlMzI4YzcgMTAwNjQ0CiAtLS0gYS9nZGIvZG9jL2dkYi50ZXhpbmZvCiArKysgYi9n ZGIvZG9jL2dkYi50ZXhpbmZvCiBAQCAtOTU5LDggKzk1OSwxMCBAQCBDb25uZWN0IHRvIHByb2Nl c3MgSUQgQHZhcntudW1iZXJ9LCBhcyB3aXRoIHRoZSBAY29kZXthdHRhY2h9IGNvbW1hbmQuCkBA IC0xMjA1NywyNyArMTIwNTQsMTAgQEAgaW5kZXggYTg0MDAzZi4uOTI0YzFjNSAxMDA2NDQKICAg IGRlZmF1bHRfc3ltZmlsZV9vZmZzZXRzLAkvKiBzeW1fb2Zmc2V0czogZHVtbXkgRklYTUUgdGls IGltcGxlbSBzeW0gcmVsb2MgKi8KICAgIGRlZmF1bHRfc3ltZmlsZV9zZWdtZW50cywJLyogc3lt X3NlZ21lbnRzOiBHZXQgc2VnbWVudCBpbmZvcm1hdGlvbiBmcm9tCiBkaWZmIC0tZ2l0IGEvZ2Ri L29iamZpbGVzLmMgYi9nZGIvb2JqZmlsZXMuYwotaW5kZXggMWY3NDg5Zi4uYjlhN2VkNiAxMDA2 NDQKK2luZGV4IDhkY2NhNzAuLjRiMjVhNWEgMTAwNjQ0CiAtLS0gYS9nZGIvb2JqZmlsZXMuYwog KysrIGIvZ2RiL29iamZpbGVzLmMKLUBAIC00NTksMTIgKzQ1OSwxNCBAQCBmcmVlX29iamZpbGUg KHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlKQotIAotICAgdW5saW5rX29iamZpbGUgKG9iamZpbGUp OwotIAotLSAgLyogSWYgd2UgYXJlIGdvaW5nIHRvIGZyZWUgdGhlIHJ1bnRpbWUgY29tbW9uIG9i amZpbGUsIG1hcmsgaXQKLS0gICAgIGFzIHVuYWxsb2NhdGVkLiAgKi8KLSsgIC8qIElmIHdlIGFy ZSBnb2luZyB0byBmcmVlIGFueSBleGlzdGluZyBPQkpGSUxFIHJlZmVyZW5jZSwgY2xlYXIgaXQu ICAqLwotIAotICAgaWYgKG9iamZpbGUgPT0gcnRfY29tbW9uX29iamZpbGUpCi0gICAgIHJ0X2Nv bW1vbl9vYmpmaWxlID0gTlVMTDsKLSAKLSsgIGlmIChvYmpmaWxlID09IHN5bWZpbGVfb2JqZmls ZSkKLSsgICAgc3ltZmlsZV9vYmpmaWxlID0gTlVMTDsKLSsKLSAgIC8qIEJlZm9yZSB0aGUgc3lt Ym9sIHRhYmxlIGNvZGUgd2FzIHJlZG9uZSB0byBtYWtlIGl0IGVhc2llciB0bwotICAgICAgc2Vs ZWN0aXZlbHkgbG9hZCBhbmQgcmVtb3ZlIGluZm9ybWF0aW9uIHBhcnRpY3VsYXIgdG8gYSBzcGVj aWZpYwotICAgICAgbGlua2FnZSB1bml0LCBnZGIgdXNlZCB0byBkbyB0aGVzZSB0aGluZ3Mgd2hl bmV2ZXIgdGhlIG1vbm9saXRoaWMKLUBAIC03MzEsNiArNzMzLDIwIEBAIGhhdmVfcGFydGlhbF9z eW1ib2xzICh2b2lkKQorQEAgLTczMSw2ICs3MzEsMjAgQEAgaGF2ZV9wYXJ0aWFsX3N5bWJvbHMg KHZvaWQpCiAgICAgIGlmIChvYmpmaWxlX2hhc19wYXJ0aWFsX3N5bWJvbHMgKG9mcCkpCiAgICAg ICAgcmV0dXJuIDE7CiAgICB9CkBAIC0xNzkyMyw3ICsxNzkwMyw3IEBAIGluZGV4IDQ5YzA0Mzcu Ljg0YTQ3NmUgMTAwNjQ0CiArICByZXR1cm4gMTsKICt9CiBkaWZmIC0tZ2l0IGEvZ2RiL3B5dGhv bi9weS12YWx1ZS5jIGIvZ2RiL3B5dGhvbi9weS12YWx1ZS5jCi1pbmRleCAzZDg4YWEzLi45ZmEx YzQ0IDEwMDY0NAoraW5kZXggNzE0YWExMS4uOWZhMWM0NCAxMDA2NDQKIC0tLSBhL2dkYi9weXRo b24vcHktdmFsdWUuYwogKysrIGIvZ2RiL3B5dGhvbi9weS12YWx1ZS5jCiBAQCAtMjUsNiArMjUs NyBAQApAQCAtMTc5NDUsMjcgKzE3OTI1LDcgQEAgaW5kZXggM2Q4OGFhMy4uOWZhMWM0NCAxMDA2 NDQKICAjZGVmaW5lIGJ1aWx0aW5fdHlwZV9weWJvb2wgXAogICAgbGFuZ3VhZ2VfYm9vbF90eXBl IChweXRob25fbGFuZ3VhZ2UsIHB5dGhvbl9nZGJhcmNoKQogIAotQEAgLTMyNCw3ICszMjksMTgg QEAgdmFscHlfZ2V0aXRlbSAoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICprZXkpCi0gCSAgICAg dHlwZS4gICovCi0gCSAgc3RydWN0IHZhbHVlICppZHggPSBjb252ZXJ0X3ZhbHVlX2Zyb21fcHl0 aG9uIChrZXkpOwotIAkgIGlmIChpZHggIT0gTlVMTCkKLS0JICAgIHJlc192YWwgPSB2YWx1ZV9z dWJzY3JpcHQgKHRtcCwgdmFsdWVfYXNfbG9uZyAoaWR4KSk7Ci0rCSAgICB7Ci0rCSAgICAgIC8q IENoZWNrIHRoZSB2YWx1ZSdzIHR5cGUgaXMgc29tZXRoaW5nIHRoYXQgY2FuIGJlIGFjY2Vzc2Vk IHZpYQotKwkJIGEgc3Vic2NyaXB0LiAgKi8KLSsJICAgICAgc3RydWN0IHR5cGUgKnR5cGU7Ci0r CSAgICAgIHRtcCA9IGNvZXJjZV9yZWYgKHRtcCk7Ci0rCSAgICAgIHR5cGUgPSBjaGVja190eXBl ZGVmICh2YWx1ZV90eXBlICh0bXApKTsKLSsJICAgICAgaWYgKFRZUEVfQ09ERSAodHlwZSkgIT0g VFlQRV9DT0RFX0FSUkFZCi0rCQkgICYmIFRZUEVfQ09ERSAodHlwZSkgIT0gVFlQRV9DT0RFX1BU UikKLSsJCSAgZXJyb3IoIF8oIkNhbm5vdCBzdWJzY3JpcHQgcmVxdWVzdGVkIHR5cGUiKSk7Ci0r CSAgICAgIGVsc2UKLSsJCXJlc192YWwgPSB2YWx1ZV9zdWJzY3JpcHQgKHRtcCwgdmFsdWVfYXNf bG9uZyAoaWR4KSk7Ci0rCSAgICB9Ci0gCX0KLSAgICAgfQotIAotQEAgLTg5MSw3ICs5MDcsMzQg QEAgY29udmVydF92YWx1ZV9mcm9tX3B5dGhvbiAoUHlPYmplY3QgKm9iaikKK0BAIC05MDIsNyAr OTA3LDM0IEBAIGNvbnZlcnRfdmFsdWVfZnJvbV9weXRob24gKFB5T2JqZWN0ICpvYmopCiAgCXsK ICAJICBMT05HRVNUIGwgPSBQeUxvbmdfQXNMb25nTG9uZyAob2JqKTsKICAKQEAgLTE4MDAxLDcg KzE3OTYxLDcgQEAgaW5kZXggM2Q4OGFhMy4uOWZhMWM0NCAxMDA2NDQKICAJICAgIHZhbHVlID0g dmFsdWVfZnJvbV9sb25nZXN0IChidWlsdGluX3R5cGVfcHlsb25nLCBsKTsKICAJfQogICAgICAg IGVsc2UgaWYgKFB5RmxvYXRfQ2hlY2sgKG9iaikpCi1AQCAtOTUwLDYgKzk5MywyNSBAQCBnZGJw eV9oaXN0b3J5IChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCitAQCAtOTYxLDYgKzk5 MywyNSBAQCBnZGJweV9oaXN0b3J5IChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiAg ICByZXR1cm4gdmFsdWVfdG9fdmFsdWVfb2JqZWN0IChyZXNfdmFsKTsKICB9CiAgCkBAIC0xODAy Nyw3ICsxNzk4Nyw3IEBAIGluZGV4IDNkODhhYTMuLjlmYTFjNDQgMTAwNjQ0CiAgdm9pZAogIGdk YnB5X2luaXRpYWxpemVfdmFsdWVzICh2b2lkKQogIHsKLUBAIC05NjAsNiArMTAyMiw4IEBAIGdk YnB5X2luaXRpYWxpemVfdmFsdWVzICh2b2lkKQorQEAgLTk3MSw2ICsxMDIyLDggQEAgZ2RicHlf aW5pdGlhbGl6ZV92YWx1ZXMgKHZvaWQpCiAgICBQeU1vZHVsZV9BZGRPYmplY3QgKGdkYl9tb2R1 bGUsICJWYWx1ZSIsIChQeU9iamVjdCAqKSAmdmFsdWVfb2JqZWN0X3R5cGUpOwogIAogICAgdmFs dWVzX2luX3B5dGhvbiA9IE5VTEw7CkBAIC0xODkzMSw3ICsxODg5MSw3IEBAIGluZGV4IDFjMzc4 MDEuLjU5NGViMTYgMTAwNjQ0CiAgCSAgcHJpbnRfdmFyaWFibGVfYW5kX3ZhbHVlIChOVUxMLCBz eW0sIGZyYW1lLCBzdHJlYW0sIDQgKiBudW1fdGFicyk7CiAgCSAgYnJlYWs7CiBkaWZmIC0tZ2l0 IGEvZ2RiL3N5bWZpbGUuYyBiL2dkYi9zeW1maWxlLmMKLWluZGV4IDJmMzQ0MWMuLjc3NjA2NmQg MTAwNjQ0CitpbmRleCAyNDU4MjAxLi5jMzFiNzJhIDEwMDY0NAogLS0tIGEvZ2RiL3N5bWZpbGUu YwogKysrIGIvZ2RiL3N5bWZpbGUuYwogQEAgLTkyMSw2ICs5MjEsMTcgQEAgbmV3X3N5bWZpbGVf b2JqZmlsZSAoc3RydWN0IG9iamZpbGUgKm9iamZpbGUsIGludCBhZGRfZmxhZ3MpCkBAIC0xOTAw MiwxOCArMTg5NjIsNyBAQCBpbmRleCAyZjM0NDFjLi43NzYwNjZkIDEwMDY0NAogICAgICB7CiAg ICAgICAgd3JhcF9oZXJlICgiIik7CiAgICAgICAgcHJpbnRmX3VuZmlsdGVyZWQgKF8oIihubyBk ZWJ1Z2dpbmcgc3ltYm9scyBmb3VuZCkuLi4iKSk7Ci1AQCAtMTE1MCw3ICsxMTY3LDkgQEAgc3lt Ym9sX2ZpbGVfY2xlYXIgKGludCBmcm9tX3R0eSkKLSAgICAgIGRlc2NyaXB0b3JzIGFzIHdlbGwu ICAqLwotICAgbm9fc2hhcmVkX2xpYnJhcmllcyAoTlVMTCwgZnJvbV90dHkpOwotIAotLSAgc3lt ZmlsZV9vYmpmaWxlID0gTlVMTDsKLSsgIC8qIGZyZWVfb2JqZmlsZSBzaG91bGQgaGF2ZSBjbGVh cmVkIGl0LiAgKi8KLSsgIGdkYl9hc3NlcnQgKHN5bWZpbGVfb2JqZmlsZSA9PSBOVUxMKTsKLSsK LSAgIGlmIChmcm9tX3R0eSkKLSAgICAgcHJpbnRmX3VuZmlsdGVyZWQgKF8oIk5vIHN5bWJvbCBm aWxlIG5vdy5cbiIpKTsKLSB9Ci1AQCAtMjQyMiwxNCArMjQ0MSwxNSBAQCByZXJlYWRfc3ltYm9s cyAodm9pZCkKK0BAIC0yNDIyLDE0ICsyNDM5LDE1IEBAIHJlcmVhZF9zeW1ib2xzICh2b2lkKQog IAkgICAgICAgICB6ZXJvIGlzIE9LIHNpbmNlIGRieHJlYWQuYyBhbHNvIGRvZXMgd2hhdCBpdCBu ZWVkcyB0byBkbyBpZgogIAkgICAgICAgICBvYmpmaWxlLT5nbG9iYWxfcHN5bWJvbHMuc2l6ZSBp cyAwLiAgKi8KICAJICAgICAgKCpvYmpmaWxlLT5zZi0+c3ltX3JlYWQpIChvYmpmaWxlLCAwKTsK QEAgLTE5MDMxLDcgKzE4OTgwLDcgQEAgaW5kZXggMmYzNDQxYy4uNzc2MDY2ZCAxMDA2NDQKICAJ ICAgICAgLyogV2UncmUgZG9uZSByZWFkaW5nIHRoZSBzeW1ib2wgZmlsZTsgZmluaXNoIG9mZiBj b21wbGFpbnRzLiAgKi8KICAJICAgICAgY2xlYXJfY29tcGxhaW50cyAoJnN5bWZpbGVfY29tcGxh aW50cywgMCwgMSk7CiAgCi1AQCAtMjcyNyw3ICsyNzQ3LDcgQEAgYWxsb2NhdGVfc3ltdGFiIChj aGFyICpmaWxlbmFtZSwgc3RydWN0IG9iamZpbGUgKm9iamZpbGUpCitAQCAtMjcyNyw3ICsyNzQ1 LDcgQEAgYWxsb2NhdGVfc3ltdGFiIChjaGFyICpmaWxlbmFtZSwgc3RydWN0IG9iamZpbGUgKm9i amZpbGUpCiAgfQogIAogIHN0cnVjdCBwYXJ0aWFsX3N5bXRhYiAqCkBAIC0xOTA0MCw3ICsxODk4 OSw3IEBAIGluZGV4IDJmMzQ0MWMuLjc3NjA2NmQgMTAwNjQ0CiAgewogICAgc3RydWN0IHBhcnRp YWxfc3ltdGFiICpwc3ltdGFiOwogIAotQEAgLTMwNDEsNyArMzA2MSw4IEBAIGFnYWluMjoKK0BA IC0zMDQxLDcgKzMwNTksOCBAQCBhZ2FpbjI6CiAgCiAgc3RydWN0IHBhcnRpYWxfc3ltdGFiICoK ICBzdGFydF9wc3ltdGFiX2NvbW1vbiAoc3RydWN0IG9iamZpbGUgKm9iamZpbGUsCkBAIC0yNjAz Myw3ICsyNTk4Miw3IEBAIGluZGV4IDAwMDAwMDAuLmU5ZDE4YjcKICtnZGJfdGVzdCAicHl0aG9u IHByaW50IHQwIiAiXFw8Z2RiLkluZmVyaW9yVGhyZWFkIG9iamVjdCBhdCAweFxbXFs6eGRpZ2l0 OlxdXF0rPiIgInZlcmlmeSBJbmZlcmlvclRocmVhZCBvYmplY3QiCiArZ2RiX3Rlc3QgInB5dGhv biBwcmludCAncmVzdWx0ID0nLCB0MC5udW0iICIgPSBcWzAtOVxdKyIgInRlc3QgSW5mZXJpb3Iu bnVtIgogZGlmZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1wcmV0dHlwcmlu dC5leHAgYi9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHktcHJldHR5cHJpbnQuZXhwCi1pbmRl eCBkMmRiNWJjLi40ZGUxNjIwIDEwMDY0NAoraW5kZXggYjRiMzc3Ni4uMzU5YzRlZCAxMDA2NDQK IC0tLSBhL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1wcmV0dHlwcmludC5leHAKICsrKyBi L2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1wcmV0dHlwcmludC5leHAKIEBAIC0yNywxMiAr MjcsMjAgQEAgc2V0IGJpbmZpbGUgJHtvYmpkaXJ9LyR7c3ViZGlyfS8ke3Rlc3RmaWxlfQpAQCAt MjYwNjIsMjAgKzI2MDExLDggQEAgaW5kZXggZDJkYjViYy4uNGRlMTYyMCAxMDA2NDQKICsgIH0K ICB9CiAgCi0gcHJvYyBydW5fbGFuZ190ZXN0cyB7bGFuZ30gewotQEAgLTc5LDYgKzg3LDExIEBA IHByb2MgcnVuX2xhbmdfdGVzdHMge2xhbmd9IHsKLSAJZ2RiX3Rlc3QgInByaW50IGRlcml2ZWQi IFwKLSAJICAgICIgPSBcey4qPFZiYXNlMT4gPSBwcCBjbGFzcyBuYW1lOiBWYmFzZTEuKjxWYmFz ZTI+ID0gXHsuKjxWaXJ0dWFsVGVzdD4gPSBwcCB2YWx1ZSB2YXJpYWJsZSBpczogMSwuKm1lbWJl cnMgb2YgVmJhc2UyOi4qX3ZwdHIuVmJhc2UyID0gJGhleC4qPFZiYXNlMz4gPSBcey4qbWVtYmVy cyBvZiBWYmFzZTMuKm1lbWJlcnMgb2YgRGVyaXZlZDouKnZhbHVlID0gMi4qIgotIAlnZGJfdGVz dCAicHJpbnQgbnMgIiAiXCJlbWJlZGRlZFxcXFwwMDBudWxsXFxcXDAwMHN0cmluZ1wiIgotKwln ZGJfcHlfdGVzdF9zaWxlbnRfY21kICJzZXQgcHJpbnQgZWxlbWVudHMgMyIgIiIgMQotKwlnZGJf dGVzdCAicHJpbnQgbnMiICJlbWJcLlwuXC4uIgotKwlnZGJfcHlfdGVzdF9zaWxlbnRfY21kICJz ZXQgcHJpbnQgZWxlbWVudHMgMTAiICIiIDEKLSsJZ2RiX3Rlc3QgInByaW50IG5zIiAiZW1iZWRk ZWRcXFxcMDAwblwuXC5cLi4iCi0rCWdkYl9weV90ZXN0X3NpbGVudF9jbWQgInNldCBwcmludCBl bGVtZW50cyAyMDAiICIiIDEKLSAgICAgfQotIAotICAgICBnZGJfdGVzdCAicHJpbnQgeCIgIiA9 ICRoZXggXCJ0aGlzIGlzIHhcIiIKLUBAIC04Niw2ICs5OSw4IEBAIHByb2MgcnVuX2xhbmdfdGVz dHMge2xhbmd9IHsKKyAjIFJ1biBhIGNvbW1hbmQgaW4gR0RCLCBhbmQgcmVwb3J0IGEgZmFpbHVy ZSBpZiBhIFB5dGhvbiBleGNlcHRpb24gaXMgdGhyb3duLgorQEAgLTEwMiw2ICsxMTAsOCBAQCBw cm9jIHJ1bl9sYW5nX3Rlc3RzIHtsYW5nfSB7CiAgCiAgICAgIGdkYl90ZXN0ICJwcmludCBjIiAi ID0gY29udGFpbmVyICRoZXggXCJjb250YWluZXJcIiB3aXRoIDIgZWxlbWVudHMgPSB7JG5sICou MC4gPSAyMywkbmwgKi4xLiA9IDcyJG5sfSIKICAKQEAgLTI2MTI3LDQ4ICsyNjA2NCwxMSBAQCBp bmRleCBjZWE2YWUwLi5jOWE2M2Q0IDEwMDY0NAogIHByb2MgdGVzdF90ZW1wbGF0ZV9hcmcge3R5 cGV9IHsKICAgICAgZ2xvYmFsIHRlc3RmaWxlIHNyY2RpciBzdWJkaXIgc3JjZmlsZSBiaW5maWxl CiAgICAgIGlmIHsgW2dkYl9jb21waWxlICIke3NyY2Rpcn0vJHtzdWJkaXJ9LyR7c3JjZmlsZX0i ICIke2JpbmZpbGV9IiBcCi1kaWZmIC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3B5 LXZhbHVlLmMgYi9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHktdmFsdWUuYwotaW5kZXggZjNk NjI4NC4uMDIzZDgzMCAxMDA2NDQKLS0tLSBhL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS12 YWx1ZS5jCi0rKysgYi9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHktdmFsdWUuYwotQEAgLTM3 LDYgKzM3LDEzIEBAIHR5cGVkZWYgc3RydWN0IHMgKlBUUjsKLSAKLSBlbnVtIGUgZXZhbHVlID0g VFdPOwotIAotKyNpZmRlZiBfX2NwbHVzcGx1cwotK3ZvaWQgcHRyX3JlZihpbnQqJiBycHRyX2lu dCkKLSt7Ci0rICByZXR1cm47IC8qIGJyZWFrIHRvIGluc3BlY3QgcG9pbnRlciBieSByZWZlcmVu Y2UuICovCi0rfQotKyNlbmRpZgotKwotIGludAotIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2 W10pCi0gewotQEAgLTQ2LDEwICs1MywxOCBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltd KQotICAgUFRSIHggPSAmczsKLSAgIGNoYXIgc3RbMTddID0gImRpdmlkZSBldCBpbXBlcmEiOwot ICAgY2hhciBudWxsc3RbMTddID0gImRpdmlkZVwwZXRcMGltcGVyYSI7Ci0rICBpbnQgYVszXSA9 IHsxLDIsM307Ci0rICBpbnQgKnAgPSBhOwotKyAgaW50IGkgPSAyOwotKyAgaW50ICpwdHJfaSA9 ICZpOwotIAotICAgcy5hID0gMzsKLSAgIHMuYiA9IDU7Ci0gICB1LmEgPSA3OwotIAotKyNpZmRl ZiBfX2NwbHVzcGx1cwotKyAgcHRyX3JlZihwdHJfaSk7Ci0rI2VuZGlmCi0rCi0gICByZXR1cm4g MDsgICAgICAvKiBicmVhayB0byBpbnNwZWN0IHN0cnVjdCBhbmQgdW5pb24gKi8KLSB9CiBkaWZm IC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3B5LXZhbHVlLmV4cCBiL2dkYi90ZXN0 c3VpdGUvZ2RiLnB5dGhvbi9weS12YWx1ZS5leHAKLWluZGV4IDliNDE5MGQuLmI5ZjJjM2MgMTAw NjQ0CitpbmRleCAyOTU4MjMzLi4wZGUxY2FlIDEwMDY0NAogLS0tIGEvZ2RiL3Rlc3RzdWl0ZS9n ZGIucHl0aG9uL3B5LXZhbHVlLmV4cAogKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3B5 LXZhbHVlLmV4cAotQEAgLTI5MiwyMSArMjkyLDEwNiBAQCBwcm9jIHRlc3RfdmFsdWVfYWZ0ZXJf ZGVhdGgge30geworQEAgLTI5Miw2ICsyOTIsMTUgQEAgcHJvYyB0ZXN0X3ZhbHVlX2FmdGVyX2Rl YXRoIHt9IHsKICAgICAgInByaW50IHZhbHVlJ3MgdHlwZSIKICB9CiAgCkBAIC0yNjE4MSw3NyAr MjYwODEsMTAgQEAgaW5kZXggOWI0MTkwZC4uYjlmMmMzYyAxMDA2NDQKICsgIGdkYl90ZXN0ICJw eXRob24gcHJpbnQgdiIgIjUiICJwcmludCB2YWx1ZSBmb3IgY2FzdCB0ZXN0IgogK30KICsKLSsj IFJlZ3Jlc3Npb24gdGVzdCBmb3IgaW52YWxpZCBzdWJzY3JpcHQgb3BlcmF0aW9ucy4gIFRoZSBi dWcgd2FzIHRoYXQKLSsjIHRoZSB0eXBlIG9mIHRoZSB2YWx1ZSB3YXMgbm90IGJlaW5nIGNoZWNr ZWQgYmVmb3JlIGFsbG93aW5nIGEKLSsjIHN1YnNjcmlwdCBvcGVyYXRpb24gdG8gcHJvY2VlZC4K LSsKLStwcm9jIHRlc3Rfc3Vic2NyaXB0X3JlZ3Jlc3Npb24ge2xhbmd9IHsKLSsKLSsgZ2xvYmFs IHNyY2RpciBzdWJkaXIgc3JjZmlsZSBiaW5maWxlIHRlc3RmaWxlIGhleAotKyBpZiB7IFtnZGJf Y29tcGlsZSAiJHtzcmNkaXJ9LyR7c3ViZGlyfS8ke3NyY2ZpbGV9IiAiJHtiaW5maWxlfSIgZXhl Y3V0YWJsZSAiZGVidWcgJGxhbmciXSAhPSAiIiB9IHsKLSsgICAgIHVudGVzdGVkICJDb3VsZG4n dCBjb21waWxlICR7c3JjZmlsZX0gaW4gJGxhbmcgbW9kZSIKLSsgICAgIHJldHVybiAtMQotKyB9 Ci0rCi0rICMgU3RhcnQgd2l0aCBhIGZyZXNoIGdkYi4KLSsgZ2RiX2V4aXQKLSsgZ2RiX3N0YXJ0 Ci0rIGdkYl9yZWluaXRpYWxpemVfZGlyICRzcmNkaXIvJHN1YmRpcgotKyBnZGJfbG9hZCAke2Jp bmZpbGV9Ci0rCi0rIGlmICFbcnVudG9fbWFpbiBdIHRoZW4gewotKyAgICAgcGVycm9yICJjb3Vs ZG4ndCBydW4gdG8gYnJlYWtwb2ludCIKLSsgICAgIHJldHVybgotKyB9Ci0rCi0rIGlmIHskbGFu ZyA9PSAiYysrIn0gewotKyAgICAgZ2RiX2JyZWFrcG9pbnQgW2dkYl9nZXRfbGluZV9udW1iZXIg ImJyZWFrIHRvIGluc3BlY3QgcG9pbnRlciBieSByZWZlcmVuY2UiXQotKyAgICAgZ2RiX2NvbnRp bnVlX3RvX2JyZWFrcG9pbnQgImJyZWFrIHRvIGluc3BlY3QgcG9pbnRlciBieSByZWZlcmVuY2Ui Ci0rCi0rICAgICBnZGJfcHlfdGVzdF9zaWxlbnRfY21kICJwcmludCBycHRyX2ludCIgXAotKwkg Ik9idGFpbiBhZGRyZXNzIiAxCi0rICAgICBnZGJfcHlfdGVzdF9zaWxlbnRfY21kICJweXRob24g cnB0ciA9IGdkYi5oaXN0b3J5KDApIiBcCi0rCSAiT2J0YWlucyB2YWx1ZSBmcm9tIEdEQiIgMQot KyAgICAgZ2RiX3Rlc3QgInB5dGhvbiBwcmludCBycHRyXFswXF0iICIyIiAiQ2hlY2sgcG9pbnRl ciBwYXNzZWQgYXMgcmVmZXJlbmNlIgotKyB9Ci0rCi0rIGdkYl9icmVha3BvaW50IFtnZGJfZ2V0 X2xpbmVfbnVtYmVyICJicmVhayB0byBpbnNwZWN0IHN0cnVjdCBhbmQgdW5pb24iXQotKyBnZGJf Y29udGludWVfdG9fYnJlYWtwb2ludCAiYnJlYWsgdG8gaW5zcGVjdCBzdHJ1Y3QgYW5kIHVuaW9u IgotKwotKyBnZGJfcHlfdGVzdF9zaWxlbnRfY21kICJweXRob24gaW50diA9IGdkYi5WYWx1ZSgx KSIgXAotKyAgICAgIkNyZWF0ZSBhIHZhbHVlIGZvciBzdWJzY3JpcHQgdGVzdCIgMQotKyBnZGJf cHlfdGVzdF9zaWxlbnRfY21kICJweXRob24gc3RyaW5ndiA9IGdkYi5WYWx1ZShcImZvb1wiKSIg XAotKyAgICAgIkNyZWF0ZSBhIHZhbHVlIGZvciBzdWJzY3JpcHQgdGVzdCIgMQotKwotKyAjIFRy eSB0byBhY2Nlc3MgYW4gaW50IHdpdGggYSBzdWJzY3JpcHQuICBUaGlzIHNob3VsZCBmYWlsLgot KyBnZGJfdGVzdCAicHl0aG9uIHByaW50IGludHYiICIxIiAiQmFzZWxpbmUgcHJpbnQgb2YgYSBQ eXRob24gdmFsdWUiCi0rIGdkYl90ZXN0ICJweXRob24gcHJpbnQgaW50dlxbMFxdIiAiUnVudGlt ZUVycm9yOiBDYW5ub3Qgc3Vic2NyaXB0IHJlcXVlc3RlZCB0eXBlLioiIFwKLSsgICAgICJBdHRl bXB0IHRvIGFjY2VzcyBhbiBpbnRlZ2VyIHdpdGggYSBzdWJzY3JpcHQiCi0rCi0rICMgVHJ5IHRv IGFjY2VzcyBhIHN0cmluZyB3aXRoIGEgc3Vic2NyaXB0LiAgVGhpcyBzaG91bGQgcGFzcy4KLSsg Z2RiX3Rlc3QgInB5dGhvbiBwcmludCBzdHJpbmd2IiAiZm9vLiIgIkJhc2VsaW5lIHByaW50IG9m IGEgUHl0aG9uIHZhbHVlIgotKyBnZGJfdGVzdCAicHl0aG9uIHByaW50IHN0cmluZ3ZcWzBcXSIg ImYuIiAiQXR0ZW1wdCB0byBhY2Nlc3MgYSBzdHJpbmcgd2l0aCBhIHN1YnNjcmlwdCIKLSsKLSsg IyBUcnkgdG8gYWNjZXNzIGFuIGludCBhcnJheSB2aWEgYSBwb2ludGVyIHdpdGggYSBzdWJzY3Jp cHQuICBUaGlzIHNob3VsZCBwYXNzLgotKyBnZGJfcHlfdGVzdF9zaWxlbnRfY21kICJwcmludCBw IiAiQnVpbGQgcG9pbnRlciB0byBhcnJheSIgMQotKyBnZGJfcHlfdGVzdF9zaWxlbnRfY21kICJw eXRob24gcG9pbnRlciA9IGdkYi5oaXN0b3J5KDApIiAiIiAxCi0rIGdkYl90ZXN0ICJweXRob24g cHJpbnQgcG9pbnRlclxbMFxdIiAiMSIgIkFjY2VzcyBhcnJheSB2aWEgcG9pbnRlciB3aXRoIGlu dCBzdWJzY3JpcHQiCi0rIGdkYl90ZXN0ICJweXRob24gcHJpbnQgcG9pbnRlclxbaW50dlxdIiAi MiIgIkFjY2VzcyBhcnJheSB2aWEgcG9pbnRlciB3aXRoIHZhbHVlIHN1YnNjcmlwdCIKLSsKLSsg IyBUcnkgdG8gYWNjZXNzIGEgc2luZ2xlIGRpbWVuc2lvbiBhcnJheSB3aXRoIGEgc3Vic2NyaXB0 IHRvIHRoZQotKyAjIHJlc3VsdC4gIFRoaXMgc2hvdWxkIGZhaWwuCi0rIGdkYl90ZXN0ICJweXRo b24gcHJpbnQgcG9pbnRlclxbaW50dlxdXFswXF0iICJSdW50aW1lRXJyb3I6IENhbm5vdCBzdWJz Y3JpcHQgcmVxdWVzdGVkIHR5cGUuKiIgXAotKyAgICAgIkF0dGVtcHQgdG8gYWNjZXNzIGFuIGlu dGVnZXIgd2l0aCBhIHN1YnNjcmlwdCIgICAKLSsKLSsgIyBMYXN0bHksIHRlc3Qgc3Vic2NyaXB0 IGFjY2VzcyB0byBhbiBhcnJheSB3aXRoIG11bHRpcGxlCi0rICMgZGltZW5zaW9ucy4gIFRoaXMg c2hvdWxkIHBhc3MuCi0rIGdkYl9weV90ZXN0X3NpbGVudF9jbWQgInByaW50IHtcImZ1IFwiLFwi Zm9vXCIsXCJiYXJcIn0iICJCdWlsZCBhcnJheSIgMQotKyBnZGJfcHlfdGVzdF9zaWxlbnRfY21k ICJweXRob24gbWFycmF5ID0gZ2RiLmhpc3RvcnkoMCkiICIiIDEKLSsgZ2RiX3Rlc3QgInB5dGhv biBwcmludCBtYXJyYXlcWzFcXVxbMlxdIiAiby4iICJUZXN0IG11bHRpcGxlIHN1YnNjcmlwdCIK LSt9ICAgCi0rCi0gIyBTdGFydCB3aXRoIGEgZnJlc2ggZ2RiLgotIAorICMgUmVncmVzc2lvbiB0 ZXN0IGZvciBpbnZhbGlkIHN1YnNjcmlwdCBvcGVyYXRpb25zLiAgVGhlIGJ1ZyB3YXMgdGhhdAor ICMgdGhlIHR5cGUgb2YgdGhlIHZhbHVlIHdhcyBub3QgYmVpbmcgY2hlY2tlZCBiZWZvcmUgYWxs b3dpbmcgYQorICMgc3Vic2NyaXB0IG9wZXJhdGlvbiB0byBwcm9jZWVkLgorQEAgLTM2NiwxNiAr Mzc1LDIzIEBAIHByb2MgdGVzdF9zdWJzY3JpcHRfcmVncmVzc2lvbiB7bGFuZ30gewogIGdkYl9l eGl0CiAgZ2RiX3N0YXJ0CiAgZ2RiX3JlaW5pdGlhbGl6ZV9kaXIgJHNyY2Rpci8kc3ViZGlyCkBA IC0yNjI2Niw4ICsyNjA5OSw4IEBAIGluZGV4IDliNDE5MGQuLmI5ZjJjM2MgMTAwNjQ0CiAraWYg IVtweXRob25fc3VwcG9ydGVkXSB0aGVuIHsKICsgIHVuc3VwcG9ydGVkICJweXRob24gc3VwcG9y dCBpcyBkaXNhYmxlZCIKICsgIHJldHVybiAtMQotK30KLSsKKyB9CisgCiArc2V0IHRlc3RmaWxl ICJweS12YWx1ZSIKICtzZXQgc3JjZmlsZSAke3Rlc3RmaWxlfS5jCiArc2V0IGJpbmZpbGUgJHtv YmpkaXJ9LyR7c3ViZGlyfS8ke3Rlc3RmaWxlfQpAQCAtMjYyNzUsMjQgKzI2MTA4LDIxIEBAIGlu ZGV4IDliNDE5MGQuLmI5ZjJjM2MgMTAwNjQ0CiAraWYgeyBbZ2RiX2NvbXBpbGUgIiR7c3JjZGly fS8ke3N1YmRpcn0vJHtzcmNmaWxlfSIgIiR7YmluZmlsZX0iIGV4ZWN1dGFibGUge2RlYnVnfV0g IT0gIiIgfSB7CiArICAgIHVudGVzdGVkICJDb3VsZG4ndCBjb21waWxlICR7c3JjZmlsZX0iCiAr ICAgIHJldHVybiAtMQotIH0KLSAKKyt9CisrCiArZ2RiX2xvYWQgJHtiaW5maWxlfQogKwogIHRl c3RfdmFsdWVfY3JlYXRpb24KICB0ZXN0X3ZhbHVlX251bWVyaWNfb3BzCiAgdGVzdF92YWx1ZV9i b29sZWFuCi1AQCAtMzIyLDMgKzQwNywxMCBAQCBpZiAhW3J1bnRvX21haW5dIHRoZW4geworQEAg LTM5MSw2ICs0MDcsNyBAQCBpZiAhW3J1bnRvX21haW5dIHRoZW4gewogIAogIHRlc3RfdmFsdWVf aW5faW5mZXJpb3IKICB0ZXN0X3ZhbHVlX2FmdGVyX2RlYXRoCiArdGVzdF9jYXN0X3JlZ3Jlc3Np b24KLSsKLSsjIFRoZSBmb2xsb3dpbmcgdGVzdCByZWNvbXBpbGVzIHRoZSBiaW5hcnkgdG8gdGVz dCBlaXRoZXIgQyBvciBDKysKLSsjIHZhbHVlcy4KLSsKLSt0ZXN0X3N1YnNjcmlwdF9yZWdyZXNz aW9uICJjKysiCi0rdGVzdF9zdWJzY3JpcHRfcmVncmVzc2lvbiAiYyIKKyAKKyAjIFRoZSBmb2xs b3dpbmcgdGVzdCByZWNvbXBpbGVzIHRoZSBiaW5hcnkgdG8gdGVzdCBlaXRoZXIgQyBvciBDKysK KyAjIHZhbHVlcy4gCiBkaWZmIC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3B5dGhv bi5leHAgYi9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHl0aG9uLmV4cAogaW5kZXggNTIyM2Zj OC4uMDNlMWVhYiAxMDA2NDQKIC0tLSBhL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weXRob24u ZXhwCkBAIC0yODUwMCw3ICsyODMzMCw3IEBAIGluZGV4IDUxZTY5NjAuLjQ4YjMwZTQgMTAwNjQ0 CiAgLyogVXNlciBmdW5jdGlvbiBoYW5kbGVyLiAgKi8KICAKIGRpZmYgLS1naXQgYS9nZGIvdmFy b2JqLmMgYi9nZGIvdmFyb2JqLmMKLWluZGV4IDcyMzU2MzUuLjk4NDhkZTAgMTAwNjQ0CitpbmRl eCA4ZjIyMTU2Li44ZmU3MmNhIDEwMDY0NAogLS0tIGEvZ2RiL3Zhcm9iai5jCiArKysgYi9nZGIv dmFyb2JqLmMKIEBAIC0yNiw2ICsyNiw4IEBACgpkaWZmIC0tZ2l0IGEvZ2RiLnNwZWMgYi9nZGIu c3BlYwppbmRleCAxNjVjMTFmLi45YTJmM2VlIDEwMDY0NAotLS0gYS9nZGIuc3BlYworKysgYi9n ZGIuc3BlYwpAQCAtMTAsMTEgKzEwLDExIEBAIE5hbWU6IGdkYiV7P193aXRoX2RlYnVnOi1kZWJ1 Z30KICMgU2V0IHZlcnNpb24gdG8gY29udGVudHMgb2YgZ2RiL3ZlcnNpb24uaW4uCiAjIE5PVEU6 IHRoZSBGU0YgZ2RiIHZlcnNpb25zIGFyZSBudW1iZXJlZCBOLk0gZm9yIG9mZmljaWFsIHJlbGVh c2VzLCBsaWtlIDYuMyAKICMgYW5kLCBzaW5jZSBKYW51YXJ5IDIwMDUsIFguWS5aLmRhdGUgZm9y IGRhaWx5IHNuYXBzaG90cywgbGlrZSA2LjMuNTAuMjAwNTAxMTIgIyAoZGFpbHkgc25hcHNob3Qg ZnJvbSBtYWlsaW5lKSwgb3IgNi4zLjAuMjAwNDAxMTIgKGhlYWQgb2YgdGhlIHJlbGVhc2UgYnJh bmNoKS4KLVZlcnNpb246IDYuOC45MS4yMDA5MDkxNworVmVyc2lvbjogNi44LjkxLjIwMDkwOTIx CiAKICMgVGhlIHJlbGVhc2UgYWx3YXlzIGNvbnRhaW5zIGEgbGVhZGluZyByZXNlcnZlZCBudW1i ZXIsIHN0YXJ0IGl0IGF0IDEuCiAjIGB1cHN0cmVhbScgaXMgbm90IGEgcGFydCBvZiBgbmFtZScg dG8gc3RheSBmdWxseSBycG0gZGVwZW5kZW5jaWVzIGNvbXBhdGlibGUgZm9yIHRoZSB0ZXN0aW5n LgotUmVsZWFzZTogMiV7P193aXRoX3Vwc3RyZWFtOi51cHN0cmVhbX0lez9kaXN0fQorUmVsZWFz ZTogMSV7P193aXRoX3Vwc3RyZWFtOi51cHN0cmVhbX0lez9kaXN0fQogCiBMaWNlbnNlOiBHUEx2 MysKIEdyb3VwOiBEZXZlbG9wbWVudC9EZWJ1Z2dlcnMKQEAgLTIxOSw4ICsyMTksOCBAQCBQYXRj aDIyOTogZ2RiLTYuMy1iejE0MDUzMi1wcGMtdW53aW5kaW5nLXRlc3QucGF0Y2gKICMgVGVzdGNh c2UgZm9yIGV4ZWMoKSBmcm9tIHRocmVhZGVkIHByb2dyYW0gKEJaIDIwMjY4OSkuCiBQYXRjaDIz MTogZ2RiLTYuMy1iejIwMjY4OS1leGVjLWZyb20tcHRocmVhZC10ZXN0LnBhdGNoCiAKLSMgQmFj a3BvcnRlZCBwb3N0IGdkYi02LjguNTAuMjAwOTA5MTAgc25hcHNob3QgZml4dXBzLgotI1BhdGNo MjMyOiBnZGItNi44LjUwLjIwMDkwOTEwLXVwc3RyZWFtLnBhdGNoCisjIEJhY2twb3J0ZWQgcG9z dCBnZGItNi44LjUwLjIwMDkwOTkxIHNuYXBzaG90IGZpeHVwcy4KK1BhdGNoMjMyOiBnZGItNi44 LjUwLjIwMDkwOTIxLXVwc3RyZWFtLnBhdGNoCiAKICMgVGVzdGNhc2UgZm9yIFBQQyBQb3dlcjYv REZQIGluc3RydWN0aW9ucyBkaXNhc3NlbWJseSAoQlogMjMwMDAwKS4KIFBhdGNoMjM0OiBnZGIt Ni42LWJ6MjMwMDAwLXBvd2VyNi1kaXNhc3NlbWJseS10ZXN0LnBhdGNoCkBAIC00NTMsNyArNDUz LDcgQEAgcm0gLWYgZ2RiL2p2LWV4cC5jIGdkYi9tMi1leHAuYyBnZGIvb2JqYy1leHAuYyBnZGIv cC1leHAuYwogCiAlaWYgMCV7IT9fd2l0aF91cHN0cmVhbToxfQogCi0jcGF0Y2gyMzIgLXAxCisl cGF0Y2gyMzIgLXAxCiAlcGF0Y2gzNDkgLXAxCiAlcGF0Y2gxIC1wMQogJXBhdGNoMyAtcDEKQEAg LTg0Nyw2ICs4NDcsMTEgQEAgZmkKICVlbmRpZgogCiAlY2hhbmdlbG9nCisqIE1vbiBTZXAgMjEg MjAwOSBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVkaGF0LmNvbT4gLSA2LjguOTEu MjAwOTA5MjEtMQorLSBVcGdyYWRlIHRvIHRoZSBGU0YgR0RCIGdkYi03LjAgc25hcHNob3Q6IDYu OC45MS4yMDA5MDkyMQorLSBhcmNoZXItamFua3JhdG9jaHZpbC1mZWRvcmExMiBjb21taXQ6IDBk NWMzOGRkODkwNTBjMGVlMWNmMDQ5NjU2ZjE3N2MxNzBkNjc1ZDQKKyAgLSBbZXhwcl0gQ2hlY2sg aGFzX3N0YWNrX2ZyYW1lcyBiZWZvcmUgY2FsbGluZyBmaW5kX3BjX2xpbmUgKFNhbWkgV2FnaWFh bGxhKS4KKwogKiBUaHUgU2VwIDE3IDIwMDkgSmFuIEtyYXRvY2h2aWwgPGphbi5rcmF0b2Nodmls QHJlZGhhdC5jb20+IC0gNi44LjkxLjIwMDkwOTE3LTIKIC0gSW5jbHVkZSBidW5kbGVkIGxpYnN0 ZGMrKyBweXRob247IGl0IHdpbGwgYmUgaW4gbGlic3RkYysrLWRldmVsIHNpbmNlIGdjYy00LjUu CiAKCmRpZmYgLS1naXQgYS9zb3VyY2VzIGIvc291cmNlcwppbmRleCA2NDg5Y2VjLi43ZDFmNGIz IDEwMDY0NAotLS0gYS9zb3VyY2VzCisrKyBiL3NvdXJjZXMKQEAgLTEsMiArMSwyIEBACi1lYWVk OTE1MGIyMTljOGVlNTZiYjY3NmUzMmE5ZDJhNSAgZ2RiLTYuOC45MS4yMDA5MDkxNy50YXIuYnoy CiAxZTNhMjYwNDBkY2RkMzU3OWQ3NTk2NzA4NWViOTJiOSAgbGlic3RkYysrLXYzLXB5dGhvbi1y MTUxNzk4LnRhci54egorNjdiNTBhNzhkMDMyMDBjNjcxNGNhZmQ4NWI4MDQ0ZTggIGdkYi02Ljgu OTEuMjAwOTA5MjEudGFyLmJ6Mgo=