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: Takao Fujiwara To: git-commits@fedoraproject.org Subject: [rpms/ibus] autotool: Enabled unicode_alt in EmojiOne json file Date: Sun, 31 May 2026 02:06:31 GMT Message-ID: <178019319156.1.14451570342241206854.rpms-ibus-c46a1978822c@fedoraproject.org> List-ID: X-Git-Repo: rpms/ibus X-Git-Branch: autotool X-Git-Rev: c46a1978822c1ac2a142d9d6eb25f42d7e70eb9c ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvaWJ1cwogICAgICAgICAgICBCcmFuY2ggOiBhdXRvdG9vbAogICAgICAgICAg ICBDb21taXQgOiBjNDZhMTk3ODgyMmMxYWMyYTE0MmQ5ZDZlYjI1ZjQyZDdlNzBlYjljCiAgICAg ICAgICAgIEF1dGhvciA6IFRha2FvIEZ1aml3YXJhIDx0ZnVqaXdhckByZWRoYXQuY29tPgogICAg ICAgICAgICBEYXRlICAgOiAyMDE3LTA0LTA1VDE4OjI4OjU2KzA5OjAwCiAgICAgICAgICAgIFN0 YXRzICA6ICs3MzUvLTEgaW4gMiBmaWxlKHMpCiAgICAgICAgICAgIFVSTCAgICA6IGh0dHBzOi8v c3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvaWJ1cy9jL2M0NmExOTc4ODIyYzFhYzJhMTQyZDlk NmViMjVmNDJkN2U3MGViOWM/YnJhbmNoPWF1dG90b29sCgogICAgICAgICAgICBMb2c6CiAgICAg ICAgICAgIEVuYWJsZWQgdW5pY29kZV9hbHQgaW4gRW1vamlPbmUganNvbiBmaWxlCgotIEVuYWJs ZWQgdG8gdHlwZSBtdWx0aXBsZSBjb2RlIHBvaW50cyBvbiBFbW9qaWVyCi0gRml4ZWQgSUJ1c0Vt b2ppRGlhbG9nXzFfMF9naXJfTElCUyBmb3IgLS1hcy1uZWVkZWQgTERGTEFHUwoKLS0tCmRpZmYg LS1naXQgYS9pYnVzLUhFQUQucGF0Y2ggYi9pYnVzLUhFQUQucGF0Y2gKaW5kZXggOTVkYjdjMy4u YjMxZjU0MCAxMDA2NDQKLS0tIGEvaWJ1cy1IRUFELnBhdGNoCisrKyBiL2lidXMtSEVBRC5wYXRj aApAQCAtMzY2OCwzICszNjY4LDczMiBAQCBpbmRleCAwOTgyMTM0Li43MzUwZGNjIDEwMDY0NAog LS0gCiAyLjkuMwogCitGcm9tIDE2NDMwMDc1OGM3MGZkM2E1OTA3ODhlMDM4ZGUzMWI2YzUzZDQ1 OGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBmdWppd2FyYXQgPHRha2FvLmZ1aml3 YXJhMUBnbWFpbC5jb20+CitEYXRlOiBUdWUsIDI4IE1hciAyMDE3IDEyOjE1OjI2ICswOTAwCitT dWJqZWN0OiBbUEFUQ0hdIGRhdGE6IEZpeCBhIHR5cG8KKworUj1TaGF3bi5QLkh1YW5nQGdtYWls LmNvbQorCitSZXZpZXcgVVJMOiBodHRwczovL2NvZGVyZXZpZXcuYXBwc3BvdC5jb20vMzIxODAw MDQzCistLS0KKyBkYXRhL2lidXMuc2NoZW1hcy5pbiB8IDIgKy0KKyAxIGZpbGUgY2hhbmdlZCwg MSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKKworZGlmZiAtLWdpdCBhL2RhdGEvaWJ1cy5z Y2hlbWFzLmluIGIvZGF0YS9pYnVzLnNjaGVtYXMuaW4KK2luZGV4IGMwYmJkNmYuLjA5NmRkNzEg MTAwNjQ0CistLS0gYS9kYXRhL2lidXMuc2NoZW1hcy5pbgorKysrIGIvZGF0YS9pYnVzLnNjaGVt YXMuaW4KK0BAIC0zODYsNyArMzg2LDcgQEAKKyAgICAgICAgIDxzaG9ydD5EZWZhdWx0IGxhbmd1 YWdlIGZvciBlbW9qaSBkaWN0aW9uYXJ5PC9zaG9ydD4KKyAJICAgIDxsb25nPkNob29zZSBhIGRl ZmF1bHQgbGFuZ3VhZ2Ugb2YgZW1vamkgZGljdGlvbmFyaWVzIG9uCisgCSAgICAgICAgICB0aGUg ZW1vamkgZGlhbG9nLiBUaGUgdmFsdWUgJGxhbmcgaXMgYXBwbGllZCB0bworLSAgICAgICAgICAg ICAgICAgIC91c3Ivc2hhcmUvdW5pY29kZS9jbGRyL2NvbW1vbi9hbm5vdGF0aW9ucy8kbGFuZy54 bWwKKysgICAgICAgICAgICAgICAgICAvdXNyL3NoYXJlL2lidXMvZGljdHMvZW1vamktJGxhbmcu ZGljdAorICAgICAgICAgICAgIDwvbG9uZz4KKyAgICAgICA8L2xvY2FsZT4KKyAgICAgPC9zY2hl bWE+CistLSAKKzIuOS4zCisKK0Zyb20gYzMxNjhkNDcwMWViNGU4OTA5NDI0OWFiYWE0ZjBmODNh YjI0MTQ5YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IGZ1aml3YXJhdCA8dGFrYW8u ZnVqaXdhcmExQGdtYWlsLmNvbT4KK0RhdGU6IFdlZCwgMjkgTWFyIDIwMTcgMTM6MDE6MjggKzA5 MDAKK1N1YmplY3Q6IFtQQVRDSF0gRml4IElCdXNFbW9qaURpYWxvZ18xXzBfZ2lyX0xJQlMgZm9y IC0tYXMtbmVlZGVkIExERkxBR1MKKworVGhlIG9yZGVyIGdldHMgb21pdHRlZCBsaWJpYnVzLTEu MC5sYQorCitCVUc9aHR0cHM6Ly9naXRodWIuY29tL2lidXMvaWJ1cy9pc3N1ZXMvMTkxNworCitS ZXZpZXcgVVJMOiBodHRwczovL2NvZGVyZXZpZXcuYXBwc3BvdC5jb20vMzI0NzIwMDQzCistLS0K KyB1aS9ndGszL01ha2VmaWxlLmFtIHwgMiArLQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQorCitkaWZmIC0tZ2l0IGEvdWkvZ3RrMy9NYWtlZmlsZS5hbSBi L3VpL2d0azMvTWFrZWZpbGUuYW0KK2luZGV4IGIwNTVmNjcuLjcxMjJmZjMgMTAwNjQ0CistLS0g YS91aS9ndGszL01ha2VmaWxlLmFtCisrKysgYi91aS9ndGszL01ha2VmaWxlLmFtCitAQCAtMjA1 LDcgKzIwNSw3IEBAIElCdXNFbW9qaURpYWxvZ18xXzBfZ2lyX1NDQU5ORVJGTEFHUyA9IFwKKyAg ICAgJChOVUxMKQorIElCdXNFbW9qaURpYWxvZy0xLjAuZ2lyOiAkKGxpYmlidXNfZW1vamlfZGlh bG9nKSBNYWtlZmlsZQorIElCdXNFbW9qaURpYWxvZ18xXzBfZ2lyX0lOQ0xVREVTID0gR3RrLTMu MCBHTGliLTIuMCBHT2JqZWN0LTIuMCBHaW8tMi4wCistSUJ1c0Vtb2ppRGlhbG9nXzFfMF9naXJf TElCUyA9ICQobGliaWJ1cykgJChsaWJpYnVzX2Vtb2ppX2RpYWxvZykKKytJQnVzRW1vamlEaWFs b2dfMV8wX2dpcl9MSUJTID0gJChsaWJpYnVzX2Vtb2ppX2RpYWxvZykgJChsaWJpYnVzKQorIElC dXNFbW9qaURpYWxvZ18xXzBfZ2lyX0ZJTEVTID0gICAgICAgICAgICAgICAgICAgICAgXAorICAg ICAkKGFkZHByZWZpeCAkKHNyY2RpcikvLCQoaW50cm9zcGVjdGlvbl9zb3VyY2VzKSkgXAorICAg ICAkKE5VTEwpCistLSAKKzIuOS4zCisKK0Zyb20gOGI2ZjlmYTUzMWFhOWQ5YjVkNmMwMTg0YjIy OTRkMDcxZjkyMGQ3ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IGZ1aml3YXJhdCA8 dGFrYW8uZnVqaXdhcmExQGdtYWlsLmNvbT4KK0RhdGU6IFRodSwgMzAgTWFyIDIwMTcgMTI6MDg6 MzkgKzA5MDAKK1N1YmplY3Q6IFtQQVRDSF0gdWkvZ3RrMzogRW5hYmxlIHRvIHR5cGUgbXVsdGlw bGUgY29kZSBwb2ludHMgb24gRW1vamllcgorCistIENhbiB0eXBlIG11bHRpcGxlIFVuaWNvZGUg Y2hhcmFjdGVycyB3aXRoIGRpZ2l0cyBhbmQgU2hpZnQtc3BhY2UKKyAga2V5cy4gIEUuZy4gIjFm NDY4IDFmNDY4IDFmNDY2IgorLSBBbHdheXMgc2hvdyBVbmljb2RlIHBvaW50cyBvZiB0aGUgc2Vs ZWN0ZWQgZW1vamkKKy0gUmVtb3ZlZCBhIGZ1bmN0aW9uIHRvIGNvbW1pdCBhbiBlbW9qaSBieSB0 eXBpbmcgYSBkaWdpdCBjaGFyIHNpbmNlCisgIGl0IGNvbmZsaWN0cyB3aXRoIGRpZ2l0IGFubm90 YXRpb25zLCBjb2RlIHBvaW50cyBidXQgaXQgaGFkIGVuYWJsZWQKKyAgd2l0aCBzaW5nbGUgZGln aXRzIG9ubHkgc28gbm90IHNvIHVzZWZ1bC4KKworUj1TaGF3bi5QLkh1YW5nQGdtYWlsLmNvbQor CitSZXZpZXcgVVJMOiBodHRwczovL2NvZGVyZXZpZXcuYXBwc3BvdC5jb20vMzIxODIwMDQzCist LS0KKyB1aS9ndGszL2Vtb2ppZXIudmFsYSB8IDIwNyArKysrKysrKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGUgY2hhbmdlZCwgOTggaW5zZXJ0aW9u cygrKSwgMTA5IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvdWkvZ3RrMy9lbW9qaWVyLnZh bGEgYi91aS9ndGszL2Vtb2ppZXIudmFsYQoraW5kZXggMjBjMTM3OC4uOGEyNzI2YyAxMDA2NDQK Ky0tLSBhL3VpL2d0azMvZW1vamllci52YWxhCisrKysgYi91aS9ndGszL2Vtb2ppZXIudmFsYQor QEAgLTk3LDEyICs5NywyNyBAQCBjbGFzcyBJQnVzRW1vamllciA6IEd0ay5XaW5kb3cgeworICAg ICAgICAgICAgICAgICBzZXRfbGFiZWwodGV4dCk7CisgICAgICAgICB9CisgICAgIH0KKy0gICAg cHJpdmF0ZSBjbGFzcyBFUGFkZGVkTGFiZWwgOiBHdGsuQm94IHsKKysgICAgcHJpdmF0ZSBjbGFz cyBFUGFkZGVkTGFiZWwgOiBHdGsuTGFiZWwgeworICAgICAgICAgcHVibGljIEVQYWRkZWRMYWJl bChzdHJpbmcgICAgICAgICAgdGV4dCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgR3Rr LkFsaWduICAgICAgIGFsaWduLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcmF2ZWxE aXJlY3Rpb24gZGlyZWN0aW9uPVRyYXZlbERpcmVjdGlvbi5OT05FKSB7CisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEd0ay5BbGlnbiAgICAgICBhbGlnbikgeworICAgICAgICAgICAgIEdM aWIuT2JqZWN0KAorICAgICAgICAgICAgICAgICBuYW1lIDogIklCdXNFbW9qaWVyUGFkZGVkTGFi ZWwiLAorKyAgICAgICAgICAgICAgICBoYWxpZ24gOiBhbGlnbiwKKysgICAgICAgICAgICAgICAg dmFsaWduIDogR3RrLkFsaWduLkNFTlRFUiwKKysgICAgICAgICAgICAgICAgbWFyZ2luX3N0YXJ0 IDogMjAsCisrICAgICAgICAgICAgICAgIG1hcmdpbl9lbmQgOiAyMCwKKysgICAgICAgICAgICAg ICAgbWFyZ2luX3RvcCA6IDYsCisrICAgICAgICAgICAgICAgIG1hcmdpbl9ib3R0b20gOiA2Cisr ICAgICAgICAgICAgKTsKKysgICAgICAgICAgICBzZXRfdGV4dCh0ZXh0KTsKKysgICAgICAgIH0K KysgICAgfQorKyAgICBwcml2YXRlIGNsYXNzIEVQYWRkZWRMYWJlbEJveCA6IEd0ay5Cb3ggewor KyAgICAgICAgcHVibGljIEVQYWRkZWRMYWJlbEJveChzdHJpbmcgICAgICAgICAgdGV4dCwKKysg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3RrLkFsaWduICAgICAgIGFsaWduLAorKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcmF2ZWxEaXJlY3Rpb24gZGlyZWN0aW9uPVRy YXZlbERpcmVjdGlvbi5OT05FKSB7CisrICAgICAgICAgICAgR0xpYi5PYmplY3QoCisrICAgICAg ICAgICAgICAgIG5hbWUgOiAiSUJ1c0Vtb2ppZXJQYWRkZWRMYWJlbEJveCIsCisgICAgICAgICAg ICAgICAgIG9yaWVudGF0aW9uIDogR3RrLk9yaWVudGF0aW9uLkhPUklaT05UQUwsCisgICAgICAg ICAgICAgICAgIHNwYWNpbmcgOiAwCisgICAgICAgICAgICAgKTsKK0BAIC0xMTgsMzYgKzEzMywy OSBAQCBjbGFzcyBJQnVzRW1vamllciA6IEd0ay5XaW5kb3cgeworICAgICAgICAgICAgICAgICB9 CisgICAgICAgICAgICAgICAgIHBhY2tfc3RhcnQoaWNvbiwgZmFsc2UsIHRydWUsIDApOworICAg ICAgICAgICAgIH0KKy0gICAgICAgICAgICBHdGsuTGFiZWwgbGFiZWwgPSBuZXcgR3RrLkxhYmVs KHRleHQpOworLSAgICAgICAgICAgIGxhYmVsLnNldF9oYWxpZ24oYWxpZ24pOworLSAgICAgICAg ICAgIGxhYmVsLnNldF92YWxpZ24oR3RrLkFsaWduLkNFTlRFUik7CistICAgICAgICAgICAgbGFi ZWwuc2V0X21hcmdpbl9zdGFydCgyMCk7CistICAgICAgICAgICAgbGFiZWwuc2V0X21hcmdpbl9l bmQoMjApOworLSAgICAgICAgICAgIGxhYmVsLnNldF9tYXJnaW5fdG9wKDYpOworLSAgICAgICAg ICAgIGxhYmVsLnNldF9tYXJnaW5fYm90dG9tKDYpOworKyAgICAgICAgICAgIEVQYWRkZWRMYWJl bCBsYWJlbCA9IG5ldyBFUGFkZGVkTGFiZWwodGV4dCwgYWxpZ24pOworICAgICAgICAgICAgIHBh Y2tfc3RhcnQobGFiZWwsIHRydWUsIHRydWUsIDApOworICAgICAgICAgfQorICAgICB9CistICAg IHByaXZhdGUgY2xhc3MgRVRpdGxlTGFiZWwgOiBHdGsuQm94IHsKKy0gICAgICAgIHByaXZhdGUg R3RrLkxhYmVsIG1fbGFiZWw7CisrICAgIHByaXZhdGUgY2xhc3MgRVRpdGxlTGFiZWxCb3ggOiBH dGsuQm94IHsKKysgICAgICAgIEVQYWRkZWRMYWJlbCBtX2xhbmdfbGFiZWw7CisgICAgICAgICBw cml2YXRlIEd0ay5CdXR0b24gbV9jbG9zZV9idXR0b247CisgICAgICAgICBwcml2YXRlIHVsb25n IG1fY2xvc2VfaGFuZGxlcjsKKyAKKy0gICAgICAgIHB1YmxpYyBFVGl0bGVMYWJlbChzdHJpbmcg ICAgdGV4dCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICBHdGsuQWxpZ24gYWxpZ24pIHsK KysgICAgICAgIHB1YmxpYyBFVGl0bGVMYWJlbEJveChzdHJpbmcgICAgdGV4dCwKKysgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBHdGsuQWxpZ24gYWxpZ24pIHsKKyAgICAgICAgICAgICBH TGliLk9iamVjdCgKKy0gICAgICAgICAgICAgICAgbmFtZSA6ICJJQnVzRW1vamllclRpdGxlTGFi ZWwiLAorKyAgICAgICAgICAgICAgICBuYW1lIDogIklCdXNFbW9qaWVyVGl0bGVMYWJlbEJveCIs CisgICAgICAgICAgICAgICAgIG9yaWVudGF0aW9uIDogR3RrLk9yaWVudGF0aW9uLkhPUklaT05U QUwsCisgICAgICAgICAgICAgICAgIHNwYWNpbmcgOiAwCisgICAgICAgICAgICAgKTsKKy0gICAg ICAgICAgICBtX2xhYmVsID0gbmV3IEd0ay5MYWJlbCh0ZXh0KTsKKy0gICAgICAgICAgICBtX2xh YmVsLnNldF9oYWxpZ24oYWxpZ24pOworLSAgICAgICAgICAgIG1fbGFiZWwuc2V0X3ZhbGlnbihh bGlnbik7CistICAgICAgICAgICAgbV9sYWJlbC5zZXRfbWFyZ2luX3N0YXJ0KDIwKTsKKy0gICAg ICAgICAgICBtX2xhYmVsLnNldF9tYXJnaW5fZW5kKDIwKTsKKy0gICAgICAgICAgICBtX2xhYmVs LnNldF9tYXJnaW5fdG9wKDYpOworLSAgICAgICAgICAgIG1fbGFiZWwuc2V0X21hcmdpbl9ib3R0 b20oNik7CistICAgICAgICAgICAgcGFja19zdGFydChtX2xhYmVsLCB0cnVlLCB0cnVlLCAwKTsK KysgICAgICAgICAgICBFUGFkZGVkTGFiZWwgbGFiZWwgPSBuZXcgRVBhZGRlZExhYmVsKHRleHQs IGFsaWduKTsKKysgICAgICAgICAgICBwYWNrX3N0YXJ0KGxhYmVsLCB0cnVlLCB0cnVlLCAwKTsK KysgICAgICAgICAgICBHdGsuU2VwYXJhdG9yIHNlcGFyYXRvciA9CisrICAgICAgICAgICAgICAg ICAgICBuZXcgR3RrLlNlcGFyYXRvciAoR3RrLk9yaWVudGF0aW9uLlZFUlRJQ0FMKTsKKysgICAg ICAgICAgICBwYWNrX3N0YXJ0KHNlcGFyYXRvciwgZmFsc2UsIHRydWUsIDApOworKyAgICAgICAg ICAgIG1fbGFuZ19sYWJlbCA9IG5ldyBFUGFkZGVkTGFiZWwoIiIsIGFsaWduKTsKKysgICAgICAg ICAgICBwYWNrX3N0YXJ0KG1fbGFuZ19sYWJlbCwgZmFsc2UsIHRydWUsIDApOworICAgICAgICAg ICAgIEljb25XaWRnZXQgaWNvbiA9IG5ldyBJY29uV2lkZ2V0KCJ3aW5kb3ctY2xvc2UiLCBHdGsu SWNvblNpemUuTUVOVSk7CisgICAgICAgICAgICAgbV9jbG9zZV9idXR0b24gPSBuZXcgR3RrLkJ1 dHRvbigpOworICAgICAgICAgICAgIG1fY2xvc2VfYnV0dG9uLmFkZChpY29uKTsKK0BAIC0xNjgs OCArMTc2LDggQEAgY2xhc3MgSUJ1c0Vtb2ppZXIgOiBHdGsuV2luZG93IHsKKyAgICAgICAgICAg ICAgICAgbV9jbG9zZV9oYW5kbGVyID0gMDsKKyAgICAgICAgICAgICB9CisgICAgICAgICB9Cist ICAgICAgICBwdWJsaWMgdm9pZCBzZXRfbGFiZWwoc3RyaW5nIHN0cikgeworLSAgICAgICAgICAg IG1fbGFiZWwuc2V0X2xhYmVsKHN0cik7CisrICAgICAgICBwdWJsaWMgdm9pZCBzZXRfbGFuZ19s YWJlbChzdHJpbmcgc3RyKSB7CisrICAgICAgICAgICAgbV9sYW5nX2xhYmVsLnNldF9sYWJlbChz dHIpOworICAgICAgICAgfQorICAgICB9CisgCitAQCAtMTgxLDcgKzE4OSw3IEBAIGNsYXNzIElC dXNFbW9qaWVyIDogR3RrLldpbmRvdyB7CisgICAgIHByaXZhdGUgY29uc3QgdWludCBFTU9KSV9H UklEX1BBR0UgPSAxMDsKKyAgICAgcHJpdmF0ZSBUaGVtZWRSR0JBIG1fcmdiYTsKKyAgICAgcHJp dmF0ZSBHdGsuQm94IG1fdmJveDsKKy0gICAgcHJpdmF0ZSBFVGl0bGVMYWJlbCBtX3RpdGxlOwor KyAgICBwcml2YXRlIEVUaXRsZUxhYmVsQm94IG1fdGl0bGU7CisgICAgIHByaXZhdGUgRUVudHJ5 IG1fZW50cnk7CisgICAgIHByaXZhdGUgc3RyaW5nPyBtX2JhY2t3YXJkOworICAgICBwcml2YXRl IEVTY3JvbGxlZFdpbmRvdz8gbV9zY3JvbGxlZF93aW5kb3cgPSBudWxsOworQEAgLTI3OCw4ICsy ODYsOCBAQCBjbGFzcyBJQnVzRW1vamllciA6IEd0ay5XaW5kb3cgeworICAgICAgICAgbV92Ym94 ID0gbmV3IEd0ay5Cb3goR3RrLk9yaWVudGF0aW9uLlZFUlRJQ0FMLCAwKTsKKyAgICAgICAgIGFk ZChtX3Zib3gpOworIAorLSAgICAgICAgbV90aXRsZSA9IG5ldyBFVGl0bGVMYWJlbChfKCJFbW9q aSBEaWFsb2ciKSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3RrLkFsaWdu LkNFTlRFUik7CisrICAgICAgICBtX3RpdGxlID0gbmV3IEVUaXRsZUxhYmVsQm94KF8oIkVtb2pp IERpYWxvZyIpLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHdGsuQWxp Z24uQ0VOVEVSKTsKKyAgICAgICAgIG1fdmJveC5hZGQobV90aXRsZSk7CisgICAgICAgICBtX2Vu dHJ5ID0gbmV3IEVFbnRyeSgpOworICAgICAgICAgbV9lbnRyeS5zZXRfcGxhY2Vob2xkZXJfdGV4 dChfKCJUeXBlIGFubm90YXRpb24gb3IgY2hvb3NlIGVtb2ppIikpOworQEAgLTQxOSw2ICs0Mjcs MjEgQEAgY2xhc3MgSUJ1c0Vtb2ppZXIgOiBHdGsuV2luZG93IHsKKyAgICAgfQorIAorIAorKyAg ICBwcml2YXRlIHN0cmluZyB1dGY4X2NvZGVfcG9pbnQoc3RyaW5nIHN0cikgeworKyAgICAgICAg U3RyaW5nQnVpbGRlciBidWZmID0gbmV3IFN0cmluZ0J1aWxkZXIoKTsKKysgICAgICAgIGludCBs ZW5ndGggPSBzdHIuY2hhcl9jb3VudCgpOworKyAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBs ZW5ndGg7IGkrKykgeworKyAgICAgICAgICAgIHVuaWNoYXIgY2ggPSBzdHIuZ2V0X2NoYXIoMCk7 CisrICAgICAgICAgICAgaWYgKGkgPT0gMCkKKysgICAgICAgICAgICAgICAgYnVmZi5hcHBlbmQo IlUrJTA0WCIucHJpbnRmKGNoKSk7CisrICAgICAgICAgICAgZWxzZQorKyAgICAgICAgICAgICAg ICBidWZmLmFwcGVuZCgiICUwNFgiLnByaW50ZihjaCkpOworKyAgICAgICAgICAgIHN0ciA9IHN0 ci5uZXh0X2NoYXIoKTsKKysgICAgICAgIH0KKysgICAgICAgIHJldHVybiBidWZmLnN0cjsKKysg ICAgfQorKworKworICAgICBwcml2YXRlIHZvaWQgdXBkYXRlX2Vtb2ppX3RvX2RhdGFfZGljdChJ QnVzLkVtb2ppRGF0YSBkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBzdHJpbmcgICAgICAgICBsYW5nKSB7CisgICAgICAgICBzdHJpbmcgZW1vamkgPSBk YXRhLmdldF9lbW9qaSgpOworQEAgLTUwMSw3ICs1MjQsNyBAQCBjbGFzcyBJQnVzRW1vamllciA6 IEd0ay5XaW5kb3cgeworICAgICBwcml2YXRlIHZvaWQgcmVtb3ZlX2FsbF9jaGlsZHJlbigpIHsK KyAgICAgICAgIGZvcmVhY2ggKEd0ay5XaWRnZXQgdyBpbiBtX3Zib3guZ2V0X2NoaWxkcmVuKCkp IHsKKyAgICAgICAgICAgICBpZiAody5uYW1lID09ICJJQnVzRW1vamllckVudHJ5IiB8fAorLSAg ICAgICAgICAgICAgICB3Lm5hbWUgPT0gIklCdXNFbW9qaWVyVGl0bGVMYWJlbCIpIHsKKysgICAg ICAgICAgICAgICAgdy5uYW1lID09ICJJQnVzRW1vamllclRpdGxlTGFiZWxCb3giKSB7CisgICAg ICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICB3LmRl c3Ryb3koKTsKK0BAIC01MTQsMTAgKzUzNyw5IEBAIGNsYXNzIElCdXNFbW9qaWVyIDogR3RrLldp bmRvdyB7CisgICAgICAgICBtX3Njcm9sbGVkX3dpbmRvdyA9IG5ldyBFU2Nyb2xsZWRXaW5kb3co KTsKKyAgICAgICAgIHNldF9maXhlZF9zaXplKCk7CisgCistICAgICAgICBzdHJpbmcgbGFuZ3Vh Z2UgPSAiJXMgKCVzKSIucHJpbnRmKAorLSAgICAgICAgICAgIF8oIkVtb2ppIERpYWxvZyIpLAor LSAgICAgICAgICAgIElCdXMuZ2V0X2xhbmd1YWdlX25hbWUobV9jdXJyZW50X2xhbmdfaWQpKTsK Ky0gICAgICAgIG1fdGl0bGUuc2V0X2xhYmVsKGxhbmd1YWdlKTsKKysgICAgICAgIHN0cmluZyBs YW5ndWFnZSA9CisrICAgICAgICAgICAgSUJ1cy5nZXRfbGFuZ3VhZ2VfbmFtZShtX2N1cnJlbnRf bGFuZ19pZCk7CisrICAgICAgICBtX3RpdGxlLnNldF9sYW5nX2xhYmVsKGxhbmd1YWdlKTsKKyAg ICAgICAgIG1fdmJveC5hZGQobV9zY3JvbGxlZF93aW5kb3cpOworICAgICAgICAgR3RrLlZpZXdw b3J0IHZpZXdwb3J0ID0gbmV3IEd0ay5WaWV3cG9ydChudWxsLCBudWxsKTsKKyAgICAgICAgIG1f c2Nyb2xsZWRfd2luZG93LmFkZCh2aWV3cG9ydCk7CitAQCAtNTM1LDggKzU1Nyw4IEBAIGNsYXNz IElCdXNFbW9qaWVyIDogR3RrLldpbmRvdyB7CisgICAgICAgICB1aW50IG4gPSAxOworICAgICAg ICAgaWYgKG1fZmF2b3JpdGVzLmxlbmd0aCA+IDApIHsKKyAgICAgICAgICAgICBFQm94Um93IHJv dyA9IG5ldyBFQm94Um93KCJAZmF2b3JpdGVzIik7CistICAgICAgICAgICAgRVBhZGRlZExhYmVs IHdpZGdldCA9CistICAgICAgICAgICAgICAgICAgICBuZXcgRVBhZGRlZExhYmVsKF8oIkZhdm9y aXRlcyIpLCBHdGsuQWxpZ24uQ0VOVEVSKTsKKysgICAgICAgICAgICBFUGFkZGVkTGFiZWxCb3gg d2lkZ2V0ID0KKysgICAgICAgICAgICAgICAgICAgIG5ldyBFUGFkZGVkTGFiZWxCb3goXygiRmF2 b3JpdGVzIiksIEd0ay5BbGlnbi5DRU5URVIpOworICAgICAgICAgICAgIHJvdy5hZGQod2lkZ2V0 KTsKKyAgICAgICAgICAgICBtX2xpc3RfYm94LmFkZChyb3cpOworICAgICAgICAgICAgIGlmIChu KysgPT0gbV9jYXRlZ29yeV9hY3RpdmVfaW5kZXgpCitAQCAtNTUxLDkgKzU3Myw5IEBAIGNsYXNz IElCdXNFbW9qaWVyIDogR3RrLldpbmRvdyB7CisgICAgICAgICBmb3JlYWNoICh1bm93bmVkIHN0 cmluZyBjYXRlZ29yeSBpbiBjYXRlZ29yaWVzKSB7CisgICAgICAgICAgICAgRUJveFJvdyByb3cg PSBuZXcgRUJveFJvdyhjYXRlZ29yeSk7CisgICAgICAgICAgICAgc3RyaW5nIGxvY2FsZV9jYXRl Z29yeSA9IF8oY2F0ZWdvcnkpOworLSAgICAgICAgICAgIEVQYWRkZWRMYWJlbCB3aWRnZXQgPQor LSAgICAgICAgICAgICAgICAgICAgbmV3IEVQYWRkZWRMYWJlbCh1dGY4X3RpdGxlKGxvY2FsZV9j YXRlZ29yeSksCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEd0ay5BbGln bi5DRU5URVIpOworKyAgICAgICAgICAgIEVQYWRkZWRMYWJlbEJveCB3aWRnZXQgPQorKyAgICAg ICAgICAgICAgICAgICAgbmV3IEVQYWRkZWRMYWJlbEJveCh1dGY4X3RpdGxlKGxvY2FsZV9jYXRl Z29yeSksCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEd0ay5BbGln bi5DRU5URVIpOworICAgICAgICAgICAgIHJvdy5hZGQod2lkZ2V0KTsKKyAgICAgICAgICAgICBt X2xpc3RfYm94LmFkZChyb3cpOworICAgICAgICAgICAgIGlmIChuKysgPT0gbV9jYXRlZ29yeV9h Y3RpdmVfaW5kZXgpCitAQCAtNjI2LDE4ICs2NDgsMjMgQEAgY2xhc3MgSUJ1c0Vtb2ppZXIgOiBH dGsuV2luZG93IHsKKyAgICAgfQorIAorIAorLSAgICBwcml2YXRlIGJvb2wgY2hlY2tfdW5pY29k ZV9wb2ludChzdHJpbmc/IGFubm90YXRpb249bnVsbCkgeworLSAgICAgICAgYm9vbCBjaGVja194 ZGlnaXRfb25seSA9IHRydWU7CistICAgICAgICBpZiAoYW5ub3RhdGlvbiA9PSBudWxsKSB7Cist ICAgICAgICAgICAgYW5ub3RhdGlvbiA9IG1fZW50cnkuZ2V0X3RleHQoKTsKKy0gICAgICAgICAg ICBtX3VuaWNvZGVfcG9pbnQgPSBudWxsOworLSAgICAgICAgICAgIGNoZWNrX3hkaWdpdF9vbmx5 ID0gZmFsc2U7CistICAgICAgICB9CisrICAgIHByaXZhdGUgYm9vbCBjaGVja191bmljb2RlX3Bv aW50KCkgeworKyAgICAgICAgc3RyaW5nIGFubm90YXRpb24gPSBtX2VudHJ5LmdldF90ZXh0KCk7 CisrICAgICAgICBtX3VuaWNvZGVfcG9pbnQgPSBudWxsOworICAgICAgICAgR0xpYi5TdHJpbmdC dWlsZGVyIGJ1ZmYgPSBuZXcgR0xpYi5TdHJpbmdCdWlsZGVyKCk7CisrICAgICAgICBHTGliLlN0 cmluZ0J1aWxkZXIgcmV0dmFsID0gbmV3IEdMaWIuU3RyaW5nQnVpbGRlcigpOworICAgICAgICAg Zm9yIChpbnQgaSA9IDA7IGkgPCBhbm5vdGF0aW9uLmNoYXJfY291bnQoKTsgaSsrKSB7CisgICAg ICAgICAgICAgdW5pY2hhciBjaCA9IGFubm90YXRpb24uZ2V0X2NoYXIoaSk7CisgICAgICAgICAg ICAgaWYgKGNoID09IDApCisgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKysgICAgICAg ICAgICBpZiAoY2guaXNzcGFjZSgpKSB7CisrICAgICAgICAgICAgICAgIHVuaWNoYXIgY29kZSA9 ICh1bmljaGFyKWJ1ZmYuc3RyLnRvX3Vsb25nKG51bGwsIDE2KTsKKysgICAgICAgICAgICAgICAg YnVmZi5lcmFzZSgpOworKyAgICAgICAgICAgICAgICBpZiAoIWNvZGUudmFsaWRhdGUoKSkKKysg ICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKysgICAgICAgICAgICAgICAgcmV0dmFs LmFwcGVuZChjb2RlLnRvX3N0cmluZygpKTsKKysgICAgICAgICAgICAgICAgY29udGludWU7Cisr ICAgICAgICAgICAgfQorICAgICAgICAgICAgIGlmICghY2guaXN4ZGlnaXQoKSkKKyAgICAgICAg ICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgIGJ1ZmYuYXBwZW5kX3VuaWNoYXIo Y2gpOworQEAgLTY0NSw5ICs2NzIsOCBAQCBjbGFzcyBJQnVzRW1vamllciA6IEd0ay5XaW5kb3cg eworICAgICAgICAgdW5pY2hhciBjb2RlID0gKHVuaWNoYXIpYnVmZi5zdHIudG9fdWxvbmcobnVs bCwgMTYpOworICAgICAgICAgaWYgKCFjb2RlLnZhbGlkYXRlKCkpCisgICAgICAgICAgICAgcmV0 dXJuIGZhbHNlOworLSAgICAgICAgaWYgKGNoZWNrX3hkaWdpdF9vbmx5KQorLSAgICAgICAgICAg IHJldHVybiB0cnVlOworLSAgICAgICAgbV91bmljb2RlX3BvaW50ID0gY29kZS50b19zdHJpbmco KTsKKysgICAgICAgIHJldHZhbC5hcHBlbmQoY29kZS50b19zdHJpbmcoKSk7CisrICAgICAgICBt X3VuaWNvZGVfcG9pbnQgPSByZXR2YWwuc3RyOworICAgICAgICAgaWYgKG1fdW5pY29kZV9wb2lu dCA9PSBudWxsKQorICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICAgSUJ1cy5UZXh0 IHRleHQgPSBuZXcgSUJ1cy5UZXh0LmZyb21fc3RyaW5nKG1fdW5pY29kZV9wb2ludCk7CitAQCAt Njk5LDkgKzcyNSwxMCBAQCBjbGFzcyBJQnVzRW1vamllciA6IEd0ay5XaW5kb3cgeworICAgICAg ICAgaWYgKG1fYmFja3dhcmQgIT0gbnVsbCkgeworICAgICAgICAgICAgIHN0cmluZyBiYWNrd2Fy ZF9kZXNjID0KKyAgICAgICAgICAgICAgICAgICAgICIlcyAoJXUgLyAldSkiLnByaW50ZihtX2Jh Y2t3YXJkLCBjdXJzb3IsIG5jYW5kaWRhdGVzIC0gMSk7CistICAgICAgICAgICAgRVBhZGRlZExh YmVsIGxhYmVsID0gbmV3IEVQYWRkZWRMYWJlbChiYWNrd2FyZF9kZXNjLAorLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3RrLkFsaWduLkNFTlRFUiwK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYXZl bERpcmVjdGlvbi5CQUNLV0FSRCk7CisrICAgICAgICAgICAgRVBhZGRlZExhYmVsQm94IGxhYmVs ID0KKysgICAgICAgICAgICAgICAgICAgIG5ldyBFUGFkZGVkTGFiZWxCb3goYmFja3dhcmRfZGVz YywKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3RrLkFsaWduLkNF TlRFUiwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJhdmVsRGly ZWN0aW9uLkJBQ0tXQVJEKTsKKyAgICAgICAgICAgICBHdGsuQnV0dG9uIGJ1dHRvbiA9IG5ldyBH dGsuQnV0dG9uKCk7CisgICAgICAgICAgICAgYnV0dG9uLmFkZChsYWJlbCk7CisgICAgICAgICAg ICAgbV92Ym94LmFkZChidXR0b24pOworQEAgLTc3NiwyNyArODAzLDI0IEBAIGNsYXNzIElCdXNF bW9qaWVyIDogR3RrLldpbmRvdyB7CisgICAgICAgICAgICAgSUJ1cy5UZXh0IGNhbmRpZGF0ZSA9 IG1fbG9va3VwX3RhYmxlLmdldF9jYW5kaWRhdGUoY3Vyc29yKTsKKyAgICAgICAgICAgICB1bm93 bmVkIElCdXMuRW1vamlEYXRhPyBkYXRhID0KKyAgICAgICAgICAgICAgICAgICAgIG1fZW1vamlf dG9fZGF0YV9kaWN0Lmxvb2t1cChjYW5kaWRhdGUudGV4dCk7CistICAgICAgICAgICAgaWYgKGN1 cnNvciA9PSAwICYmIGNhbmRpZGF0ZS50ZXh0ID09IG1fdW5pY29kZV9wb2ludCkgeworLSAgICAg ICAgICAgICAgICBFUGFkZGVkTGFiZWwgd2lkZ2V0ID0gbmV3IEVQYWRkZWRMYWJlbCgKKy0gICAg ICAgICAgICAgICAgICAgICAgICBfKCJEZXNjcmlwdGlvbjogVW5pY29kZSBwb2ludCBVKyUwNFgi KS5wcmludGYoCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtX3VuaWNvZGVfcG9p bnQuZ2V0X2NoYXIoMCkpLAorLSAgICAgICAgICAgICAgICAgICAgICAgIEd0ay5BbGlnbi5TVEFS VCk7CistICAgICAgICAgICAgICAgIG1fdmJveC5hZGQod2lkZ2V0KTsKKy0gICAgICAgICAgICAg ICAgd2lkZ2V0LnNob3dfYWxsKCk7CistICAgICAgICAgICAgICAgIGlmIChkYXRhID09IG51bGwp CistICAgICAgICAgICAgICAgICAgICByZXR1cm47CistICAgICAgICAgICAgfSBlbHNlIGlmIChk YXRhID09IG51bGwpIHsKKysgICAgICAgICAgICBpZiAoZGF0YSA9PSBudWxsKSB7CisgICAgICAg ICAgICAgICAgIC8vIFRPRE86IFByb3ZpZGUgYSBjdXN0b20gZGVzY3JpcHRpb24gYW5kIGFubm90 YXRpb24gZm9yCisgICAgICAgICAgICAgICAgIC8vIHRoZSBmYXZvcml0ZSBlbW9qaXMuCistICAg ICAgICAgICAgICAgIEVQYWRkZWRMYWJlbCB3aWRnZXQgPSBuZXcgRVBhZGRlZExhYmVsKAorKyAg ICAgICAgICAgICAgICBFUGFkZGVkTGFiZWxCb3ggd2lkZ2V0ID0gbmV3IEVQYWRkZWRMYWJlbEJv eCgKKyAgICAgICAgICAgICAgICAgICAgICAgICBfKCJEZXNjcmlwdGlvbjogJXMiKS5wcmludGYo XygiTm9uZSIpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBHdGsuQWxpZ24uU1RBUlQpOwor ICAgICAgICAgICAgICAgICBtX3Zib3guYWRkKHdpZGdldCk7CisgICAgICAgICAgICAgICAgIHdp ZGdldC5zaG93X2FsbCgpOworKyAgICAgICAgICAgICAgICBFUGFkZGVkTGFiZWxCb3ggd2lkZ2V0 X2NvZGUgPSBuZXcgRVBhZGRlZExhYmVsQm94KAorKyAgICAgICAgICAgICAgICAgICAgICAgIF8o IkNvZGUgcG9pbnQ6ICVzIikucHJpbnRmKAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgdXRmOF9jb2RlX3BvaW50KGNhbmRpZGF0ZS50ZXh0KSksCisrICAgICAgICAgICAgICAgICAg ICAgICAgR3RrLkFsaWduLlNUQVJUKTsKKysgICAgICAgICAgICAgICAgbV92Ym94LmFkZCh3aWRn ZXRfY29kZSk7CisrICAgICAgICAgICAgICAgIHdpZGdldF9jb2RlLnNob3dfYWxsKCk7CisgICAg ICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAg ICAgICB1bm93bmVkIHN0cmluZyBkZXNjcmlwdGlvbiA9IGRhdGEuZ2V0X2Rlc2NyaXB0aW9uKCk7 CistICAgICAgICAgICAgICAgIEVQYWRkZWRMYWJlbCB3aWRnZXQgPSBuZXcgRVBhZGRlZExhYmVs KAorKyAgICAgICAgICAgICAgICBFUGFkZGVkTGFiZWxCb3ggd2lkZ2V0ID0gbmV3IEVQYWRkZWRM YWJlbEJveCgKKyAgICAgICAgICAgICAgICAgICAgICAgICBfKCJEZXNjcmlwdGlvbjogJXMiKS5w cmludGYoZGVzY3JpcHRpb24pLAorICAgICAgICAgICAgICAgICAgICAgICAgIEd0ay5BbGlnbi5T VEFSVCk7CisgICAgICAgICAgICAgICAgIG1fdmJveC5hZGQod2lkZ2V0KTsKK0BAIC04MTIsMTkg KzgzNiwyNiBAQCBjbGFzcyBJQnVzRW1vamllciA6IEd0ay5XaW5kb3cgeworICAgICAgICAgICAg ICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICBidWZmLmFwcGVuZF9wcmludGYoIiB8ICVz IiwgYW5ub3RhdGlvbik7CisgICAgICAgICAgICAgICAgIGlmIChidWZmLnN0ci5jaGFyX2NvdW50 KCkgPiAzMCkgeworLSAgICAgICAgICAgICAgICAgICAgRVBhZGRlZExhYmVsIHdpZGdldCA9IG5l dyBFUGFkZGVkTGFiZWwoYnVmZi5zdHIsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHdGsuQWxpZ24uU1RBUlQpOworKyAgICAgICAg ICAgICAgICAgICAgRVBhZGRlZExhYmVsQm94IHdpZGdldCA9CisrICAgICAgICAgICAgICAgICAg ICAgICAgICAgIG5ldyBFUGFkZGVkTGFiZWxCb3goYnVmZi5zdHIsCisrICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3RrLkFsaWduLlNUQVJUKTsKKyAgICAg ICAgICAgICAgICAgICAgIG1fdmJveC5hZGQod2lkZ2V0KTsKKyAgICAgICAgICAgICAgICAgICAg IHdpZGdldC5zaG93X2FsbCgpOworICAgICAgICAgICAgICAgICAgICAgYnVmZi5lcmFzZSgpOwor ICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgfQorICAgICAgICAgICAgIGlmIChidWZm LnN0ciAhPSAiIikgeworLSAgICAgICAgICAgICAgICBFUGFkZGVkTGFiZWwgd2lkZ2V0ID0gbmV3 IEVQYWRkZWRMYWJlbChidWZmLnN0ciwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgR3RrLkFsaWduLlNUQVJUKTsKKysgICAgICAgICAgICAg ICAgRVBhZGRlZExhYmVsQm94IHdpZGdldCA9IG5ldyBFUGFkZGVkTGFiZWxCb3goYnVmZi5zdHIs CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEd0ay5BbGlnbi5TVEFSVCk7CisgICAgICAgICAgICAgICAgIG1fdmJveC5hZGQod2lk Z2V0KTsKKyAgICAgICAgICAgICAgICAgd2lkZ2V0LnNob3dfYWxsKCk7CisgICAgICAgICAgICAg fQorKyAgICAgICAgICAgIEVQYWRkZWRMYWJlbEJveCB3aWRnZXRfY29kZSA9IG5ldyBFUGFkZGVk TGFiZWxCb3goCisrICAgICAgICAgICAgICAgICAgICBfKCJDb2RlIHBvaW50OiAlcyIpLnByaW50 ZigKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXRmOF9jb2RlX3BvaW50KGNhbmRpZGF0 ZS50ZXh0KSksCisrICAgICAgICAgICAgICAgICAgICBHdGsuQWxpZ24uU1RBUlQpOworKyAgICAg ICAgICAgIG1fdmJveC5hZGQod2lkZ2V0X2NvZGUpOworKyAgICAgICAgICAgIHdpZGdldF9jb2Rl LnNob3dfYWxsKCk7CisgICAgICAgICB9CisgICAgIH0KKyAKK0BAIC04MzcsNDMgKzg2OCw2IEBA IGNsYXNzIElCdXNFbW9qaWVyIDogR3RrLldpbmRvdyB7CisgICAgIH0KKyAKKyAKKy0gICAgcHJp dmF0ZSBib29sIGlmX2luX3JhbmdlX29mX2xvb2t1cCh1aW50IGtleXZhbCkgeworLSAgICAgICAg aWYgKCFtX2NhbmRpZGF0ZV9wYW5lbF9pc192aXNpYmxlKQorLSAgICAgICAgICAgIHJldHVybiBm YWxzZTsKKy0gICAgICAgIFN0cmluZ0J1aWxkZXIgYnVmZmVyX3N0cmluZyA9IG5ldyBTdHJpbmdC dWlsZGVyKG1fZW50cnkuZ2V0X3RleHQoKSk7CistICAgICAgICB1bmljaGFyIGNoID0gSUJ1cy5r ZXl2YWxfdG9fdW5pY29kZSAoa2V5dmFsKTsKKy0gICAgICAgIGJ1ZmZlcl9zdHJpbmcuYXBwZW5k X3VuaWNoYXIoY2gpOworLSAgICAgICAgaWYgKGNoZWNrX3VuaWNvZGVfcG9pbnQoYnVmZmVyX3N0 cmluZy5zdHIpKQorLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKy0gICAgICAgIGlmIChrZXl2 YWwgPCBHZGsuS2V5LkAwIHx8IGtleXZhbCA+IEdkay5LZXkuQDkpCistICAgICAgICAgICAgcmV0 dXJuIGZhbHNlOworLSAgICAgICAgaWYgKGtleXZhbCA9PSBHZGsuS2V5LkAwKQorLSAgICAgICAg ICAgIGtleXZhbCA9IEdkay5LZXkuQDkgKyAxOworLSAgICAgICAgdWludCBpbmRleCA9IGtleXZh bCAtIEdkay5LZXkuQDEgKyAxOworLSAgICAgICAgdWludCBjYW5kaWRhdGVzID0gbV9sb29rdXBf dGFibGUuZ2V0X251bWJlcl9vZl9jYW5kaWRhdGVzKCk7CistICAgICAgICB1aW50IGN1cnNvcl9w b3MgPSBtX2xvb2t1cF90YWJsZS5nZXRfY3Vyc29yX3BvcygpOworLSAgICAgICAgdWludCBwYWdl X3NpemUgPSBtX2xvb2t1cF90YWJsZS5nZXRfcGFnZV9zaXplKCk7CistICAgICAgICBpZiAoaW5k ZXggPiB1aW50Lm1pbihjYW5kaWRhdGVzIC0gKGN1cnNvcl9wb3MgLyBwYWdlX3NpemUpICogcGFn ZV9zaXplLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZV9zaXplKSkgeworLSAg ICAgICAgICAgIHJldHVybiBmYWxzZTsKKy0gICAgICAgIH0KKy0gICAgICAgIHJldHVybiB0cnVl OworLSAgICB9CistCistCistICAgIHByaXZhdGUgdm9pZCBzZXRfbnVtYmVyX29uX2xvb2t1cCh1 aW50IGtleXZhbCkgeworLSAgICAgICAgaWYgKGtleXZhbCA9PSBHZGsuS2V5LkAwKQorLSAgICAg ICAgICAgIGtleXZhbCA9IEdkay5LZXkuQDkgKyAxOworLSAgICAgICAgdWludCBpbmRleCA9IGtl eXZhbCAtIEdkay5LZXkuQDE7CistICAgICAgICB1aW50IGN1cnNvcl9wb3MgPSBtX2xvb2t1cF90 YWJsZS5nZXRfY3Vyc29yX3BvcygpOworLSAgICAgICAgdWludCBjdXJzb3JfaW5fcGFnZT0gbV9s b29rdXBfdGFibGUuZ2V0X2N1cnNvcl9pbl9wYWdlKCk7CistICAgICAgICB1aW50IHJlYWxfaW5k ZXggPSBjdXJzb3JfcG9zIC0gY3Vyc29yX2luX3BhZ2UgKyBpbmRleDsKKy0gICAgICAgIG1fbG9v a3VwX3RhYmxlLnNldF9jdXJzb3JfcG9zKHJlYWxfaW5kZXgpOworLSAgICAgICAgSUJ1cy5UZXh0 IHRleHQgPSBtX2xvb2t1cF90YWJsZS5nZXRfY2FuZGlkYXRlKHJlYWxfaW5kZXgpOworLSAgICAg ICAgbV9yZXN1bHQgPSB0ZXh0LnRleHQ7CistICAgIH0KKy0KKy0KKyAgICAgcHJpdmF0ZSB2b2lk IGVudGVyX25vdGlmeV9kaXNhYmxlX3dpdGhfdGltZXIoKSB7CisgICAgICAgICAvLyBFbmFibGUg a2V5Ym9hcmQgb3BlcmF0aW9uIGFuZCBkaXNhYmxlIG1vdXNlIG9wZXJhdGlvbi4KKyAgICAgICAg IG1fZW50ZXJfbm90aWZ5X2VuYWJsZSA9IGZhbHNlOworQEAgLTExNTQsMTEgKzExNDgsNiBAQCBj bGFzcyBJQnVzRW1vamllciA6IEd0ay5XaW5kb3cgeworICAgICAgICAgICoga2V5X3JlbGVhc2Vf ZXZlbnQoKSBzbyB0aGF0IHRoaXMgY2FuIGtub3cgaWYgdGhlIGV2ZW50CisgICAgICAgICAgKiB3 YXMgaGFuZGxlZCBieSBJTUUuCisgICAgICAgICAgKi8KKy0gICAgICAgIGlmIChpZl9pbl9yYW5n ZV9vZl9sb29rdXAoa2V5dmFsKSkgeworLSAgICAgICAgICAgIHNldF9udW1iZXJfb25fbG9va3Vw KGtleXZhbCk7CistICAgICAgICAgICAgbV9sb29wLnF1aXQoKTsKKy0gICAgICAgICAgICByZXR1 cm4gdHJ1ZTsKKy0gICAgICAgIH0KKyAgICAgICAgIHN3aXRjaCAoa2V5dmFsKSB7CisgICAgICAg ICBjYXNlIEdkay5LZXkuRXNjYXBlOgorICAgICAgICAgICAgIGlmIChrZXlfcHJlc3NfY3Vyc29y X2VzY2FwZSgpKQorLS0gCisyLjkuMworCitGcm9tIGNiMGEzNmMyNTRkYzdhOTZiMmE5ODRlNzE1 Zjk2Y2MyZWMzMmUyZDUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBmdWppd2FyYXQg PHRha2FvLmZ1aml3YXJhMUBnbWFpbC5jb20+CitEYXRlOiBNb24sIDMgQXByIDIwMTcgMTI6MjQ6 MjcgKzA5MDAKK1N1YmplY3Q6IFtQQVRDSF0gc3JjOiBFbmFibGUgdW5pY29kZV9hbHQgaW4gRW1v amlPbmUganNvbiBmaWxlCisKK0Vtb2ppT25lIGpzb24gZmlsZSBoYXMgdW5pY29kZV9hbHQgcHJv cGVydHkgd2hpY2ggaW5jbHVkZXMKK2Vtb2ppIG1vZGlmZXIgY2hhcmFjdGVycy4KKworUmV2aWV3 IFVSTDogaHR0cHM6Ly9jb2RlcmV2aWV3LmFwcHNwb3QuY29tLzMxNjQyMDA0MworLS0tCisgc3Jj L2Vtb2ppLXBhcnNlci5jICAgfCAyMCArKysrKysrKysrKysrKysrKy0tLQorIHNyYy9pYnVzZW1v amkuYyAgICAgIHwgNDggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KystLS0tCisgc3JjL2lidXNlbW9qaS5oICAgICAgfCAxNCArKysrKysrKysrKysrKworIHVpL2d0 azMvZW1vamllci52YWxhIHwgIDkgKysrKysrLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCA4MSBpbnNl cnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3NyYy9lbW9qaS1wYXJz ZXIuYyBiL3NyYy9lbW9qaS1wYXJzZXIuYworaW5kZXggZjllMzQ3MC4uZTVkY2UzZiAxMDA2NDQK Ky0tLSBhL3NyYy9lbW9qaS1wYXJzZXIuYworKysrIGIvc3JjL2Vtb2ppLXBhcnNlci5jCitAQCAt NDAsNiArNDAsNyBAQAorIHR5cGVkZWYgc3RydWN0IF9FbW9qaURhdGEgRW1vamlEYXRhOworIHN0 cnVjdCBfRW1vamlEYXRhIHsKKyAgICAgZ2NoYXIgICAgICAqZW1vamk7CisrICAgIGdjaGFyICAg ICAgKmVtb2ppX2FsdGVybmF0ZXM7CisgICAgIEdTTGlzdCAgICAgKmFubm90YXRpb25zOworICAg ICBnYm9vbGVhbiAgICBpc19hbm5vdGF0aW9uOworICAgICBnY2hhciAgICAgICpkZXNjcmlwdGlv bjsKK0BAIC01NCw2ICs1NSw3IEBAIHJlc2V0X2Vtb2ppX2VsZW1lbnQgKEVtb2ppRGF0YSAqZGF0 YSkKKyAgICAgZ19hc3NlcnQgKGRhdGEgIT0gTlVMTCk7CisgCisgICAgIGdfY2xlYXJfcG9pbnRl ciAoJmRhdGEtPmVtb2ppLCBnX2ZyZWUpOworKyAgICBnX2NsZWFyX3BvaW50ZXIgKCZkYXRhLT5l bW9qaV9hbHRlcm5hdGVzLCBnX2ZyZWUpOworICAgICBnX3NsaXN0X2ZyZWVfZnVsbCAoZGF0YS0+ YW5ub3RhdGlvbnMsIGdfZnJlZSk7CisgICAgIGRhdGEtPmFubm90YXRpb25zID0gTlVMTDsKKyAg ICAgZ19jbGVhcl9wb2ludGVyICgmZGF0YS0+ZGVzY3JpcHRpb24sIGdfZnJlZSk7CitAQCAtMTEy LDYgKzExNCwxMCBAQCB1cGRhdGVfZW1vamlfbGlzdCAoRW1vamlEYXRhICpkYXRhKQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY2F0ZWdvcnkiLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLT5jYXRlZ29yeSA/IGRhdGEtPmNhdGVnb3J5 CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBnX3N0cmR1 cCAoIiIpLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZW1vamktYWx0 ZXJuYXRlcyIsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtPmVt b2ppX2FsdGVybmF0ZXMKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICA/IGRhdGEtPmVtb2ppX2FsdGVybmF0ZXMKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICA6IGdfc3RyZHVwICgiIiksCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgICAgICAgZGF0YS0+bGlzdCA9IGdfc2xpc3Rf YXBwZW5kIChkYXRhLT5saXN0LCBlbW9qaSk7CisgICAgIH0KK0BAIC0yNzEsNyArMjc3LDggQEAg ZmFpbGVkX3RvX3BhcnNlX3VuaWNvZGVfYW5ub3RhdGlvbnM6CisgCisgc3RhdGljIGdib29sZWFu CisgcGFyc2VfZW1vamlvbmVfdW5pY29kZSAoSnNvbk5vZGUgICpub2RlLAorLSAgICAgICAgICAg ICAgICAgICAgICAgIEVtb2ppRGF0YSAqZGF0YSkKKysgICAgICAgICAgICAgICAgICAgICAgICBF bW9qaURhdGEgKmRhdGEsCisrICAgICAgICAgICAgICAgICAgICAgICAgZ2Jvb2xlYW4gICBpc19h bHRlcm5hdGVzKQorIHsKKyAgICAgY29uc3QgZ2NoYXIgKnN0ciwgKnVuaWNvZGU7CisgICAgIGdj aGFyICplbmRwdHIgPSBOVUxMOworQEAgLTMwNSw3ICszMTIsMTAgQEAgcGFyc2VfZW1vamlvbmVf dW5pY29kZSAoSnNvbk5vZGUgICpub2RlLAorICAgICAgICAgZW5kcHRyID0gTlVMTDsKKyAgICAg fQorIAorLSAgICBkYXRhLT5lbW9qaSA9IGdfc3RyaW5nX2ZyZWUgKGVtb2ppLCBGQUxTRSk7Cisr ICAgIGlmIChpc19hbHRlcm5hdGVzKQorKyAgICAgICAgZGF0YS0+ZW1vamlfYWx0ZXJuYXRlcyA9 IGdfc3RyaW5nX2ZyZWUgKGVtb2ppLCBGQUxTRSk7CisrICAgIGVsc2UKKysgICAgICAgIGRhdGEt PmVtb2ppID0gZ19zdHJpbmdfZnJlZSAoZW1vamksIEZBTFNFKTsKKyAKKyAgICAgcmV0dXJuIFRS VUU7CisgfQorQEAgLTQ4MCw3ICs0OTAsMTEgQEAgcGFyc2VfZW1vamlvbmVfZW1vamlfZGF0YSAo SnNvbk5vZGUgICAgKm5vZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW1vamlEYXRh ICAgKmRhdGEpCisgeworICAgICBpZiAoZ19zdHJjbXAwIChtZW1iZXIsICJ1bmljb2RlIikgPT0g MCkKKy0gICAgICAgIHJldHVybiBwYXJzZV9lbW9qaW9uZV91bmljb2RlIChub2RlLCBkYXRhKTsK KysgICAgICAgIHJldHVybiBwYXJzZV9lbW9qaW9uZV91bmljb2RlIChub2RlLCBkYXRhLCBGQUxT RSk7CisrICAgIGVsc2UgaWYgKGdfc3RyY21wMCAobWVtYmVyLCAidW5pY29kZV9hbHQiKSA9PSAw KQorKyAgICAgICAgcmV0dXJuIHBhcnNlX2Vtb2ppb25lX3VuaWNvZGUgKG5vZGUsIGRhdGEsIFRS VUUpOworKyAgICBlbHNlIGlmIChnX3N0cmNtcDAgKG1lbWJlciwgInVuaWNvZGVfYWx0ZXJuYXRl cyIpID09IDApCisrICAgICAgICByZXR1cm4gcGFyc2VfZW1vamlvbmVfdW5pY29kZSAobm9kZSwg ZGF0YSwgVFJVRSk7CisgICAgIGVsc2UgaWYgKGdfc3RyY21wMCAobWVtYmVyLCAic2hvcnRuYW1l IikgPT0gMCkKKyAgICAgICAgIHJldHVybiBwYXJzZV9lbW9qaW9uZV9zaG9ydG5hbWUgKG5vZGUs IGRhdGEpOworICAgICBlbHNlIGlmIChnX3N0cmNtcDAgKG1lbWJlciwgIm5hbWUiKSA9PSAwKQor ZGlmZiAtLWdpdCBhL3NyYy9pYnVzZW1vamkuYyBiL3NyYy9pYnVzZW1vamkuYworaW5kZXggYzYx Y2Q3MC4uNGJlMDkyYSAxMDA2NDQKKy0tLSBhL3NyYy9pYnVzZW1vamkuYworKysrIGIvc3JjL2li dXNlbW9qaS5jCitAQCAtMjksMTQgKzI5LDE1IEBACisgI2luY2x1ZGUgImlidXNpbnRlcm5hbC5o IgorIAorICNkZWZpbmUgSUJVU19FTU9KSV9EQVRBX01BR0lDICJJQnVzRW1vamlEYXRhIgorLSNk ZWZpbmUgSUJVU19FTU9KSV9EQVRBX1ZFUlNJT04gKDIpCisrI2RlZmluZSBJQlVTX0VNT0pJX0RB VEFfVkVSU0lPTiAoMykKKyAKKyBlbnVtIHsKKyAgICAgUFJPUF8wID0gMCwKKyAgICAgUFJPUF9F TU9KSSwKKyAgICAgUFJPUF9BTk5PVEFUSU9OUywKKyAgICAgUFJPUF9ERVNDUklQVElPTiwKKy0g ICAgUFJPUF9DQVRFR09SWQorKyAgICBQUk9QX0NBVEVHT1JZLAorKyAgICBQUk9QX0VNT0pJX0FM VEVSTkFURVMKKyB9OworIAorIHN0cnVjdCBfSUJ1c0Vtb2ppRGF0YVByaXZhdGUgeworQEAgLTQ0 LDYgKzQ1LDcgQEAgc3RydWN0IF9JQnVzRW1vamlEYXRhUHJpdmF0ZSB7CisgICAgIEdTTGlzdCAg ICAgKmFubm90YXRpb25zOworICAgICBnY2hhciAgICAgICpkZXNjcmlwdGlvbjsKKyAgICAgZ2No YXIgICAgICAqY2F0ZWdvcnk7CisrICAgIGdjaGFyICAgICAgKmVtb2ppX2FsdGVybmF0ZXM7Cisg fTsKKyAKKyAjZGVmaW5lIElCVVNfRU1PSklfREFUQV9HRVRfUFJJVkFURShvKSAgXAorQEAgLTE0 Miw2ICsxNDQsMTkgQEAgaWJ1c19lbW9qaV9kYXRhX2NsYXNzX2luaXQgKElCdXNFbW9qaURhdGFD bGFzcyAqY2xhc3MpCisgICAgICAgICAgICAgICAgICAgICAgICAgIlRoZSBlbW9qaSBjYXRlZ29y eSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIiIsCisgICAgICAgICAgICAgICAgICAgICAg ICAgR19QQVJBTV9SRUFEV1JJVEUgfCBHX1BBUkFNX0NPTlNUUlVDVF9PTkxZKSk7CisrCisrICAg IC8qKgorKyAgICAgKiBJQnVzRW1vamlEYXRhOmVtb2ppX2FsdGVybmF0ZXM6CisrICAgICAqCisr ICAgICAqIFRoZSBlbW9qaSBhbHRlcm5hdGUgY2hhcmFjdGVycworKyAgICAgKi8KKysgICAgZ19v YmplY3RfY2xhc3NfaW5zdGFsbF9wcm9wZXJ0eSAoZ29iamVjdF9jbGFzcywKKysgICAgICAgICAg ICAgICAgICAgIFBST1BfRU1PSklfQUxURVJOQVRFUywKKysgICAgICAgICAgICAgICAgICAgIGdf cGFyYW1fc3BlY19zdHJpbmcgKCJlbW9qaS1hbHRlcm5hdGVzIiwKKysgICAgICAgICAgICAgICAg ICAgICAgICAiZW1vamkgYWx0ZXJuYXRlIGNoYXJhc3RlcnMiLAorKyAgICAgICAgICAgICAgICAg ICAgICAgICJUaGUgZW1vamkgYWx0ZXJuYXRlIGNoYXJhY3RlcnMgVVRGLTgiLAorKyAgICAgICAg ICAgICAgICAgICAgICAgICIiLAorKyAgICAgICAgICAgICAgICAgICAgICAgIEdfUEFSQU1fUkVB RFdSSVRFIHwgR19QQVJBTV9DT05TVFJVQ1RfT05MWSkpOworIH0KKyAKKyBzdGF0aWMgdm9pZAor QEAgLTE4MCwxOSArMTk1LDI0IEBAIGlidXNfZW1vamlfZGF0YV9zZXRfcHJvcGVydHkgKElCdXNF bW9qaURhdGEgKmVtb2ppLAorICAgICAgICAgZW1vamktPnByaXYtPmVtb2ppID0gZ192YWx1ZV9k dXBfc3RyaW5nICh2YWx1ZSk7CisgICAgICAgICBicmVhazsKKyAgICAgY2FzZSBQUk9QX0FOTk9U QVRJT05TOgorLSAgICAgICAgZ19hc3NlcnQgKGVtb2ppLT5wcml2LT5hbm5vdGF0aW9ucyA9PSBO VUxMKTsKKysgICAgICAgIGlmIChlbW9qaS0+cHJpdi0+YW5ub3RhdGlvbnMpCisrICAgICAgICAg ICAgZ19zbGlzdF9mcmVlX2Z1bGwgKGVtb2ppLT5wcml2LT5hbm5vdGF0aW9ucywgZ19mcmVlKTsK KyAgICAgICAgIGVtb2ppLT5wcml2LT5hbm5vdGF0aW9ucyA9CisgICAgICAgICAgICAgICAgIGdf c2xpc3RfY29weV9kZWVwIChnX3ZhbHVlX2dldF9wb2ludGVyICh2YWx1ZSksCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAoR0NvcHlGdW5jKSBnX3N0cmR1cCwgTlVMTCk7Cisg ICAgICAgICBicmVhazsKKyAgICAgY2FzZSBQUk9QX0RFU0NSSVBUSU9OOgorLSAgICAgICAgZ19h c3NlcnQgKGVtb2ppLT5wcml2LT5kZXNjcmlwdGlvbiA9PSBOVUxMKTsKKysgICAgICAgIGdfZnJl ZSAoZW1vamktPnByaXYtPmRlc2NyaXB0aW9uKTsKKyAgICAgICAgIGVtb2ppLT5wcml2LT5kZXNj cmlwdGlvbiA9IGdfdmFsdWVfZHVwX3N0cmluZyAodmFsdWUpOworICAgICAgICAgYnJlYWs7Cisg ICAgIGNhc2UgUFJPUF9DQVRFR09SWToKKyAgICAgICAgIGdfYXNzZXJ0IChlbW9qaS0+cHJpdi0+ Y2F0ZWdvcnkgPT0gTlVMTCk7CisgICAgICAgICBlbW9qaS0+cHJpdi0+Y2F0ZWdvcnkgPSBnX3Zh bHVlX2R1cF9zdHJpbmcgKHZhbHVlKTsKKyAgICAgICAgIGJyZWFrOworKyAgICBjYXNlIFBST1Bf RU1PSklfQUxURVJOQVRFUzoKKysgICAgICAgIGdfYXNzZXJ0IChlbW9qaS0+cHJpdi0+ZW1vamlf YWx0ZXJuYXRlcyA9PSBOVUxMKTsKKysgICAgICAgIGVtb2ppLT5wcml2LT5lbW9qaV9hbHRlcm5h dGVzID0gZ192YWx1ZV9kdXBfc3RyaW5nICh2YWx1ZSk7CisrICAgICAgICBicmVhazsKKyAgICAg ZGVmYXVsdDoKKyAgICAgICAgIEdfT0JKRUNUX1dBUk5fSU5WQUxJRF9QUk9QRVJUWV9JRCAoZW1v amksIHByb3BfaWQsIHBzcGVjKTsKKyAgICAgfQorQEAgLTIyMCw2ICsyNDAsOSBAQCBpYnVzX2Vt b2ppX2RhdGFfZ2V0X3Byb3BlcnR5IChJQnVzRW1vamlEYXRhICplbW9qaSwKKyAgICAgY2FzZSBQ Uk9QX0NBVEVHT1JZOgorICAgICAgICAgZ192YWx1ZV9zZXRfc3RyaW5nICh2YWx1ZSwgaWJ1c19l bW9qaV9kYXRhX2dldF9jYXRlZ29yeSAoZW1vamkpKTsKKyAgICAgICAgIGJyZWFrOworKyAgICBj YXNlIFBST1BfRU1PSklfQUxURVJOQVRFUzoKKysgICAgICAgIGdfdmFsdWVfc2V0X3N0cmluZyAo dmFsdWUsIGlidXNfZW1vamlfZGF0YV9nZXRfZW1vamlfYWx0ZXJuYXRlcyhlbW9qaSkpOworKyAg ICAgICAgYnJlYWs7CisgICAgIGRlZmF1bHQ6CisgICAgICAgICBHX09CSkVDVF9XQVJOX0lOVkFM SURfUFJPUEVSVFlfSUQgKGVtb2ppLCBwcm9wX2lkLCBwc3BlYyk7CisgICAgIH0KK0BAIC0yNDcs NiArMjcwLDkgQEAgaWJ1c19lbW9qaV9kYXRhX3NlcmlhbGl6ZSAoSUJ1c0Vtb2ppRGF0YSAgICpl bW9qaSwKKyAgICAgfQorICAgICBnX3ZhcmlhbnRfYnVpbGRlcl9hZGQgKGJ1aWxkZXIsICJzIiwg Tk9UTlVMTCAoZW1vamktPnByaXYtPmRlc2NyaXB0aW9uKSk7CisgICAgIGdfdmFyaWFudF9idWls ZGVyX2FkZCAoYnVpbGRlciwgInMiLCBOT1ROVUxMIChlbW9qaS0+cHJpdi0+Y2F0ZWdvcnkpKTsK KysgICAgZ192YXJpYW50X2J1aWxkZXJfYWRkIChidWlsZGVyLCAicyIsCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgTk9UTlVMTCAoZW1vamktPnByaXYtPmVtb2ppX2FsdGVybmF0ZXMpKTsK KysjdW5kZWYgTk9UTlVMTAorICAgICByZXR1cm4gVFJVRTsKKyB9CisgCitAQCAtMjc3LDYgKzMw MywxMCBAQCBpYnVzX2Vtb2ppX2RhdGFfZGVzZXJpYWxpemUgKElCdXNFbW9qaURhdGEgKmVtb2pp LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZW1vamktPnByaXYtPmRl c2NyaXB0aW9uKTsKKyAgICAgaWJ1c19nX3ZhcmlhbnRfZ2V0X2NoaWxkX3N0cmluZyAodmFyaWFu dCwgcmV0dmFsKyssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlbW9q aS0+cHJpdi0+Y2F0ZWdvcnkpOworKyAgICBpZiAoZ192YXJpYW50X25fY2hpbGRyZW4gKHZhcmlh bnQpIDwgcmV0dmFsICsgMSkKKysgICAgICAgIHJldHVybiByZXR2YWw7CisrICAgIGlidXNfZ192 YXJpYW50X2dldF9jaGlsZF9zdHJpbmcgKHZhcmlhbnQsIHJldHZhbCsrLAorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAmZW1vamktPnByaXYtPmVtb2ppX2FsdGVybmF0ZXMp OworICAgICByZXR1cm4gcmV0dmFsOworIH0KKyAKK0BAIC0yOTUsNiArMzI1LDcgQEAgaWJ1c19l bW9qaV9kYXRhX2NvcHkgKElCdXNFbW9qaURhdGEgICAgICAgKmRlc3QsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgICAgIGRl c3QtPnByaXYtPmRlc2NyaXB0aW9uICAgICAgPSBnX3N0cmR1cCAoc3JjLT5wcml2LT5kZXNjcmlw dGlvbik7CisgICAgIGRlc3QtPnByaXYtPmNhdGVnb3J5ICAgICAgICAgPSBnX3N0cmR1cCAoc3Jj LT5wcml2LT5jYXRlZ29yeSk7CisrICAgIGRlc3QtPnByaXYtPmVtb2ppX2FsdGVybmF0ZXMgPSBn X3N0cmR1cCAoc3JjLT5wcml2LT5lbW9qaV9hbHRlcm5hdGVzKTsKKyAgICAgcmV0dXJuIFRSVUU7 CisgfQorIAorQEAgLTMxNCw2ICszNDUsNyBAQCBpYnVzX2Vtb2ppX2RhdGFfbmV3IChjb25zdCBn Y2hhciAqZmlyc3RfcHJvcGVydHlfbmFtZSwgLi4uKQorICAgICBnX2Fzc2VydCAoZW1vamktPnBy aXYtPmVtb2ppICE9IE5VTEwpOworICAgICBnX2Fzc2VydCAoZW1vamktPnByaXYtPmRlc2NyaXB0 aW9uICE9IE5VTEwpOworICAgICBnX2Fzc2VydCAoZW1vamktPnByaXYtPmNhdGVnb3J5ICE9IE5V TEwpOworKyAgICBnX2Fzc2VydCAoZW1vamktPnByaXYtPmVtb2ppX2FsdGVybmF0ZXMgIT0gTlVM TCk7CisgICAgIHJldHVybiBlbW9qaTsKKyB9CisgCitAQCAtMzcwLDYgKzQwMiwxNCBAQCBpYnVz X2Vtb2ppX2RhdGFfZ2V0X2NhdGVnb3J5IChJQnVzRW1vamlEYXRhICplbW9qaSkKKyAgICAgcmV0 dXJuIGVtb2ppLT5wcml2LT5jYXRlZ29yeTsKKyB9CisgCisrY29uc3QgZ2NoYXIgKgorK2lidXNf ZW1vamlfZGF0YV9nZXRfZW1vamlfYWx0ZXJuYXRlcyAoSUJ1c0Vtb2ppRGF0YSAqZW1vamkpCisr eworKyAgICBnX3JldHVybl92YWxfaWZfZmFpbCAoSUJVU19JU19FTU9KSV9EQVRBIChlbW9qaSks IE5VTEwpOworKworKyAgICByZXR1cm4gZW1vamktPnByaXYtPmVtb2ppX2FsdGVybmF0ZXM7Cisr fQorKworIAorIHN0YXRpYyB2b2lkCisgdmFyaWFudF9mb3JlYWNoX2FkZF9lbW9qaSAoSUJ1c0Vt b2ppRGF0YSAgICplbW9qaSwKK2RpZmYgLS1naXQgYS9zcmMvaWJ1c2Vtb2ppLmggYi9zcmMvaWJ1 c2Vtb2ppLmgKK2luZGV4IGViMjRmZGQuLjIzM2NhZGQgMTAwNjQ0CistLS0gYS9zcmMvaWJ1c2Vt b2ppLmgKKysrKyBiL3NyYy9pYnVzZW1vamkuaAorQEAgLTE1Niw2ICsxNTYsMjAgQEAgY29uc3Qg Z2NoYXIgKiAgIGlidXNfZW1vamlfZGF0YV9nZXRfY2F0ZWdvcnkgICAgKElCdXNFbW9qaURhdGEg KmVtb2ppKTsKKyAKKyAKKyAvKioKKysgKiBpYnVzX2Vtb2ppX2RhdGFfZ2V0X2Vtb2ppX2FsdGVy bmF0ZXM6CisrICogQGVtb2ppIDogQW4gI0lCdXNFbW9qaURhdGEKKysgKgorKyAqIEdldHMgdGhl IGVtb2ppIGFsdGVybmF0ZSBjaGFyYWN0ZXJzIGluICNJQnVzRW1vamlEYXRhLiBJdCBzaG91bGQg bm90IGJlCisrICogZnJlZWQuIFRoZSBhbHRlcm5hdGVzIGFyZSBkZWZpbmVkIGluICJ1bmljb2Rl X2FsdCIgaW4gRW1vamlPbmUganNvbi4KKysgKgorKyAqIFJldHVybnM6IGVtb2ppIGFsdGVybmF0 ZXMgcHJvcGVydHkgaW4gI0lCdXNFbW9qaURhdGEKKysgKgorKyAqLworK2NvbnN0IGdjaGFyICog ICBpYnVzX2Vtb2ppX2RhdGFfZ2V0X2Vtb2ppX2FsdGVybmF0ZXMKKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoSUJ1c0Vtb2ppRGF0YSAqZW1vamkpOwor KworKworKy8qKgorICAqIGlidXNfZW1vamlfZGljdF9zYXZlOgorICAqIEBwYXRoOiBBIHBhdGgg b2YgdGhlIHNhdmVkIGRpY3Rpb25hcnkgZmlsZS4KKyAgKiBAZGljdDogKGVsZW1lbnQtdHlwZSB1 dGY4IGdwb2ludGVyKSAodHJhbnNmZXIgbm9uZSk6IEFuIEVtb2ppIGRpY3Rpb25hcnkKK2RpZmYg LS1naXQgYS91aS9ndGszL2Vtb2ppZXIudmFsYSBiL3VpL2d0azMvZW1vamllci52YWxhCitpbmRl eCA4YTI3MjZjLi43YjYxMDdmIDEwMDY0NAorLS0tIGEvdWkvZ3RrMy9lbW9qaWVyLnZhbGEKKysr KyBiL3VpL2d0azMvZW1vamllci52YWxhCitAQCAtMzgxLDcgKzM4MSw4IEBAIGNsYXNzIElCdXNF bW9qaWVyIDogR3RrLldpbmRvdyB7CisgCisgCisgICAgIHByaXZhdGUgdm9pZCB1cGRhdGVfYW5u b3RhdGlvbl90b19lbW9qaXNfZGljdChJQnVzLkVtb2ppRGF0YSBkYXRhKSB7CistICAgICAgICBz dHJpbmcgZW1vamkgPSBkYXRhLmdldF9lbW9qaSgpOworKyAgICAgICAgc3RyaW5nIGVtb2ppID0g KGRhdGEuZ2V0X2Vtb2ppX2FsdGVybmF0ZXMoKSAhPSAiIikgPworKyAgICAgICAgICAgICAgICBk YXRhLmdldF9lbW9qaV9hbHRlcm5hdGVzKCkgOiBkYXRhLmdldF9lbW9qaSgpOworICAgICAgICAg dW5vd25lZCBHTGliLlNMaXN0PHN0cmluZz4gYW5ub3RhdGlvbnMgPSBkYXRhLmdldF9hbm5vdGF0 aW9ucygpOworICAgICAgICAgZm9yZWFjaCAoc3RyaW5nIGFubm90YXRpb24gaW4gYW5ub3RhdGlv bnMpIHsKKyAgICAgICAgICAgICBib29sIGhhc19lbW9qaSA9IGZhbHNlOworQEAgLTQ0NCw3ICs0 NDUsOCBAQCBjbGFzcyBJQnVzRW1vamllciA6IEd0ay5XaW5kb3cgeworIAorICAgICBwcml2YXRl IHZvaWQgdXBkYXRlX2Vtb2ppX3RvX2RhdGFfZGljdChJQnVzLkVtb2ppRGF0YSBkYXRhLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmcgICAgICAgICBs YW5nKSB7CistICAgICAgICBzdHJpbmcgZW1vamkgPSBkYXRhLmdldF9lbW9qaSgpOworKyAgICAg ICAgc3RyaW5nIGVtb2ppID0gKGRhdGEuZ2V0X2Vtb2ppX2FsdGVybmF0ZXMoKSAhPSAiIikgPwor KyAgICAgICAgICAgICAgICBkYXRhLmdldF9lbW9qaV9hbHRlcm5hdGVzKCkgOiBkYXRhLmdldF9l bW9qaSgpOworICAgICAgICAgaWYgKGxhbmcgPT0gImVuIikgeworICAgICAgICAgICAgIHN0cmlu ZyBkZXNjcmlwdGlvbiA9IHV0ZjhfZG93bihkYXRhLmdldF9kZXNjcmlwdGlvbigpKTsKKyAgICAg ICAgICAgICB1bm93bmVkIEdMaWIuU0xpc3Q8c3RyaW5nPiBhbm5vdGF0aW9ucyA9IGRhdGEuZ2V0 X2Fubm90YXRpb25zKCk7CitAQCAtNDk2LDcgKzQ5OCw4IEBAIGNsYXNzIElCdXNFbW9qaWVyIDog R3RrLldpbmRvdyB7CisgCisgICAgIHByaXZhdGUgdm9pZCB1cGRhdGVfY2F0ZWdvcnlfdG9fZW1v amlzX2RpY3QoSUJ1cy5FbW9qaURhdGEgZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmcgICAgICAgICBsYW5nKSB7CistICAgICAgICBz dHJpbmcgZW1vamkgPSBkYXRhLmdldF9lbW9qaSgpOworKyAgICAgICAgc3RyaW5nIGVtb2ppID0g KGRhdGEuZ2V0X2Vtb2ppX2FsdGVybmF0ZXMoKSAhPSAiIikgPworKyAgICAgICAgICAgICAgICBk YXRhLmdldF9lbW9qaV9hbHRlcm5hdGVzKCkgOiBkYXRhLmdldF9lbW9qaSgpOworICAgICAgICAg c3RyaW5nIGNhdGVnb3J5ID0gZGF0YS5nZXRfY2F0ZWdvcnkoKTsKKyAgICAgICAgIGlmIChsYW5n ID09ICJlbiIgJiYgY2F0ZWdvcnkgIT0gIiIpIHsKKyAgICAgICAgICAgICBib29sIGhhc19lbW9q aSA9IGZhbHNlOworLS0gCisyLjkuMworCgpkaWZmIC0tZ2l0IGEvaWJ1cy5zcGVjIGIvaWJ1cy5z cGVjCmluZGV4IDAxM2Y5NmEuLmY4ZmY2YjAgMTAwNjQ0Ci0tLSBhL2lidXMuc3BlYworKysgYi9p YnVzLnNwZWMKQEAgLTI4LDcgKzI4LDcgQEAKIAogTmFtZTogICAgICAgICAgIGlidXMKIFZlcnNp b246ICAgICAgICAxLjUuMTUKLVJlbGVhc2U6ICAgICAgICA1JXs/ZGlzdH0KK1JlbGVhc2U6ICAg ICAgICA2JXs/ZGlzdH0KIFN1bW1hcnk6ICAgICAgICBJbnRlbGxpZ2VudCBJbnB1dCBCdXMgZm9y IExpbnV4IE9TCiBMaWNlbnNlOiAgICAgICAgTEdQTHYyKwogR3JvdXA6ICAgICAgICAgIFN5c3Rl bSBFbnZpcm9ubWVudC9MaWJyYXJpZXMKQEAgLTQyNyw2ICs0MjcsMTEgQEAgZ3RrLXF1ZXJ5LWlt bW9kdWxlcy0zLjAtJXtfX2lzYV9iaXRzfSAtLXVwZGF0ZS1jYWNoZSAmPiAvZGV2L251bGwgfHwg OgogJXtfZGF0YWRpcn0vZ3RrLWRvYy9odG1sLyoKIAogJWNoYW5nZWxvZworKiBXZWQgQXByIDA1 IDIwMTcgVGFrYW8gRnVqaXdhcmEgPHRmdWppd2FyQHJlZGhhdC5jb20+IC0gMS41LjE1LTYKKy0g RW5hYmxlZCB1bmljb2RlX2FsdCBpbiBFbW9qaU9uZSBqc29uIGZpbGUKKy0gRW5hYmxlZCB0byB0 eXBlIG11bHRpcGxlIGNvZGUgcG9pbnRzIG9uIEVtb2ppZXIKKy0gRml4ZWQgSUJ1c0Vtb2ppRGlh bG9nXzFfMF9naXJfTElCUyBmb3IgLS1hcy1uZWVkZWQgTERGTEFHUworCiAqIE1vbiBNYXIgMjcg MjAxNyBUYWthbyBGdWppd2FyYSA8dGZ1aml3YXJAcmVkaGF0LmNvbT4gLSAxLjUuMTUtNQogLSBN b3ZlZCBsYW5ndWFnZSBzZXR0aW5nIG9uIElCdXNFbW9qaWVyIHRvIGlidXMtc2V0dXAuCiAtIEVu YWJsZWQgc3RyY2FzZWNtcCB0byBtYXRjaCBlbW9qaSBhbm5vdGF0aW9ucy4K