<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>46314</bug_id>
          
          <creation_ts>2023-05-31 00:04:45 +0300</creation_ts>
          <short_desc>Обновление исходников до версии 1.4.6</short_desc>
          <delta_ts>2023-06-01 16:15:54 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>opendbx</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>patch</keywords>
          <priority>P5</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Danil Nazarov">idaniel959</reporter>
          <assigned_to name="Anton V. Boyarshinov">boyarsh</assigned_to>
          <cc>boyarsh</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>226729</commentid>
    <comment_count>0</comment_count>
      <attachid>13305</attachid>
    <who name="Danil Nazarov">idaniel959</who>
    <bug_when>2023-05-31 00:04:45 +0300</bug_when>
    <thetext>Created attachment 13305
1.4.3 -&gt; 1.4.6

Прилагаю патч для обновления исходного кода и патч для обновления .spec-файла для сборки. В инструкции по сборке изменена версия пакета и добавлен патч для обновления исходников.

Исходники взяты здесь: https://www.linuxnetworks.de/doc/index.php?title=OpenDBX/Download</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>226730</commentid>
    <comment_count>1</comment_count>
      <attachid>13306</attachid>
    <who name="Danil Nazarov">idaniel959</who>
    <bug_when>2023-05-31 00:05:23 +0300</bug_when>
    <thetext>Created attachment 13306
Патч для spec-файла</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>226882</commentid>
    <comment_count>2</comment_count>
      <attachid>13361</attachid>
    <who name="Danil Nazarov">idaniel959</who>
    <bug_when>2023-06-01 16:15:54 +0300</bug_when>
    <thetext>Created attachment 13361
Патч для spec-файла (1.4.6)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>13305</attachid>
            <date>2023-05-31 00:04:45 +0300</date>
            <delta_ts>2023-05-31 00:04:45 +0300</delta_ts>
            <desc>1.4.3 -&gt; 1.4.6</desc>
            <filename>opendbx-1.4.6-update.patch</filename>
            <type>text/plain</type>
            <size>120157</size>
            <attacher name="Danil Nazarov">idaniel959</attacher>
            
              <data encoding="base64">ZGlmZiAtdXIgb3BlbmRieC5vcmlnL2FjbG9jYWwubTQgb3BlbmRieC9hY2xvY2FsLm00Ci0tLSBv
cGVuZGJ4Lm9yaWcvYWNsb2NhbC5tNAkyMDIzLTA1LTMwIDIwOjI3OjQyLjU1NzM4OTAxMyArMDMw
MAorKysgb3BlbmRieC9hY2xvY2FsLm00CTIwMTItMDYtMTEgMDE6MzM6NTAuMDAwMDAwMDAwICsw
NDAwCkBAIC0xLDQgKzEsNCBAQAotIyBnZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBhY2xvY2Fs
IDEuMTEgLSotIEF1dG9jb25mIC0qLQorIyBnZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBhY2xv
Y2FsIDEuMTEuMSAtKi0gQXV0b2NvbmYgLSotCiAKICMgQ29weXJpZ2h0IChDKSAxOTk2LCAxOTk3
LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLCAyMDAzLCAyMDA0LAogIyAyMDA1LCAyMDA2
LCAyMDA3LCAyMDA4LCAyMDA5ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KQEAgLTEz
LDggKzEzLDggQEAKIAogbTRfaWZuZGVmKFtBQ19BVVRPQ09ORl9WRVJTSU9OXSwKICAgW200X2Nv
cHkoW200X1BBQ0tBR0VfVkVSU0lPTl0sIFtBQ19BVVRPQ09ORl9WRVJTSU9OXSldKWRubAotbTRf
aWYobTRfZGVmbihbQUNfQVVUT0NPTkZfVkVSU0lPTl0pLCBbMi42NF0sLAotW200X3dhcm5pbmco
W3RoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIGZvciBhdXRvY29uZiAyLjY0LgorbTRfaWYobTRfZGVm
bihbQUNfQVVUT0NPTkZfVkVSU0lPTl0pLCBbMi42NV0sLAorW200X3dhcm5pbmcoW3RoaXMgZmls
ZSB3YXMgZ2VuZXJhdGVkIGZvciBhdXRvY29uZiAyLjY1LgogWW91IGhhdmUgYW5vdGhlciB2ZXJz
aW9uIG9mIGF1dG9jb25mLiAgSXQgbWF5IHdvcmssIGJ1dCBpcyBub3QgZ3VhcmFudGVlZCB0by4K
IElmIHlvdSBoYXZlIHByb2JsZW1zLCB5b3UgbWF5IG5lZWQgdG8gcmVnZW5lcmF0ZSB0aGUgYnVp
bGQgc3lzdGVtIGVudGlyZWx5LgogVG8gZG8gc28sIHVzZSB0aGUgcHJvY2VkdXJlIGRvY3VtZW50
ZWQgYnkgdGhlIHBhY2thZ2UsIHR5cGljYWxseSBgYXV0b3JlY29uZicuXSldKQpAQCAtODYsNyAr
ODYsNyBAQAogW2FtX19hcGlfdmVyc2lvbj0nMS4xMScKIGRubCBTb21lIHVzZXJzIGZpbmQgQU1f
QVVUT01BS0VfVkVSU0lPTiBhbmQgbWlzdGFrZSBpdCBmb3IgYSB3YXkgdG8KIGRubCByZXF1aXJl
IHNvbWUgbWluaW11bSB2ZXJzaW9uLiAgUG9pbnQgdGhlbSB0byB0aGUgcmlnaHQgbWFjcm8uCi1t
NF9pZihbJDFdLCBbMS4xMV0sIFtdLAorbTRfaWYoWyQxXSwgWzEuMTEuMV0sIFtdLAogICAgICAg
W0FDX0ZBVEFMKFtEbyBub3QgY2FsbCAkMCwgdXNlIEFNX0lOSVRfQVVUT01BS0UoWyQxXSkuXSld
KWRubAogXSkKIApAQCAtMTAyLDcgKzEwMiw3IEBACiAjIENhbGwgQU1fQVVUT01BS0VfVkVSU0lP
TiBhbmQgQU1fQVVUT01BS0VfVkVSU0lPTiBzbyB0aGV5IGNhbiBiZSB0cmFjZWQuCiAjIFRoaXMg
ZnVuY3Rpb24gaXMgQUNfUkVRVUlSRWQgYnkgQU1fSU5JVF9BVVRPTUFLRS4KIEFDX0RFRlVOKFtB
TV9TRVRfQ1VSUkVOVF9BVVRPTUFLRV9WRVJTSU9OXSwKLVtBTV9BVVRPTUFLRV9WRVJTSU9OKFsx
LjExXSlkbmwKK1tBTV9BVVRPTUFLRV9WRVJTSU9OKFsxLjExLjFdKWRubAogbTRfaWZuZGVmKFtB
Q19BVVRPQ09ORl9WRVJTSU9OXSwKICAgW200X2NvcHkoW200X1BBQ0tBR0VfVkVSU0lPTl0sIFtB
Q19BVVRPQ09ORl9WRVJTSU9OXSldKWRubAogX0FNX0FVVE9DT05GX1ZFUlNJT04obTRfZGVmbihb
QUNfQVVUT0NPTkZfVkVSU0lPTl0pKV0pCmRpZmYgLXVyIG9wZW5kYngub3JpZy9iYWNrZW5kcy9m
aXJlYmlyZC9NYWtlZmlsZS5pbiBvcGVuZGJ4L2JhY2tlbmRzL2ZpcmViaXJkL01ha2VmaWxlLmlu
Ci0tLSBvcGVuZGJ4Lm9yaWcvYmFja2VuZHMvZmlyZWJpcmQvTWFrZWZpbGUuaW4JMjAyMy0wNS0z
MCAyMDoyNzo0Mi41NTczODkwMTMgKzAzMDAKKysrIG9wZW5kYngvYmFja2VuZHMvZmlyZWJpcmQv
TWFrZWZpbGUuaW4JMjAxMi0wNi0xMSAwMTozMzo1Mi4wMDAwMDAwMDAgKzA0MDAKQEAgLTEsNCAr
MSw0IEBACi0jIE1ha2VmaWxlLmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAxLjExIGZyb20gTWFr
ZWZpbGUuYW0uCisjIE1ha2VmaWxlLmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAxLjExLjEgZnJv
bSBNYWtlZmlsZS5hbS4KICMgQGNvbmZpZ3VyZV9pbnB1dEAKIAogIyBDb3B5cmlnaHQgKEMpIDE5
OTQsIDE5OTUsIDE5OTYsIDE5OTcsIDE5OTgsIDE5OTksIDIwMDAsIDIwMDEsIDIwMDIsCmRpZmYg
LXVyIG9wZW5kYngub3JpZy9iYWNrZW5kcy9NYWtlZmlsZS5pbiBvcGVuZGJ4L2JhY2tlbmRzL01h
a2VmaWxlLmluCi0tLSBvcGVuZGJ4Lm9yaWcvYmFja2VuZHMvTWFrZWZpbGUuaW4JMjAyMy0wNS0z
MCAyMDoyNzo0Mi41NTczODkwMTMgKzAzMDAKKysrIG9wZW5kYngvYmFja2VuZHMvTWFrZWZpbGUu
aW4JMjAxMi0wNi0xMSAwMTozMzo1Mi4wMDAwMDAwMDAgKzA0MDAKQEAgLTEsNCArMSw0IEBACi0j
IE1ha2VmaWxlLmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAxLjExIGZyb20gTWFrZWZpbGUuYW0u
CisjIE1ha2VmaWxlLmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAxLjExLjEgZnJvbSBNYWtlZmls
ZS5hbS4KICMgQGNvbmZpZ3VyZV9pbnB1dEAKIAogIyBDb3B5cmlnaHQgKEMpIDE5OTQsIDE5OTUs
IDE5OTYsIDE5OTcsIDE5OTgsIDE5OTksIDIwMDAsIDIwMDEsIDIwMDIsCkBAIC0yOTgsNyArMjk4
LDcgQEAKICMgICAgICh3aGljaCB3aWxsIGNhdXNlIHRoZSBNYWtlZmlsZXMgdG8gYmUgcmVnZW5l
cmF0ZWQgd2hlbiB5b3UgcnVuIGBtYWtlJyk7CiAjICgyKSBvdGhlcndpc2UsIHBhc3MgdGhlIGRl
c2lyZWQgdmFsdWVzIG9uIHRoZSBgbWFrZScgY29tbWFuZCBsaW5lLgogJChSRUNVUlNJVkVfVEFS
R0VUUyk6Ci0JQGZhaWxjb209J2V4aXQgMSc7IFwKKwlAZmFpbD0gZmFpbGNvbT0nZXhpdCAxJzsg
XAogCWZvciBmIGluIHggJCRNQUtFRkxBR1M7IGRvIFwKIAkgIGNhc2UgJCRmIGluIFwKIAkgICAg
Kj0qIHwgLS1bIWtdKik7OyBcCkBAIC0zMjMsNyArMzIzLDcgQEAKIAlmaTsgdGVzdCAteiAiJCRm
YWlsIgogCiAkKFJFQ1VSU0lWRV9DTEVBTl9UQVJHRVRTKToKLQlAZmFpbGNvbT0nZXhpdCAxJzsg
XAorCUBmYWlsPSBmYWlsY29tPSdleGl0IDEnOyBcCiAJZm9yIGYgaW4geCAkJE1BS0VGTEFHUzsg
ZG8gXAogCSAgY2FzZSAkJGYgaW4gXAogCSAgICAqPSogfCAtLVsha10qKTs7IFwKZGlmZiAtdXIg
b3BlbmRieC5vcmlnL2JhY2tlbmRzL21zc3FsL01ha2VmaWxlLmluIG9wZW5kYngvYmFja2VuZHMv
bXNzcWwvTWFrZWZpbGUuaW4KLS0tIG9wZW5kYngub3JpZy9iYWNrZW5kcy9tc3NxbC9NYWtlZmls
ZS5pbgkyMDIzLTA1LTMwIDIwOjI3OjQyLjU1NzM4OTAxMyArMDMwMAorKysgb3BlbmRieC9iYWNr
ZW5kcy9tc3NxbC9NYWtlZmlsZS5pbgkyMDEyLTA2LTExIDAxOjMzOjUzLjAwMDAwMDAwMCArMDQw
MApAQCAtMSw0ICsxLDQgQEAKLSMgTWFrZWZpbGUuaW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIDEu
MTEgZnJvbSBNYWtlZmlsZS5hbS4KKyMgTWFrZWZpbGUuaW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtl
IDEuMTEuMSBmcm9tIE1ha2VmaWxlLmFtLgogIyBAY29uZmlndXJlX2lucHV0QAogCiAjIENvcHly
aWdodCAoQykgMTk5NCwgMTk5NSwgMTk5NiwgMTk5NywgMTk5OCwgMTk5OSwgMjAwMCwgMjAwMSwg
MjAwMiwKZGlmZiAtdXIgb3BlbmRieC5vcmlnL2JhY2tlbmRzL21zc3FsL21zc3FsX2Jhc2ljLmMg
b3BlbmRieC9iYWNrZW5kcy9tc3NxbC9tc3NxbF9iYXNpYy5jCi0tLSBvcGVuZGJ4Lm9yaWcvYmFj
a2VuZHMvbXNzcWwvbXNzcWxfYmFzaWMuYwkyMDIzLTA1LTMwIDIwOjI3OjQyLjU1NzM4OTAxMyAr
MDMwMAorKysgb3BlbmRieC9iYWNrZW5kcy9tc3NxbC9tc3NxbF9iYXNpYy5jCTIwMTItMDUtMDYg
MTg6NTk6MDEuMDAwMDAwMDAwICswNDAwCkBAIC0xMzIsNiArMTMyLDggQEAKIAlpZiggKCBoYW5k
bGUtPmdlbmVyaWMgPSAodm9pZCopIGRib3BlbiggdGMtPmxvZ2luLCB0Yy0+aG9zdCApICkgPT0g
TlVMTCApCiAJewogCQltZW1jcHkoIHRjLT5lcnJtc2csIGRnZXR0ZXh0KCAib3BlbmRieCIsIG1z
c3FsX29kYnhfZXJybXNnWzBdICksIHN0cmxlbiggZGdldHRleHQoICJvcGVuZGJ4IiwgbXNzcWxf
b2RieF9lcnJtc2dbMF0gKSApICsgMSApOworCQl0Yy0+ZXJydHlwZSA9IDE7CisKIAkJcmV0dXJu
IC1PREJYX0VSUl9CQUNLRU5EOwogCX0KIApAQCAtNDU4LDcgKzQ2MCwxMiBAQAogCiAJZm9yKCBp
ID0gMDsgaSA8IGFyZXMtPmNvbHM7IGkrKyApCiAJewotCQlpZiggKCBkYXRhID0gZGJkYXRhKCBk
YnByb2MsIGkrMSApICkgPT0gTlVMTCApCisJCWlmKCAoIGRsZW4gPSBkYmRhdGxlbiggZGJwcm9j
LCBpKzEgKSApID09IC0xICkKKyAJCXsKKwkJCQlyZXR1cm4gLU9EQlhfRVJSX1NJWkU7CisJCX0K
KworCQlpZiggKCBkYXRhID0gZGJkYXRhKCBkYnByb2MsIGkrMSApICkgPT0gTlVMTCAmJiBkbGVu
ID09IDAgKQogCQl7CiAJCQlncmVzW2ldLmluZCA9IDE7ICAgLy8gY29sdW1uIGlzIE5VTEwKIAkJ
CWdyZXNbaV0ubGVuZ3RoID0gMDsKQEAgLTQ3MiwxNCArNDc5LDE3IEBACiAJCQljYXNlIFNZQkRB
VEVUSU1OOgogCQkJCWlmKCBkYmRhdGVjcmFjayggZGJwcm9jLCAmZGksIChEQkRBVEVUSU1FKikg
ZGF0YSApICE9IEZBSUwgKQogCQkJCXsKKyNpZmRlZiBIQVZFX0xJQlNZQkRCX01TTElCCisJCQkJ
CWdyZXNbaV0ubGVuZ3RoID0gc25wcmludGYoIChjaGFyKikgZ3Jlc1tpXS52YWx1ZSwgZ3Jlc1tp
XS5tbGVuLCAiJS40bGQtJS4ybGQtJS4ybGQgJS4ybGQ6JS4ybGQ6JS4ybGQiLAorCQkJCQkJKGxv
bmcpIGRpLnllYXIsIChsb25nKSBkaS5tb250aCsxLCAobG9uZykgZGkuZGF5LCAobG9uZykgZGku
aG91ciwgKGxvbmcpIGRpLm1pbnV0ZSwgKGxvbmcpIGRpLnNlY29uZCApOworI2Vsc2UKIAkJCQkJ
Z3Jlc1tpXS5sZW5ndGggPSBzbnByaW50ZiggKGNoYXIqKSBncmVzW2ldLnZhbHVlLCBncmVzW2ld
Lm1sZW4sICIlLjRsZC0lLjJsZC0lLjJsZCAlLjJsZDolLjJsZDolLjJsZCIsCiAJCQkJCQkobG9u
ZykgZGkuZGF0ZXllYXIsIChsb25nKSBkaS5kYXRlbW9udGgrMSwgKGxvbmcpIGRpLmRhdGVkbW9u
dGgsIChsb25nKSBkaS5kYXRlaG91ciwgKGxvbmcpIGRpLmRhdGVtaW51dGUsIChsb25nKSBkaS5k
YXRlc2Vjb25kICk7CisjZW5kaWYKIAkJCQl9CiAJCQkJY29udGludWU7CiAJCX0KIAotCQlkbGVu
ID0gZGJkYXRsZW4oIGRicHJvYywgaSsxICk7Ci0KIAkJaWYoIGdyZXNbaV0ubWxlbiA8IGRsZW4g
KyAxICkKIAkJewogCQkJaWYoICggZ3Jlc1tpXS52YWx1ZSA9IHJlYWxsb2MoIGdyZXNbaV0udmFs
dWUsIGRsZW4gKyAxICkgKSA9PSBOVUxMICkKQEAgLTQ5Miw2ICs1MDIsNyBAQAogCiAJCWdyZXNb
aV0ubGVuZ3RoID0gZGJjb252ZXJ0KCBkYnByb2MsIGRiY29sdHlwZSggZGJwcm9jLCBpKzEgKSwg
ZGF0YSwgZGxlbiwgU1lCVkFSQ0hBUiwgZ3Jlc1tpXS52YWx1ZSwgZ3Jlc1tpXS5tbGVuICk7CiAJ
CWdyZXNbaV0udmFsdWVbZ3Jlc1tpXS5sZW5ndGhdID0gMDsKKwkJZ3Jlc1tpXS5pbmQgPSAwOyAg
IC8vIGNvbHVtbiBpcyBub3QgTlVMTAogCX0KIAogCXJldHVybiBPREJYX1JPV19ORVhUOwpkaWZm
IC11ciBvcGVuZGJ4Lm9yaWcvYmFja2VuZHMvbXlzcWwvTWFrZWZpbGUuaW4gb3BlbmRieC9iYWNr
ZW5kcy9teXNxbC9NYWtlZmlsZS5pbgotLS0gb3BlbmRieC5vcmlnL2JhY2tlbmRzL215c3FsL01h
a2VmaWxlLmluCTIwMjMtMDUtMzAgMjA6Mjc6NDIuNTU3Mzg5MDEzICswMzAwCisrKyBvcGVuZGJ4
L2JhY2tlbmRzL215c3FsL01ha2VmaWxlLmluCTIwMTItMDYtMTEgMDE6MzM6NTMuMDAwMDAwMDAw
ICswNDAwCkBAIC0xLDQgKzEsNCBAQAotIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21h
a2UgMS4xMSBmcm9tIE1ha2VmaWxlLmFtLgorIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0
b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCiAjIEBjb25maWd1cmVfaW5wdXRACiAKICMg
Q29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAy
MDAxLCAyMDAyLApkaWZmIC11ciBvcGVuZGJ4Lm9yaWcvYmFja2VuZHMvbXlzcWwvbXlzcWxfYmFz
aWMuYyBvcGVuZGJ4L2JhY2tlbmRzL215c3FsL215c3FsX2Jhc2ljLmMKLS0tIG9wZW5kYngub3Jp
Zy9iYWNrZW5kcy9teXNxbC9teXNxbF9iYXNpYy5jCTIwMjMtMDUtMzAgMjA6Mjc6NDIuNTU3Mzg5
MDEzICswMzAwCisrKyBvcGVuZGJ4L2JhY2tlbmRzL215c3FsL215c3FsX2Jhc2ljLmMJMjAxMC0w
OC0wMSAwNjowODozOC4wMDAwMDAwMDAgKzA0MDAKQEAgLTQ0LDYgKzQ0LDEwIEBACiAKIAogCitz
dGF0aWMgaW50IG15c3FsX2NvdW50ZXIgPSAwOworCisKKwogLyoKICAqICBPREJYIGJhc2ljIG9w
ZXJhdGlvbnMKICAqICBNeVNRTCBzdHlsZQpAQCAtNjksMTQgKzczLDYgQEAKIAkJcmV0dXJuIC1P
REJYX0VSUl9OT01FTTsKIAl9CiAKLQlpZiggbXlzcWxfaW5pdCggKE1ZU1FMKikgaGFuZGxlLT5n
ZW5lcmljICkgPT0gTlVMTCApCi0JewotCQlmcmVlKCBoYW5kbGUtPmdlbmVyaWMgKTsKLQkJaGFu
ZGxlLT5nZW5lcmljID0gTlVMTDsKLQotCQlyZXR1cm4gLU9EQlhfRVJSX05PTUVNOwotCX0KLQog
CWlmKCAoIGhhbmRsZS0+YXV4ID0gbWFsbG9jKCBzaXplb2YoIHN0cnVjdCBteWNvbm4gKSApICkg
PT0gTlVMTCApCiAJewogCQlmcmVlKCBoYW5kbGUtPmdlbmVyaWMgKTsKQEAgLTkzLDYgKzg5LDkg
QEAKIAlhdXgtPmZsYWdzID0gMDsKIAlhdXgtPnRscyA9IDA7CiAKKwlhdXgtPmZsYWdzIHw9IENM
SUVOVF9SRU1FTUJFUl9PUFRJT05TOyAgIC8vIHJlbWVtYmVyIG9wdGlvbnMgYmV0d2VlbiBteXNx
bF9yZWFsX2Nvbm5lY3QoKSBjYWxscworCWF1eC0+ZmxhZ3MgfD0gQ0xJRU5UX0ZPVU5EX1JPV1M7
ICAgLy8gcmV0dXJuIHRoZSBudW1iZXIgb2YgZm91bmQgcm93cywgbm90IHRoZSBudW1iZXIgb2Yg
Y2hhbmdlZCByb3dzCisKIAlpZiggaG9zdCAhPSBOVUxMICkKIAl7CiAJCXNpemVfdCBobGVuID0g
c3RybGVuKCBob3N0ICkgKyAxOwpAQCAtMTI1LDIxICsxMjQsMzggQEAKIAkJcmV0dXJuIC1PREJY
X0VSUl9QQVJBTTsKIAl9CiAKLQlpZiggbWV0aG9kICE9IE9EQlhfQklORF9TSU1QTEUgKSB7IHJl
dHVybiAtT0RCWF9FUlJfTk9UU1VQOyB9CisJaWYoIG1ldGhvZCAhPSBPREJYX0JJTkRfU0lNUExF
ICkKKwl7CisJCXJldHVybiAtT0RCWF9FUlJfTk9UU1VQOworCX0KKworCWlmKCBteXNxbF9pbml0
KCAoTVlTUUwqKSBoYW5kbGUtPmdlbmVyaWMgKSA9PSBOVUxMICkKKwl7CisJCXJldHVybiAtT0RC
WF9FUlJfTk9NRU07CisJfQorCisJbXlzcWxfY291bnRlcisrOwogCiAJaWYoIG15c3FsX29wdGlv
bnMoIChNWVNRTCopIGhhbmRsZS0+Z2VuZXJpYywgTVlTUUxfUkVBRF9ERUZBVUxUX0dST1VQLCAi
Y2xpZW50IiApICE9IDAgKQogCXsKKwkJbXlzcWxfY2xvc2UoIChNWVNRTCopIGhhbmRsZS0+Z2Vu
ZXJpYyApOwogCQlyZXR1cm4gLU9EQlhfRVJSX0JBQ0tFTkQ7CiAJfQogCisJaW50IGVycjsKKwlj
aGFyICpob3N0ID0gTlVMTCwgKnNvY2tldCA9IE5VTEw7CisKKwlpZiggcGFyYW0tPmhvc3QgIT0g
TlVMTCAmJiBwYXJhbS0+aG9zdFswXSAhPSAnLycgKSB7IGhvc3QgPSBwYXJhbS0+aG9zdDsgfQor
CWVsc2UgeyBzb2NrZXQgPSBwYXJhbS0+aG9zdDsgfQorCiAJc3dpdGNoKCBwYXJhbS0+dGxzICkK
IAl7CiAJCWNhc2UgT0RCWF9UTFNfVFJZOgogCiAJCQlwYXJhbS0+ZmxhZ3MgfD0gQ0xJRU5UX1NT
TDsKIAotCQkJaWYoIG15c3FsX3JlYWxfY29ubmVjdCggKE1ZU1FMKikgaGFuZGxlLT5nZW5lcmlj
LCBwYXJhbS0+aG9zdCwKLQkJCQl3aG8sIGNyZWQsIGRhdGFiYXNlLCBwYXJhbS0+cG9ydCwgTlVM
TCwgcGFyYW0tPmZsYWdzICkgIT0gTlVMTCApCisJCQlpZiggbXlzcWxfcmVhbF9jb25uZWN0KCAo
TVlTUUwqKSBoYW5kbGUtPmdlbmVyaWMsIGhvc3QsCisJCQkJd2hvLCBjcmVkLCBkYXRhYmFzZSwg
cGFyYW0tPnBvcnQsIHNvY2tldCwgcGFyYW0tPmZsYWdzICkgIT0gTlVMTCApCiAJCQl7CiAJCQkJ
Z290byBTVUNDRVNTOwogCQkJfQpAQCAtMTU3LDIwICsxNzMsMjEgQEAKIAkJCXBhcmFtLT5mbGFn
cyAmPSB+Q0xJRU5UX1NTTDsKIAl9CiAKLQljaGFyICpob3N0ID0gTlVMTCwgKnNvY2tldCA9IE5V
TEw7Ci0KLQlpZiggcGFyYW0tPmhvc3QgIT0gTlVMTCAmJiBwYXJhbS0+aG9zdFswXSAhPSAnLycg
KSB7IGhvc3QgPSBwYXJhbS0+aG9zdDsgfQotCWVsc2UgeyBzb2NrZXQgPSBwYXJhbS0+aG9zdDsg
fQotCiAJaWYoIG15c3FsX3JlYWxfY29ubmVjdCggKE1ZU1FMKikgaGFuZGxlLT5nZW5lcmljLCBo
b3N0LAogCQl3aG8sIGNyZWQsIGRhdGFiYXNlLCBwYXJhbS0+cG9ydCwgc29ja2V0LCBwYXJhbS0+
ZmxhZ3MgKSA9PSBOVUxMICkKIAl7CisJCW15c3FsX2Nsb3NlKCAoTVlTUUwqKSBoYW5kbGUtPmdl
bmVyaWMgKTsKIAkJcmV0dXJuIC1PREJYX0VSUl9CQUNLRU5EOwogCX0KIAogU1VDQ0VTUzoKIAot
CXJldHVybiBteXNxbF9wcml2X3NldG1vZGUoIGhhbmRsZSwgcGFyYW0tPm1vZGUgKTsKKwlpZigg
KCBlcnIgPSBteXNxbF9wcml2X3NldG1vZGUoIGhhbmRsZSwgcGFyYW0tPm1vZGUgKSApICE9IE9E
QlhfRVJSX1NVQ0NFU1MgKQorCXsKKwkJbXlzcWxfY2xvc2UoIChNWVNRTCopIGhhbmRsZS0+Z2Vu
ZXJpYyApOworCX0KKworCXJldHVybiBlcnI7CiB9CiAKIApAQCAtMjA2LDEzICsyMjMsMTYgQEAK
IAogCWlmKCBoYW5kbGUtPmdlbmVyaWMgIT0gTlVMTCApCiAJewotCQlteXNxbF90aHJlYWRfZW5k
KCk7Ci0JCW15c3FsX3NlcnZlcl9lbmQoKTsgICAvKiogQHRvZG8gTWlnaHQgY3Jhc2ggaWYgbW9y
ZSB0aGFuIG9uZSBjb25uZWN0aW9uIGlzIHVzZWQgKi8KLQogCQlmcmVlKCBoYW5kbGUtPmdlbmVy
aWMgKTsKIAkJaGFuZGxlLT5nZW5lcmljID0gTlVMTDsKIAl9CiAKKwlpZiggLS1teXNxbF9jb3Vu
dGVyID09IDAgKQorCXsKKwkJbXlzcWxfdGhyZWFkX2VuZCgpOworCQlteXNxbF9zZXJ2ZXJfZW5k
KCk7CisJfQorCiAJcmV0dXJuIE9EQlhfRVJSX1NVQ0NFU1M7CiB9CiAKQEAgLTY2Miw2ICs2ODIs
OSBAQAogCiAJaWYoIG1vZGUgIT0gTlVMTCApCiAJeworCQkvLyBGb3IgTXlTUUwgPCA0LjEgd2hl
biBleHBsaWNpdGx5IHNldAorCQlpZiggc3RybGVuKCBtb2RlICkgPT0gMCApIHsgcmV0dXJuIE9E
QlhfRVJSX1NVQ0NFU1M7IH0KKwogCQltb2RlbGVuID0gc3RybGVuKCBtb2RlICk7CiAJCWxtb2Rl
ID0gKGNoYXIqKSBtb2RlOwogCX0KZGlmZiAtdXIgb3BlbmRieC5vcmlnL2JhY2tlbmRzL29kYmMv
TWFrZWZpbGUuaW4gb3BlbmRieC9iYWNrZW5kcy9vZGJjL01ha2VmaWxlLmluCi0tLSBvcGVuZGJ4
Lm9yaWcvYmFja2VuZHMvb2RiYy9NYWtlZmlsZS5pbgkyMDIzLTA1LTMwIDIwOjI3OjQyLjU1NzM4
OTAxMyArMDMwMAorKysgb3BlbmRieC9iYWNrZW5kcy9vZGJjL01ha2VmaWxlLmluCTIwMTItMDYt
MTEgMDE6MzM6NTMuMDAwMDAwMDAwICswNDAwCkBAIC0xLDQgKzEsNCBAQAotIyBNYWtlZmlsZS5p
biBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMSBmcm9tIE1ha2VmaWxlLmFtLgorIyBNYWtlZmls
ZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCiAjIEBj
b25maWd1cmVfaW5wdXRACiAKICMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3
LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLApkaWZmIC11ciBvcGVuZGJ4Lm9yaWcvYmFj
a2VuZHMvb2RiYy9vZGJjX2Jhc2ljLmMgb3BlbmRieC9iYWNrZW5kcy9vZGJjL29kYmNfYmFzaWMu
YwotLS0gb3BlbmRieC5vcmlnL2JhY2tlbmRzL29kYmMvb2RiY19iYXNpYy5jCTIwMjMtMDUtMzAg
MjA6Mjc6NDIuNTU3Mzg5MDEzICswMzAwCisrKyBvcGVuZGJ4L2JhY2tlbmRzL29kYmMvb2RiY19i
YXNpYy5jCTIwMTItMDUtMDkgMTg6MTU6MDguMDAwMDAwMDAwICswNDAwCkBAIC0xMTIsMTIgKzEx
MiwxMyBAQAogCQlyZXR1cm4gLU9EQlhfRVJSX0JBQ0tFTkQ7CiAJfQogCi0JZ2VuLT5lcnIgPSBT
UUxTZXRDb25uZWN0QXR0ciggZ2VuLT5jb25uLCBTUUxfREVGQVVMVF9UWE5fSVNPTEFUSU9OLCAo
U1FMUE9JTlRFUikgU1FMX1RYTl9SRUFEX0NPTU1JVFRFRCwgU1FMX0lTX1VJTlRFR0VSICk7CisJ
Z2VuLT5lcnIgPSBTUUxTZXRDb25uZWN0QXR0ciggZ2VuLT5jb25uLCBTUUxfVFhOX0lTT0xBVElP
TiwgKFNRTFBPSU5URVIpIFNRTF9UWE5fUkVBRF9DT01NSVRURUQsIFNRTF9JU19VSU5URUdFUiAp
OwogCWlmKCAhU1FMX1NVQ0NFRURFRCggZ2VuLT5lcnIgKSApCiAJewogCQlyZXR1cm4gLU9EQlhf
RVJSX0JBQ0tFTkQ7CiAJfQogCisvKiBEb2Vzbid0IHdvcmsgd2l0aCBXaW5kb3dzIE9EQkMKIAln
ZW4tPmVyciA9IFNRTFNldENvbm5lY3RBdHRyKCBnZW4tPmNvbm4sIFNRTF9BVFRSX0FTWU5DX0VO
QUJMRSwgKFNRTFBPSU5URVIpIFNRTF9BU1lOQ19FTkFCTEVfT04sIFNRTF9JU19VSU5URUdFUiAp
OwogCWlmKCAhU1FMX1NVQ0NFRURFRCggZ2VuLT5lcnIgKSApCiAJewpAQCAtMTI5LDcgKzEzMCw3
IEBACiAJewogCQlyZXR1cm4gLU9EQlhfRVJSX0JBQ0tFTkQ7CiAJfQotCisqLwogCWdlbi0+ZXJy
ID0gU1FMQ29ubmVjdCggZ2VuLT5jb25uLCAoU1FMQ0hBUiopIGdlbi0+c2VydmVyLCBzdHJsZW4o
IGdlbi0+c2VydmVyICksIChTUUxDSEFSKikgd2hvLCB3bGVuLCAoU1FMQ0hBUiopIGNyZWQsIGNs
ZW4gKTsKIAlpZiggIVNRTF9TVUNDRUVERUQoIGdlbi0+ZXJyICkgKQogCXsKQEAgLTc3Miw3ICs3
NzMsNyBAQAogCQkJcmV0dXJuIDk7CiAJCWNhc2UgU1FMX1RJTUVTVEFNUDoKIAkJY2FzZSBTUUxf
VFlQRV9USU1FU1RBTVA6Ci0JCQlyZXR1cm4gMjA7CisJCQlyZXR1cm4gMjQ7CiAJfQogCiAJU1FM
TEVOIGxlbiA9IDA7CmRpZmYgLXVyIG9wZW5kYngub3JpZy9iYWNrZW5kcy9vcmFjbGUvTWFrZWZp
bGUuaW4gb3BlbmRieC9iYWNrZW5kcy9vcmFjbGUvTWFrZWZpbGUuaW4KLS0tIG9wZW5kYngub3Jp
Zy9iYWNrZW5kcy9vcmFjbGUvTWFrZWZpbGUuaW4JMjAyMy0wNS0zMCAyMDoyNzo0Mi41NTczODkw
MTMgKzAzMDAKKysrIG9wZW5kYngvYmFja2VuZHMvb3JhY2xlL01ha2VmaWxlLmluCTIwMTItMDYt
MTEgMDE6MzM6NTMuMDAwMDAwMDAwICswNDAwCkBAIC0xLDQgKzEsNCBAQAotIyBNYWtlZmlsZS5p
biBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMSBmcm9tIE1ha2VmaWxlLmFtLgorIyBNYWtlZmls
ZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCiAjIEBj
b25maWd1cmVfaW5wdXRACiAKICMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3
LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLApkaWZmIC11ciBvcGVuZGJ4Lm9yaWcvYmFj
a2VuZHMvb3JhY2xlL29yYWNsZV9iYXNpYy5jIG9wZW5kYngvYmFja2VuZHMvb3JhY2xlL29yYWNs
ZV9iYXNpYy5jCi0tLSBvcGVuZGJ4Lm9yaWcvYmFja2VuZHMvb3JhY2xlL29yYWNsZV9iYXNpYy5j
CTIwMjMtMDUtMzAgMjA6Mjc6NDIuNTU3Mzg5MDEzICswMzAwCisrKyBvcGVuZGJ4L2JhY2tlbmRz
L29yYWNsZS9vcmFjbGVfYmFzaWMuYwkyMDEwLTA4LTAxIDA2OjA4OjM5LjAwMDAwMDAwMCArMDQw
MApAQCAtMTc1LDcgKzE3NSw5IEBACiAJCQkiQUREUkVTU19MSVNUPSgiCiAJCQkJIkFERFJFU1M9
KFBST1RPQ09MPVRDUCklcyVzIgogCQkJIikiCi0JCSIpKENPTk5FQ1RfREFUQT0oU0VSVklDRV9O
QU1FPSVzKSkiCisJCSIpIgorCQkiKEVOQUJMRT1CUk9LRU4pIgorCQkiKENPTk5FQ1RfREFUQT0o
U0VSVklDRV9OQU1FPSVzKSkiCiAJIikiOwogCiAJaW50IGxlbjsKZGlmZiAtdXIgb3BlbmRieC5v
cmlnL2JhY2tlbmRzL3Bnc3FsL01ha2VmaWxlLmluIG9wZW5kYngvYmFja2VuZHMvcGdzcWwvTWFr
ZWZpbGUuaW4KLS0tIG9wZW5kYngub3JpZy9iYWNrZW5kcy9wZ3NxbC9NYWtlZmlsZS5pbgkyMDIz
LTA1LTMwIDIwOjI3OjQyLjU1NzM4OTAxMyArMDMwMAorKysgb3BlbmRieC9iYWNrZW5kcy9wZ3Nx
bC9NYWtlZmlsZS5pbgkyMDEyLTA2LTExIDAxOjMzOjUzLjAwMDAwMDAwMCArMDQwMApAQCAtMSw0
ICsxLDQgQEAKLSMgTWFrZWZpbGUuaW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIDEuMTEgZnJvbSBN
YWtlZmlsZS5hbS4KKyMgTWFrZWZpbGUuaW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIDEuMTEuMSBm
cm9tIE1ha2VmaWxlLmFtLgogIyBAY29uZmlndXJlX2lucHV0QAogCiAjIENvcHlyaWdodCAoQykg
MTk5NCwgMTk5NSwgMTk5NiwgMTk5NywgMTk5OCwgMTk5OSwgMjAwMCwgMjAwMSwgMjAwMiwKZGlm
ZiAtdXIgb3BlbmRieC5vcmlnL2JhY2tlbmRzL3Bnc3FsL3Bnc3FsX2Jhc2ljLmMgb3BlbmRieC9i
YWNrZW5kcy9wZ3NxbC9wZ3NxbF9iYXNpYy5jCi0tLSBvcGVuZGJ4Lm9yaWcvYmFja2VuZHMvcGdz
cWwvcGdzcWxfYmFzaWMuYwkyMDIzLTA1LTMwIDIwOjI3OjQyLjU2MDM4OTAyMCArMDMwMAorKysg
b3BlbmRieC9iYWNrZW5kcy9wZ3NxbC9wZ3NxbF9iYXNpYy5jCTIwMTItMDYtMTEgMDE6MTU6MjAu
MDAwMDAwMDAwICswNDAwCkBAIC0zODQsNiArMzg0LDcgQEAKIAkJCXJldHVybiBPREJYX1JFU19S
T1dTOyAgIC8qIHJlc3VsdCBpcyBhdmFpbGFibGUqLwogCQljYXNlIFBHUkVTX0ZBVEFMX0VSUk9S
OgogCisJCQlQUWNvbnN1bWVJbnB1dCggKFBHY29ubiopIGhhbmRsZS0+Z2VuZXJpYyApOwogCQkJ
aWYoIFBRc3RhdHVzKCAoUEdjb25uKikgaGFuZGxlLT5nZW5lcmljICkgIT0gQ09OTkVDVElPTl9P
SyApCiAJCQl7CiAJCQkJY29ubi0+ZXJydHlwZSA9IC0xOwpkaWZmIC11ciBvcGVuZGJ4Lm9yaWcv
YmFja2VuZHMvc3FsaXRlL01ha2VmaWxlLmluIG9wZW5kYngvYmFja2VuZHMvc3FsaXRlL01ha2Vm
aWxlLmluCi0tLSBvcGVuZGJ4Lm9yaWcvYmFja2VuZHMvc3FsaXRlL01ha2VmaWxlLmluCTIwMjMt
MDUtMzAgMjA6Mjc6NDIuNTYwMzg5MDIwICswMzAwCisrKyBvcGVuZGJ4L2JhY2tlbmRzL3NxbGl0
ZS9NYWtlZmlsZS5pbgkyMDEyLTA2LTExIDAxOjMzOjUzLjAwMDAwMDAwMCArMDQwMApAQCAtMSw0
ICsxLDQgQEAKLSMgTWFrZWZpbGUuaW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIDEuMTEgZnJvbSBN
YWtlZmlsZS5hbS4KKyMgTWFrZWZpbGUuaW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIDEuMTEuMSBm
cm9tIE1ha2VmaWxlLmFtLgogIyBAY29uZmlndXJlX2lucHV0QAogCiAjIENvcHlyaWdodCAoQykg
MTk5NCwgMTk5NSwgMTk5NiwgMTk5NywgMTk5OCwgMTk5OSwgMjAwMCwgMjAwMSwgMjAwMiwKZGlm
ZiAtdXIgb3BlbmRieC5vcmlnL2JhY2tlbmRzL3NxbGl0ZTMvTWFrZWZpbGUuaW4gb3BlbmRieC9i
YWNrZW5kcy9zcWxpdGUzL01ha2VmaWxlLmluCi0tLSBvcGVuZGJ4Lm9yaWcvYmFja2VuZHMvc3Fs
aXRlMy9NYWtlZmlsZS5pbgkyMDIzLTA1LTMwIDIwOjI3OjQyLjU2MDM4OTAyMCArMDMwMAorKysg
b3BlbmRieC9iYWNrZW5kcy9zcWxpdGUzL01ha2VmaWxlLmluCTIwMTItMDYtMTEgMDE6MzM6NTMu
MDAwMDAwMDAwICswNDAwCkBAIC0xLDQgKzEsNCBAQAotIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQg
YnkgYXV0b21ha2UgMS4xMSBmcm9tIE1ha2VmaWxlLmFtLgorIyBNYWtlZmlsZS5pbiBnZW5lcmF0
ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCiAjIEBjb25maWd1cmVfaW5w
dXRACiAKICMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5
LCAyMDAwLCAyMDAxLCAyMDAyLApkaWZmIC11ciBvcGVuZGJ4Lm9yaWcvYmFja2VuZHMvc3FsaXRl
My9zcWxpdGUzX2Jhc2ljLmMgb3BlbmRieC9iYWNrZW5kcy9zcWxpdGUzL3NxbGl0ZTNfYmFzaWMu
YwotLS0gb3BlbmRieC5vcmlnL2JhY2tlbmRzL3NxbGl0ZTMvc3FsaXRlM19iYXNpYy5jCTIwMjMt
MDUtMzAgMjA6Mjc6NDIuNTYxMzg5MDIyICswMzAwCisrKyBvcGVuZGJ4L2JhY2tlbmRzL3NxbGl0
ZTMvc3FsaXRlM19iYXNpYy5jCTIwMTItMDUtMDYgMTY6MDI6NDIuMDAwMDAwMDAwICswNDAwCkBA
IC04MCw2ICs4MCwxMSBAQAogCWF1eC0+cmVzID0gTlVMTDsKIAlhdXgtPnBhdGggPSBOVUxMOwog
CWF1eC0+cGF0aGxlbiA9IDA7CisJYXV4LT5zdG10ID0gTlVMTDsKKwlhdXgtPnRhaWwgPSBOVUxM
OworCWF1eC0+bGVuZ3RoID0gMDsKKwlhdXgtPmVyciA9IFNRTElURV9PSzsKKwogCWhhbmRsZS0+
Z2VuZXJpYyA9IE5VTEw7CiAKIAlpZiggaG9zdCAhPSBOVUxMICkKQEAgLTQzNiw2ICs0NDEsOCBA
QAogCQljYXNlIFNRTElURV9ET05FOgogCQljYXNlIFNRTElURV9PSzoKIAkJY2FzZSBTUUxJVEVf
TUlTVVNFOiAgIC8vIFJldHVybiBET05FIGlmIGZ1bmN0aW9uIGNhbGxlZCBtb3JlIG9mdGVuIGFm
dGVyd2FyZHMKKwkJCXNxbGl0ZTNfZmluYWxpemUoIChzcWxpdGUzX3N0bXQqKSByZXN1bHQtPmdl
bmVyaWMgKTsKKwkJCXJlc3VsdC0+Z2VuZXJpYyA9IE5VTEw7CiAJCQlyZXR1cm4gT0RCWF9ST1df
RE9ORTsKIAl9CiAKQEAgLTQ3Miw2ICs0NzksMTEgQEAKIAogc3RhdGljIGludCBzcWxpdGUzX29k
YnhfY29sdW1uX3R5cGUoIG9kYnhfcmVzdWx0X3QqIHJlc3VsdCwgdW5zaWduZWQgbG9uZyBwb3Mg
KQogeworI2lmZGVmIEhBVkVfU1FMSVRFM19UQUJMRV9DT0xVTU5fTUVUQURBVEEKKwljb25zdCBj
aGFyICp0eXBlLCAqY29sbGF0aW9uOworCWludCBub3RudWxsLCBwcmltYXJ5a2V5LCBhdXRvaW5j
OworI2VuZGlmCisKIAlzd2l0Y2goIHNxbGl0ZTNfY29sdW1uX3R5cGUoIChzcWxpdGUzX3N0bXQq
KSByZXN1bHQtPmdlbmVyaWMsIHBvcyApICkKIAl7CiAJCWNhc2UgU1FMSVRFX0lOVEVHRVI6CkBA
IC00ODMsNyArNDk1LDMyIEBACiAJCWNhc2UgU1FMSVRFX1RFWFQ6CiAJCQlyZXR1cm4gT0RCWF9U
WVBFX0NMT0I7CiAJCWRlZmF1bHQ6CisjaWZkZWYgSEFWRV9TUUxJVEUzX1RBQkxFX0NPTFVNTl9N
RVRBREFUQQorCQkJaWYoIHNxbGl0ZTNfdGFibGVfY29sdW1uX21ldGFkYXRhKCAoc3FsaXRlMyop
IHJlc3VsdC0+aGFuZGxlLT5nZW5lcmljLAorCQkJCXNxbGl0ZTNfY29sdW1uX2RhdGFiYXNlX25h
bWUoIChzcWxpdGUzX3N0bXQqKSByZXN1bHQtPmdlbmVyaWMsIHBvcyApLAorCQkJCXNxbGl0ZTNf
Y29sdW1uX3RhYmxlX25hbWUoIChzcWxpdGUzX3N0bXQqKSByZXN1bHQtPmdlbmVyaWMsIHBvcyAp
LAorCQkJCXNxbGl0ZTNfY29sdW1uX29yaWdpbl9uYW1lKCAoc3FsaXRlM19zdG10KikgcmVzdWx0
LT5nZW5lcmljLCBwb3MgKSwKKwkJCQkmdHlwZSwgJmNvbGxhdGlvbiwgJm5vdG51bGwsICZwcmlt
YXJ5a2V5LCAmYXV0b2luYyApICE9IFNRTElURV9PSyApCisJCQl7CisJCQkJcmV0dXJuIE9EQlhf
VFlQRV9VTktOT1dOOworCQkJfQorCisJCQlpZiggc3Ryc3RyKCB0eXBlLCAiRE9VQkxFIiApICE9
IE5VTEwgfHwgc3RyY21wKCB0eXBlLCAiRkxPQVQiICkgPT0gMCB8fCBzdHJjbXAoIHR5cGUsICJS
RUFMIiApID09IDAgKSB7CisJCQkJcmV0dXJuIE9EQlhfVFlQRV9ET1VCTEU7CisJCQl9IGVsc2Ug
aWYoIHN0cnN0ciggdHlwZSwgIklOVCIgKSAhPSBOVUxMIHx8IHN0cmNtcCggdHlwZSwgIkJPT0xF
QU4iICkgPT0gMCApIHsKKwkJCQlyZXR1cm4gT0RCWF9UWVBFX0JJR0lOVDsKKwkJCX0gZWxzZSBp
Ziggc3Ryc3RyKCB0eXBlLCAiQ0hBUiIgKSAhPSBOVUxMIHx8IHN0cmNtcCggdHlwZSwgIkNMT0Ii
ICkgPT0gMCB8fCBzdHJjbXAoIHR5cGUsICJURVhUIiApID09IDAgKSB7CisJCQkJcmV0dXJuIE9E
QlhfVFlQRV9DTE9COworCQkJfSBlbHNlIGlmKCBzdHJzdHIoIHR5cGUsICJEQVRFIiApICE9IE5V
TEwgfHwgc3Ryc3RyKCB0eXBlLCAiVElNRSIgKSAhPSBOVUxMIHx8IHN0cnN0ciggdHlwZSwgIkRF
Q0lNQUwiICkgIT0gTlVMTCApIHsKKwkJCQlyZXR1cm4gT0RCWF9UWVBFX0NMT0I7CisJCQl9IGVs
c2UgaWYoIHN0cmNtcCggdHlwZSwgIkJMT0IiICkgPT0gMCApIHsKKwkJCQlyZXR1cm4gT0RCWF9U
WVBFX0JMT0I7CisJCQl9IGVsc2UgeworCQkJCXJldHVybiBPREJYX1RZUEVfVU5LTk9XTjsKKwkJ
CX0KKyNlbHNlCiAJCQlyZXR1cm4gT0RCWF9UWVBFX1VOS05PV047CisjZW5kaWYKIAl9CiB9CiAK
ZGlmZiAtdXIgb3BlbmRieC5vcmlnL2JhY2tlbmRzL3N5YmFzZS9NYWtlZmlsZS5pbiBvcGVuZGJ4
L2JhY2tlbmRzL3N5YmFzZS9NYWtlZmlsZS5pbgotLS0gb3BlbmRieC5vcmlnL2JhY2tlbmRzL3N5
YmFzZS9NYWtlZmlsZS5pbgkyMDIzLTA1LTMwIDIwOjI3OjQyLjU2NTM4OTAzMSArMDMwMAorKysg
b3BlbmRieC9iYWNrZW5kcy9zeWJhc2UvTWFrZWZpbGUuaW4JMjAxMi0wNi0xMSAwMTozMzo1My4w
MDAwMDAwMDAgKzA0MDAKQEAgLTEsNCArMSw0IEBACi0jIE1ha2VmaWxlLmluIGdlbmVyYXRlZCBi
eSBhdXRvbWFrZSAxLjExIGZyb20gTWFrZWZpbGUuYW0uCisjIE1ha2VmaWxlLmluIGdlbmVyYXRl
ZCBieSBhdXRvbWFrZSAxLjExLjEgZnJvbSBNYWtlZmlsZS5hbS4KICMgQGNvbmZpZ3VyZV9pbnB1
dEAKIAogIyBDb3B5cmlnaHQgKEMpIDE5OTQsIDE5OTUsIDE5OTYsIDE5OTcsIDE5OTgsIDE5OTks
IDIwMDAsIDIwMDEsIDIwMDIsCmRpZmYgLXVyIG9wZW5kYngub3JpZy9iYWNrZW5kcy9zeWJhc2Uv
c3liYXNlX2Jhc2ljLmMgb3BlbmRieC9iYWNrZW5kcy9zeWJhc2Uvc3liYXNlX2Jhc2ljLmMKLS0t
IG9wZW5kYngub3JpZy9iYWNrZW5kcy9zeWJhc2Uvc3liYXNlX2Jhc2ljLmMJMjAyMy0wNS0zMCAy
MDoyNzo0Mi41NjUzODkwMzEgKzAzMDAKKysrIG9wZW5kYngvYmFja2VuZHMvc3liYXNlL3N5YmFz
ZV9iYXNpYy5jCTIwMTAtMDgtMDEgMDY6MDg6MzkuMDAwMDAwMDAwICswNDAwCkBAIC03NSw3ICs3
NSw3IEBACiAJCXJldHVybiBlcnI7CiAJfQogCi0JaWYoIGNzX2NvbmZpZyggYXV4LT5jdHgsIENT
X1NFVCwgQ1NfVVNFUkRBVEEsIChDU19WT0lEKikgJmF1eCwgc2l6ZW9mKCB2b2lkKiApLCBOVUxM
ICkgIT0gQ1NfU1VDQ0VFRCApCisJaWYoIGNzX2NvbmZpZyggYXV4LT5jdHgsIENTX1NFVCwgQ1Nf
VVNFUkRBVEEsIChDU19WT0lEKikgJmF1eCwgc2l6ZW9mKCBDU19WT0lEKiApLCBOVUxMICkgIT0g
Q1NfU1VDQ0VFRCApCiAJewogCQlzeWJhc2VfcHJpdl9jbGVhbnVwKCBoYW5kbGUgKTsKIAkJcmV0
dXJuIC1PREJYX0VSUl9OT01FTTsKZGlmZiAtdXIgb3BlbmRieC5vcmlnL0NoYW5nZUxvZyBvcGVu
ZGJ4L0NoYW5nZUxvZwotLS0gb3BlbmRieC5vcmlnL0NoYW5nZUxvZwkyMDIzLTA1LTMwIDIwOjI3
OjQyLjU1NDM4OTAwNyArMDMwMAorKysgb3BlbmRieC9DaGFuZ2VMb2cJMjAxMi0wNi0xMSAwMToz
MDoxNS4wMDAwMDAwMDAgKzA0MDAKQEAgLTEsMyArMSwzOCBAQAorMjAxMi0wNi0xMCBOb3JiZXJ0
IFNlbmRldHpreSA8bm9yYmVydEBsaW51eG5ldHdvcmtzLmRlPgorCisJKiBCdWdmaXg6IEZpeGVk
IG1lbW9yeSBsZWFrIGluIG15c3FsIGJhY2tlbmQgd2hlbiBjb25uZWN0aW5nIHRvIHRoZSBzZXJ2
ZXIgZmFpbGVkICh0aGFua3MgdG8gU3RlZmFuIE1laW5lY2tlKQorCSogQnVnZml4OiBGaXhlZCBo
YW5kbGluZyBvZiBOVUxMIGluZGljYXRvciBpbiBNU1NRTCBiYWNrZW5kIGlmIE5VTEwgaXMgcmV0
dXJuZWQgaW4gYSByb3cKKwkqIEJ1Z2ZpeDogQWRkZWQgd29ya2Fyb3VuZCBmb3IgUG9zdGdyZVNR
TCBpbiBjYXNlIG9mIGFuIGVycm9yIChlLmcuIGlmIHRoZSBzZXJ2ZXIgaXMgZ29uZSkgdG8gZ2l2
ZSBiYWNrIGEgY29ycmVjdCBlcnJvciBzdGF0dXMKKwkqIEJ1Z2ZpeDogUmV0dXJuIE9EQlhfUk9X
X0RPTkUgaW4gc3FsaXRlM19vZGJ4X3Jvd19mZXRjaCgpIHdoZW4gY2FsbGluZyB0aGlzIGZ1bmN0
aW9uIGFmdGVyIG5vIG1vcmUgcm93cyBhcmUgYXZhaWxhYmxlIChkdWUgdG8gU1FMaXRlMyBjaGFu
Z2UpCisJKiBCdWdmaXg6IEFkZGVkIC1saW50bCBpZiByZXF1aXJlZCBmb3IgZml4aW5nIGJ1aWxk
IHByb2JsZW1zIHdoZW4gdXNpbmcgTWluR1cgb24gV2luZG93cyBwbGF0Zm9ybXMKKwkqIEJ1Z2Zp
eDogQWRkZWQgRU5BQkxFX0JST0tFTiB0byBPcmFjbGUgZGVzY3JpcHRvciBmb3IgZW5hYmxpbmcg
a2VlcC1hbGl2ZQorCSogQnVnZml4OiBBZGRlZCB1bmJpbmQoKSB0byBDb25uOjpmaW5pc2goKSBp
ZiBpdCdzIG5vdCBjYWxsZWQgYmVmb3JlCisJKiBCdWdmaXg6IEluY3JlYXNlZCBidWZmZXIgZm9y
IHRpbWUgc3RhbXBzIGluIE9EQkMgYmFja2VuZCB0byBhbGxvdyBmcmFjdGlvbnMgb2Ygc2Vjb25k
cyB0byBiZSBzdG9yZWQgd2l0aG91dCBhbiBlcnJvcgorCSogRmVhdHVyZTogRW5oYW5jZWQgZGV0
ZXJtaW5hdGlvbiBvZiBjb2x1bW4gdHlwZXMgaW4gU1FMaXRlMyBiYWNrZW5kIHdoZW4gU1FMaXRl
IHJldHVybnMgYSBOVUxMIHZhbHVlCisJKiBGZWF0dXJlOiBJbXByb3ZlZCByZWNvdmVyeSBmcm9t
IGVycm9ycyBpbiBvZGJ4LXNxbCB1dGlsaXR5CisJKiBDaGFuZ2U6IFVwZGF0ZWQgbGlidG9vbCB0
byAyLjIuNmIKKworMjAxMC0wNC0xOSBOb3JiZXJ0IFNlbmRldHpreSA8bm9yYmVydEBsaW51eG5l
dHdvcmtzLmRlPgorCisJKiBDaGFuZ2U6IENoYW5nZWQgcmVxdWlyZWQgYXV0b2NvbmYgdmVyc2lv
biB0byAyLjYxCisJKiBDaGFuZ2U6IE1vZGlmaWVkIHNwZWMgZmlsZSB0byBidWlsZCBmaXJlYmly
ZCwgbXNzcWwgYW5kIHN5YmFzZSBiYWNrZW5kcyBvbiBzdXBwb3J0ZWQgcGxhdHRmb3JtcyBieSBk
ZWZhdWx0CisJKiBCdWdmaXg6IEZpeGVkIHJlZmVyZW5jZSBjb3VudGluZyBvZiBvYmplY3RzIGlu
IGxpYm9wZW5kYnhwbHVzICh0aGFua3MgdG8gUm9kb2xmbyBMaW1hKQorCSogQnVnZml4OiBSZW1v
dmVkIE9EQkMgY29ubmVjdGlvbiBhdHRyaWJ1dGVzIHdoaWNoIGRvbid0IHdvcmsgd2l0aCBXaW5k
b3dzIE9EQkMKKwkqIEJ1Z2ZpeDogRml4ZWQgd3JvbmcgZXJyb3Igc2V2ZXJpdHkgaW4gbXNzcWwg
YmFja2VuZCB3aGVuIGNvbm5lY3Rpb24gY291bGRuJ3QgYmUgZXN0YWJsaXNoZWQKKwkqIEJ1Z2Zp
eDogRml4ZWQgd2lsZCBwb2ludGVyIGluIG9yYWNsZSBiYWNrZW5kIHRoYXQgbXkgbGVhZCB0byBw
cm9ibGVtcyB3aGVuIGVycm9yIGhhbmRsaW5nIGlzbid0IGltcGxlbWVudGVkIGNvcnJlY3RseQor
CSogQnVnZml4OiBGaXhlZCBjaGVja2luZyBmb3IgaGlnaGVzdCBlcnJvciBjb25zdGFudCBzbyBs
YXN0IGVycm9yIG1lc3NhZ2Ugd2lsbCBiZSBkaXNwbGF5ZWQgY29ycmVjdGx5CisJKiBCdWdmaXg6
IEFkYXB0ZWQgc3BlYyBmaWxlIGZvciBPcGVuU1VTRSBidWlsZCBzZXJ2aWNlCisKKzIwMDktMDkt
MzAgTm9yYmVydCBTZW5kZXR6a3kgPG5vcmJlcnRAbGludXhuZXR3b3Jrcy5kZT4KKworCSogQ2hh
bmdlOiBDaGFuZ2VkIG15c3FsX3JlYWxfY29ubmVjdCBvcHRpb25zIHNvIG9kYnhfcm93c19hZmZl
Y3RlZCgpIGlzIGluIGxpbmUgd2l0aCBvdGhlciBiYWNrZW5kcworCSogQ2hhbmdlOiBEb24ndCBz
ZXQgc3FsX21vZGUgaW4gbXlzcWwgYmFja2VuZCBpZiBtb2RlIGlzIGFuIGVtcHR5IHN0cmluZyAo
Zm9yIE15U1FMIDwgNC4xKQorCSogQnVnZml4OiBGaXhlZCBzZWdtZW50YXRpb24gZmF1bHQgaW4g
bXlzcWwgYmFja2VuZCBpbiB0aHJlYWRlZCBlbnZpcm9ubWVudHMKKwkqIEJ1Z2ZpeDogRml4ZWQg
bXlzcWxfcmVhbF9jb25uZWN0IG9wdGlvbnMgdG8ga2VlcCBvcHRpb25zIG9uIHJlY29ubmVjdAor
CSogQnVnZml4OiBGaXhlZCB1bmluaXRpYWxpemVkIHZhcmlhYmxlcyBpbiBzcWxpdGUzIGJhY2tl
bmQgd2hpY2ggbWF5IGxlYWQgdG8gYSBzZWdmYXVsdAorCSogQnVnZml4OiBDbGVhbnVwIGNvbm5l
Y3Rpb24gaW4gbXlzcWwgYmFja2VuZCBpZiBzZXR0aW5nIG1vZGUgZmFpbGVkIGR1cmluZyBvZGJ4
X2JpbmQoKQorCSogQnVnZml4OiBGaXhlZCBzZXZlcmFsIHByb2JsZW1zIGluIFJQTSBzcGVjIGZp
bGUKKwogMjAwOS0wOS0wMiBOb3JiZXJ0IFNlbmRldHpreSA8bm9yYmVydEBsaW51eG5ldHdvcmtz
LmRlPgogCiAJKiBCdWdmaXg6IEZpeGVkIGxvc3Qgc3RhdGVtZW50cyBpbiBzcWxpdGUzIGJhY2tl
bmQgaWYgYW4gZXJyb3Igb3IgYSB0aW1lb3V0IG9jY3VyZWQK0KLQvtC70YzQutC+INCyIG9wZW5k
Yng6IGNvbXBpbGUKZGlmZiAtdXIgb3BlbmRieC5vcmlnL2NvbmZpZy5oLmluIG9wZW5kYngvY29u
ZmlnLmguaW4KLS0tIG9wZW5kYngub3JpZy9jb25maWcuaC5pbgkyMDIzLTA1LTMwIDIwOjI3OjQy
LjU2NjM4OTAzNCArMDMwMAorKysgb3BlbmRieC9jb25maWcuaC5pbgkyMDEyLTA2LTExIDAxOjMz
OjUyLjAwMDAwMDAwMCArMDQwMApAQCAtMTAzLDYgKzEwMyw5IEBACiAvKiBIYXZlIC1sc3liZGIg
Ki8KICN1bmRlZiBIQVZFX0xJQlNZQkRCCiAKKy8qIEhhdmUgbXNsaWIgdHlwZSBvZiAic3RydWN0
IGRiZGF0ZXJlYyIgKi8KKyN1bmRlZiBIQVZFX0xJQlNZQkRCX01TTElCCisKIC8qIERlZmluZSB0
byAxIGlmIHlvdSBoYXZlIHRoZSA8bGltaXRzLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhB
VkVfTElNSVRTX0gKIApAQCAtMTYyLDYgKzE2NSw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3Ug
aGF2ZSBzcWxpdGUzX3ByZXBhcmVfdjIgKi8KICN1bmRlZiBIQVZFX1NRTElURTNfUFJFUEFSRV9W
MgogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBzcWxpdGUzX3RhYmxlX2NvbHVtbl9tZXRh
ZGF0YSAqLworI3VuZGVmIEhBVkVfU1FMSVRFM19UQUJMRV9DT0xVTU5fTUVUQURBVEEKKwogLyog
RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzcWxpdGUuaD4gaGVhZGVyIGZpbGUuICovCiAj
dW5kZWYgSEFWRV9TUUxJVEVfSAogCkBAIC0xODksNiArMTk1LDkgQEAKIC8qIERlZmluZSB0byAx
IGlmIHlvdSBoYXZlIHRoZSBgc3RybmNhc2VjbXAnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVf
U1RSTkNBU0VDTVAKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzdHJzdHInIGZ1
bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU1RSU1RSCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBo
YXZlIHRoZSBgc3RydG9sJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1NUUlRPTAogCmRpZmYg
LXVyIG9wZW5kYngub3JpZy9jb25maWd1cmUgb3BlbmRieC9jb25maWd1cmUKLS0tIG9wZW5kYngu
b3JpZy9jb25maWd1cmUJMjAyMy0wNS0zMCAyMDoyNzo0Mi41NzMzODkwNDkgKzAzMDAKKysrIG9w
ZW5kYngvY29uZmlndXJlCTIwMTItMDYtMTEgMDE6MzM6NTEuMDAwMDAwMDAwICswNDAwCkBAIC0x
LDEyICsxLDE0IEBACiAjISAvYmluL3NoCiAjIEd1ZXNzIHZhbHVlcyBmb3Igc3lzdGVtLWRlcGVu
ZGVudCB2YXJpYWJsZXMgYW5kIGNyZWF0ZSBNYWtlZmlsZXMuCi0jIEdlbmVyYXRlZCBieSBHTlUg
QXV0b2NvbmYgMi42NCBmb3Igb3BlbmRieCAxLjQuMy4KKyMgR2VuZXJhdGVkIGJ5IEdOVSBBdXRv
Y29uZiAyLjY1IGZvciBvcGVuZGJ4IDEuNC42LgogIwogIyBSZXBvcnQgYnVncyB0byA8aHR0cDov
L2J1Z3MubGludXhuZXR3b3Jrcy5kZS8+LgogIworIwogIyBDb3B5cmlnaHQgKEMpIDE5OTIsIDE5
OTMsIDE5OTQsIDE5OTUsIDE5OTYsIDE5OTgsIDE5OTksIDIwMDAsIDIwMDEsCi0jIDIwMDIsIDIw
MDMsIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDkgRnJlZSBTb2Z0d2FyZQotIyBG
b3VuZGF0aW9uLCBJbmMuCisjIDIwMDIsIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIw
MDgsIDIwMDkgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLAorIyBJbmMuCisjCiAjCiAjIFRoaXMg
Y29uZmlndXJlIHNjcmlwdCBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu
ZGF0aW9uCiAjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHksIGRpc3RyaWJ1dGUg
YW5kIG1vZGlmeSBpdC4KQEAgLTY3Niw3ICs2NzgsOCBAQAogCiAKIAotZXhlYyA3PCYwIDwvZGV2
L251bGwgNj4mMQordGVzdCAtbiAiJERKRElSIiB8fCBleGVjIDc8JjAgPC9kZXYvbnVsbAorZXhl
YyA2PiYxCiAKICMgTmFtZSBvZiB0aGUgaG9zdC4KICMgaG9zdG5hbWUgb24gc29tZSBzeXN0ZW1z
IChTVlIzLjIsIExpbnV4KSByZXR1cm5zIGEgYm9ndXMgZXhpdCBzdGF0dXMsCkBAIC02OTgsOCAr
NzAxLDggQEAKICMgSWRlbnRpdHkgb2YgdGhpcyBwYWNrYWdlLgogUEFDS0FHRV9OQU1FPSdvcGVu
ZGJ4JwogUEFDS0FHRV9UQVJOQU1FPSdvcGVuZGJ4JwotUEFDS0FHRV9WRVJTSU9OPScxLjQuMycK
LVBBQ0tBR0VfU1RSSU5HPSdvcGVuZGJ4IDEuNC4zJworUEFDS0FHRV9WRVJTSU9OPScxLjQuNicK
K1BBQ0tBR0VfU1RSSU5HPSdvcGVuZGJ4IDEuNC42JwogUEFDS0FHRV9CVUdSRVBPUlQ9J2h0dHA6
Ly9idWdzLmxpbnV4bmV0d29ya3MuZGUvJwogUEFDS0FHRV9VUkw9JycKIApAQCAtMTQ4Miw3ICsx
NDg1LDcgQEAKICAgIyBPbWl0IHNvbWUgaW50ZXJuYWwgb3Igb2Jzb2xldGUgb3B0aW9ucyB0byBt
YWtlIHRoZSBsaXN0IGxlc3MgaW1wb3NpbmcuCiAgICMgVGhpcyBtZXNzYWdlIGlzIHRvbyBsb25n
IHRvIGJlIGEgc3RyaW5nIGluIHRoZSBBL1VYIDMuMSBzaC4KICAgY2F0IDw8X0FDRU9GCi1cYGNv
bmZpZ3VyZScgY29uZmlndXJlcyBvcGVuZGJ4IDEuNC4zIHRvIGFkYXB0IHRvIG1hbnkga2luZHMg
b2Ygc3lzdGVtcy4KK1xgY29uZmlndXJlJyBjb25maWd1cmVzIG9wZW5kYnggMS40LjYgdG8gYWRh
cHQgdG8gbWFueSBraW5kcyBvZiBzeXN0ZW1zLgogCiBVc2FnZTogJDAgW09QVElPTl0uLi4gW1ZB
Uj1WQUxVRV0uLi4KIApAQCAtMTU1Miw3ICsxNTU1LDcgQEAKIAogaWYgdGVzdCAtbiAiJGFjX2lu
aXRfaGVscCI7IHRoZW4KICAgY2FzZSAkYWNfaW5pdF9oZWxwIGluCi0gICAgIHNob3J0IHwgcmVj
dXJzaXZlICkgZWNobyAiQ29uZmlndXJhdGlvbiBvZiBvcGVuZGJ4IDEuNC4zOiI7OworICAgICBz
aG9ydCB8IHJlY3Vyc2l2ZSApIGVjaG8gIkNvbmZpZ3VyYXRpb24gb2Ygb3BlbmRieCAxLjQuNjoi
OzsKICAgIGVzYWMKICAgY2F0IDw8XF9BQ0VPRgogCkBAIC0xNTk0LDcgKzE1OTcsNyBAQAogICBM
REZMQUdTICAgICBsaW5rZXIgZmxhZ3MsIGUuZy4gLUw8bGliIGRpcj4gaWYgeW91IGhhdmUgbGli
cmFyaWVzIGluIGEKICAgICAgICAgICAgICAgbm9uc3RhbmRhcmQgZGlyZWN0b3J5IDxsaWIgZGly
PgogICBMSUJTICAgICAgICBsaWJyYXJpZXMgdG8gcGFzcyB0byB0aGUgbGlua2VyLCBlLmcuIC1s
PGxpYnJhcnk+Ci0gIENQUEZMQUdTICAgIEMvQysrL09iamVjdGl2ZSBDIHByZXByb2Nlc3NvciBm
bGFncywgZS5nLiAtSTxpbmNsdWRlIGRpcj4gaWYKKyAgQ1BQRkxBR1MgICAgKE9iamVjdGl2ZSkg
Qy9DKysgcHJlcHJvY2Vzc29yIGZsYWdzLCBlLmcuIC1JPGluY2x1ZGUgZGlyPiBpZgogICAgICAg
ICAgICAgICB5b3UgaGF2ZSBoZWFkZXJzIGluIGEgbm9uc3RhbmRhcmQgZGlyZWN0b3J5IDxpbmNs
dWRlIGRpcj4KICAgQ1BQICAgICAgICAgQyBwcmVwcm9jZXNzb3IKICAgQ1hYICAgICAgICAgQysr
IGNvbXBpbGVyIGNvbW1hbmQKQEAgLTE2NjcsOCArMTY3MCw4IEBACiB0ZXN0IC1uICIkYWNfaW5p
dF9oZWxwIiAmJiBleGl0ICRhY19zdGF0dXMKIGlmICRhY19pbml0X3ZlcnNpb247IHRoZW4KICAg
Y2F0IDw8XF9BQ0VPRgotb3BlbmRieCBjb25maWd1cmUgMS40LjMKLWdlbmVyYXRlZCBieSBHTlUg
QXV0b2NvbmYgMi42NAorb3BlbmRieCBjb25maWd1cmUgMS40LjYKK2dlbmVyYXRlZCBieSBHTlUg
QXV0b2NvbmYgMi42NQogCiBDb3B5cmlnaHQgKEMpIDIwMDkgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uLCBJbmMuCiBUaGlzIGNvbmZpZ3VyZSBzY3JpcHQgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbgpAQCAtMTcxNSw3ICsxNzE4LDcgQEAKIAlhY19yZXR2YWw9
MQogZmkKICAgZXZhbCAkYXNfbGluZW5vX3N0YWNrOyB0ZXN0ICJ4JGFzX2xpbmVub19zdGFjayIg
PSB4ICYmIHsgYXNfbGluZW5vPTsgdW5zZXQgYXNfbGluZW5vO30KLSAgcmV0dXJuICRhY19yZXR2
YWwKKyAgYXNfZm5fc2V0X3N0YXR1cyAkYWNfcmV0dmFsCiAKIH0gIyBhY19mbl9jX3RyeV9jb21w
aWxlCiAKQEAgLTE3NjEsNyArMTc2NCw3IEBACiAgICMgbGVmdCBiZWhpbmQgYnkgQXBwbGUncyBj
b21waWxlci4gIFdlIGRvIHRoaXMgYmVmb3JlIGV4ZWN1dGluZyB0aGUgYWN0aW9ucy4KICAgcm0g
LXJmIGNvbmZ0ZXN0LmRTWU0gY29uZnRlc3RfaXBhOF9jb25mdGVzdC5vbwogICBldmFsICRhc19s
aW5lbm9fc3RhY2s7IHRlc3QgIngkYXNfbGluZW5vX3N0YWNrIiA9IHggJiYgeyBhc19saW5lbm89
OyB1bnNldCBhc19saW5lbm87fQotICByZXR1cm4gJGFjX3JldHZhbAorICBhc19mbl9zZXRfc3Rh
dHVzICRhY19yZXR2YWwKIAogfSAjIGFjX2ZuX2NfdHJ5X2xpbmsKIApAQCAtMTgwMyw3ICsxODA2
LDcgQEAKIGZpCiAgIHJtIC1yZiBjb25mdGVzdC5kU1lNIGNvbmZ0ZXN0X2lwYThfY29uZnRlc3Qu
b28KICAgZXZhbCAkYXNfbGluZW5vX3N0YWNrOyB0ZXN0ICJ4JGFzX2xpbmVub19zdGFjayIgPSB4
ICYmIHsgYXNfbGluZW5vPTsgdW5zZXQgYXNfbGluZW5vO30KLSAgcmV0dXJuICRhY19yZXR2YWwK
KyAgYXNfZm5fc2V0X3N0YXR1cyAkYWNfcmV0dmFsCiAKIH0gIyBhY19mbl9jX3RyeV9ydW4KIApA
QCAtMTg3MSw3ICsxODc0LDcgQEAKICAgICBhY19yZXR2YWw9MQogZmkKICAgZXZhbCAkYXNfbGlu
ZW5vX3N0YWNrOyB0ZXN0ICJ4JGFzX2xpbmVub19zdGFjayIgPSB4ICYmIHsgYXNfbGluZW5vPTsg
dW5zZXQgYXNfbGluZW5vO30KLSAgcmV0dXJuICRhY19yZXR2YWwKKyAgYXNfZm5fc2V0X3N0YXR1
cyAkYWNfcmV0dmFsCiAKIH0gIyBhY19mbl9jX3RyeV9jcHAKIApAQCAtMTk3Niw3ICsxOTc5LDcg
QEAKIAlhY19yZXR2YWw9MQogZmkKICAgZXZhbCAkYXNfbGluZW5vX3N0YWNrOyB0ZXN0ICJ4JGFz
X2xpbmVub19zdGFjayIgPSB4ICYmIHsgYXNfbGluZW5vPTsgdW5zZXQgYXNfbGluZW5vO30KLSAg
cmV0dXJuICRhY19yZXR2YWwKKyAgYXNfZm5fc2V0X3N0YXR1cyAkYWNfcmV0dmFsCiAKIH0gIyBh
Y19mbl9jeHhfdHJ5X2NvbXBpbGUKIApAQCAtMjAxMyw3ICsyMDE2LDcgQEAKICAgICBhY19yZXR2
YWw9MQogZmkKICAgZXZhbCAkYXNfbGluZW5vX3N0YWNrOyB0ZXN0ICJ4JGFzX2xpbmVub19zdGFj
ayIgPSB4ICYmIHsgYXNfbGluZW5vPTsgdW5zZXQgYXNfbGluZW5vO30KLSAgcmV0dXJuICRhY19y
ZXR2YWwKKyAgYXNfZm5fc2V0X3N0YXR1cyAkYWNfcmV0dmFsCiAKIH0gIyBhY19mbl9jeHhfdHJ5
X2NwcAogCkBAIC0yMDU5LDcgKzIwNjIsNyBAQAogICAjIGxlZnQgYmVoaW5kIGJ5IEFwcGxlJ3Mg
Y29tcGlsZXIuICBXZSBkbyB0aGlzIGJlZm9yZSBleGVjdXRpbmcgdGhlIGFjdGlvbnMuCiAgIHJt
IC1yZiBjb25mdGVzdC5kU1lNIGNvbmZ0ZXN0X2lwYThfY29uZnRlc3Qub28KICAgZXZhbCAkYXNf
bGluZW5vX3N0YWNrOyB0ZXN0ICJ4JGFzX2xpbmVub19zdGFjayIgPSB4ICYmIHsgYXNfbGluZW5v
PTsgdW5zZXQgYXNfbGluZW5vO30KLSAgcmV0dXJuICRhY19yZXR2YWwKKyAgYXNfZm5fc2V0X3N0
YXR1cyAkYWNfcmV0dmFsCiAKIH0gIyBhY19mbl9jeHhfdHJ5X2xpbmsKIApAQCAtMjEzMCwxNSAr
MjEzMywxOCBAQAogICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgogZWxzZQogICBldmFsICIk
Mz1ubyIKKyAgICAgIyBPcmRlciBpcyBpbXBvcnRhbnQgLSBuZXZlciBjaGVjayBhIHR5cGUgdGhh
dCBpcyBwb3RlbnRpYWxseSBzbWFsbGVyCisgICAgICMgdGhhbiBoYWxmIG9mIHRoZSBleHBlY3Rl
ZCB0YXJnZXQgd2lkdGguCiAgICAgIGZvciBhY190eXBlIGluIGludCQyX3QgJ2ludCcgJ2xvbmcg
aW50JyBcCiAJICdsb25nIGxvbmcgaW50JyAnc2hvcnQgaW50JyAnc2lnbmVkIGNoYXInOyBkbwog
ICAgICAgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKIC8qIGVu
ZCBjb25mZGVmcy5oLiAgKi8KICRhY19pbmNsdWRlc19kZWZhdWx0CisJICAgICBlbnVtIHsgTiA9
ICQyIC8gMiAtIDEgfTsKIGludAogbWFpbiAoKQogewotc3RhdGljIGludCB0ZXN0X2FycmF5IFsx
IC0gMiAqICEoMCA8ICgkYWNfdHlwZSkgKCgoKCRhY190eXBlKSAxIDw8ICgkMiAtIDIpKSAtIDEp
ICogMiArIDEpKV07CitzdGF0aWMgaW50IHRlc3RfYXJyYXkgWzEgLSAyICogISgwIDwgKCRhY190
eXBlKSAoKCgoKCRhY190eXBlKSAxIDw8IE4pIDw8IE4pIC0gMSkgKiAyICsgMSkpXTsKIHRlc3Rf
YXJyYXkgWzBdID0gMAogCiAgIDsKQEAgLTIxNDksMTEgKzIxNTUsMTIgQEAKICAgY2F0IGNvbmZk
ZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAogLyogZW5kIGNvbmZkZWZzLmguICAq
LwogJGFjX2luY2x1ZGVzX2RlZmF1bHQKKwkgICAgICAgIGVudW0geyBOID0gJDIgLyAyIC0gMSB9
OwogaW50CiBtYWluICgpCiB7Ci1zdGF0aWMgaW50IHRlc3RfYXJyYXkgWzEgLSAyICogISgoJGFj
X3R5cGUpICgoKCgkYWNfdHlwZSkgMSA8PCAoJDIgLSAyKSkgLSAxKSAqIDIgKyAxKQotCQkgPCAo
JGFjX3R5cGUpICgoKCgkYWNfdHlwZSkgMSA8PCAoJDIgLSAyKSkgLSAxKSAqIDIgKyAyKSldOwor
c3RhdGljIGludCB0ZXN0X2FycmF5IFsxIC0gMiAqICEoKCRhY190eXBlKSAoKCgoKCRhY190eXBl
KSAxIDw8IE4pIDw8IE4pIC0gMSkgKiAyICsgMSkKKwkJIDwgKCRhY190eXBlKSAoKCgoKCRhY190
eXBlKSAxIDw8IE4pIDw8IE4pIC0gMSkgKiAyICsgMikpXTsKIHRlc3RfYXJyYXkgWzBdID0gMAog
CiAgIDsKQEAgLTIyMDEsNiArMjIwOCw4IEBACiAgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2
CiBlbHNlCiAgIGV2YWwgIiQzPW5vIgorICAgICAjIE9yZGVyIGlzIGltcG9ydGFudCAtIG5ldmVy
IGNoZWNrIGEgdHlwZSB0aGF0IGlzIHBvdGVudGlhbGx5IHNtYWxsZXIKKyAgICAgIyB0aGFuIGhh
bGYgb2YgdGhlIGV4cGVjdGVkIHRhcmdldCB3aWR0aC4KICAgICAgZm9yIGFjX3R5cGUgaW4gdWlu
dCQyX3QgJ3Vuc2lnbmVkIGludCcgJ3Vuc2lnbmVkIGxvbmcgaW50JyBcCiAJICd1bnNpZ25lZCBs
b25nIGxvbmcgaW50JyAndW5zaWduZWQgc2hvcnQgaW50JyAndW5zaWduZWQgY2hhcic7IGRvCiAg
ICAgICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dApAQCAtMjIw
OSw3ICsyMjE4LDcgQEAKIGludAogbWFpbiAoKQogewotc3RhdGljIGludCB0ZXN0X2FycmF5IFsx
IC0gMiAqICEoKCRhY190eXBlKSAtMSA+PiAoJDIgLSAxKSA9PSAxKV07CitzdGF0aWMgaW50IHRl
c3RfYXJyYXkgWzEgLSAyICogISgoKCRhY190eXBlKSAtMSA+PiAoJDIgLyAyIC0gMSkpID4+ICgk
MiAvIDIgLSAxKSA9PSAzKV07CiB0ZXN0X2FycmF5IFswXSA9IDAKIAogICA7CkBAIC0yMzMyLDEy
ICsyMzQxLDY5IEBACiAgIGV2YWwgJGFzX2xpbmVub19zdGFjazsgdGVzdCAieCRhc19saW5lbm9f
c3RhY2siID0geCAmJiB7IGFzX2xpbmVubz07IHVuc2V0IGFzX2xpbmVubzt9CiAKIH0gIyBhY19m
bl9jX2NoZWNrX2hlYWRlcl9tb25ncmVsCisKKyMgYWNfZm5fY19jaGVja19tZW1iZXIgTElORU5P
IEFHR1IgTUVNQkVSIFZBUiBJTkNMVURFUworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIFRyaWVzIHRvIGZpbmQgaWYgdGhlIGZpZWxkIE1F
TUJFUiBleGlzdHMgaW4gdHlwZSBBR0dSLCBhZnRlciBpbmNsdWRpbmcKKyMgSU5DTFVERVMsIHNl
dHRpbmcgY2FjaGUgdmFyaWFibGUgVkFSIGFjY29yZGluZ2x5LgorYWNfZm5fY19jaGVja19tZW1i
ZXIgKCkKK3sKKyAgYXNfbGluZW5vPSR7YXNfbGluZW5vLSIkMSJ9IGFzX2xpbmVub19zdGFjaz1h
c19saW5lbm9fc3RhY2s9JGFzX2xpbmVub19zdGFjaworICB7ICRhc19lY2hvICIkYXNfbWU6JHth
c19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkMi4kMyIgPiY1CiskYXNfZWNob19uICJj
aGVja2luZyBmb3IgJDIuJDMuLi4gIiA+JjY7IH0KK2lmIHsgYXNfdmFyPSQ0OyBldmFsICJ0ZXN0
IFwiXCR7JGFzX3ZhcitzZXR9XCIgPSBzZXQiOyB9OyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNh
Y2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3Qu
JGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworJDUKK2ludAorbWFpbiAoKQoreworc3Rh
dGljICQyIGFjX2FnZ3I7CitpZiAoYWNfYWdnci4kMykKK3JldHVybiAwOworICA7CisgIHJldHVy
biAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6
CisgIGV2YWwgIiQ0PXllcyIKK2Vsc2UKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29u
ZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworJDUKK2ludAorbWFpbiAoKQor
eworc3RhdGljICQyIGFjX2FnZ3I7CitpZiAoc2l6ZW9mIGFjX2FnZ3IuJDMpCityZXR1cm4gMDsK
KyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJ
TkVOTyI7IHRoZW4gOgorICBldmFsICIkND15ZXMiCitlbHNlCisgIGV2YWwgIiQ0PW5vIgorZmkK
K3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFj
X2V4dAorZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29u
ZnRlc3QuJGFjX2V4dAorZmkKK2V2YWwgYWNfcmVzPVwkJDQKKwkgICAgICAgeyAkYXNfZWNobyAi
JGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19yZXMiID4mNQorJGFzX2Vj
aG8gIiRhY19yZXMiID4mNjsgfQorICBldmFsICRhc19saW5lbm9fc3RhY2s7IHRlc3QgIngkYXNf
bGluZW5vX3N0YWNrIiA9IHggJiYgeyBhc19saW5lbm89OyB1bnNldCBhc19saW5lbm87fQorCit9
ICMgYWNfZm5fY19jaGVja19tZW1iZXIKIGNhdCA+Y29uZmlnLmxvZyA8PF9BQ0VPRgogVGhpcyBm
aWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hpbGUKIHJ1
bm5pbmcgY29uZmlndXJlLCB0byBhaWQgZGVidWdnaW5nIGlmIGNvbmZpZ3VyZSBtYWtlcyBhIG1p
c3Rha2UuCiAKLUl0IHdhcyBjcmVhdGVkIGJ5IG9wZW5kYnggJGFzX21lIDEuNC4zLCB3aGljaCB3
YXMKLWdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi42NC4gIEludm9jYXRpb24gY29tbWFuZCBs
aW5lIHdhcworSXQgd2FzIGNyZWF0ZWQgYnkgb3BlbmRieCAkYXNfbWUgMS40LjYsIHdoaWNoIHdh
cworZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY1LiAgSW52b2NhdGlvbiBjb21tYW5kIGxp
bmUgd2FzCiAKICAgJCAkMCAkQAogCkBAIC0yNTkwLDcgKzI2NTYsNyBAQAogZm9yIGFjX3NpdGVf
ZmlsZSBpbiAiJGFjX3NpdGVfZmlsZTEiICIkYWNfc2l0ZV9maWxlMiIKIGRvCiAgIHRlc3QgIngk
YWNfc2l0ZV9maWxlIiA9IHhOT05FICYmIGNvbnRpbnVlCi0gIGlmIHRlc3QgLXIgIiRhY19zaXRl
X2ZpbGUiOyB0aGVuCisgIGlmIHRlc3QgL2Rldi9udWxsICE9ICIkYWNfc2l0ZV9maWxlIiAmJiB0
ZXN0IC1yICIkYWNfc2l0ZV9maWxlIjsgdGhlbgogICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2Fz
X2xpbmVuby0kTElORU5PfTogbG9hZGluZyBzaXRlIHNjcmlwdCAkYWNfc2l0ZV9maWxlIiA+JjUK
ICRhc19lY2hvICIkYXNfbWU6IGxvYWRpbmcgc2l0ZSBzY3JpcHQgJGFjX3NpdGVfZmlsZSIgPiY2
O30KICAgICBzZWQgJ3MvXi98IC8nICIkYWNfc2l0ZV9maWxlIiA+JjUKQEAgLTI1OTksOSArMjY2
NSw5IEBACiBkb25lCiAKIGlmIHRlc3QgLXIgIiRjYWNoZV9maWxlIjsgdGhlbgotICAjIFNvbWUg
dmVyc2lvbnMgb2YgYmFzaCB3aWxsIGZhaWwgdG8gc291cmNlIC9kZXYvbnVsbCAoc3BlY2lhbAot
ICAjIGZpbGVzIGFjdHVhbGx5KSwgc28gd2UgYXZvaWQgZG9pbmcgdGhhdC4KLSAgaWYgdGVzdCAt
ZiAiJGNhY2hlX2ZpbGUiOyB0aGVuCisgICMgU29tZSB2ZXJzaW9ucyBvZiBiYXNoIHdpbGwgZmFp
bCB0byBzb3VyY2UgL2Rldi9udWxsIChzcGVjaWFsIGZpbGVzCisgICMgYWN0dWFsbHkpLCBzbyB3
ZSBhdm9pZCBkb2luZyB0aGF0LiAgREpHUFAgZW11bGF0ZXMgaXQgYXMgYSByZWd1bGFyIGZpbGUu
CisgIGlmIHRlc3QgL2Rldi9udWxsICE9ICIkY2FjaGVfZmlsZSIgJiYgdGVzdCAtZiAiJGNhY2hl
X2ZpbGUiOyB0aGVuCiAgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99
OiBsb2FkaW5nIGNhY2hlICRjYWNoZV9maWxlIiA+JjUKICRhc19lY2hvICIkYXNfbWU6IGxvYWRp
bmcgY2FjaGUgJGNhY2hlX2ZpbGUiID4mNjt9CiAgICAgY2FzZSAkY2FjaGVfZmlsZSBpbgpAQCAt
MzAyNSw2ICszMDkxLDcgQEAKIAogZmkKIAorICB0ZXN0IC1kIC4vLS12ZXJzaW9uICYmIHJtZGly
IC4vLS12ZXJzaW9uCiAgIGlmIHRlc3QgIiR7YWNfY3ZfcGF0aF9ta2RpcitzZXR9IiA9IHNldDsg
dGhlbgogICAgIE1LRElSX1A9IiRhY19jdl9wYXRoX21rZGlyIC1wIgogICBlbHNlCkBAIC0zMDMy
LDcgKzMwOTksNiBAQAogICAgICMgdmFsdWUgZm9yIE1LRElSX1Agd2l0aGluIGEgc291cmNlIGRp
cmVjdG9yeSwgYmVjYXVzZSB0aGF0IHdpbGwKICAgICAjIGJyZWFrIG90aGVyIHBhY2thZ2VzIHVz
aW5nIHRoZSBjYWNoZSBpZiB0aGF0IGRpcmVjdG9yeSBpcwogICAgICMgcmVtb3ZlZCwgb3IgaWYg
dGhlIHZhbHVlIGlzIGEgcmVsYXRpdmUgbmFtZS4KLSAgICB0ZXN0IC1kIC4vLS12ZXJzaW9uICYm
IHJtZGlyIC4vLS12ZXJzaW9uCiAgICAgTUtESVJfUD0iJGFjX2luc3RhbGxfc2ggLWQiCiAgIGZp
CiBmaQpAQCAtMzE0OSw3ICszMjE1LDcgQEAKIAogIyBEZWZpbmUgdGhlIGlkZW50aXR5IG9mIHRo
ZSBwYWNrYWdlLgogIFBBQ0tBR0U9J29wZW5kYngnCi0gVkVSU0lPTj0nMS40LjMnCisgVkVSU0lP
Tj0nMS40LjYnCiAKIAogY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgpAQCAtMzkxMiwzMiArMzk3
OCwzMCBAQAogLi4uIHJlc3Qgb2Ygc3RkZXJyIG91dHB1dCBkZWxldGVkIC4uLgogICAgICAgICAg
MTBxJyBjb25mdGVzdC5lcnIgPmNvbmZ0ZXN0LmVyMQogICAgIGNhdCBjb25mdGVzdC5lcjEgPiY1
Ci0gICAgcm0gLWYgY29uZnRlc3QuZXIxIGNvbmZ0ZXN0LmVycgogICBmaQorICBybSAtZiBjb25m
dGVzdC5lcjEgY29uZnRlc3QuZXJyCiAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJ
TkVOT306IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICB0ZXN0ICRhY19zdGF0dXMgPSAwOyB9CiBk
b25lCiAKIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKIC8qIGVu
ZCBjb25mZGVmcy5oLiAgKi8KLSNpbmNsdWRlIDxzdGRpby5oPgorCiBpbnQKIG1haW4gKCkKIHsK
LUZJTEUgKmYgPSBmb3BlbiAoImNvbmZ0ZXN0Lm91dCIsICJ3Iik7Ci0gcmV0dXJuIGZlcnJvciAo
ZikgfHwgZmNsb3NlIChmKSAhPSAwOwogCiAgIDsKICAgcmV0dXJuIDA7CiB9CiBfQUNFT0YKIGFj
X2NsZWFuX2ZpbGVzX3NhdmU9JGFjX2NsZWFuX2ZpbGVzCi1hY19jbGVhbl9maWxlcz0iJGFjX2Ns
ZWFuX2ZpbGVzIGEub3V0IGEub3V0LmRTWU0gYS5leGUgYi5vdXQgY29uZnRlc3Qub3V0IgorYWNf
Y2xlYW5fZmlsZXM9IiRhY19jbGVhbl9maWxlcyBhLm91dCBhLm91dC5kU1lNIGEuZXhlIGIub3V0
IgogIyBUcnkgdG8gY3JlYXRlIGFuIGV4ZWN1dGFibGUgd2l0aG91dCAtbyBmaXJzdCwgZGlzcmVn
YXJkIGEub3V0LgogIyBJdCB3aWxsIGhlbHAgdXMgZGlhZ25vc2UgYnJva2VuIGNvbXBpbGVycywg
YW5kIGZpbmRpbmcgb3V0IGFuIGludHVpdGlvbgogIyBvZiBleGVleHQuCi17ICRhc19lY2hvICIk
YXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBDIGNvbXBpbGVyIGRlZmF1
bHQgb3V0cHV0IGZpbGUgbmFtZSIgPiY1Ci0kYXNfZWNob19uICJjaGVja2luZyBmb3IgQyBjb21w
aWxlciBkZWZhdWx0IG91dHB1dCBmaWxlIG5hbWUuLi4gIiA+JjY7IH0KK3sgJGFzX2VjaG8gIiRh
c19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hldGhlciB0aGUgQyBjb21waWxl
ciB3b3JrcyIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyB3aGV0aGVyIHRoZSBDIGNvbXBpbGVy
IHdvcmtzLi4uICIgPiY2OyB9CiBhY19saW5rX2RlZmF1bHQ9YCRhc19lY2hvICIkYWNfbGluayIg
fCBzZWQgJ3MvIC1vICpjb25mdGVzdFteIF0qLy8nYAogCiAjIFRoZSBwb3NzaWJsZSBvdXRwdXQg
ZmlsZXM6CkBAIC0zOTk5LDEwICs0MDYzLDEwIEBACiBlbHNlCiAgIGFjX2ZpbGU9JycKIGZpCi17
ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2ZpbGUi
ID4mNQotJGFzX2VjaG8gIiRhY19maWxlIiA+JjY7IH0KIGlmIHRlc3QgLXogIiRhY19maWxlIjsg
dGhlbiA6Ci0gICRhc19lY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQorICB7
ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQor
JGFzX2VjaG8gIm5vIiA+JjY7IH0KKyRhc19lY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdh
czoiID4mNQogc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQogCiB7IHsgJGFzX2Vj
aG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+
JjUKQEAgLTQwMTAsNTEgKzQwNzQsMTggQEAKIHsgYXNfZm5fc2V0X3N0YXR1cyA3NwogYXNfZm5f
ZXJyb3IgIkMgY29tcGlsZXIgY2Fubm90IGNyZWF0ZSBleGVjdXRhYmxlcwogU2VlIFxgY29uZmln
LmxvZycgZm9yIG1vcmUgZGV0YWlscy4iICIkTElORU5PIiA1OyB9OyB9CitlbHNlCisgIHsgJGFz
X2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiB5ZXMiID4mNQorJGFz
X2VjaG8gInllcyIgPiY2OyB9CiBmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRM
SU5FTk99OiBjaGVja2luZyBmb3IgQyBjb21waWxlciBkZWZhdWx0IG91dHB1dCBmaWxlIG5hbWUi
ID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIEMgY29tcGlsZXIgZGVmYXVsdCBvdXRwdXQg
ZmlsZSBuYW1lLi4uICIgPiY2OyB9Cit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJ
TkVOT306IHJlc3VsdDogJGFjX2ZpbGUiID4mNQorJGFzX2VjaG8gIiRhY19maWxlIiA+JjY7IH0K
IGFjX2V4ZWV4dD0kYWNfY3ZfZXhlZXh0CiAKLSMgQ2hlY2sgdGhhdCB0aGUgY29tcGlsZXIgcHJv
ZHVjZXMgZXhlY3V0YWJsZXMgd2UgY2FuIHJ1bi4gIElmIG5vdCwgZWl0aGVyCi0jIHRoZSBjb21w
aWxlciBpcyBicm9rZW4sIG9yIHdlIGNyb3NzIGNvbXBpbGUuCi17ICRhc19lY2hvICIkYXNfbWU6
JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgd29y
a3MiID4mNQotJGFzX2VjaG9fbiAiY2hlY2tpbmcgd2hldGhlciB0aGUgQyBjb21waWxlciB3b3Jr
cy4uLiAiID4mNjsgfQotIyBJZiBub3QgY3Jvc3MgY29tcGlsaW5nLCBjaGVjayB0aGF0IHdlIGNh
biBydW4gYSBzaW1wbGUgcHJvZ3JhbS4KLWlmIHRlc3QgIiRjcm9zc19jb21waWxpbmciICE9IHll
czsgdGhlbgotICBpZiB7IGFjX3RyeT0nLi8kYWNfZmlsZScKLSAgeyB7IGNhc2UgIigoJGFjX3Ry
eSIgaW4KLSAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7Ci0gICop
IGFjX3RyeV9lY2hvPSRhY190cnk7OwotZXNhYwotZXZhbCBhY190cnlfZWNobz0iXCJcJGFzX21l
OiR7YXNfbGluZW5vLSRMSU5FTk99OiAkYWNfdHJ5X2VjaG9cIiIKLSRhc19lY2hvICIkYWNfdHJ5
X2VjaG8iOyB9ID4mNQotICAoZXZhbCAiJGFjX3RyeSIpIDI+JjUKLSAgYWNfc3RhdHVzPSQ/Ci0g
ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFwkPyA9ICRhY19zdGF0dXMi
ID4mNQotICB0ZXN0ICRhY19zdGF0dXMgPSAwOyB9OyB9OyB0aGVuCi0gICAgY3Jvc3NfY29tcGls
aW5nPW5vCi0gIGVsc2UKLSAgICBpZiB0ZXN0ICIkY3Jvc3NfY29tcGlsaW5nIiA9IG1heWJlOyB0
aGVuCi0JY3Jvc3NfY29tcGlsaW5nPXllcwotICAgIGVsc2UKLQl7IHsgJGFzX2VjaG8gIiRhc19t
ZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjUKLSRhc19l
Y2hvICIkYXNfbWU6IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiYyO30KLWFzX2ZuX2Vycm9yICJj
YW5ub3QgcnVuIEMgY29tcGlsZWQgcHJvZ3JhbXMuCi1JZiB5b3UgbWVhbnQgdG8gY3Jvc3MgY29t
cGlsZSwgdXNlIFxgLS1ob3N0Jy4KLVNlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMu
IiAiJExJTkVOTyIgNTsgfQotICAgIGZpCi0gIGZpCi1maQoteyAkYXNfZWNobyAiJGFzX21lOiR7
YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IHllcyIgPiY1Ci0kYXNfZWNobyAieWVzIiA+JjY7
IH0KLQotcm0gLWYgLXIgYS5vdXQgYS5vdXQuZFNZTSBhLmV4ZSBjb25mdGVzdCRhY19jdl9leGVl
eHQgYi5vdXQgY29uZnRlc3Qub3V0CitybSAtZiAtciBhLm91dCBhLm91dC5kU1lNIGEuZXhlIGNv
bmZ0ZXN0JGFjX2N2X2V4ZWV4dCBiLm91dAogYWNfY2xlYW5fZmlsZXM9JGFjX2NsZWFuX2ZpbGVz
X3NhdmUKLSMgQ2hlY2sgdGhhdCB0aGUgY29tcGlsZXIgcHJvZHVjZXMgZXhlY3V0YWJsZXMgd2Ug
Y2FuIHJ1bi4gIElmIG5vdCwgZWl0aGVyCi0jIHRoZSBjb21waWxlciBpcyBicm9rZW4sIG9yIHdl
IGNyb3NzIGNvbXBpbGUuCi17ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306
IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIGNyb3NzIGNvbXBpbGluZyIgPiY1Ci0kYXNfZWNob19u
ICJjaGVja2luZyB3aGV0aGVyIHdlIGFyZSBjcm9zcyBjb21waWxpbmcuLi4gIiA+JjY7IH0KLXsg
JGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkY3Jvc3NfY29t
cGlsaW5nIiA+JjUKLSRhc19lY2hvICIkY3Jvc3NfY29tcGlsaW5nIiA+JjY7IH0KLQogeyAkYXNf
ZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3Igc3VmZml4IG9m
IGV4ZWN1dGFibGVzIiA+JjUKICRhc19lY2hvX24gImNoZWNraW5nIGZvciBzdWZmaXggb2YgZXhl
Y3V0YWJsZXMuLi4gIiA+JjY7IH0KIGlmIHsgeyBhY190cnk9IiRhY19saW5rIgpAQCAtNDA4Nywx
MyArNDExOCw3MiBAQAogYXNfZm5fZXJyb3IgImNhbm5vdCBjb21wdXRlIHN1ZmZpeCBvZiBleGVj
dXRhYmxlczogY2Fubm90IGNvbXBpbGUgYW5kIGxpbmsKIFNlZSBcYGNvbmZpZy5sb2cnIGZvciBt
b3JlIGRldGFpbHMuIiAiJExJTkVOTyIgNTsgfQogZmkKLXJtIC1mIGNvbmZ0ZXN0JGFjX2N2X2V4
ZWV4dAorcm0gLWYgY29uZnRlc3QgY29uZnRlc3QkYWNfY3ZfZXhlZXh0CiB7ICRhc19lY2hvICIk
YXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2V4ZWV4dCIgPiY1CiAk
YXNfZWNobyAiJGFjX2N2X2V4ZWV4dCIgPiY2OyB9CiAKIHJtIC1mIGNvbmZ0ZXN0LiRhY19leHQK
IEVYRUVYVD0kYWNfY3ZfZXhlZXh0CiBhY19leGVleHQ9JEVYRUVYVAorY2F0IGNvbmZkZWZzLmgg
LSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2lu
Y2x1ZGUgPHN0ZGlvLmg+CitpbnQKK21haW4gKCkKK3sKK0ZJTEUgKmYgPSBmb3BlbiAoImNvbmZ0
ZXN0Lm91dCIsICJ3Iik7CisgcmV0dXJuIGZlcnJvciAoZikgfHwgZmNsb3NlIChmKSAhPSAwOwor
CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2FjX2NsZWFuX2ZpbGVzPSIkYWNfY2xlYW5f
ZmlsZXMgY29uZnRlc3Qub3V0IgorIyBDaGVjayB0aGF0IHRoZSBjb21waWxlciBwcm9kdWNlcyBl
eGVjdXRhYmxlcyB3ZSBjYW4gcnVuLiAgSWYgbm90LCBlaXRoZXIKKyMgdGhlIGNvbXBpbGVyIGlz
IGJyb2tlbiwgb3Igd2UgY3Jvc3MgY29tcGlsZS4KK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xp
bmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgY3Jvc3MgY29tcGlsaW5nIiA+
JjUKKyRhc19lY2hvX24gImNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIGNyb3NzIGNvbXBpbGluZy4u
LiAiID4mNjsgfQoraWYgdGVzdCAiJGNyb3NzX2NvbXBpbGluZyIgIT0geWVzOyB0aGVuCisgIHsg
eyBhY190cnk9IiRhY19saW5rIgorY2FzZSAiKCgkYWNfdHJ5IiBpbgorICAqXCIqIHwgKlxgKiB8
ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKKyAgKikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7
Citlc2FjCitldmFsIGFjX3RyeV9lY2hvPSJcIlwkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306
ICRhY190cnlfZWNob1wiIgorJGFzX2VjaG8gIiRhY190cnlfZWNobyI7IH0gPiY1CisgIChldmFs
ICIkYWNfbGluayIpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgICRhc19lY2hvICIkYXNfbWU6JHth
c19saW5lbm8tJExJTkVOT306IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICB0ZXN0ICRhY19zdGF0
dXMgPSAwOyB9CisgIGlmIHsgYWNfdHJ5PScuL2NvbmZ0ZXN0JGFjX2N2X2V4ZWV4dCcKKyAgeyB7
IGNhc2UgIigoJGFjX3RyeSIgaW4KKyAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1c
JGFjX3RyeTs7CisgICopIGFjX3RyeV9lY2hvPSRhY190cnk7OworZXNhYworZXZhbCBhY190cnlf
ZWNobz0iXCJcJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiAkYWNfdHJ5X2VjaG9cIiIKKyRh
c19lY2hvICIkYWNfdHJ5X2VjaG8iOyB9ID4mNQorICAoZXZhbCAiJGFjX3RyeSIpIDI+JjUKKyAg
YWNfc3RhdHVzPSQ/CisgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFwk
PyA9ICRhY19zdGF0dXMiID4mNQorICB0ZXN0ICRhY19zdGF0dXMgPSAwOyB9OyB9OyB0aGVuCisg
ICAgY3Jvc3NfY29tcGlsaW5nPW5vCisgIGVsc2UKKyAgICBpZiB0ZXN0ICIkY3Jvc3NfY29tcGls
aW5nIiA9IG1heWJlOyB0aGVuCisJY3Jvc3NfY29tcGlsaW5nPXllcworICAgIGVsc2UKKwl7IHsg
JGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3
ZCc6IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiYyO30K
K2FzX2ZuX2Vycm9yICJjYW5ub3QgcnVuIEMgY29tcGlsZWQgcHJvZ3JhbXMuCitJZiB5b3UgbWVh
bnQgdG8gY3Jvc3MgY29tcGlsZSwgdXNlIFxgLS1ob3N0Jy4KK1NlZSBcYGNvbmZpZy5sb2cnIGZv
ciBtb3JlIGRldGFpbHMuIiAiJExJTkVOTyIgNTsgfQorICAgIGZpCisgIGZpCitmaQoreyAkYXNf
ZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRjcm9zc19jb21waWxp
bmciID4mNQorJGFzX2VjaG8gIiRjcm9zc19jb21waWxpbmciID4mNjsgfQorCitybSAtZiBjb25m
dGVzdC4kYWNfZXh0IGNvbmZ0ZXN0JGFjX2N2X2V4ZWV4dCBjb25mdGVzdC5vdXQKK2FjX2NsZWFu
X2ZpbGVzPSRhY19jbGVhbl9maWxlc19zYXZlCiB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5l
bm8tJExJTkVOT306IGNoZWNraW5nIGZvciBzdWZmaXggb2Ygb2JqZWN0IGZpbGVzIiA+JjUKICRh
c19lY2hvX24gImNoZWNraW5nIGZvciBzdWZmaXggb2Ygb2JqZWN0IGZpbGVzLi4uICIgPiY2OyB9
CiBpZiB0ZXN0ICIke2FjX2N2X29iamV4dCtzZXR9IiA9IHNldDsgdGhlbiA6CkBAIC02NDQxLDgg
KzY1MzEsOCBAQAogCiAKIAotbWFjcm9fdmVyc2lvbj0nMi4yLjYnCi1tYWNyb19yZXZpc2lvbj0n
MS4zMDEyJworbWFjcm9fdmVyc2lvbj0nMi4yLjZiJworbWFjcm9fcmV2aXNpb249JzEuMzAxNycK
IAogCiAKQEAgLTcwNDIsMTMgKzcxMzIsMTMgQEAKIGVsc2UKICAgbHRfY3Zfbm1faW50ZXJmYWNl
PSJCU0Qgbm0iCiAgIGVjaG8gImludCBzb21lX3ZhcmlhYmxlID0gMDsiID4gY29uZnRlc3QuJGFj
X2V4dAotICAoZXZhbCBlY2hvICJcIlwkYXNfbWU6NzA0NTogJGFjX2NvbXBpbGVcIiIgPiY1KQor
ICAoZXZhbCBlY2hvICJcIlwkYXNfbWU6NzEzNTogJGFjX2NvbXBpbGVcIiIgPiY1KQogICAoZXZh
bCAiJGFjX2NvbXBpbGUiIDI+Y29uZnRlc3QuZXJyKQogICBjYXQgY29uZnRlc3QuZXJyID4mNQot
ICAoZXZhbCBlY2hvICJcIlwkYXNfbWU6NzA0ODogJE5NIFxcXCJjb25mdGVzdC4kYWNfb2JqZXh0
XFxcIlwiIiA+JjUpCisgIChldmFsIGVjaG8gIlwiXCRhc19tZTo3MTM4OiAkTk0gXFxcImNvbmZ0
ZXN0LiRhY19vYmpleHRcXFwiXCIiID4mNSkKICAgKGV2YWwgIiROTSBcImNvbmZ0ZXN0LiRhY19v
YmpleHRcIiIgMj5jb25mdGVzdC5lcnIgPiBjb25mdGVzdC5vdXQpCiAgIGNhdCBjb25mdGVzdC5l
cnIgPiY1Ci0gIChldmFsIGVjaG8gIlwiXCRhc19tZTo3MDUxOiBvdXRwdXRcIiIgPiY1KQorICAo
ZXZhbCBlY2hvICJcIlwkYXNfbWU6NzE0MTogb3V0cHV0XCIiID4mNSkKICAgY2F0IGNvbmZ0ZXN0
Lm91dCA+JjUKICAgaWYgJEdSRVAgJ0V4dGVybmFsLipzb21lX3ZhcmlhYmxlJyBjb25mdGVzdC5v
dXQgPiAvZGV2L251bGw7IHRoZW4KICAgICBsdF9jdl9ubV9pbnRlcmZhY2U9Ik1TIGR1bXBiaW4i
CkBAIC03NTExLDcgKzc2MDEsNyBAQAogICA7OwogCiAjIFRoaXMgbXVzdCBiZSBMaW51eCBFTEYu
Ci1saW51eCogfCBrKmJzZCotZ251KQorbGludXgqIHwgaypic2QqLWdudSB8IGtvcGVuc29sYXJp
cyotZ251KQogICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNzX2FsbAogICA7OwogCkBA
IC04MjUwLDcgKzgzNDAsNyBAQAogICA7OwogKi0qLWlyaXg2KikKICAgIyBGaW5kIG91dCB3aGlj
aCBBQkkgd2UgYXJlIHVzaW5nLgotICBlY2hvICcjbGluZSA4MjUzICJjb25maWd1cmUiJyA+IGNv
bmZ0ZXN0LiRhY19leHQKKyAgZWNobyAnI2xpbmUgODM0MyAiY29uZmlndXJlIicgPiBjb25mdGVz
dC4kYWNfZXh0CiAgIGlmIHsgeyBldmFsIGVjaG8gIlwiXCRhc19tZVwiOiR7YXNfbGluZW5vLSRM
SU5FTk99OiBcIiRhY19jb21waWxlXCIiOyB9ID4mNQogICAoZXZhbCAkYWNfY29tcGlsZSkgMj4m
NQogICBhY19zdGF0dXM9JD8KQEAgLTEwMDc4LDExICsxMDE2OCwxMSBAQAogICAgLWUgJ3M6LipG
TEFHU31cezAsMVx9IDomJGx0X2NvbXBpbGVyX2ZsYWcgOjsgdCcgXAogICAgLWUgJ3M6IFteIF0q
Y29uZnRlc3RcLjogJGx0X2NvbXBpbGVyX2ZsYWcmOjsgdCcgXAogICAgLWUgJ3M6JDogJGx0X2Nv
bXBpbGVyX2ZsYWc6J2AKLSAgIChldmFsIGVjaG8gIlwiXCRhc19tZToxMDA4MTogJGx0X2NvbXBp
bGVcIiIgPiY1KQorICAgKGV2YWwgZWNobyAiXCJcJGFzX21lOjEwMTcxOiAkbHRfY29tcGlsZVwi
IiA+JjUpCiAgICAoZXZhbCAiJGx0X2NvbXBpbGUiIDI+Y29uZnRlc3QuZXJyKQogICAgYWNfc3Rh
dHVzPSQ/CiAgICBjYXQgY29uZnRlc3QuZXJyID4mNQotICAgZWNobyAiJGFzX21lOjEwMDg1OiBc
JD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgIGVjaG8gIiRhc19tZToxMDE3NTogXCQ/ID0gJGFjX3N0
YXR1cyIgPiY1CiAgICBpZiAoZXhpdCAkYWNfc3RhdHVzKSAmJiB0ZXN0IC1zICIkYWNfb3V0Zmls
ZSI7IHRoZW4KICAgICAgIyBUaGUgY29tcGlsZXIgY2FuIG9ubHkgd2FybiBhbmQgaWdub3JlIHRo
ZSBvcHRpb24gaWYgbm90IHJlY29nbml6ZWQKICAgICAgIyBTbyBzYXkgbm8gaWYgdGhlcmUgYXJl
IHdhcm5pbmdzIG90aGVyIHRoYW4gdGhlIHVzdWFsIG91dHB1dC4KQEAgLTEwMjQ3LDcgKzEwMzM3
LDcgQEAKICAgICAgIGx0X3Byb2dfY29tcGlsZXJfc3RhdGljPSctbm9uX3NoYXJlZCcKICAgICAg
IDs7CiAKLSAgICBsaW51eCogfCBrKmJzZCotZ251KQorICAgIGxpbnV4KiB8IGsqYnNkKi1nbnUg
fCBrb3BlbnNvbGFyaXMqLWdudSkKICAgICAgIGNhc2UgJGNjX2Jhc2VuYW1lIGluCiAgICAgICAj
IG9sZCBJbnRlbCBmb3IgeDg2XzY0IHdoaWNoIHN0aWxsIHN1cHBvcnRlZCAtS1BJQy4KICAgICAg
IGVjYyopCkBAIC0xMDQxNywxMSArMTA1MDcsMTEgQEAKICAgIC1lICdzOi4qRkxBR1N9XHswLDFc
fSA6JiRsdF9jb21waWxlcl9mbGFnIDo7IHQnIFwKICAgIC1lICdzOiBbXiBdKmNvbmZ0ZXN0XC46
ICRsdF9jb21waWxlcl9mbGFnJjo7IHQnIFwKICAgIC1lICdzOiQ6ICRsdF9jb21waWxlcl9mbGFn
OidgCi0gICAoZXZhbCBlY2hvICJcIlwkYXNfbWU6MTA0MjA6ICRsdF9jb21waWxlXCIiID4mNSkK
KyAgIChldmFsIGVjaG8gIlwiXCRhc19tZToxMDUxMDogJGx0X2NvbXBpbGVcIiIgPiY1KQogICAg
KGV2YWwgIiRsdF9jb21waWxlIiAyPmNvbmZ0ZXN0LmVycikKICAgIGFjX3N0YXR1cz0kPwogICAg
Y2F0IGNvbmZ0ZXN0LmVyciA+JjUKLSAgIGVjaG8gIiRhc19tZToxMDQyNDogXCQ/ID0gJGFjX3N0
YXR1cyIgPiY1CisgICBlY2hvICIkYXNfbWU6MTA1MTQ6IFwkPyA9ICRhY19zdGF0dXMiID4mNQog
ICAgaWYgKGV4aXQgJGFjX3N0YXR1cykgJiYgdGVzdCAtcyAiJGFjX291dGZpbGUiOyB0aGVuCiAg
ICAgICMgVGhlIGNvbXBpbGVyIGNhbiBvbmx5IHdhcm4gYW5kIGlnbm9yZSB0aGUgb3B0aW9uIGlm
IG5vdCByZWNvZ25pemVkCiAgICAgICMgU28gc2F5IG5vIGlmIHRoZXJlIGFyZSB3YXJuaW5ncyBv
dGhlciB0aGFuIHRoZSB1c3VhbCBvdXRwdXQuCkBAIC0xMDUyMiwxMSArMTA2MTIsMTEgQEAKICAg
IC1lICdzOi4qRkxBR1N9XHswLDFcfSA6JiRsdF9jb21waWxlcl9mbGFnIDo7IHQnIFwKICAgIC1l
ICdzOiBbXiBdKmNvbmZ0ZXN0XC46ICRsdF9jb21waWxlcl9mbGFnJjo7IHQnIFwKICAgIC1lICdz
OiQ6ICRsdF9jb21waWxlcl9mbGFnOidgCi0gICAoZXZhbCBlY2hvICJcIlwkYXNfbWU6MTA1MjU6
ICRsdF9jb21waWxlXCIiID4mNSkKKyAgIChldmFsIGVjaG8gIlwiXCRhc19tZToxMDYxNTogJGx0
X2NvbXBpbGVcIiIgPiY1KQogICAgKGV2YWwgIiRsdF9jb21waWxlIiAyPm91dC9jb25mdGVzdC5l
cnIpCiAgICBhY19zdGF0dXM9JD8KICAgIGNhdCBvdXQvY29uZnRlc3QuZXJyID4mNQotICAgZWNo
byAiJGFzX21lOjEwNTI5OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgIGVjaG8gIiRhc19tZTox
MDYxOTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgICBpZiAoZXhpdCAkYWNfc3RhdHVzKSAmJiB0
ZXN0IC1zIG91dC9jb25mdGVzdDIuJGFjX29iamV4dAogICAgdGhlbgogICAgICAjIFRoZSBjb21w
aWxlciBjYW4gb25seSB3YXJuIGFuZCBpZ25vcmUgdGhlIG9wdGlvbiBpZiBub3QgcmVjb2duaXpl
ZApAQCAtMTA1NzcsMTEgKzEwNjY3LDExIEBACiAgICAtZSAnczouKkZMQUdTfVx7MCwxXH0gOiYk
bHRfY29tcGlsZXJfZmxhZyA6OyB0JyBcCiAgICAtZSAnczogW14gXSpjb25mdGVzdFwuOiAkbHRf
Y29tcGlsZXJfZmxhZyY6OyB0JyBcCiAgICAtZSAnczokOiAkbHRfY29tcGlsZXJfZmxhZzonYAot
ICAgKGV2YWwgZWNobyAiXCJcJGFzX21lOjEwNTgwOiAkbHRfY29tcGlsZVwiIiA+JjUpCisgICAo
ZXZhbCBlY2hvICJcIlwkYXNfbWU6MTA2NzA6ICRsdF9jb21waWxlXCIiID4mNSkKICAgIChldmFs
ICIkbHRfY29tcGlsZSIgMj5vdXQvY29uZnRlc3QuZXJyKQogICAgYWNfc3RhdHVzPSQ/CiAgICBj
YXQgb3V0L2NvbmZ0ZXN0LmVyciA+JjUKLSAgIGVjaG8gIiRhc19tZToxMDU4NDogXCQ/ID0gJGFj
X3N0YXR1cyIgPiY1CisgICBlY2hvICIkYXNfbWU6MTA2NzQ6IFwkPyA9ICRhY19zdGF0dXMiID4m
NQogICAgaWYgKGV4aXQgJGFjX3N0YXR1cykgJiYgdGVzdCAtcyBvdXQvY29uZnRlc3QyLiRhY19v
YmpleHQKICAgIHRoZW4KICAgICAgIyBUaGUgY29tcGlsZXIgY2FuIG9ubHkgd2FybiBhbmQgaWdu
b3JlIHRoZSBvcHRpb24gaWYgbm90IHJlY29nbml6ZWQKQEAgLTEwNzIwLDYgKzEwODEwLDcgQEAK
ICAgICBmaQogICAgIHN1cHBvcnRzX2Fub25fdmVyc2lvbmluZz1ubwogICAgIGNhc2UgYCRMRCAt
diAyPiYxYCBpbgorICAgICAgKkdOVVwgZ29sZCopIHN1cHBvcnRzX2Fub25fdmVyc2lvbmluZz15
ZXMgOzsKICAgICAgICpcIFswMV0uKiB8ICpcIDIuWzAtOV0uKiB8ICpcIDIuMTAuKikgOzsgIyBj
YXRjaCB2ZXJzaW9ucyA8IDIuMTEKICAgICAgICpcIDIuMTEuOTMuMC4yXCAqKSBzdXBwb3J0c19h
bm9uX3ZlcnNpb25pbmc9eWVzIDs7ICMgUkg3LjMgLi4uCiAgICAgICAqXCAyLjExLjkyLjAuMTJc
ICopIHN1cHBvcnRzX2Fub25fdmVyc2lvbmluZz15ZXMgOzsgIyBNYW5kcmFrZSA4LjIgLi4uCkBA
IC0xMDgxMSw3ICsxMDkwMiw3IEBACiAgICAgICBhcmNoaXZlX2V4cHN5bV9jbWRzPSdzZWQgInMs
XixfLCIgJGV4cG9ydF9zeW1ib2xzID4kb3V0cHV0X29iamRpci8kc29uYW1lLmV4cHN5bX4kQ0Mg
LXNoYXJlZCAkcGljX2ZsYWcgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9
LWgsJHNvbmFtZSAke3dsfS0tcmV0YWluLXN5bWJvbHMtZmlsZSwkb3V0cHV0X29iamRpci8kc29u
YW1lLmV4cHN5bSAke3dsfS0taW1hZ2UtYmFzZSxgZXhwciAke1JBTkRPTS0kJH0gJSA0MDk2IC8g
MiBcKiAyNjIxNDQgKyAxMzQyMTc3MjgwYCAtbyAkbGliJwogICAgICAgOzsKIAotICAgIGdudSog
fCBsaW51eCogfCB0cGYqIHwgaypic2QqLWdudSkKKyAgICBnbnUqIHwgbGludXgqIHwgdHBmKiB8
IGsqYnNkKi1nbnUgfCBrb3BlbnNvbGFyaXMqLWdudSkKICAgICAgIHRtcF9kaWV0PW5vCiAgICAg
ICBpZiB0ZXN0ICIkaG9zdF9vcyIgPSBsaW51eC1kaWV0bGliYzsgdGhlbgogCWNhc2UgJGNjX2Jh
c2VuYW1lIGluCkBAIC0xMjI3Myw3ICsxMjM2NCw3IEBACiAgIDs7CiAKICMgVGhpcyBtdXN0IGJl
IExpbnV4IEVMRi4KLWxpbnV4KiB8IGsqYnNkKi1nbnUpCitsaW51eCogfCBrKmJzZCotZ251IHwg
a29wZW5zb2xhcmlzKi1nbnUpCiAgIHZlcnNpb25fdHlwZT1saW51eAogICBuZWVkX2xpYl9wcmVm
aXg9bm8KICAgbmVlZF92ZXJzaW9uPW5vCkBAIC0xMjk2MCw3ICsxMzA1MSw3IEBACiAgIGx0X2Rs
dW5rbm93bj0wOyBsdF9kbG5vX3VzY29yZT0xOyBsdF9kbG5lZWRfdXNjb3JlPTIKICAgbHRfc3Rh
dHVzPSRsdF9kbHVua25vd24KICAgY2F0ID4gY29uZnRlc3QuJGFjX2V4dCA8PF9MVF9FT0YKLSNs
aW5lIDEyOTYzICJjb25maWd1cmUiCisjbGluZSAxMzA1NCAiY29uZmlndXJlIgogI2luY2x1ZGUg
ImNvbmZkZWZzLmgiCiAKICNpZiBIQVZFX0RMRkNOX0gKQEAgLTEzMDU2LDcgKzEzMTQ3LDcgQEAK
ICAgbHRfZGx1bmtub3duPTA7IGx0X2Rsbm9fdXNjb3JlPTE7IGx0X2RsbmVlZF91c2NvcmU9Mgog
ICBsdF9zdGF0dXM9JGx0X2RsdW5rbm93bgogICBjYXQgPiBjb25mdGVzdC4kYWNfZXh0IDw8X0xU
X0VPRgotI2xpbmUgMTMwNTkgImNvbmZpZ3VyZSIKKyNsaW5lIDEzMTUwICJjb25maWd1cmUiCiAj
aW5jbHVkZSAiY29uZmRlZnMuaCIKIAogI2lmIEhBVkVfRExGQ05fSApAQCAtMTM2MDgsOCArMTM2
OTksOCBAQAogLi4uIHJlc3Qgb2Ygc3RkZXJyIG91dHB1dCBkZWxldGVkIC4uLgogICAgICAgICAg
MTBxJyBjb25mdGVzdC5lcnIgPmNvbmZ0ZXN0LmVyMQogICAgIGNhdCBjb25mdGVzdC5lcjEgPiY1
Ci0gICAgcm0gLWYgY29uZnRlc3QuZXIxIGNvbmZ0ZXN0LmVycgogICBmaQorICBybSAtZiBjb25m
dGVzdC5lcjEgY29uZnRlc3QuZXJyCiAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJ
TkVOT306IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICB0ZXN0ICRhY19zdGF0dXMgPSAwOyB9CiBk
b25lCkBAIC0xNDUxMyw4ICsxNDYwNCw4IEBACiAuLi4gcmVzdCBvZiBzdGRlcnIgb3V0cHV0IGRl
bGV0ZWQgLi4uCiAgICAgICAgICAxMHEnIGNvbmZ0ZXN0LmVyciA+Y29uZnRlc3QuZXIxCiAgICAg
Y2F0IGNvbmZ0ZXN0LmVyMSA+JjUKLSAgICBybSAtZiBjb25mdGVzdC5lcjEgY29uZnRlc3QuZXJy
CiAgIGZpCisgIHJtIC1mIGNvbmZ0ZXN0LmVyMSBjb25mdGVzdC5lcnIKICAgJGFzX2VjaG8gIiRh
c19tZToke2FzX2xpbmVuby0kTElORU5PfTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIHRlc3Qg
JGFjX3N0YXR1cyA9IDA7IH0KIGRvbmUKQEAgLTE0ODk4LDggKzE0OTg5LDggQEAKIC4uLiByZXN0
IG9mIHN0ZGVyciBvdXRwdXQgZGVsZXRlZCAuLi4KICAgICAgICAgIDEwcScgY29uZnRlc3QuZXJy
ID5jb25mdGVzdC5lcjEKICAgICBjYXQgY29uZnRlc3QuZXIxID4mNQotICAgIHJtIC1mIGNvbmZ0
ZXN0LmVyMSBjb25mdGVzdC5lcnIKICAgZmkKKyAgcm0gLWYgY29uZnRlc3QuZXIxIGNvbmZ0ZXN0
LmVycgogICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJD8gPSAkYWNf
c3RhdHVzIiA+JjUKICAgdGVzdCAkYWNfc3RhdHVzID0gMDsgfQogZG9uZQpAQCAtMTYwMjYsNyAr
MTYxMTcsNyBAQAogICAgICAgICBpbmhlcml0X3JwYXRoX0NYWD15ZXMKICAgICAgICAgOzsKIAot
ICAgICAgbGludXgqIHwgaypic2QqLWdudSkKKyAgICAgIGxpbnV4KiB8IGsqYnNkKi1nbnUgfCBr
b3BlbnNvbGFyaXMqLWdudSkKICAgICAgICAgY2FzZSAkY2NfYmFzZW5hbWUgaW4KICAgICAgICAg
ICBLQ0MqKQogCSAgICAjIEt1Y2sgYW5kIEFzc29jaWF0ZXMsIEluYy4gKEtBSSkgQysrIENvbXBp
bGVyCkBAIC0xNjg1NCw3ICsxNjk0NSw3IEBACiAJICAgIDs7CiAJZXNhYwogCTs7Ci0gICAgICBs
aW51eCogfCBrKmJzZCotZ251KQorICAgICAgbGludXgqIHwgaypic2QqLWdudSB8IGtvcGVuc29s
YXJpcyotZ251KQogCWNhc2UgJGNjX2Jhc2VuYW1lIGluCiAJICBLQ0MqKQogCSAgICAjIEtBSSBD
KysgQ29tcGlsZXIKQEAgLTE3MDQyLDExICsxNzEzMywxMSBAQAogICAgLWUgJ3M6LipGTEFHU31c
ezAsMVx9IDomJGx0X2NvbXBpbGVyX2ZsYWcgOjsgdCcgXAogICAgLWUgJ3M6IFteIF0qY29uZnRl
c3RcLjogJGx0X2NvbXBpbGVyX2ZsYWcmOjsgdCcgXAogICAgLWUgJ3M6JDogJGx0X2NvbXBpbGVy
X2ZsYWc6J2AKLSAgIChldmFsIGVjaG8gIlwiXCRhc19tZToxNzA0NTogJGx0X2NvbXBpbGVcIiIg
PiY1KQorICAgKGV2YWwgZWNobyAiXCJcJGFzX21lOjE3MTM2OiAkbHRfY29tcGlsZVwiIiA+JjUp
CiAgICAoZXZhbCAiJGx0X2NvbXBpbGUiIDI+Y29uZnRlc3QuZXJyKQogICAgYWNfc3RhdHVzPSQ/
CiAgICBjYXQgY29uZnRlc3QuZXJyID4mNQotICAgZWNobyAiJGFzX21lOjE3MDQ5OiBcJD8gPSAk
YWNfc3RhdHVzIiA+JjUKKyAgIGVjaG8gIiRhc19tZToxNzE0MDogXCQ/ID0gJGFjX3N0YXR1cyIg
PiY1CiAgICBpZiAoZXhpdCAkYWNfc3RhdHVzKSAmJiB0ZXN0IC1zICIkYWNfb3V0ZmlsZSI7IHRo
ZW4KICAgICAgIyBUaGUgY29tcGlsZXIgY2FuIG9ubHkgd2FybiBhbmQgaWdub3JlIHRoZSBvcHRp
b24gaWYgbm90IHJlY29nbml6ZWQKICAgICAgIyBTbyBzYXkgbm8gaWYgdGhlcmUgYXJlIHdhcm5p
bmdzIG90aGVyIHRoYW4gdGhlIHVzdWFsIG91dHB1dC4KQEAgLTE3MTQxLDExICsxNzIzMiwxMSBA
QAogICAgLWUgJ3M6LipGTEFHU31cezAsMVx9IDomJGx0X2NvbXBpbGVyX2ZsYWcgOjsgdCcgXAog
ICAgLWUgJ3M6IFteIF0qY29uZnRlc3RcLjogJGx0X2NvbXBpbGVyX2ZsYWcmOjsgdCcgXAogICAg
LWUgJ3M6JDogJGx0X2NvbXBpbGVyX2ZsYWc6J2AKLSAgIChldmFsIGVjaG8gIlwiXCRhc19tZTox
NzE0NDogJGx0X2NvbXBpbGVcIiIgPiY1KQorICAgKGV2YWwgZWNobyAiXCJcJGFzX21lOjE3MjM1
OiAkbHRfY29tcGlsZVwiIiA+JjUpCiAgICAoZXZhbCAiJGx0X2NvbXBpbGUiIDI+b3V0L2NvbmZ0
ZXN0LmVycikKICAgIGFjX3N0YXR1cz0kPwogICAgY2F0IG91dC9jb25mdGVzdC5lcnIgPiY1Ci0g
ICBlY2hvICIkYXNfbWU6MTcxNDg6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAgZWNobyAiJGFz
X21lOjE3MjM5OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgIGlmIChleGl0ICRhY19zdGF0dXMp
ICYmIHRlc3QgLXMgb3V0L2NvbmZ0ZXN0Mi4kYWNfb2JqZXh0CiAgICB0aGVuCiAgICAgICMgVGhl
IGNvbXBpbGVyIGNhbiBvbmx5IHdhcm4gYW5kIGlnbm9yZSB0aGUgb3B0aW9uIGlmIG5vdCByZWNv
Z25pemVkCkBAIC0xNzE5MywxMSArMTcyODQsMTEgQEAKICAgIC1lICdzOi4qRkxBR1N9XHswLDFc
fSA6JiRsdF9jb21waWxlcl9mbGFnIDo7IHQnIFwKICAgIC1lICdzOiBbXiBdKmNvbmZ0ZXN0XC46
ICRsdF9jb21waWxlcl9mbGFnJjo7IHQnIFwKICAgIC1lICdzOiQ6ICRsdF9jb21waWxlcl9mbGFn
OidgCi0gICAoZXZhbCBlY2hvICJcIlwkYXNfbWU6MTcxOTY6ICRsdF9jb21waWxlXCIiID4mNSkK
KyAgIChldmFsIGVjaG8gIlwiXCRhc19tZToxNzI4NzogJGx0X2NvbXBpbGVcIiIgPiY1KQogICAg
KGV2YWwgIiRsdF9jb21waWxlIiAyPm91dC9jb25mdGVzdC5lcnIpCiAgICBhY19zdGF0dXM9JD8K
ICAgIGNhdCBvdXQvY29uZnRlc3QuZXJyID4mNQotICAgZWNobyAiJGFzX21lOjE3MjAwOiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKKyAgIGVjaG8gIiRhc19tZToxNzI5MTogXCQ/ID0gJGFjX3N0YXR1
cyIgPiY1CiAgICBpZiAoZXhpdCAkYWNfc3RhdHVzKSAmJiB0ZXN0IC1zIG91dC9jb25mdGVzdDIu
JGFjX29iamV4dAogICAgdGhlbgogICAgICAjIFRoZSBjb21waWxlciBjYW4gb25seSB3YXJuIGFu
ZCBpZ25vcmUgdGhlIG9wdGlvbiBpZiBub3QgcmVjb2duaXplZApAQCAtMTc3NzEsNyArMTc4NjIs
NyBAQAogICA7OwogCiAjIFRoaXMgbXVzdCBiZSBMaW51eCBFTEYuCi1saW51eCogfCBrKmJzZCot
Z251KQorbGludXgqIHwgaypic2QqLWdudSB8IGtvcGVuc29sYXJpcyotZ251KQogICB2ZXJzaW9u
X3R5cGU9bGludXgKICAgbmVlZF9saWJfcHJlZml4PW5vCiAgIG5lZWRfdmVyc2lvbj1ubwpAQCAt
MTg4NTMsNyArMTg5NDQsNyBAQAogZmkKIGRvbmUKIAotZm9yIGFjX2Z1bmMgaW4gZ2V0b3B0IG1l
bW1vdmUgbWVtc2V0IHNlbGVjdCBzZXRlbnYgc25wcmludGYgc3RyZHVwIHN0cm5jYXNlY21wIHN0
cnRvbCBzdHJ0b3VsIHN0cnRvdWxsCitmb3IgYWNfZnVuYyBpbiBnZXRvcHQgbWVtbW92ZSBtZW1z
ZXQgc2VsZWN0IHNldGVudiBzbnByaW50ZiBzdHJkdXAgc3RybmNhc2VjbXAgc3Ryc3RyIHN0cnRv
bCBzdHJ0b3VsIHN0cnRvdWxsCiBkbyA6CiAgIGFzX2FjX3Zhcj1gJGFzX2VjaG8gImFjX2N2X2Z1
bmNfJGFjX2Z1bmMiIHwgJGFzX3RyX3NoYAogYWNfZm5fY19jaGVja19mdW5jICIkTElORU5PIiAi
JGFjX2Z1bmMiICIkYXNfYWNfdmFyIgpAQCAtMTk0MDYsNiArMTk0OTcsNzIgQEAKIAogZmkKIAor
CQkJYWNfZm5fY19jaGVja19tZW1iZXIgIiRMSU5FTk8iICJzdHJ1Y3QgZGJkYXRlcmVjIiAieWVh
ciIgImFjX2N2X21lbWJlcl9zdHJ1Y3RfZGJkYXRlcmVjX3llYXIiICIjaW5jbHVkZSA8c3liZGIu
aD4KKyIKK2lmIHRlc3QgIngkYWNfY3ZfbWVtYmVyX3N0cnVjdF9kYmRhdGVyZWNfeWVhciIgPSB4
IiJ5ZXM7IHRoZW4gOgorCiskYXNfZWNobyAiI2RlZmluZSBIQVZFX0xJQlNZQkRCX01TTElCIDEi
ID4+Y29uZmRlZnMuaAorCitmaQorCisJCQlvZGJ4X3NhdmVkX2xpYnM9JHtMSUJTfTsgTElCUz0i
IgorCQkJeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBm
b3IgbGlicmFyeSBjb250YWluaW5nIGRnZXR0ZXh0IiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5n
IGZvciBsaWJyYXJ5IGNvbnRhaW5pbmcgZGdldHRleHQuLi4gIiA+JjY7IH0KK2lmIHRlc3QgIiR7
YWNfY3Zfc2VhcmNoX2RnZXR0ZXh0K3NldH0iID0gc2V0OyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAi
KGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgYWNfZnVuY19zZWFyY2hfc2F2ZV9MSUJTPSRMSUJTCitj
YXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRl
ZnMuaC4gICovCisKKy8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2
b2lkIGFuIGVycm9yLgorICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJl
dHVybiB0eXBlIG9mIGEgR0NDCisgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90
b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4g
IkMiCisjZW5kaWYKK2NoYXIgZGdldHRleHQgKCk7CitpbnQKK21haW4gKCkKK3sKK3JldHVybiBk
Z2V0dGV4dCAoKTsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgorZm9yIGFjX2xpYiBpbiAn
JyBpbnRsOyBkbworICBpZiB0ZXN0IC16ICIkYWNfbGliIjsgdGhlbgorICAgIGFjX3Jlcz0ibm9u
ZSByZXF1aXJlZCIKKyAgZWxzZQorICAgIGFjX3Jlcz0tbCRhY19saWIKKyAgICBMSUJTPSItbCRh
Y19saWIgICRhY19mdW5jX3NlYXJjaF9zYXZlX0xJQlMiCisgIGZpCisgIGlmIGFjX2ZuX2NfdHJ5
X2xpbmsgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3Zfc2VhcmNoX2RnZXR0ZXh0PSRhY19yZXMK
K2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICBj
b25mdGVzdCRhY19leGVleHQKKyAgaWYgdGVzdCAiJHthY19jdl9zZWFyY2hfZGdldHRleHQrc2V0
fSIgPSBzZXQ7IHRoZW4gOgorICBicmVhaworZmkKK2RvbmUKK2lmIHRlc3QgIiR7YWNfY3Zfc2Vh
cmNoX2RnZXR0ZXh0K3NldH0iID0gc2V0OyB0aGVuIDoKKworZWxzZQorICBhY19jdl9zZWFyY2hf
ZGdldHRleHQ9bm8KK2ZpCitybSBjb25mdGVzdC4kYWNfZXh0CitMSUJTPSRhY19mdW5jX3NlYXJj
aF9zYXZlX0xJQlMKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306
IHJlc3VsdDogJGFjX2N2X3NlYXJjaF9kZ2V0dGV4dCIgPiY1CiskYXNfZWNobyAiJGFjX2N2X3Nl
YXJjaF9kZ2V0dGV4dCIgPiY2OyB9CithY19yZXM9JGFjX2N2X3NlYXJjaF9kZ2V0dGV4dAoraWYg
dGVzdCAiJGFjX3JlcyIgIT0gbm87IHRoZW4gOgorICB0ZXN0ICIkYWNfcmVzIiA9ICJub25lIHJl
cXVpcmVkIiB8fCBMSUJTPSIkYWNfcmVzICRMSUJTIgorICBMSUJNU1NRTD0iJExJQk1TU1FMICRM
SUJTIgorZmkKKworCQkJTElCUz0ke29kYnhfc2F2ZWRfbGlic30KIAkJOzsKIAkJbXlzcWwpCiAJ
CQlmb3IgYWNfaGVhZGVyIGluIG15c3FsLmgKQEAgLTIwMjc1LDYgKzIwNDMyLDExMCBAQAogCiBm
aQogCisJCQlhc19hY19MaWI9YCRhc19lY2hvICJhY19jdl9saWJfJExJQlNRTElURTMnJ19zcWxp
dGUzX3RhYmxlX2NvbHVtbl9tZXRhZGF0YSIgfCAkYXNfdHJfc2hgCit7ICRhc19lY2hvICIkYXNf
bWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBzcWxpdGUzX3RhYmxlX2NvbHVt
bl9tZXRhZGF0YSBpbiAtbCRMSUJTUUxJVEUzIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZv
ciBzcWxpdGUzX3RhYmxlX2NvbHVtbl9tZXRhZGF0YSBpbiAtbCRMSUJTUUxJVEUzLi4uICIgPiY2
OyB9CitpZiB7IGFzX3Zhcj0kYXNfYWNfTGliOyBldmFsICJ0ZXN0IFwiXCR7JGFzX3ZhcitzZXR9
XCIgPSBzZXQiOyB9OyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UK
KyAgYWNfY2hlY2tfbGliX3NhdmVfTElCUz0kTElCUworTElCUz0iLWwkTElCU1FMSVRFMyAgJExJ
QlMiCitjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQg
Y29uZmRlZnMuaC4gICovCisKKy8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBl
IHRvIGF2b2lkIGFuIGVycm9yLgorICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2gg
dGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCisgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVu
dCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLworI2lmZGVmIF9fY3BsdXNwbHVzCitl
eHRlcm4gIkMiCisjZW5kaWYKK2NoYXIgc3FsaXRlM190YWJsZV9jb2x1bW5fbWV0YWRhdGEgKCk7
CitpbnQKK21haW4gKCkKK3sKK3JldHVybiBzcWxpdGUzX3RhYmxlX2NvbHVtbl9tZXRhZGF0YSAo
KTsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfbGluayAiJExJ
TkVOTyI7IHRoZW4gOgorICBldmFsICIkYXNfYWNfTGliPXllcyIKK2Vsc2UKKyAgZXZhbCAiJGFz
X2FjX0xpYj1ubyIKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2Jq
ZXh0IFwKKyAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorTElCUz0kYWNf
Y2hlY2tfbGliX3NhdmVfTElCUworZmkKK2V2YWwgYWNfcmVzPVwkJGFzX2FjX0xpYgorCSAgICAg
ICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX3Jl
cyIgPiY1CiskYXNfZWNobyAiJGFjX3JlcyIgPiY2OyB9CitldmFsIGFzX3ZhbD1cJCRhc19hY19M
aWIKKyAgIGlmIHRlc3QgIngkYXNfdmFsIiA9IHgiInllczsgdGhlbiA6CisKKyRhc19lY2hvICIj
ZGVmaW5lIEhBVkVfU1FMSVRFM19UQUJMRV9DT0xVTU5fTUVUQURBVEEgMSIgPj5jb25mZGVmcy5o
CisKKworZmkKKworCQkJb2RieF9zYXZlZF9saWJzPSR7TElCU307IExJQlM9IiIKKwkJCXsgJGFz
X2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGxpYnJhcnkg
Y29udGFpbmluZyBkZ2V0dGV4dCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgbGlicmFy
eSBjb250YWluaW5nIGRnZXR0ZXh0Li4uICIgPiY2OyB9CitpZiB0ZXN0ICIke2FjX2N2X3NlYXJj
aF9kZ2V0dGV4dCtzZXR9IiA9IHNldDsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIg
PiY2CitlbHNlCisgIGFjX2Z1bmNfc2VhcmNoX3NhdmVfTElCUz0kTElCUworY2F0IGNvbmZkZWZz
LmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLwor
CisvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJv
ci4KKyAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBv
ZiBhIEdDQworICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxk
IHN0aWxsIGFwcGx5LiAgKi8KKyNpZmRlZiBfX2NwbHVzcGx1cworZXh0ZXJuICJDIgorI2VuZGlm
CitjaGFyIGRnZXR0ZXh0ICgpOworaW50CittYWluICgpCit7CityZXR1cm4gZGdldHRleHQgKCk7
CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2ZvciBhY19saWIgaW4gJycgaW50bDsgZG8K
KyAgaWYgdGVzdCAteiAiJGFjX2xpYiI7IHRoZW4KKyAgICBhY19yZXM9Im5vbmUgcmVxdWlyZWQi
CisgIGVsc2UKKyAgICBhY19yZXM9LWwkYWNfbGliCisgICAgTElCUz0iLWwkYWNfbGliICAkYWNf
ZnVuY19zZWFyY2hfc2F2ZV9MSUJTIgorICBmaQorICBpZiBhY19mbl9jX3RyeV9saW5rICIkTElO
RU5PIjsgdGhlbiA6CisgIGFjX2N2X3NlYXJjaF9kZ2V0dGV4dD0kYWNfcmVzCitmaQorcm0gLWYg
Y29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgY29uZnRlc3QkYWNf
ZXhlZXh0CisgIGlmIHRlc3QgIiR7YWNfY3Zfc2VhcmNoX2RnZXR0ZXh0K3NldH0iID0gc2V0OyB0
aGVuIDoKKyAgYnJlYWsKK2ZpCitkb25lCitpZiB0ZXN0ICIke2FjX2N2X3NlYXJjaF9kZ2V0dGV4
dCtzZXR9IiA9IHNldDsgdGhlbiA6CisKK2Vsc2UKKyAgYWNfY3Zfc2VhcmNoX2RnZXR0ZXh0PW5v
CitmaQorcm0gY29uZnRlc3QuJGFjX2V4dAorTElCUz0kYWNfZnVuY19zZWFyY2hfc2F2ZV9MSUJT
CitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRh
Y19jdl9zZWFyY2hfZGdldHRleHQiID4mNQorJGFzX2VjaG8gIiRhY19jdl9zZWFyY2hfZGdldHRl
eHQiID4mNjsgfQorYWNfcmVzPSRhY19jdl9zZWFyY2hfZGdldHRleHQKK2lmIHRlc3QgIiRhY19y
ZXMiICE9IG5vOyB0aGVuIDoKKyAgdGVzdCAiJGFjX3JlcyIgPSAibm9uZSByZXF1aXJlZCIgfHwg
TElCUz0iJGFjX3JlcyAkTElCUyIKKyAgTElCU1FMSVRFMz0iJExJQlNRTElURTMgJExJQlMiCitm
aQorCisJCQlMSUJTPSR7b2RieF9zYXZlZF9saWJzfQogCQk7OwogCQlzeWJhc2UpCiAJCQlmb3Ig
YWNfaGVhZGVyIGluIGN0cHVibGljLmgKQEAgLTIxMDI5LDggKzIxMjkwLDggQEAKICMgcmVwb3J0
IGFjdHVhbCBpbnB1dCB2YWx1ZXMgb2YgQ09ORklHX0ZJTEVTIGV0Yy4gaW5zdGVhZCBvZiB0aGVp
cgogIyB2YWx1ZXMgYWZ0ZXIgb3B0aW9ucyBoYW5kbGluZy4KIGFjX2xvZz0iCi1UaGlzIGZpbGUg
d2FzIGV4dGVuZGVkIGJ5IG9wZW5kYnggJGFzX21lIDEuNC4zLCB3aGljaCB3YXMKLWdlbmVyYXRl
ZCBieSBHTlUgQXV0b2NvbmYgMi42NC4gIEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdhcworVGhp
cyBmaWxlIHdhcyBleHRlbmRlZCBieSBvcGVuZGJ4ICRhc19tZSAxLjQuNiwgd2hpY2ggd2FzCitn
ZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNjUuICBJbnZvY2F0aW9uIGNvbW1hbmQgbGluZSB3
YXMKIAogICBDT05GSUdfRklMRVMgICAgPSAkQ09ORklHX0ZJTEVTCiAgIENPTkZJR19IRUFERVJT
ICA9ICRDT05GSUdfSEVBREVSUwpAQCAtMjEwNzAsNiArMjEzMzEsNyBAQAogCiAgIC1oLCAtLWhl
bHAgICAgICAgcHJpbnQgdGhpcyBoZWxwLCB0aGVuIGV4aXQKICAgLVYsIC0tdmVyc2lvbiAgICBw
cmludCB2ZXJzaW9uIG51bWJlciBhbmQgY29uZmlndXJhdGlvbiBzZXR0aW5ncywgdGhlbiBleGl0
CisgICAgICAtLWNvbmZpZyAgICAgcHJpbnQgY29uZmlndXJhdGlvbiwgdGhlbiBleGl0CiAgIC1x
LCAtLXF1aWV0LCAtLXNpbGVudAogICAgICAgICAgICAgICAgICAgIGRvIG5vdCBwcmludCBwcm9n
cmVzcyBtZXNzYWdlcwogICAtZCwgLS1kZWJ1ZyAgICAgIGRvbid0IHJlbW92ZSB0ZW1wb3Jhcnkg
ZmlsZXMKQEAgLTIxMDkyLDEwICsyMTM1NCwxMSBAQAogCiBfQUNFT0YKIGNhdCA+PiRDT05GSUdf
U1RBVFVTIDw8X0FDRU9GIHx8IGFjX3dyaXRlX2ZhaWw9MQorYWNfY3NfY29uZmlnPSJgJGFzX2Vj
aG8gIiRhY19jb25maWd1cmVfYXJncyIgfCBzZWQgJ3MvXiAvLzsgcy9bXFwiIlxgXCRdL1xcXFwm
L2cnYCIKIGFjX2NzX3ZlcnNpb249IlxcCi1vcGVuZGJ4IGNvbmZpZy5zdGF0dXMgMS40LjMKLWNv
bmZpZ3VyZWQgYnkgJDAsIGdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi42NCwKLSAgd2l0aCBv
cHRpb25zIFxcImAkYXNfZWNobyAiJGFjX2NvbmZpZ3VyZV9hcmdzIiB8IHNlZCAncy9eIC8vOyBz
L1tcXCIiXGBcJF0vXFxcXCYvZydgXFwiCitvcGVuZGJ4IGNvbmZpZy5zdGF0dXMgMS40LjYKK2Nv
bmZpZ3VyZWQgYnkgJDAsIGdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi42NSwKKyAgd2l0aCBv
cHRpb25zIFxcIlwkYWNfY3NfY29uZmlnXFwiCiAKIENvcHlyaWdodCAoQykgMjAwOSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIFRoaXMgY29uZmlnLnN0YXR1cyBzY3JpcHQgaXMgZnJl
ZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgpAQCAtMjExMzMsNiArMjEz
OTYsOCBAQAogICAgIGFjX2NzX3JlY2hlY2s9OiA7OwogICAtLXZlcnNpb24gfCAtLXZlcnNpbyB8
IC0tdmVyc2kgfCAtLXZlcnMgfCAtLXZlciB8IC0tdmUgfCAtLXYgfCAtViApCiAgICAgJGFzX2Vj
aG8gIiRhY19jc192ZXJzaW9uIjsgZXhpdCA7OworICAtLWNvbmZpZyB8IC0tY29uZmkgfCAtLWNv
bmYgfCAtLWNvbiB8IC0tY28gfCAtLWMgKQorICAgICRhc19lY2hvICIkYWNfY3NfY29uZmlnIjsg
ZXhpdCA7OwogICAtLWRlYnVnIHwgLS1kZWJ1IHwgLS1kZWIgfCAtLWRlIHwgLS1kIHwgLWQgKQog
ICAgIGRlYnVnPTogOzsKICAgLS1maWxlIHwgLS1maWwgfCAtLWZpIHwgLS1mICkKQEAgLTIxNzAy
LDcgKzIxOTY3LDcgQEAKIHQgZGVsaW0KIDpubAogaAotcy9cKC5cezE0OFx9XCkuKi9cMS8KK3Mv
XCguXHsxNDhcfVwpLi4qL1wxLwogdCBtb3JlMQogcy9bIlxcXS9cXCYvZzsgcy9eLyIvOyBzLyQv
XFxuIlxcLwogcApAQCAtMjE3MTYsNyArMjE5ODEsNyBAQAogdCBubAogOmRlbGltCiBoCi1zL1wo
Llx7MTQ4XH1cKS4qL1wxLworcy9cKC5cezE0OFx9XCkuLiovXDEvCiB0IG1vcmUyCiBzL1siXFxd
L1xcJi9nOyBzL14vIi87IHMvJC8iLwogcApkaWZmIC11ciBvcGVuZGJ4Lm9yaWcvY29uZmlndXJl
LmFjIG9wZW5kYngvY29uZmlndXJlLmFjCi0tLSBvcGVuZGJ4Lm9yaWcvY29uZmlndXJlLmFjCTIw
MjMtMDUtMzAgMjA6Mjc6NDIuNTc0Mzg5MDUyICswMzAwCisrKyBvcGVuZGJ4L2NvbmZpZ3VyZS5h
YwkyMDEyLTA2LTExIDAxOjMyOjA4LjAwMDAwMDAwMCArMDQwMApAQCAtMSw4ICsxLDggQEAKICMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0qLSBBdXRvY29u
ZiAtKi0KICMgUHJvY2VzcyB0aGlzIGZpbGUgd2l0aCBhdXRvY29uZiB0byBwcm9kdWNlIGEgY29u
ZmlndXJlIHNjcmlwdC4KIAotQUNfUFJFUkVRKDIuNjQpCi1BQ19JTklUKFtvcGVuZGJ4XSxbMS40
LjNdLFtodHRwOi8vYnVncy5saW51eG5ldHdvcmtzLmRlL10pCitBQ19QUkVSRVEoMi42MSkKK0FD
X0lOSVQoW29wZW5kYnhdLFsxLjQuNl0sW2h0dHA6Ly9idWdzLmxpbnV4bmV0d29ya3MuZGUvXSkK
IEFDX0NPTkZJR19TUkNESVIoW2NvbmZpZy5oLmluXSkKIEFDX0NPTkZJR19NQUNST19ESVIoW200
XSkKIEFDX0NPTkZJR19IRUFERVJTKFtjb25maWcuaF0pCkBAIC03OSw3ICs3OSw3IEBACiBBQ19G
VU5DX1JFQUxMT0MKIEFDX0ZVTkNfU1RSVE9ECiBBQ19GVU5DX1NUUkZUSU1FCi1BQ19DSEVDS19G
VU5DUyhbZ2V0b3B0IG1lbW1vdmUgbWVtc2V0IHNlbGVjdCBzZXRlbnYgc25wcmludGYgc3RyZHVw
IHN0cm5jYXNlY21wIHN0cnRvbCBzdHJ0b3VsIHN0cnRvdWxsXSkKK0FDX0NIRUNLX0ZVTkNTKFtn
ZXRvcHQgbWVtbW92ZSBtZW1zZXQgc2VsZWN0IHNldGVudiBzbnByaW50ZiBzdHJkdXAgc3RybmNh
c2VjbXAgc3Ryc3RyIHN0cnRvbCBzdHJ0b3VsIHN0cnRvdWxsXSkKIAogCiAjIENoZWNrcyBmb3Ig
YWRkaXRpb25hbCBsaWJyYXJpZXMKQEAgLTE2Nyw2ICsxNjcsMTAgQEAKIAkJCQlbQUNfREVGSU5F
KFtIQVZFX0xJQlNZQkRCXSwgMSwgW0hhdmUgLWxzeWJkYl0pIExJQk1TU1FMPSJzeWJkYiJdLAog
CQkJCVtBQ19NU0dfRVJST1IoW21zc3FsIGxpYnJhcnkgKGxpYnN5YmRiKSBub3QgZm91bmRdKV0K
IAkJCSkKKwkJCUFDX0NIRUNLX01FTUJFUihbc3RydWN0IGRiZGF0ZXJlYy55ZWFyXSwgW0FDX0RF
RklORShbSEFWRV9MSUJTWUJEQl9NU0xJQl0sIDEsIFtIYXZlIG1zbGliIHR5cGUgb2YgInN0cnVj
dCBkYmRhdGVyZWMiXSldLCBbXSwgW1sjaW5jbHVkZSA8c3liZGIuaD5dXSkKKwkJCW9kYnhfc2F2
ZWRfbGlicz0ke0xJQlN9OyBMSUJTPSIiCisJCQlBQ19TRUFSQ0hfTElCUyhbZGdldHRleHRdLCBb
aW50bF0sIFtMSUJNU1NRTD0iJExJQk1TU1FMICRMSUJTIl0pCisJCQlMSUJTPSR7b2RieF9zYXZl
ZF9saWJzfQogCQk7OwogCQlteXNxbCkKIAkJCUFDX0NIRUNLX0hFQURFUlMoW215c3FsLmhdLCAs
IFtBQ19NU0dfRVJST1IoW215c3FsIGhlYWRlciAobXlzcWwuaCkgbm90IGZvdW5kXSldLCBbCkBA
IC0zMTksNiArMzIzLDEzIEBACiAJCQkJWyRMSUJTUUxJVEUzXSwgW3NxbGl0ZTNfcHJlcGFyZV92
Ml0sCiAJCQkJW0FDX0RFRklORShbSEFWRV9TUUxJVEUzX1BSRVBBUkVfVjJdLCAxLCBbRGVmaW5l
IHRvIDEgaWYgeW91IGhhdmUgc3FsaXRlM19wcmVwYXJlX3YyXSldCiAJCQkpCisJCQlBQ19DSEVD
S19MSUIoCisJCQkJWyRMSUJTUUxJVEUzXSwgW3NxbGl0ZTNfdGFibGVfY29sdW1uX21ldGFkYXRh
XSwKKwkJCQlbQUNfREVGSU5FKFtIQVZFX1NRTElURTNfVEFCTEVfQ09MVU1OX01FVEFEQVRBXSwg
MSwgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHNxbGl0ZTNfdGFibGVfY29sdW1uX21ldGFkYXRh
XSldCisJCQkpCisJCQlvZGJ4X3NhdmVkX2xpYnM9JHtMSUJTfTsgTElCUz0iIgorCQkJQUNfU0VB
UkNIX0xJQlMoW2RnZXR0ZXh0XSwgW2ludGxdLCBbTElCU1FMSVRFMz0iJExJQlNRTElURTMgJExJ
QlMiXSkKKwkJCUxJQlM9JHtvZGJ4X3NhdmVkX2xpYnN9CiAJCTs7CiAJCXN5YmFzZSkKIAkJCUFD
X0NIRUNLX0hFQURFUlMoW2N0cHVibGljLmhdLCAsIFtBQ19NU0dfRVJST1IoW3N5YmFzZSBoZWFk
ZXIgKGN0cHVibGljLmgpIG5vdCBmb3VuZF0pXSkKZGlmZiAtdXIgb3BlbmRieC5vcmlnL2RlYmlh
bi9jaGFuZ2Vsb2cgb3BlbmRieC9kZWJpYW4vY2hhbmdlbG9nCi0tLSBvcGVuZGJ4Lm9yaWcvZGVi
aWFuL2NoYW5nZWxvZwkyMDIzLTA1LTMwIDIwOjI3OjQyLjU3NDM4OTA1MiArMDMwMAorKysgb3Bl
bmRieC9kZWJpYW4vY2hhbmdlbG9nCTIwMTItMDYtMTEgMDE6MzM6MDQuMDAwMDAwMDAwICswNDAw
CkBAIC0xLDMgKzEsMzAgQEAKK2xpYm9wZW5kYnggKDEuNC42LTEpIHVuc3RhYmxlOyB1cmdlbmN5
PWxvdworCisgICogTmV3IHVwc3RyZWFtIHZlcnNpb24gKHN0YWJsZSB2ZXJzaW9uKQorICAqIEZp
eGVkIGJ1aWxkIHJlcXVpcmVtZW50cyBmb3IgVWJ1bnR1CisKKyAtLSBOb3JiZXJ0IFNlbmRldHpr
eSA8bm9yYmVydEBsaW51eG5ldHdvcmtzLmRlPiAgU2F0LCAwNSBNYXkgMjAxMiAwMDowMDowMCAr
MDEwMAorCitsaWJvcGVuZGJ4ICgxLjQuNS0xKSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KKwor
ICAqIE5ldyB1cHN0cmVhbSB2ZXJzaW9uIChzdGFibGUgdmVyc2lvbikKKyAgKiBGaXhlZCBidWls
ZCByZXF1aXJlbWVudHMKKyAgKiBDaGFuZ2VkIGRlYmhlbHBlciBjb21wYXRpYmlsaXR5IGxldmVs
IHRvIDcKKworIC0tIE5vcmJlcnQgU2VuZGV0emt5IDxub3JiZXJ0QGxpbnV4bmV0d29ya3MuZGU+
ICBGcmksIDI1IERlYyAyMDA5IDAwOjAwOjAwICswMTAwCisKK2xpYm9wZW5kYnggKDEuNC40LTEp
IHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogTmV3IHVwc3RyZWFtIHZlcnNpb24gKHN0
YWJsZSB2ZXJzaW9uKQorCisgLS0gTm9yYmVydCBTZW5kZXR6a3kgPG5vcmJlcnRAbGludXhuZXR3
b3Jrcy5kZT4gIEZyaSwgMDcgQXVnIDIwMDkgMDA6MDA6MDAgKzAxMDAKKworbGlib3BlbmRieCAo
MS40LjMtMSkgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBOZXcgdXBzdHJlYW0gdmVy
c2lvbiAoc3RhYmxlIHZlcnNpb24pCisKKyAtLSBOb3JiZXJ0IFNlbmRldHpreSA8bm9yYmVydEBs
aW51eG5ldHdvcmtzLmRlPiAgRnJpLCAwNyBBdWcgMjAwOSAwMDowMDowMCArMDEwMAorCiBsaWJv
cGVuZGJ4ICgxLjQuMi0xKSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KIAogICAqIE5ldyB1cHN0
cmVhbSB2ZXJzaW9uIChzdGFibGUgdmVyc2lvbikKZGlmZiAtdXIgb3BlbmRieC5vcmlnL2RlYmlh
bi9jb21wYXQgb3BlbmRieC9kZWJpYW4vY29tcGF0Ci0tLSBvcGVuZGJ4Lm9yaWcvZGViaWFuL2Nv
bXBhdAkyMDIzLTA1LTMwIDIwOjI3OjQyLjU3NDM4OTA1MiArMDMwMAorKysgb3BlbmRieC9kZWJp
YW4vY29tcGF0CTIwMTAtMDgtMDEgMDY6MDg6NDIuMDAwMDAwMDAwICswNDAwCkBAIC0xICsxIEBA
Ci00Cis3CmRpZmYgLXVyIG9wZW5kYngub3JpZy9kZWJpYW4vY29udHJvbCBvcGVuZGJ4L2RlYmlh
bi9jb250cm9sCi0tLSBvcGVuZGJ4Lm9yaWcvZGViaWFuL2NvbnRyb2wJMjAyMy0wNS0zMCAyMDoy
Nzo0Mi41NzQzODkwNTIgKzAzMDAKKysrIG9wZW5kYngvZGViaWFuL2NvbnRyb2wJMjAxMi0wNS0w
NSAxNDoxMzozOC4wMDAwMDAwMDAgKzA0MDAKQEAgLTEsNyArMSw3IEBACiBTb3VyY2U6IGxpYm9w
ZW5kYngKIFByaW9yaXR5OiBvcHRpb25hbAogTWFpbnRhaW5lcjogTm9yYmVydCBTZW5kZXR6a3kg
PG5vcmJlcnRAbGludXhuZXR3b3Jrcy5kZT4KLUJ1aWxkLURlcGVuZHM6IGF1dG9jb25mLCBhdXRv
bWFrZSwgYXV0b3Rvb2xzLWRldiwgZGViaGVscGVyICg+PSA0LjAuMCksIGxpYnRvb2wsIGxpYm15
c3FsY2xpZW50LWRldiwgbGlicHEtZGV2LCBsaWJzcWxpdGUwLWRldiwgbGlic3FsaXRlMy1kZXYs
IGZpcmViaXJkMi1kZXYgfCBmaXJlYmlyZDIuMC1kZXYsIGZyZWV0ZHMtZGV2LCB1bml4b2RiYy1k
ZXYgfCBsaWJpb2RiYzItZGV2CitCdWlsZC1EZXBlbmRzOiBhdXRvY29uZiwgYXV0b21ha2UsIGF1
dG90b29scy1kZXYsIGRlYmhlbHBlciAoPj0gNC4wLjApLCBsaWJ0b29sLCBsaWJteXNxbGNsaWVu
dC1kZXYsIGxpYnBxLWRldiwgbGlic3FsaXRlMC1kZXYsIGxpYnNxbGl0ZTMtZGV2LCBmaXJlYmly
ZDIuNS1kZXYgfCBmaXJlYmlyZDIuMS1kZXYgfCBmaXJlYmlyZDIuMC1kZXYgfCBmaXJlYmlyZDIt
ZGV2IHwgZmlyZWJpcmQxLjUtZGV2LCBmcmVldGRzLWRldiwgdW5peG9kYmMtZGV2IHwgbGliaW9k
YmMyLWRldiwgbGlicmVhZGxpbmUtZGV2LCBsaWJuY3Vyc2VzLWRldiB8IGxpYm5jdXJzZXM1LWRl
diwgZG9jYm9vazJ4LCBkb3h5Z2VuCiBCdWlsZC1Db25mbGljdHM6IGF1dG9jb25mMi4xMywgYXV0
b21ha2UxLjQKIFN0YW5kYXJkcy1WZXJzaW9uOiAzLjcuMy4wCiBTZWN0aW9uOiBsaWJzCmRpZmYg
LXVyIG9wZW5kYngub3JpZy9kb2MvTWFrZWZpbGUuaW4gb3BlbmRieC9kb2MvTWFrZWZpbGUuaW4K
LS0tIG9wZW5kYngub3JpZy9kb2MvTWFrZWZpbGUuaW4JMjAyMy0wNS0zMCAyMDoyNzo0Mi41NzUz
ODkwNTQgKzAzMDAKKysrIG9wZW5kYngvZG9jL01ha2VmaWxlLmluCTIwMTItMDYtMTEgMDE6MzM6
NTMuMDAwMDAwMDAwICswNDAwCkBAIC0xLDQgKzEsNCBAQAotIyBNYWtlZmlsZS5pbiBnZW5lcmF0
ZWQgYnkgYXV0b21ha2UgMS4xMSBmcm9tIE1ha2VmaWxlLmFtLgorIyBNYWtlZmlsZS5pbiBnZW5l
cmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCiAjIEBjb25maWd1cmVf
aW5wdXRACiAKICMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAx
OTk5LCAyMDAwLCAyMDAxLCAyMDAyLApkaWZmIC11ciBvcGVuZGJ4Lm9yaWcvZG9jL29wZW5kYngu
ZW4ueG1sIG9wZW5kYngvZG9jL29wZW5kYnguZW4ueG1sCi0tLSBvcGVuZGJ4Lm9yaWcvZG9jL29w
ZW5kYnguZW4ueG1sCTIwMjMtMDUtMzAgMjA6Mjc6NDIuNTc2Mzg5MDU2ICswMzAwCisrKyBvcGVu
ZGJ4L2RvYy9vcGVuZGJ4LmVuLnhtbAkyMDEwLTA4LTAxIDA2OjA4OjQxLjAwMDAwMDAwMCArMDQw
MApAQCAtMzQ4LDcgKzM0OCw3IEBACiAJCQk8ZnVuY3N5bm9wc2lzaW5mbz4jaW5jbHVkZSAmbHQ7
b3BlbmRieC9hcGkuaCZndDs8L2Z1bmNzeW5vcHNpc2luZm8+CiAKIAkJCTxmdW5jcHJvdG90eXBl
PgotCQkJCTxmdW5jZGVmPmNoYXIqIDxmdW5jdGlvbj5vZGJ4X2NvbHVtbl90eXBlPC9mdW5jdGlv
bj48L2Z1bmNkZWY+CisJCQkJPGZ1bmNkZWY+aW50IDxmdW5jdGlvbj5vZGJ4X2NvbHVtbl90eXBl
PC9mdW5jdGlvbj48L2Z1bmNkZWY+CiAJCQkJPHBhcmFtZGVmPm9kYnhfcmVzdWx0X3QqIDxwYXJh
bWV0ZXI+cmVzdWx0PC9wYXJhbWV0ZXI+PC9wYXJhbWRlZj4KIAkJCQk8cGFyYW1kZWY+dW5zaWdu
ZWQgbG9uZyA8cGFyYW1ldGVyPnBvczwvcGFyYW1ldGVyPjwvcGFyYW1kZWY+CiAJCQk8L2Z1bmNw
cm90b3R5cGU+CkBAIC02NjgsNyArNjY4LDcgQEAKIAkJCQk8cGFyYW1kZWY+Y29uc3QgY2hhciog
PHBhcmFtZXRlcj5mcm9tPC9wYXJhbWV0ZXI+PC9wYXJhbWRlZj4KIAkJCQk8cGFyYW1kZWY+dW5z
aWduZWQgbG9uZyA8cGFyYW1ldGVyPmZyb21sZW48L3BhcmFtZXRlcj48L3BhcmFtZGVmPgogCQkJ
CTxwYXJhbWRlZj5jaGFyKiA8cGFyYW1ldGVyPnRvPC9wYXJhbWV0ZXI+PC9wYXJhbWRlZj4KLQkJ
CQk8cGFyYW1kZWY+dW5zaWduZWQgbG9uZyA8cGFyYW1ldGVyPnRvbGVuPC9wYXJhbWV0ZXI+PC9w
YXJhbWRlZj4KKwkJCQk8cGFyYW1kZWY+dW5zaWduZWQgbG9uZyogPHBhcmFtZXRlcj50b2xlbjwv
cGFyYW1ldGVyPjwvcGFyYW1kZWY+CiAJCQk8L2Z1bmNwcm90b3R5cGU+CiAKIAkJPC9mdW5jc3lu
b3BzaXM+CmRpZmYgLXVyIG9wZW5kYngub3JpZy9saWIvTWFrZWZpbGUuaW4gb3BlbmRieC9saWIv
TWFrZWZpbGUuaW4KLS0tIG9wZW5kYngub3JpZy9saWIvTWFrZWZpbGUuaW4JMjAyMy0wNS0zMCAy
MDoyNzo0Mi41NzYzODkwNTYgKzAzMDAKKysrIG9wZW5kYngvbGliL01ha2VmaWxlLmluCTIwMTIt
MDYtMTEgMDE6MzM6NTMuMDAwMDAwMDAwICswNDAwCkBAIC0xLDQgKzEsNCBAQAotIyBNYWtlZmls
ZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMSBmcm9tIE1ha2VmaWxlLmFtLgorIyBNYWtl
ZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCiAj
IEBjb25maWd1cmVfaW5wdXRACiAKICMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAx
OTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLApkaWZmIC11ciBvcGVuZGJ4Lm9yaWcv
bGliL29kYnguYyBvcGVuZGJ4L2xpYi9vZGJ4LmMKLS0tIG9wZW5kYngub3JpZy9saWIvb2RieC5j
CTIwMjMtMDUtMzAgMjA6Mjc6NDIuNTc2Mzg5MDU2ICswMzAwCisrKyBvcGVuZGJ4L2xpYi9vZGJ4
LmMJMjAxMi0wNi0xMSAwMToxNTo0My4wMDAwMDAwMDAgKzA0MDAKQEAgLTExMSw3ICsxMTEsNyBA
QAogCiAKIAotLyogRGVwcmljYXRlZDogb2RieF9iaW5kX3NpbXBsZSgpICovCisvKiBEZXByZWNh
dGVkOiBvZGJ4X2JpbmRfc2ltcGxlKCkgKi8KIAogaW50IG9kYnhfYmluZF9zaW1wbGUoIG9kYnhf
dCogaGFuZGxlLCBjb25zdCBjaGFyKiBkYXRhYmFzZSwgY29uc3QgY2hhciogdXNlcm5hbWUsIGNv
bnN0IGNoYXIqIHBhc3N3b3JkICkKIHsKQEAgLTI0MSw3ICsyNDEsNyBAQAogCQlyZXR1cm4gZGdl
dHRleHQoICJvcGVuZGJ4Iiwgb2RieF9lcnJtc2dbT0RCWF9FUlJfSEFORExFXSApOwogCX0KIAot
CWlmKCBlcnJvciA8PSBPREJYX0VSUl9TVUNDRVNTICYmIGVycm9yID4gLU9EQlhfTUFYX0VSUk5P
ICkKKwlpZiggZXJyb3IgPD0gT0RCWF9FUlJfU1VDQ0VTUyAmJiBlcnJvciA+PSAtT0RCWF9NQVhf
RVJSTk8gKQogCXsKIAkJcmV0dXJuIGRnZXR0ZXh0KCAib3BlbmRieCIsIG9kYnhfZXJybXNnWy1l
cnJvcl0gKTsKIAl9CkBAIC0zNDUsNiArMzQ1LDEwIEBACiAJCXsKIAkJCWlmKCAqcmVzdWx0ICkg
eyAoKnJlc3VsdCktPmhhbmRsZSA9IGhhbmRsZTsgfQogCQl9CisJCWVsc2UKKwkJeworCQkJKnJl
c3VsdCA9IE5VTEw7CisJCX0KIAogCQlyZXR1cm4gZXJyOwogCX0KZGlmZiAtdXIgb3BlbmRieC5v
cmlnL2xpYi9vZGJ4LmNwcCBvcGVuZGJ4L2xpYi9vZGJ4LmNwcAotLS0gb3BlbmRieC5vcmlnL2xp
Yi9vZGJ4LmNwcAkyMDIzLTA1LTMwIDIwOjI3OjQyLjU3NjM4OTA1NiArMDMwMAorKysgb3BlbmRi
eC9saWIvb2RieC5jcHAJMjAxMC0wOC0wMSAwNjowODo0MS4wMDAwMDAwMDAgKzA0MDAKQEAgLTU0
LDggKzU0LDYgQEAKIAkqICBPcGVuREJYIGxhcmdlIG9iamVjdCBpbnRlcmZhY2UKIAkqLwogCi0K
LQogCUxvYjo6TG9iKCBMb2JfSWZhY2UqIGltcGwgKSB0aHJvdyggc3RkOjpleGNlcHRpb24gKQog
CXsKIAkJbV9pbXBsID0gaW1wbDsKQEAgLTY4LDMzICs2NiwyNSBAQAogCiAJTG9iOjpMb2IoIGNv
bnN0IExvYiYgcmVmICkgdGhyb3coKQogCXsKLQkJaWYoIC0tKCptX3JlZikgPT0gMCApCisJCW1f
aW1wbCA9IHJlZi5tX2ltcGw7CisJCW1fcmVmID0gcmVmLm1fcmVmOworCisJCWlmKCBtX3JlZiA9
PSBOVUxMICkKIAkJewotCQkJdHJ5Ci0JCQl7Ci0JCQkJZGVsZXRlIG1faW1wbDsKLQkJCQlkZWxl
dGUgbV9yZWY7Ci0JCQl9Ci0JCQljYXRjaCggc3RkOjpleGNlcHRpb24mIGUgKSB7fQorCQkJbV9y
ZWYgPSBuZXcgaW50OworCQkJKm1fcmVmID0gMDsKIAkJfQogCi0JCW1faW1wbCA9IHJlZi5tX2lt
cGw7Ci0JCW1fcmVmID0gcmVmLm1fcmVmOwogCQkrKygqbV9yZWYpOwogCX0KIAogCi0KIAlMb2I6
On5Mb2IoKSB0aHJvdygpCiAJewotCQlpZiggLS0oKm1fcmVmKSA9PSAwICkKKwkJaWYoIG1fcmVm
ICE9IE5VTEwgJiYgLS0oKm1fcmVmKSA9PSAwICkKIAkJewotCQkJdHJ5Ci0JCQl7CiAJCQkJZGVs
ZXRlIG1faW1wbDsKIAkJCQlkZWxldGUgbV9yZWY7Ci0JCQl9Ci0JCQljYXRjaCggc3RkOjpleGNl
cHRpb24mIGUgKSB7fQogCQl9CiAJfQogCkBAIC0xMDIsNyArOTIsMjIgQEAKIAogCUxvYiYgTG9i
OjpvcGVyYXRvcj0oIGNvbnN0IExvYiYgcmVmICkgdGhyb3coKQogCXsKLQkJaWYoIHRoaXMgIT0g
JnJlZiApIHsgTG9iKCByZWYgKTsgfQorCQlpZiggbV9yZWYgIT0gTlVMTCAmJiAtLSgqbV9yZWYp
ID09IDAgKQorCQl7CisJCQlkZWxldGUgbV9pbXBsOworCQkJZGVsZXRlIG1fcmVmOworCQl9CisK
KwkJbV9pbXBsID0gcmVmLm1faW1wbDsKKwkJbV9yZWYgPSByZWYubV9yZWY7CisKKwkJaWYoIG1f
cmVmID09IE5VTEwgKQorCQl7CisJCQltX3JlZiA9IG5ldyBpbnQ7CisJCQkqbV9yZWYgPSAwOwor
CQl9CisKKwkJKysoKm1fcmVmKTsKIAogCQlyZXR1cm4gKnRoaXM7CiAJfQpAQCAtMTUwLDE4ICsx
NTUsMTUgQEAKIAogCVJlc3VsdDo6UmVzdWx0KCBjb25zdCBSZXN1bHQmIHJlZiApIHRocm93KCkK
IAl7Ci0JCWlmKCAtLSgqbV9yZWYpID09IDAgKQorCQltX2ltcGwgPSByZWYubV9pbXBsOworCQlt
X3JlZiA9IHJlZi5tX3JlZjsKKworCQlpZiggbV9yZWYgPT0gTlVMTCApCiAJCXsKLQkJCXRyeQot
CQkJewotCQkJCWRlbGV0ZSBtX2ltcGw7Ci0JCQkJZGVsZXRlIG1fcmVmOwotCQkJfQotCQkJY2F0
Y2goIHN0ZDo6ZXhjZXB0aW9uJiBlICkge30KKwkJCW1fcmVmID0gbmV3IGludDsKKwkJCSptX3Jl
ZiA9IDA7CiAJCX0KIAotCQltX2ltcGwgPSByZWYubV9pbXBsOwotCQltX3JlZiA9IHJlZi5tX3Jl
ZjsKIAkJKysoKm1fcmVmKTsKIAl9CiAKQEAgLTE2OSwxNCArMTcxLDEwIEBACiAKIAlSZXN1bHQ6
On5SZXN1bHQoKSB0aHJvdygpCiAJewotCQlpZiggLS0oKm1fcmVmKSA9PSAwICkKKwkJaWYoIG1f
cmVmICE9IE5VTEwgJiYgLS0oKm1fcmVmKSA9PSAwICkKIAkJewotCQkJdHJ5Ci0JCQl7Ci0JCQkJ
ZGVsZXRlIG1faW1wbDsKLQkJCQlkZWxldGUgbV9yZWY7Ci0JCQl9Ci0JCQljYXRjaCggc3RkOjpl
eGNlcHRpb24mIGUgKSB7fQorCQkJZGVsZXRlIG1faW1wbDsKKwkJCWRlbGV0ZSBtX3JlZjsKIAkJ
fQogCX0KIApAQCAtMTg0LDcgKzE4MiwyMiBAQAogCiAJUmVzdWx0JiBSZXN1bHQ6Om9wZXJhdG9y
PSggY29uc3QgUmVzdWx0JiByZWYgKSB0aHJvdygpCiAJewotCQlpZiggdGhpcyAhPSAmcmVmICkg
eyBSZXN1bHQoIHJlZiApOyB9CisJCWlmKCBtX3JlZiAhPSBOVUxMICYmIC0tKCptX3JlZikgPT0g
MCApCisJCXsKKwkJCWRlbGV0ZSBtX2ltcGw7CisJCQlkZWxldGUgbV9yZWY7CisJCX0KKworCQlt
X2ltcGwgPSByZWYubV9pbXBsOworCQltX3JlZiA9IHJlZi5tX3JlZjsKKworCQlpZiggbV9yZWYg
PT0gTlVMTCApCisJCXsKKwkJCW1fcmVmID0gbmV3IGludDsKKwkJCSptX3JlZiA9IDA7CisJCX0K
KworCQkrKygqbV9yZWYpOwogCiAJCXJldHVybiAqdGhpczsKIAl9CkBAIC0yODcsMTggKzMwMCwx
NSBAQAogCiAJU3RtdDo6U3RtdCggY29uc3QgU3RtdCYgcmVmICkgdGhyb3coKQogCXsKLQkJaWYo
IC0tKCptX3JlZikgPT0gMCApCisJCW1faW1wbCA9IHJlZi5tX2ltcGw7CisJCW1fcmVmID0gcmVm
Lm1fcmVmOworCisJCWlmKCBtX3JlZiA9PSBOVUxMICkKIAkJewotCQkJdHJ5Ci0JCQl7Ci0JCQkJ
ZGVsZXRlIG1faW1wbDsKLQkJCQlkZWxldGUgbV9yZWY7Ci0JCQl9Ci0JCQljYXRjaCggc3RkOjpl
eGNlcHRpb24mIGUgKSB7fQorCQkJbV9yZWYgPSBuZXcgaW50OworCQkJKm1fcmVmID0gMDsKIAkJ
fQogCi0JCW1faW1wbCA9IHJlZi5tX2ltcGw7Ci0JCW1fcmVmID0gcmVmLm1fcmVmOwogCQkrKygq
bV9yZWYpOwogCX0KIApAQCAtMzA2LDE0ICszMTYsMTAgQEAKIAogCVN0bXQ6On5TdG10KCkgdGhy
b3coKQogCXsKLQkJaWYoIC0tKCptX3JlZikgPT0gMCApCisJCWlmKCBtX3JlZiAhPSBOVUxMICYm
IC0tKCptX3JlZikgPT0gMCApCiAJCXsKLQkJCXRyeQotCQkJewotCQkJCWRlbGV0ZSBtX2ltcGw7
Ci0JCQkJZGVsZXRlIG1fcmVmOwotCQkJfQotCQkJY2F0Y2goIHN0ZDo6ZXhjZXB0aW9uJiBlICkg
e30KKwkJCWRlbGV0ZSBtX2ltcGw7CisJCQlkZWxldGUgbV9yZWY7CiAJCX0KIAl9CiAKQEAgLTMy
MSw3ICszMjcsMjIgQEAKIAogCVN0bXQmIFN0bXQ6Om9wZXJhdG9yPSggY29uc3QgU3RtdCYgcmVm
ICkgdGhyb3coKQogCXsKLQkJaWYoIHRoaXMgIT0gJnJlZiApIHsgU3RtdCggcmVmICk7IH0KKwkJ
aWYoIG1fcmVmICE9IE5VTEwgJiYgLS0oKm1fcmVmKSA9PSAwICkKKwkJeworCQkJZGVsZXRlIG1f
aW1wbDsKKwkJCWRlbGV0ZSBtX3JlZjsKKwkJfQorCisJCW1faW1wbCA9IHJlZi5tX2ltcGw7CisJ
CW1fcmVmID0gcmVmLm1fcmVmOworCisJCWlmKCBtX3JlZiA9PSBOVUxMICkKKwkJeworCQkJbV9y
ZWYgPSBuZXcgaW50OworCQkJKm1fcmVmID0gMDsKKwkJfQorCisJCSsrKCptX3JlZik7CiAKIAkJ
cmV0dXJuICp0aGlzOwogCX0KQEAgLTM4NCwyMCArNDA1LDE2IEBACiAKIAlDb25uOjpDb25uKCBj
b25zdCBDb25uJiByZWYgKSB0aHJvdygpCiAJewotCQlpZiggbV9yZWYgIT0gTlVMTCAmJiAtLSgq
bV9yZWYpID09IDAgKQotCQl7Ci0JCQl0cnkKLQkJCXsKLQkJCQlkZWxldGUgbV9pbXBsOwotCQkJ
CWRlbGV0ZSBtX3JlZjsKLQkJCX0KLQkJCWNhdGNoKCBzdGQ6OmV4Y2VwdGlvbiYgZSApIHt9Ci0J
CX0KLQogCQltX2ltcGwgPSByZWYubV9pbXBsOwogCQltX3JlZiA9IHJlZi5tX3JlZjsKIAotCQlp
ZiggbV9yZWYgIT0gTlVMTCApIHsgKysoKm1fcmVmKTsgfQorCQlpZiggbV9yZWYgPT0gTlVMTCAp
CisJCXsKKwkJCW1fcmVmID0gbmV3IGludDsKKwkJCSptX3JlZiA9IDA7CisJCX0KKworCQkrKygq
bV9yZWYpOwogCX0KIAogCkBAIC00MDYsMTIgKzQyMyw4IEBACiAJewogCQlpZiggbV9yZWYgIT0g
TlVMTCAmJiAtLSgqbV9yZWYpID09IDAgKQogCQl7Ci0JCQl0cnkKLQkJCXsKLQkJCQlkZWxldGUg
bV9pbXBsOwotCQkJCWRlbGV0ZSBtX3JlZjsKLQkJCX0KLQkJCWNhdGNoKCBzdGQ6OmV4Y2VwdGlv
biYgZSApIHt9CisJCQlkZWxldGUgbV9pbXBsOworCQkJZGVsZXRlIG1fcmVmOwogCQl9CiAJfQog
CkBAIC00MjEsMTggKzQzNCwyMCBAQAogCXsKIAkJaWYoIG1fcmVmICE9IE5VTEwgJiYgLS0oKm1f
cmVmKSA9PSAwICkKIAkJewotCQkJdHJ5Ci0JCQl7Ci0JCQkJZGVsZXRlIG1faW1wbDsKLQkJCQlk
ZWxldGUgbV9yZWY7Ci0JCQl9Ci0JCQljYXRjaCggc3RkOjpleGNlcHRpb24mIGUgKSB7fQorCQkJ
ZGVsZXRlIG1faW1wbDsKKwkJCWRlbGV0ZSBtX3JlZjsKIAkJfQogCiAJCW1faW1wbCA9IHJlZi5t
X2ltcGw7CiAJCW1fcmVmID0gcmVmLm1fcmVmOwogCi0JCWlmKCBtX3JlZiAhPSBOVUxMICkgeyAr
KygqbV9yZWYpOyB9CisJCWlmKCBtX3JlZiA9PSBOVUxMICkKKwkJeworCQkJbV9yZWYgPSBuZXcg
aW50OworCQkJKm1fcmVmID0gMDsKKwkJfQorCisJCSsrKCptX3JlZik7CiAKIAkJcmV0dXJuICp0
aGlzOwogCX0KZGlmZiAtdXIgb3BlbmRieC5vcmlnL2xpYi9vZGJ4X2ltcGwuY3BwIG9wZW5kYngv
bGliL29kYnhfaW1wbC5jcHAKLS0tIG9wZW5kYngub3JpZy9saWIvb2RieF9pbXBsLmNwcAkyMDIz
LTA1LTMwIDIwOjI3OjQyLjU3ODM4OTA2MSArMDMwMAorKysgb3BlbmRieC9saWIvb2RieF9pbXBs
LmNwcAkyMDEyLTA2LTExIDAxOjIwOjI1LjAwMDAwMDAwMCArMDQwMApAQCAtNTEyLDYgKzUxMiwx
MiBAQAogCXsKIAkJaW50IGVycjsKIAorCQlpZiggbV91bmJpbmQgKQorCQl7CisJCQlvZGJ4X3Vu
YmluZCggbV9oYW5kbGUgKTsKKwkJCW1fdW5iaW5kID0gZmFsc2U7CisJCX0KKwogCQlpZiggKCBl
cnIgPSBvZGJ4X2ZpbmlzaCggbV9oYW5kbGUgKSApIDwgMCApCiAJCXsKIAkJCXRocm93IEV4Y2Vw
dGlvbiggc3RyaW5nKCBvZGJ4X2Vycm9yKCBtX2hhbmRsZSwgZXJyICkgKSwgZXJyLCBvZGJ4X2Vy
cm9yX3R5cGUoIG1faGFuZGxlLCBlcnIgKSApOwpkaWZmIC11ciBvcGVuZGJ4Lm9yaWcvbGliL29k
YnhsaWIuYyBvcGVuZGJ4L2xpYi9vZGJ4bGliLmMKLS0tIG9wZW5kYngub3JpZy9saWIvb2RieGxp
Yi5jCTIwMjMtMDUtMzAgMjA6Mjc6NDIuNTc5Mzg5MDYzICswMzAwCisrKyBvcGVuZGJ4L2xpYi9v
ZGJ4bGliLmMJMjAxMC0wOC0wMSAwNjowODo0MS4wMDAwMDAwMDAgKzA0MDAKQEAgLTEzMiw3ICsx
MzIsNyBAQAogCWxlbiA9IHBsZW4gPSBzbnByaW50ZiggbGliLCBPREJYX1BBVEhTSVpFLCBMSUJQ
QVRIICk7CiAJbGVuICs9IHNucHJpbnRmKCBsaWIgKyBsZW4sIE9EQlhfUEFUSFNJWkUgLSBsZW4s
ICIvIiApOwogCWxlbiArPSBzbnByaW50ZiggbGliICsgbGVuLCBPREJYX1BBVEhTSVpFIC0gbGVu
LCBMSUJQUkVGSVggKTsKLQlsZW4gKz0gc25wcmludGYoIGxpYiArIGxlbiwgT0RCWF9QQVRIU0la
RSAtIGxlbiwgYmFja2VuZCApOworCWxlbiArPSBzbnByaW50ZiggbGliICsgbGVuLCBPREJYX1BB
VEhTSVpFIC0gbGVuLCAiJXMiLCBiYWNrZW5kICk7CiAJbGVuICs9IHNucHJpbnRmKCBsaWIgKyBs
ZW4sIE9EQlhfUEFUSFNJWkUgLSBsZW4sICJiYWNrZW5kIiApOwogCWxlbiArPSBzbnByaW50Zigg
bGliICsgbGVuLCBPREJYX1BBVEhTSVpFIC0gbGVuLCBMSUJTVUZGSVggKTsKIApAQCAtMjE5LDcg
KzIxOSw3IEBACiAJbGVuID0gcGxlbiA9IHNucHJpbnRmKCBsaWIsIE9EQlhfUEFUSFNJWkUsIFBB
Q0tBR0UgKTsKIAlsZW4gKz0gc25wcmludGYoIGxpYiArIGxlbiwgT0RCWF9QQVRIU0laRSAtIGxl
biwgIlxcIiApOwogCWxlbiArPSBzbnByaW50ZiggbGliICsgbGVuLCBPREJYX1BBVEhTSVpFIC0g
bGVuLCBMSUJQUkVGSVggKTsKLQlsZW4gKz0gc25wcmludGYoIGxpYiArIGxlbiwgT0RCWF9QQVRI
U0laRSAtIGxlbiwgYmFja2VuZCApOworCWxlbiArPSBzbnByaW50ZiggbGliICsgbGVuLCBPREJY
X1BBVEhTSVpFIC0gbGVuLCAiJXMiLCBiYWNrZW5kICk7CiAJbGVuICs9IHNucHJpbnRmKCBsaWIg
KyBsZW4sIE9EQlhfUEFUSFNJWkUgLSBsZW4sICJiYWNrZW5kIiApOwogCWxlbiArPSBzbnByaW50
ZiggbGliICsgbGVuLCBPREJYX1BBVEhTSVpFIC0gbGVuLCBMSUJTVUZGSVggKTsKIApkaWZmIC11
ciBvcGVuZGJ4Lm9yaWcvbGliL29wZW5kYngvYXBpIG9wZW5kYngvbGliL29wZW5kYngvYXBpCi0t
LSBvcGVuZGJ4Lm9yaWcvbGliL29wZW5kYngvYXBpCTIwMjMtMDUtMzAgMjA6Mjc6NDIuNTc5Mzg5
MDYzICswMzAwCisrKyBvcGVuZGJ4L2xpYi9vcGVuZGJ4L2FwaQkyMDEwLTA4LTAxIDA2OjA4OjQx
LjAwMDAwMDAwMCArMDQwMApAQCAtNzY2LDcgKzc2Niw3IEBACiAJCSAqIEVhY2ggc3RhdGVtZW50
IG9iamVjdCB1c2VzIGEgcmVmZXJlbmNlIGNvdW50ZXIgdG8gcmVtZW1iZXIgaWYgdGhlCiAJCSAq
IGludGVybmFsIHZhcmlhYmxlcyBhcmUgc2hhcmVkIHdpdGggb3RoZXIgb2JqZWN0cy4gSWYgdGhp
cyBpc24ndCB0aGUKIAkJICogY2FzZSBvciBpZiB0aGlzIG9iamVjdCBpcyB0aGUgbGFzdCBvbmUg
cmVmZXJlbmNpbmcgdGhlIHZhcmlhYmxlcywKLQkJICogdGhlIG9iamVjdCBpcyBjbGVhbnVwIHVw
IGFuZCB0aGUgYWxsb2NhdGVkIG1lbW9yeSBmcmVlZC4KKwkJICogdGhlIG9iamVjdCBpcyBjbGVh
bmVkIHVwIGFuZCB0aGUgYWxsb2NhdGVkIG1lbW9yeSBmcmVlZC4KIAkJICovCiAJCX5TdG10KCkg
dGhyb3coKTsKIApAQCAtMTI2OCw4ICsxMjY4LDggQEAKIAkJICogYXJlbid0IHN0b3JlZCBpbiB0
aGUgZGF0YWJhc2UgY29sdW1uIHNvIG9ubHkgdGhlIG9yaWdpbmFsIHN0cmluZyB3aWxsCiAJCSAq
IGJlIHdyaXR0ZW4gdG8gdGhlIGRpc2suCiAJCSAqCi0JCSAqIEEgQysrIHJlZmVyZW5jZSBvZiB0
aGUgdGhpcmQgcGFyYW1ldGVyIGNvbnRhaW5pbmcgdGhlIGVzY2FwZWQgc3RyaW5nCi0JCSAqIGFm
dGVyd2FyZHMgaXMgYWxzbyByZXR1cm5lZCBieSB0aGlzIG1ldGhvZCB0byBwcm92aWRpbmcgdGhl
IHBvc3NpYmlsaXR5CisJCSAqIEEgQysrIHJlZmVyZW5jZSBvZiB0aGUgc2Vjb25kIHBhcmFtZXRl
ciBjb250YWluaW5nIHRoZSBlc2NhcGVkIHN0cmluZworCQkgKiBhZnRlcndhcmRzIGlzIGFsc28g
cmV0dXJuZWQgYnkgdGhpcyBtZXRob2QgdG9vLCBwcm92aWRpbmcgdGhlIHBvc3NpYmlsaXR5CiAJ
CSAqIHRvIHdyaXRlIG1vcmUgZWxlZ2FudCBjb2RlLgogCQkgKgogCQkgKiBAcGFyYW0gZnJvbSBJ
bnB1dCBzdHJpbmcgd2l0aCB3aGljaCBtYXkgY29udGFpbiBkYW5nZXJvdXMgY2hhcmFjdGVycwpk
aWZmIC11ciBvcGVuZGJ4Lm9yaWcvbHRtYWluLnNoIG9wZW5kYngvbHRtYWluLnNoCi0tLSBvcGVu
ZGJ4Lm9yaWcvbHRtYWluLnNoCTIwMjMtMDUtMzAgMjA6Mjc6NDIuNTgyMzg5MDY5ICswMzAwCisr
KyBvcGVuZGJ4L2x0bWFpbi5zaAkyMDEyLTA2LTExIDAxOjMzOjQ3LjAwMDAwMDAwMCArMDQwMApA
QCAtMSw2ICsxLDYgQEAKICMgR2VuZXJhdGVkIGZyb20gbHRtYWluLm00c2guCiAKLSMgbHRtYWlu
LnNoIChHTlUgbGlidG9vbCkgMi4yLjYKKyMgbHRtYWluLnNoIChHTlUgbGlidG9vbCkgMi4yLjZi
CiAjIFdyaXR0ZW4gYnkgR29yZG9uIE1hdHppZ2tlaXQgPGdvcmRAZ251LmFpLm1pdC5lZHU+LCAx
OTk2CiAKICMgQ29weXJpZ2h0IChDKSAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAx
LCAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3IDIwMDggRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uLCBJbmMuCkBAIC02NSw3ICs2NSw3IEBACiAjICAgICAgIGNvbXBpbGVyOgkJJExUQ0MKICMg
ICAgICAgY29tcGlsZXIgZmxhZ3M6CQkkTFRDRkxBR1MKICMgICAgICAgbGlua2VyOgkJJExEIChn
bnU/ICR3aXRoX2dudV9sZCkKLSMgICAgICAgJHByb2duYW1lOgkJKEdOVSBsaWJ0b29sKSAyLjIu
NiBEZWJpYW4tMi4yLjZhLTQKKyMgICAgICAgJHByb2duYW1lOgkJKEdOVSBsaWJ0b29sKSAyLjIu
NmIgRGViaWFuLTIuMi42Yi0ydWJ1bnR1MQogIyAgICAgICBhdXRvbWFrZToJCSRhdXRvbWFrZV92
ZXJzaW9uCiAjICAgICAgIGF1dG9jb25mOgkJJGF1dG9jb25mX3ZlcnNpb24KICMKQEAgLTczLDkg
KzczLDkgQEAKIAogUFJPR1JBTT1sdG1haW4uc2gKIFBBQ0tBR0U9bGlidG9vbAotVkVSU0lPTj0i
Mi4yLjYgRGViaWFuLTIuMi42YS00IgorVkVSU0lPTj0iMi4yLjZiIERlYmlhbi0yLjIuNmItMnVi
dW50dTEiCiBUSU1FU1RBTVA9IiIKLXBhY2thZ2VfcmV2aXNpb249MS4zMDEyCitwYWNrYWdlX3Jl
dmlzaW9uPTEuMzAxNwogCiAjIEJlIEJvdXJuZSBjb21wYXRpYmxlCiBpZiB0ZXN0IC1uICIke1pT
SF9WRVJTSU9OK3NldH0iICYmIChlbXVsYXRlIHNoKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4KZGlm
ZiAtdXIgb3BlbmRieC5vcmlnL200L2xpYnRvb2wubTQgb3BlbmRieC9tNC9saWJ0b29sLm00Ci0t
LSBvcGVuZGJ4Lm9yaWcvbTQvbGlidG9vbC5tNAkyMDIzLTA1LTMwIDIwOjI3OjQyLjU4NDM4OTA3
NCArMDMwMAorKysgb3BlbmRieC9tNC9saWJ0b29sLm00CTIwMTItMDYtMTEgMDE6MzM6NDcuMDAw
MDAwMDAwICswNDAwCkBAIC0yNDQ1LDcgKzI0NDUsNyBAQAogICA7OwogCiAjIFRoaXMgbXVzdCBi
ZSBMaW51eCBFTEYuCi1saW51eCogfCBrKmJzZCotZ251KQorbGludXgqIHwgaypic2QqLWdudSB8
IGtvcGVuc29sYXJpcyotZ251KQogICB2ZXJzaW9uX3R5cGU9bGludXgKICAgbmVlZF9saWJfcHJl
Zml4PW5vCiAgIG5lZWRfdmVyc2lvbj1ubwpAQCAtMzA4NCw3ICszMDg0LDcgQEAKICAgOzsKIAog
IyBUaGlzIG11c3QgYmUgTGludXggRUxGLgotbGludXgqIHwgaypic2QqLWdudSkKK2xpbnV4KiB8
IGsqYnNkKi1nbnUgfCBrb3BlbnNvbGFyaXMqLWdudSkKICAgbHRfY3ZfZGVwbGlic19jaGVja19t
ZXRob2Q9cGFzc19hbGwKICAgOzsKIApAQCAtMzcwNSw3ICszNzA1LDcgQEAKIAkgICAgOzsKIAll
c2FjCiAJOzsKLSAgICAgIGxpbnV4KiB8IGsqYnNkKi1nbnUpCisgICAgICBsaW51eCogfCBrKmJz
ZCotZ251IHwga29wZW5zb2xhcmlzKi1nbnUpCiAJY2FzZSAkY2NfYmFzZW5hbWUgaW4KIAkgIEtD
QyopCiAJICAgICMgS0FJIEMrKyBDb21waWxlcgpAQCAtMzk4OSw3ICszOTg5LDcgQEAKICAgICAg
IF9MVF9UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0aWMsICQxKT0nLW5vbl9zaGFyZWQnCiAg
ICAgICA7OwogCi0gICAgbGludXgqIHwgaypic2QqLWdudSkKKyAgICBsaW51eCogfCBrKmJzZCot
Z251IHwga29wZW5zb2xhcmlzKi1nbnUpCiAgICAgICBjYXNlICRjY19iYXNlbmFtZSBpbgogICAg
ICAgIyBvbGQgSW50ZWwgZm9yIHg4Nl82NCB3aGljaCBzdGlsbCBzdXBwb3J0ZWQgLUtQSUMuCiAg
ICAgICBlY2MqKQpAQCAtNDI4NSw2ICs0Mjg1LDcgQEAKICAgICBmaQogICAgIHN1cHBvcnRzX2Fu
b25fdmVyc2lvbmluZz1ubwogICAgIGNhc2UgYCRMRCAtdiAyPiYxYCBpbgorICAgICAgKkdOVVwg
Z29sZCopIHN1cHBvcnRzX2Fub25fdmVyc2lvbmluZz15ZXMgOzsKICAgICAgICpcIFtbMDFdXS4q
IHwgKlwgMi5bWzAtOV1dLiogfCAqXCAyLjEwLiopIDs7ICMgY2F0Y2ggdmVyc2lvbnMgPCAyLjEx
CiAgICAgICAqXCAyLjExLjkzLjAuMlwgKikgc3VwcG9ydHNfYW5vbl92ZXJzaW9uaW5nPXllcyA7
OyAjIFJINy4zIC4uLgogICAgICAgKlwgMi4xMS45Mi4wLjEyXCAqKSBzdXBwb3J0c19hbm9uX3Zl
cnNpb25pbmc9eWVzIDs7ICMgTWFuZHJha2UgOC4yIC4uLgpAQCAtNDM3Niw3ICs0Mzc3LDcgQEAK
ICAgICAgIF9MVF9UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSdzZWQgInMsXixfLCIg
JGV4cG9ydF9zeW1ib2xzID4kb3V0cHV0X29iamRpci8kc29uYW1lLmV4cHN5bX4kQ0MgLXNoYXJl
ZCAkcGljX2ZsYWcgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LWgsJHNv
bmFtZSAke3dsfS0tcmV0YWluLXN5bWJvbHMtZmlsZSwkb3V0cHV0X29iamRpci8kc29uYW1lLmV4
cHN5bSAke3dsfS0taW1hZ2UtYmFzZSxgZXhwciAke1JBTkRPTS0kJH0gJSA0MDk2IC8gMiBcKiAy
NjIxNDQgKyAxMzQyMTc3MjgwYCAtbyAkbGliJwogICAgICAgOzsKIAotICAgIGdudSogfCBsaW51
eCogfCB0cGYqIHwgaypic2QqLWdudSkKKyAgICBnbnUqIHwgbGludXgqIHwgdHBmKiB8IGsqYnNk
Ki1nbnUgfCBrb3BlbnNvbGFyaXMqLWdudSkKICAgICAgIHRtcF9kaWV0PW5vCiAgICAgICBpZiB0
ZXN0ICIkaG9zdF9vcyIgPSBsaW51eC1kaWV0bGliYzsgdGhlbgogCWNhc2UgJGNjX2Jhc2VuYW1l
IGluCkBAIC01ODYwLDcgKzU4NjEsNyBAQAogICAgICAgICBfTFRfVEFHVkFSKGluaGVyaXRfcnBh
dGgsICQxKT15ZXMKICAgICAgICAgOzsKIAotICAgICAgbGludXgqIHwgaypic2QqLWdudSkKKyAg
ICAgIGxpbnV4KiB8IGsqYnNkKi1nbnUgfCBrb3BlbnNvbGFyaXMqLWdudSkKICAgICAgICAgY2Fz
ZSAkY2NfYmFzZW5hbWUgaW4KICAgICAgICAgICBLQ0MqKQogCSAgICAjIEt1Y2sgYW5kIEFzc29j
aWF0ZXMsIEluYy4gKEtBSSkgQysrIENvbXBpbGVyCmRpZmYgLXVyIG9wZW5kYngub3JpZy9tNC9s
dHZlcnNpb24ubTQgb3BlbmRieC9tNC9sdHZlcnNpb24ubTQKLS0tIG9wZW5kYngub3JpZy9tNC9s
dHZlcnNpb24ubTQJMjAyMy0wNS0zMCAyMDoyNzo0Mi41ODQzODkwNzQgKzAzMDAKKysrIG9wZW5k
YngvbTQvbHR2ZXJzaW9uLm00CTIwMTItMDYtMTEgMDE6MzM6NDcuMDAwMDAwMDAwICswNDAwCkBA
IC05LDE1ICs5LDE1IEBACiAKICMgR2VuZXJhdGVkIGZyb20gbHR2ZXJzaW9uLmluLgogCi0jIHNl
cmlhbCAzMDEyIGx0dmVyc2lvbi5tNAorIyBzZXJpYWwgMzAxNyBsdHZlcnNpb24ubTQKICMgVGhp
cyBmaWxlIGlzIHBhcnQgb2YgR05VIExpYnRvb2wKIAotbTRfZGVmaW5lKFtMVF9QQUNLQUdFX1ZF
UlNJT05dLCBbMi4yLjZdKQotbTRfZGVmaW5lKFtMVF9QQUNLQUdFX1JFVklTSU9OXSwgWzEuMzAx
Ml0pCittNF9kZWZpbmUoW0xUX1BBQ0tBR0VfVkVSU0lPTl0sIFsyLjIuNmJdKQorbTRfZGVmaW5l
KFtMVF9QQUNLQUdFX1JFVklTSU9OXSwgWzEuMzAxN10pCiAKIEFDX0RFRlVOKFtMVFZFUlNJT05f
VkVSU0lPTl0sCi1bbWFjcm9fdmVyc2lvbj0nMi4yLjYnCi1tYWNyb19yZXZpc2lvbj0nMS4zMDEy
JworW21hY3JvX3ZlcnNpb249JzIuMi42YicKK21hY3JvX3JldmlzaW9uPScxLjMwMTcnCiBfTFRf
REVDTCgsIG1hY3JvX3ZlcnNpb24sIDAsIFtXaGljaCByZWxlYXNlIG9mIGxpYnRvb2wubTQgd2Fz
IHVzZWQ/XSkKIF9MVF9ERUNMKCwgbWFjcm9fcmV2aXNpb24sIDApCiBdKQpkaWZmIC11ciBvcGVu
ZGJ4Lm9yaWcvTWFrZWZpbGUuaW4gb3BlbmRieC9NYWtlZmlsZS5pbgotLS0gb3BlbmRieC5vcmln
L01ha2VmaWxlLmluCTIwMjMtMDUtMzAgMjA6Mjc6NDIuNTU0Mzg5MDA3ICswMzAwCisrKyBvcGVu
ZGJ4L01ha2VmaWxlLmluCTIwMTItMDYtMTEgMDE6MzM6NTMuMDAwMDAwMDAwICswNDAwCkBAIC0x
LDQgKzEsNCBAQAotIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMSBmcm9t
IE1ha2VmaWxlLmFtLgorIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4x
IGZyb20gTWFrZWZpbGUuYW0uCiAjIEBjb25maWd1cmVfaW5wdXRACiAKICMgQ29weXJpZ2h0IChD
KSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLApA
QCAtMzksOCArMzksOSBAQAogCSQoc3JjZGlyKS9NYWtlZmlsZS5pbiAkKHNyY2RpcikvY29uZmln
LmguaW4gXAogCSQoc3JjZGlyKS9vcGVuZGJ4LnBjLmluICQoc3JjZGlyKS9vcGVuZGJ4LnNwZWMu
aW4gXAogCSQoc3JjZGlyKS9vcGVuZGJ4cGx1cy5wYy5pbiAkKHRvcF9zcmNkaXIpL2NvbmZpZ3Vy
ZSBBQk9VVC1OTFMgXAotCUFVVEhPUlMgQ09QWUlORyBDaGFuZ2VMb2cgSU5TVEFMTCBORVdTIFRP
RE8gY29uZmlnLmd1ZXNzIFwKLQljb25maWcucnBhdGggY29uZmlnLnN1YiBkZXBjb21wIGluc3Rh
bGwtc2ggbHRtYWluLnNoIG1pc3NpbmcKKwlBVVRIT1JTIENPUFlJTkcgQ2hhbmdlTG9nIElOU1RB
TEwgTkVXUyBUT0RPIGNvbXBpbGUgXAorCWNvbmZpZy5ndWVzcyBjb25maWcucnBhdGggY29uZmln
LnN1YiBkZXBjb21wIGluc3RhbGwtc2ggXAorCWx0bWFpbi5zaCBtaXNzaW5nCiBBQ0xPQ0FMX000
ID0gJCh0b3Bfc3JjZGlyKS9hY2xvY2FsLm00CiBhbV9fYWNsb2NhbF9tNF9kZXBzID0gJCh0b3Bf
c3JjZGlyKS9tNC9nZXR0ZXh0Lm00IFwKIAkkKHRvcF9zcmNkaXIpL200L2ljb252Lm00ICQodG9w
X3NyY2RpcikvbTQvbGliLWxkLm00IFwKQEAgLTQwNyw3ICs0MDgsNyBAQAogIyAgICAgKHdoaWNo
IHdpbGwgY2F1c2UgdGhlIE1ha2VmaWxlcyB0byBiZSByZWdlbmVyYXRlZCB3aGVuIHlvdSBydW4g
YG1ha2UnKTsKICMgKDIpIG90aGVyd2lzZSwgcGFzcyB0aGUgZGVzaXJlZCB2YWx1ZXMgb24gdGhl
IGBtYWtlJyBjb21tYW5kIGxpbmUuCiAkKFJFQ1VSU0lWRV9UQVJHRVRTKToKLQlAZmFpbGNvbT0n
ZXhpdCAxJzsgXAorCUBmYWlsPSBmYWlsY29tPSdleGl0IDEnOyBcCiAJZm9yIGYgaW4geCAkJE1B
S0VGTEFHUzsgZG8gXAogCSAgY2FzZSAkJGYgaW4gXAogCSAgICAqPSogfCAtLVsha10qKTs7IFwK
QEAgLTQzMiw3ICs0MzMsNyBAQAogCWZpOyB0ZXN0IC16ICIkJGZhaWwiCiAKICQoUkVDVVJTSVZF
X0NMRUFOX1RBUkdFVFMpOgotCUBmYWlsY29tPSdleGl0IDEnOyBcCisJQGZhaWw9IGZhaWxjb209
J2V4aXQgMSc7IFwKIAlmb3IgZiBpbiB4ICQkTUFLRUZMQUdTOyBkbyBcCiAJICBjYXNlICQkZiBp
biBcCiAJICAgICo9KiB8IC0tWyFrXSopOzsgXApAQCAtNTk2LDcgKzU5Nyw4IEBACiAJICBmaTsg
XAogCWRvbmUKIAktdGVzdCAtbiAiJChhbV9fc2tpcF9tb2RlX2ZpeCkiIFwKLQl8fCBmaW5kICIk
KGRpc3RkaXIpIiAtdHlwZSBkICEgLXBlcm0gLTc3NyAtZXhlYyBjaG1vZCBhK3J3eCB7fSBcOyAt
byBcCisJfHwgZmluZCAiJChkaXN0ZGlyKSIgLXR5cGUgZCAhIC1wZXJtIC03NTUgXAorCQktZXhl
YyBjaG1vZCB1K3J3eCxnbytyeCB7fSBcOyAtbyBcCiAJICAhIC10eXBlIGQgISAtcGVybSAtNDQ0
IC1saW5rcyAxIC1leGVjIGNobW9kIGErciB7fSBcOyAtbyBcCiAJICAhIC10eXBlIGQgISAtcGVy
bSAtNDAwIC1leGVjIGNobW9kIGErciB7fSBcOyAtbyBcCiAJICAhIC10eXBlIGQgISAtcGVybSAt
NDQ0IC1leGVjICQoaW5zdGFsbF9zaCkgLWMgLW0gYStyIHt9IHt9IFw7IFwKQEAgLTY0MCwxNyAr
NjQyLDE3IEBACiBkaXN0Y2hlY2s6IGRpc3QKIAljYXNlICckKERJU1RfQVJDSElWRVMpJyBpbiBc
CiAJKi50YXIuZ3oqKSBcCi0JICBHWklQPSQoR1pJUF9FTlYpIGd1bnppcCAtYyAkKGRpc3RkaXIp
LnRhci5neiB8ICQoYW1fX3VudGFyKSA7O1wKKwkgIEdaSVA9JChHWklQX0VOVikgZ3ppcCAtZGMg
JChkaXN0ZGlyKS50YXIuZ3ogfCAkKGFtX191bnRhcikgOztcCiAJKi50YXIuYnoyKikgXAotCSAg
YnVuemlwMiAtYyAkKGRpc3RkaXIpLnRhci5iejIgfCAkKGFtX191bnRhcikgOztcCisJICBiemlw
MiAtZGMgJChkaXN0ZGlyKS50YXIuYnoyIHwgJChhbV9fdW50YXIpIDs7XAogCSoudGFyLmx6bWEq
KSBcCi0JICB1bmx6bWEgLWMgJChkaXN0ZGlyKS50YXIubHptYSB8ICQoYW1fX3VudGFyKSA7O1wK
KwkgIGx6bWEgLWRjICQoZGlzdGRpcikudGFyLmx6bWEgfCAkKGFtX191bnRhcikgOztcCiAJKi50
YXIueHoqKSBcCiAJICB4eiAtZGMgJChkaXN0ZGlyKS50YXIueHogfCAkKGFtX191bnRhcikgOztc
CiAJKi50YXIuWiopIFwKIAkgIHVuY29tcHJlc3MgLWMgJChkaXN0ZGlyKS50YXIuWiB8ICQoYW1f
X3VudGFyKSA7O1wKIAkqLnNoYXIuZ3oqKSBcCi0JICBHWklQPSQoR1pJUF9FTlYpIGd1bnppcCAt
YyAkKGRpc3RkaXIpLnNoYXIuZ3ogfCB1bnNoYXIgOztcCisJICBHWklQPSQoR1pJUF9FTlYpIGd6
aXAgLWRjICQoZGlzdGRpcikuc2hhci5neiB8IHVuc2hhciA7O1wKIAkqLnppcCopIFwKIAkgIHVu
emlwICQoZGlzdGRpcikuemlwIDs7XAogCWVzYWMKZGlmZiAtdXIgb3BlbmRieC5vcmlnL05FV1Mg
b3BlbmRieC9ORVdTCi0tLSBvcGVuZGJ4Lm9yaWcvTkVXUwkyMDIzLTA1LTMwIDIwOjI3OjQyLjU1
NDM4OTAwNyArMDMwMAorKysgb3BlbmRieC9ORVdTCTIwMTAtMDgtMDEgMDY6MDg6NDEuMDAwMDAw
MDAwICswNDAwCkBAIC0wLDAgKzEgQEAKK1BsZWFzZSBoYXZlIGEgbG9vayBhdCB0aGUgQ2hhbmdl
TG9nIGZpbGUgZm9yIHVwZGF0ZXMKXCDQkiDQutC+0L3RhtC1INGE0LDQudC70LAg0L3QtdGCINC9
0L7QstC+0Lkg0YHRgtGA0L7QutC4CmRpZmYgLXVyIG9wZW5kYngub3JpZy9vcGVuZGJ4LnNwZWMg
b3BlbmRieC9vcGVuZGJ4LnNwZWMKLS0tIG9wZW5kYngub3JpZy9vcGVuZGJ4LnNwZWMJMjAyMy0w
NS0zMCAyMDoyNzo0Mi41ODUzODkwNzYgKzAzMDAKKysrIG9wZW5kYngvb3BlbmRieC5zcGVjCTIw
MTItMDYtMTEgMDE6MzQ6MjguMDAwMDAwMDAwICswNDAwCkBAIC0zLDI0ICszLDc4IEBACiAjCiAj
ICBCeSBkZWZhdWx0IE9wZW5EQlggaXMgYnVpbGQgd2l0aCB0aGlzIGJhY2tlbmRzOgogIyAgLSBt
eXNxbAotIyAgLSBwZ3NxbAogIyAgLSBvZGJjCisjICAtIHBnc3FsCiAjICAtIHNxbGl0ZTMKICMg
IHRvIGRpc2FibGUgdXNlIC0td2l0aG91dCBbbW9kdWxlLW5hbWVdCiAjCiAjICBPcHRpb25hbCBz
dXBwb3J0ZWQgYmFja2VuZHMgYXJlOgogIyAgLSBmaXJlYmlyZAogIyAgLSBtc3NxbAotIyAgLSBz
cWxpdGUKICMgIC0gb3JhY2xlCisjICAtIHNxbGl0ZQogIyAgLSBzeWJhc2UKICMgIHRvIGVuYWJs
ZSB1c2UgLS13aXRoIFttb2R1bGUtbmFtZV0KICMKIAorJWlmIDAlez9fd2l0aF9maXJlYmlyZDox
fQorICAlZGVmaW5lIGJ1aWxkX2ZpcmViaXJkIDEKKyVlbmRpZgorJWlmIDAleyE/X3dpdGhvdXRf
ZmlyZWJpcmQ6MX0gJiYgMCV7P2ZlZG9yYX0gPj0gMTIKKyAgJWRlZmluZSBidWlsZF9maXJlYmly
ZCAxCislZW5kaWYKKyVpZiAwJXshP193aXRob3V0X2ZpcmViaXJkOjF9ICYmIDAlez9zdXNlX3Zl
cnNpb259ID49IDExMjAKKyAgJWRlZmluZSBidWlsZF9maXJlYmlyZCAxCislZW5kaWYKKworJWlm
IDAlez9fd2l0aF9tc3NxbDoxfQorICAlZGVmaW5lIGJ1aWxkX21zc3FsIDEKKyVlbmRpZgorJWlm
IDAleyE/X3dpdGhvdXRfbXNzcWw6MX0gJiYgMCV7P2ZlZG9yYX0gPj0gOQorICAlZGVmaW5lIGJ1
aWxkX21zc3FsIDEKKyVlbmRpZgorJWlmIDAleyE/X3dpdGhvdXRfbXNzcWw6MX0gJiYgMCV7P21k
a3ZlcnNpb259ID49IDIwMDkxMAorICAlZGVmaW5lIGJ1aWxkX21zc3FsIDEKKyVlbmRpZgorCisl
aWYgMCV7IT9fd2l0aG91dF9teXNxbDoxfQorICAlZGVmaW5lIGJ1aWxkX215c3FsIDEKKyVlbmRp
ZgorCislaWYgMCV7IT9fd2l0aG91dF9vZGJjOjF9CisgICVkZWZpbmUgYnVpbGRfb2RiYyAxCisl
ZW5kaWYKKworJWlmIDAlez9fd2l0aF9vcmFjbGU6MX0KKyAgJWRlZmluZSBidWlsZF9vcmFjbGUg
MQorJWVuZGlmCisKKyVpZiAwJXshP193aXRob3V0X3Bnc3FsOjF9CisgICVkZWZpbmUgYnVpbGRf
cGdzcWwgMQorJWVuZGlmCisKKyVpZiAwJXs/X3dpdGhfc3FsaXRlOjF9CisgICVkZWZpbmUgYnVp
bGRfc3FsaXRlIDEKKyVlbmRpZgorCislaWYgMCV7IT9fd2l0aG91dF9zcWxpdGUzOjF9CisgICVk
ZWZpbmUgYnVpbGRfc3FsaXRlMyAxCislZW5kaWYKKworJWlmIDAlez9fd2l0aF9zeWJhc2U6MX0K
KyAgJWRlZmluZSBidWlsZF9zeWJhc2UgMQorJWVuZGlmCislaWYgMCV7IT9fd2l0aG91dF9zeWJh
c2U6MX0gJiYgMCV7P2ZlZG9yYX0gPj0gOQorICAlZGVmaW5lIGJ1aWxkX21zc3FsIDEKKyVlbmRp
ZgorJWlmIDAleyE/X3dpdGhvdXRfc3liYXNlOjF9ICYmIDAlez9tZGt2ZXJzaW9ufSA+PSAyMDA5
MTAKKyAgJWRlZmluZSBidWlsZF9tc3NxbCAxCislZW5kaWYKKwogCiBOYW1lOiAgICBvcGVuZGJ4
Ci1WZXJzaW9uOiAgICAxLjQuMwotUmVsZWFzZTogICAgMSV7P2Rpc3R9CitWZXJzaW9uOiAgICAx
LjQuNgorUmVsZWFzZTogICAgMQogU3VtbWFyeTogICAgVW5pZmllZCBkYXRhYmFzZSBsYXllciB3
aXRoIGEgY2xlYW4gYW5kIGxpZ2h0d2VpZ2h0IGludGVyZmFjZQogU3VtbWFyeShkZS5VVEYtOCk6
ICAgIEJpYmxpb3RoZWsgenVtIFp1Z3JpZmYgYXVmIERhdGVuYmFua2VuIMO8YmVyIGVpbmUgZWlu
aGVpdGxpY2hlIFNjaG5pdHRzdGVsbGUKIFN1bW1hcnkocGwuVVRGLTgpOiAgICBSb3pzemVyemFu
YSBiaWJsaW90ZWthIGRvc3TEmXB1IGRvIGJheiBkYW55Y2gKQEAgLTI4LDcgKzgyLDcgQEAKIExp
Y2Vuc2U6ICAgIExHUEwKIFVSTDogICAgaHR0cDovL3d3dy5saW51eG5ldHdvcmtzLmRlL29wZW5k
YngvZG93bmxvYWQvCiBTb3VyY2UwOiAgICAle25hbWV9LSV7dmVyc2lvbn0udGFyLmd6Ci1CdWls
ZFJvb3Q6ICAgICV7X3RtcHBhdGh9LyV7bmFtZX0tJXt2ZXJzaW9ufS0le3JlbGVhc2V9LXJvb3Qt
JSgle19faWRfdX0gLW4pCitCdWlsZFJvb3Q6ICAgICV7X3RtcHBhdGh9LyV7bmFtZX0tJXt2ZXJz
aW9ufS1idWlsZAogQnVpbGRSZXF1aXJlczogICAgZ2NjLWMrKywgZ2V0dGV4dAogCiAlZGVzY3Jp
cHRpb24KQEAgLTU2LDcgKzExMCw3IEBACiBHcm91cDogICAgQXBwbGljYXRpb25zL0RhdGFiYXNl
cwogUmVxdWlyZXM6ICAgICV7bmFtZX0gPj0gJXt2ZXJzaW9ufQogUmVxdWlyZXM6ICAgIHJlYWRs
aW5lLCBuY3Vyc2VzCi1CdWlsZFJlcXVpcmVzOiAgICBnY2MtYysrLCByZWFkbGluZSwgcmVhZGxp
bmUtZGV2ZWwsIG5jdXJzZXMsIG5jdXJzZXMtZGV2ZWwKK0J1aWxkUmVxdWlyZXM6ICAgIGdjYy1j
KyssIGdldHRleHQsIHJlYWRsaW5lLCByZWFkbGluZS1kZXZlbCwgbmN1cnNlcywgbmN1cnNlcy1k
ZXZlbAogCiAlZGVzY3JpcHRpb24gdXRpbHMKIFV0aWxpdHkgYXBwbGljYXRpb24gZm9yIG1hbmlw
dWxhdGluZyBkYXRhYmFzZSBjb250ZW50IGVpdGhlciBpbnRlcmFjdGl2ZWx5IGJ5CkBAIC04Niw3
ICsxNDAsNTMgQEAKIFBsaWtpIG5hZ8WCw7N3a293ZSBiaWJsaW90ZWtpIG9wZW5kYnguCiAKIAot
JWlmICV7IT9fd2l0aG91dF9teXNxbDoxfSV7P193aXRob3V0X215c3FsOjB9CislaWYgMCV7P2J1
aWxkX2ZpcmViaXJkOjF9CisKKyVwYWNrYWdlIGZpcmViaXJkCitTdW1tYXJ5OiAgICBGaXJlYmly
ZC9JbnRlcmJhc2UgYmFja2VuZCBmb3IgT3BlbkRCWAorU3VtbWFyeShkZS5VVEYtOCk6ICAgIEZp
cmViaXJkL0ludGVyYmFzZSBVbnRlcnN0w7x0enVuZyBmw7xyIE9wZW5EQlgKK1N1bW1hcnkocGwu
VVRGLTgpOglCYWNrZW5kIGJhenkgZGFueWNoIEZpcmViaXJkIGRsYSBiaWJsaW90ZWtpIE9wZW5E
QlgKK0dyb3VwOiAgICBEZXZlbG9wbWVudC9MaWJyYXJpZXMKK1JlcXVpcmVzOiAgICAle25hbWV9
ID0gJXt2ZXJzaW9ufS0le3JlbGVhc2V9CitSZXF1aXJlczogICAgZmlyZWJpcmQKK0J1aWxkUmVx
dWlyZXM6ICAgIGZpcmViaXJkLWRldmVsCisKKyVkZXNjcmlwdGlvbiBmaXJlYmlyZAorRmlyZWJp
cmQvSW50ZXJiYXNlIGJhY2tlbmQgZm9yIHRoZSBPcGVuREJYIGRhdGFiYXNlIGFic3RyYWN0aW9u
IGxpYnJhcnkKKworJWRlc2NyaXB0aW9uIGZpcmViaXJkIC1sIGRlLlVURi04CitGaXJlYmlyZC9J
bnRlcmJhc2UgVW50ZXJzdMO8dHp1bmcgZsO8ciBkaWUgT3BlbkRCWCBEYXRlbmJhbmtiaWJsaW90
aGVrCisKKyVkZXNjcmlwdGlvbiBmaXJlYmlyZCAtbCBwbC5VVEYtOAorQmFja2VuZCBiYXp5IGRh
bnljaCBGaXJlYmlyZCBkbGEgYmlibGlvdGVraSBvcGVuZGJ4LgorCislZW5kaWYKKworCislaWYg
MCV7P2J1aWxkX21zc3FsOjF9CisKKyVwYWNrYWdlIG1zc3FsCitTdW1tYXJ5OiAgICBNUyBTUUwg
U2VydmVyIGJhY2tlbmQgZm9yIE9wZW5EQlgKK1N1bW1hcnkoZGUuVVRGLTgpOiAgICBNUyBTUUwg
U2VydmVyIFVudGVyc3TDvHR6dW5nIGbDvHIgT3BlbkRCWAorU3VtbWFyeShwbC5VVEYtOCk6CUJh
Y2tlbmQgYmF6eSBkYW55Y2ggTVMgU1FMIGRsYSBiaWJsaW90ZWtpIE9wZW5EQlgKK0dyb3VwOiAg
ICBEZXZlbG9wbWVudC9MaWJyYXJpZXMKK1JlcXVpcmVzOiAgICAle25hbWV9ID0gJXt2ZXJzaW9u
fS0le3JlbGVhc2V9CitSZXF1aXJlczogICAgZnJlZXRkcworQnVpbGRSZXF1aXJlczogICAgZnJl
ZXRkcy1kZXZlbAorCislZGVzY3JpcHRpb24gbXNzcWwKK01TIFNRTCBTZXJ2ZXIgYmFja2VuZCBm
b3IgdGhlIE9wZW5EQlggZGF0YWJhc2UgYWJzdHJhY3Rpb24gbGlicmFyeQorCislZGVzY3JpcHRp
b24gbXNzcWwgLWwgZGUuVVRGLTgKK01TIFNRTCBTZXJ2ZXIgVW50ZXJzdMO8dHp1bmcgZsO8ciBk
aWUgT3BlbkRCWCBEYXRlbmJhbmtiaWJsaW90aGVrCisKKyVkZXNjcmlwdGlvbiBtc3NxbCAtbCBw
bC5VVEYtOAorQmFja2VuZCBiYXp5IGRhbnljaCBNUyBTUUwgZGxhIGJpYmxpb3Rla2kgb3BlbmRi
eC4KKworJWVuZGlmCisKKworJWlmIDAlez9idWlsZF9teXNxbDoxfQogCiAlcGFja2FnZSBteXNx
bAogU3VtbWFyeTogICAgTXlTUUwgYmFja2VuZCBmb3IgT3BlbkRCWApAQCAtMTA5LDcgKzIwOSw1
MSBAQAogJWVuZGlmCiAKIAotJWlmICV7IT9fd2l0aG91dF9wZ3NxbDoxfSV7P193aXRob3V0X3Bn
c3FsOjB9CislaWYgMCV7P2J1aWxkX29kYmM6MX0KKworJXBhY2thZ2Ugb2RiYworU3VtbWFyeTog
ICAgT0RCQyBiYWNrZW5kIGZvciBPcGVuREJYCitTdW1tYXJ5KGRlLlVURi04KTogICAgT0RCQyBV
bnRlcnN0w7x0enVuZyBmw7xyIE9wZW5EQlgKK1N1bW1hcnkocGwuVVRGLTgpOglCYWNrZW5kIGJh
enkgZGFueWNoIE9EQkMgZGxhIGJpYmxpb3Rla2kgT3BlbkRCWAorR3JvdXA6ICAgIERldmVsb3Bt
ZW50L0xpYnJhcmllcworUmVxdWlyZXM6ICAgICV7bmFtZX0gPSAle3ZlcnNpb259LSV7cmVsZWFz
ZX0KK1JlcXVpcmVzOiAgICB1bml4T0RCQworQnVpbGRSZXF1aXJlczogICAgdW5peE9EQkMtZGV2
ZWwKKworJWRlc2NyaXB0aW9uIG9kYmMKK09EQkMgYmFja2VuZCBmb3IgdGhlIE9wZW5EQlggZGF0
YWJhc2UgYWJzdHJhY3Rpb24gbGlicmFyeQorCislZGVzY3JpcHRpb24gb2RiYyAtbCBkZS5VVEYt
OAorT0RCQyBVbnRlcnN0w7x0enVuZyBmw7xyIGRpZSBPcGVuREJYIERhdGVuYmFua2JpYmxpb3Ro
ZWsKKworJWRlc2NyaXB0aW9uIG9kYmMgLWwgcGwuVVRGLTgKK0JhY2tlbmQgYmF6eSBkYW55Y2gg
T0RCQyBkbGEgYmlibGlvdGVraSBvcGVuZGJ4LgorCislZW5kaWYKKworCislaWYgMCV7P2J1aWxk
X29yYWNsZToxfQorCislcGFja2FnZSBvcmFjbGUKK1N1bW1hcnk6ICAgIE9yYWNsZSBiYWNrZW5k
IGZvciBPcGVuREJYCitTdW1tYXJ5KGRlLlVURi04KTogICAgT3JhY2xlIFVudGVyc3TDvHR6dW5n
IGbDvHIgT3BlbkRCWAorU3VtbWFyeShwbC5VVEYtOCk6CUJhY2tlbmQgYmF6eSBkYW55Y2ggT3Jh
Y2xlIGRsYSBiaWJsaW90ZWtpIE9wZW5EQlgKK0dyb3VwOiAgICBEZXZlbG9wbWVudC9MaWJyYXJp
ZXMKK1JlcXVpcmVzOiAgICAle25hbWV9ID0gJXt2ZXJzaW9ufS0le3JlbGVhc2V9CisKKyVkZXNj
cmlwdGlvbiBvcmFjbGUKK09yYWNsZSBjdGxpYiBiYWNrZW5kIGZvciB0aGUgT3BlbkRCWCBkYXRh
YmFzZSBhYnN0cmFjdGlvbiBsaWJyYXJ5CisKKyVkZXNjcmlwdGlvbiBvcmFjbGUgLWwgZGUuVVRG
LTgKK09yYWNsZSBVbnRlcnN0w7x0enVuZyBmw7xyIGRpZSBPcGVuREJYIERhdGVuYmFua2JpYmxp
b3RoZWsKKworJWRlc2NyaXB0aW9uIG9yYWNsZSAtbCBwbC5VVEYtOAorQmFja2VuZCBiYXp5IGRh
bnljaCBPcmFjbGUgZGxhIGJpYmxpb3Rla2kgT3BlbkRCWC4KKworJWVuZGlmCisKKworJWlmIDAl
ez9idWlsZF9wZ3NxbDoxfQogCiAlcGFja2FnZSBwZ3NxbAogU3VtbWFyeTogICAgUG9zdGdyZVNR
TCBiYWNrZW5kIGZvciBPcGVuREJYCkBAIC0xMzIsMzAgKzI3Niw3IEBACiAlZW5kaWYKIAogCi0l
aWYgJXshP193aXRob3V0X3NxbGl0ZTM6MX0lez9fd2l0aG91dF9zcWxpdGUzOjB9Ci0KLSVwYWNr
YWdlIHNxbGl0ZTMKLVN1bW1hcnk6ICAgIFNRTGl0ZTMgYmFja2VuZCBmb3IgT3BlbkRCWAotU3Vt
bWFyeShkZS5VVEYtOCk6ICAgIFNRTGl0ZTMgVW50ZXJzdMO8dHp1bmcgZsO8ciBPcGVuREJYCi1T
dW1tYXJ5KHBsLlVURi04KToJQmFja2VuZCBiYXp5IGRhbnljaCBTUUxpdGUzIGRsYSBiaWJsaW90
ZWtpIE9wZW5EQlgKLUdyb3VwOiAgICBEZXZlbG9wbWVudC9MaWJyYXJpZXMKLVJlcXVpcmVzOiAg
ICAle25hbWV9ID0gJXt2ZXJzaW9ufS0le3JlbGVhc2V9Ci1SZXF1aXJlczogICAgc3FsaXRlID49
IDMuMAotQnVpbGRSZXF1aXJlczogICAgc3FsaXRlLWRldmVsID49IDMuMAotCi0lZGVzY3JpcHRp
b24gc3FsaXRlMwotU1FMaXRlMyBiYWNrZW5kIGZvciB0aGUgT3BlbkRCWCBkYXRhYmFzZSBhYnN0
cmFjdGlvbiBsaWJyYXJ5Ci0KLSVkZXNjcmlwdGlvbiBzcWxpdGUzIC1sIGRlLlVURi04Ci1TcWxp
dGUzIFVudGVyc3TDvHR6dW5nIGbDvHIgZGllIE9wZW5EQlggRGF0ZW5iYW5rYmlibGlvdGhlawot
Ci0lZGVzY3JpcHRpb24gc3FsaXRlMyAtbCBwbC5VVEYtOAotQmFja2VuZCBiYXp5IGRhbnljaCBz
cWxpdGUzIGRsYSBiaWJsaW90ZWtpIG9wZW5kYnguCi0KLSVlbmRpZgotCi0KLSVpZiAlez9fd2l0
aF9zcWxpdGU6MX0leyE/X3dpdGhfc3FsaXRlOjB9CislaWYgMCV7P2J1aWxkX3NxbGl0ZToxfQog
CiAlcGFja2FnZSBzcWxpdGUKIFN1bW1hcnk6ICAgIFNRTGl0ZSBiYWNrZW5kIGZvciBPcGVuREJY
CkBAIC0xNzgsNzQgKzI5OSwzNSBAQAogJWVuZGlmCiAKIAotJWlmICV7P193aXRoX2ZpcmViaXJk
OjF9JXshP193aXRoX2ZpcmViaXJkOjB9Ci0KLSVwYWNrYWdlIGZpcmViaXJkCi1TdW1tYXJ5OiAg
ICBGaXJlYmlyZC9JbnRlcmJhc2UgYmFja2VuZCBmb3IgT3BlbkRCWAotU3VtbWFyeShkZS5VVEYt
OCk6ICAgIEZpcmViaXJkL0ludGVyYmFzZSBVbnRlcnN0w7x0enVuZyBmw7xyIE9wZW5EQlgKLVN1
bW1hcnkocGwuVVRGLTgpOglCYWNrZW5kIGJhenkgZGFueWNoIEZpcmViaXJkIGRsYSBiaWJsaW90
ZWtpIE9wZW5EQlgKLUdyb3VwOiAgICBEZXZlbG9wbWVudC9MaWJyYXJpZXMKLVJlcXVpcmVzOiAg
ICAle25hbWV9ID0gJXt2ZXJzaW9ufS0le3JlbGVhc2V9Ci1SZXF1aXJlczogICAgZmlyZWJpcmQK
LUJ1aWxkUmVxdWlyZXM6ICAgIGZpcmViaXJkLWRldmVsCi0KLSVkZXNjcmlwdGlvbiBmaXJlYmly
ZAotRmlyZWJpcmQvSW50ZXJiYXNlIGJhY2tlbmQgZm9yIHRoZSBPcGVuREJYIGRhdGFiYXNlIGFi
c3RyYWN0aW9uIGxpYnJhcnkKKyVpZiAwJXs/YnVpbGRfc3FsaXRlMzoxfQogCi0lZGVzY3JpcHRp
b24gZmlyZWJpcmQgLWwgZGUuVVRGLTgKLUZpcmViaXJkL0ludGVyYmFzZSBVbnRlcnN0w7x0enVu
ZyBmw7xyIGRpZSBPcGVuREJYIERhdGVuYmFua2JpYmxpb3RoZWsKLQotJWRlc2NyaXB0aW9uIGZp
cmViaXJkIC1sIHBsLlVURi04Ci1CYWNrZW5kIGJhenkgZGFueWNoIEZpcmViaXJkIGRsYSBiaWJs
aW90ZWtpIG9wZW5kYnguCi0KLSVlbmRpZgotCi0KLSVpZiAlez9fd2l0aF9tc3NxbDoxfSV7IT9f
d2l0aF9tc3NxbDowfQotCi0lcGFja2FnZSBtc3NxbAotU3VtbWFyeTogICAgTVMgU1FMIFNlcnZl
ciBiYWNrZW5kIGZvciBPcGVuREJYCi1TdW1tYXJ5KGRlLlVURi04KTogICAgTVMgU1FMIFNlcnZl
ciBVbnRlcnN0w7x0enVuZyBmw7xyIE9wZW5EQlgKLVN1bW1hcnkocGwuVVRGLTgpOglCYWNrZW5k
IGJhenkgZGFueWNoIE1TIFNRTCBkbGEgYmlibGlvdGVraSBPcGVuREJYCislcGFja2FnZSBzcWxp
dGUzCitTdW1tYXJ5OiAgICBTUUxpdGUzIGJhY2tlbmQgZm9yIE9wZW5EQlgKK1N1bW1hcnkoZGUu
VVRGLTgpOiAgICBTUUxpdGUzIFVudGVyc3TDvHR6dW5nIGbDvHIgT3BlbkRCWAorU3VtbWFyeShw
bC5VVEYtOCk6CUJhY2tlbmQgYmF6eSBkYW55Y2ggU1FMaXRlMyBkbGEgYmlibGlvdGVraSBPcGVu
REJYCiBHcm91cDogICAgRGV2ZWxvcG1lbnQvTGlicmFyaWVzCiBSZXF1aXJlczogICAgJXtuYW1l
fSA9ICV7dmVyc2lvbn0tJXtyZWxlYXNlfQotUmVxdWlyZXM6ICAgIGZyZWV0ZHMKLUJ1aWxkUmVx
dWlyZXM6ICAgIGZyZWV0ZHMtZGV2ZWwKLQotJWRlc2NyaXB0aW9uIG1zc3FsCi1NUyBTUUwgU2Vy
dmVyIGJhY2tlbmQgZm9yIHRoZSBPcGVuREJYIGRhdGFiYXNlIGFic3RyYWN0aW9uIGxpYnJhcnkK
LQotJWRlc2NyaXB0aW9uIG1zc3FsIC1sIGRlLlVURi04Ci1NUyBTUUwgU2VydmVyIFVudGVyc3TD
vHR6dW5nIGbDvHIgZGllIE9wZW5EQlggRGF0ZW5iYW5rYmlibGlvdGhlawotCi0lZGVzY3JpcHRp
b24gbXNzcWwgLWwgcGwuVVRGLTgKLUJhY2tlbmQgYmF6eSBkYW55Y2ggTVMgU1FMIGRsYSBiaWJs
aW90ZWtpIG9wZW5kYnguCi0KKyVpZiAwJXs/bWFuZHJpdmFfdmVyc2lvbn0KK1JlcXVpcmVzOiAg
ICBzcWxpdGUzCitCdWlsZFJlcXVpcmVzOiBzcWxpdGUzLWRldmVsCislZWxzZQorUmVxdWlyZXM6
ICAgIHNxbGl0ZSA+PSAzLjAKK0J1aWxkUmVxdWlyZXM6IHNxbGl0ZS1kZXZlbCA+PSAzLjAKICVl
bmRpZgogCislZGVzY3JpcHRpb24gc3FsaXRlMworU1FMaXRlMyBiYWNrZW5kIGZvciB0aGUgT3Bl
bkRCWCBkYXRhYmFzZSBhYnN0cmFjdGlvbiBsaWJyYXJ5CiAKLSVpZiAlez9fd2l0aF9vcmFjbGU6
MX0leyE/X3dpdGhfb3JhY2xlOjB9Ci0KLSVwYWNrYWdlIG9yYWNsZQotU3VtbWFyeTogICAgT3Jh
Y2xlIGJhY2tlbmQgZm9yIE9wZW5EQlgKLVN1bW1hcnkoZGUuVVRGLTgpOiAgICBPcmFjbGUgVW50
ZXJzdMO8dHp1bmcgZsO8ciBPcGVuREJYCi1TdW1tYXJ5KHBsLlVURi04KToJQmFja2VuZCBiYXp5
IGRhbnljaCBPcmFjbGUgZGxhIGJpYmxpb3Rla2kgT3BlbkRCWAotR3JvdXA6ICAgIERldmVsb3Bt
ZW50L0xpYnJhcmllcwotUmVxdWlyZXM6ICAgICV7bmFtZX0gPSAle3ZlcnNpb259LSV7cmVsZWFz
ZX0KLQotJWRlc2NyaXB0aW9uIG9yYWNsZQotT3JhY2xlIGN0bGliIGJhY2tlbmQgZm9yIHRoZSBP
cGVuREJYIGRhdGFiYXNlIGFic3RyYWN0aW9uIGxpYnJhcnkKLQotJWRlc2NyaXB0aW9uIG9yYWNs
ZSAtbCBkZS5VVEYtOAotT3JhY2xlIFVudGVyc3TDvHR6dW5nIGbDvHIgZGllIE9wZW5EQlggRGF0
ZW5iYW5rYmlibGlvdGhlaworJWRlc2NyaXB0aW9uIHNxbGl0ZTMgLWwgZGUuVVRGLTgKK1NxbGl0
ZTMgVW50ZXJzdMO8dHp1bmcgZsO8ciBkaWUgT3BlbkRCWCBEYXRlbmJhbmtiaWJsaW90aGVrCiAK
LSVkZXNjcmlwdGlvbiBvcmFjbGUgLWwgcGwuVVRGLTgKLUJhY2tlbmQgYmF6eSBkYW55Y2ggT3Jh
Y2xlIGRsYSBiaWJsaW90ZWtpIE9wZW5EQlguCislZGVzY3JpcHRpb24gc3FsaXRlMyAtbCBwbC5V
VEYtOAorQmFja2VuZCBiYXp5IGRhbnljaCBzcWxpdGUzIGRsYSBiaWJsaW90ZWtpIG9wZW5kYngu
CiAKICVlbmRpZgogCiAKLSVpZiAlez9fd2l0aF9zeWJhc2U6MX0leyE/X3dpdGhfc3liYXNlOjB9
CislaWYgMCV7P2J1aWxkX3N5YmFzZToxfQogCiAlcGFja2FnZSBzeWJhc2UKIFN1bW1hcnk6ICAg
IFN5YmFzZSBiYWNrZW5kIGZvciBPcGVuREJYCkBAIC0yNjgsNjIgKzM1MCwzNyBAQAogJWVuZGlm
CiAKIAotJWlmICV7IT9fd2l0aG91dF9vZGJjOjF9JXs/X3dpdGhvdXRfb2RiYzowfQotCi0lcGFj
a2FnZSBvZGJjCi1TdW1tYXJ5OiAgICBPREJDIGJhY2tlbmQgZm9yIE9wZW5EQlgKLVN1bW1hcnko
ZGUuVVRGLTgpOiAgICBPREJDIFVudGVyc3TDvHR6dW5nIGbDvHIgT3BlbkRCWAotU3VtbWFyeShw
bC5VVEYtOCk6CUJhY2tlbmQgYmF6eSBkYW55Y2ggT0RCQyBkbGEgYmlibGlvdGVraSBPcGVuREJY
Ci1Hcm91cDogICAgRGV2ZWxvcG1lbnQvTGlicmFyaWVzCi1SZXF1aXJlczogICAgJXtuYW1lfSA9
ICV7dmVyc2lvbn0tJXtyZWxlYXNlfQotUmVxdWlyZXM6ICAgIHVuaXhPREJDCi1CdWlsZFJlcXVp
cmVzOiAgICB1bml4T0RCQy1kZXZlbAotCi0lZGVzY3JpcHRpb24gb2RiYwotT0RCQyBiYWNrZW5k
IGZvciB0aGUgT3BlbkRCWCBkYXRhYmFzZSBhYnN0cmFjdGlvbiBsaWJyYXJ5Ci0KLSVkZXNjcmlw
dGlvbiBvZGJjIC1sIGRlLlVURi04Ci1PREJDIFVudGVyc3TDvHR6dW5nIGbDvHIgZGllIE9wZW5E
QlggRGF0ZW5iYW5rYmlibGlvdGhlawotCi0lZGVzY3JpcHRpb24gb2RiYyAtbCBwbC5VVEYtOAot
QmFja2VuZCBiYXp5IGRhbnljaCBPREJDIGRsYSBiaWJsaW90ZWtpIG9wZW5kYnguCi0KLSVlbmRp
ZgotCi0KICVwcmVwCiAKIAotJXNldHVwIC1xCislc2V0dXAgLXEgLW4gb3BlbmRieC0le3ZlcnNp
b259CiAKIAogJWJ1aWxkCiBDUFBGTEFHUz0iJXshP193aXRob3V0X215c3FsOi1JL3Vzci9pbmNs
dWRlL215c3FsfSAleyE/X3dpdGhvdXRfcGdzcWw6LUkvdXNyL2luY2x1ZGUvcGdzcWx9IjsgZXhw
b3J0IENQUEZMQUdTOwotTERGTEFHUz0iJXshP193aXRob3V0X215c3FsOi1ML3Vzci9saWIvbXlz
cWwgLUwvdXNyL2xpYjY0L215c3FsfSI7IGV4cG9ydCBMREZMQUdTOworTERGTEFHUz0iLUwvbGli
NjQgJXshP193aXRob3V0X215c3FsOi1ML3Vzci9saWIvbXlzcWwgLUwvdXNyL2xpYjY0L215c3Fs
fSI7IGV4cG9ydCBMREZMQUdTOwogJWNvbmZpZ3VyZSBcCiAgICAgLS1kaXNhYmxlLXJwYXRoIFwK
ICAgICAtLWRpc2FibGUtc3RhdGljIFwKICAgICAtLXdpdGgtYmFja2VuZHM9IlwKLSV7P193aXRo
X2ZpcmViaXJkOmZpcmViaXJkIH1cCi0lez9fd2l0aF9tc3NxbDptc3NxbCB9XAotJXshP193aXRo
b3V0X215c3FsOm15c3FsIH1cCi0leyE/X3dpdGhvdXRfb2RiYzpvZGJjIH1cCi0lez9fd2l0aF9v
cmFjbGU6b3JhY2xlIH1cCi0leyE/X3dpdGhvdXRfcGdzcWw6cGdzcWwgfVwKLSV7P193aXRoX3Nx
bGl0ZTpzcWxpdGUgfVwKLSV7IT9fd2l0aG91dF9zcWxpdGUzOnNxbGl0ZTMgfVwKLSV7P193aXRo
X3N5YmFzZTpzeWJhc2UgfVwKKyV7P2J1aWxkX2ZpcmViaXJkOmZpcmViaXJkIH1cCislez9idWls
ZF9tc3NxbDptc3NxbCB9XAorJXs/YnVpbGRfbXlzcWw6bXlzcWwgfVwKKyV7P2J1aWxkX29kYmM6
b2RiYyB9XAorJXs/YnVpbGRfb3JhY2xlOm9yYWNsZSB9XAorJXs/YnVpbGRfcGdzcWw6cGdzcWwg
fVwKKyV7P2J1aWxkX3NxbGl0ZTpzcWxpdGUgfVwKKyV7P2J1aWxkX3NxbGl0ZTM6c3FsaXRlMyB9
XAorJXs/YnVpbGRfc3liYXNlOnN5YmFzZSB9XAogIiB8fCBjYXQgY29uZmlnLmxvZwogCiAle19f
bWFrZX0gJXs/X3NtcF9tZmxhZ3N9CiAKIAogJWluc3RhbGwKLWlmIHRlc3QgIiV7YnVpbGRyb290
fSIgIT0gIi8iOyB0aGVuIHJtIC1yZiAle2J1aWxkcm9vdH07IGZpCiAle19fbWFrZX0gREVTVERJ
Uj0le2J1aWxkcm9vdH0gaW5zdGFsbAorcm0gJXtidWlsZHJvb3R9JXtfbGliZGlyfS9saWIqLiph
CiBybSAle2J1aWxkcm9vdH0le19saWJkaXJ9L29wZW5kYngvbGliKi4qYQotcm0gJXtidWlsZHJv
b3R9JXtfbGliZGlyfS9saWJvcGVuZGJ4LiphCi1ybSAle2J1aWxkcm9vdH0le19saWJkaXJ9L2xp
Ym9wZW5kYnhwbHVzLiphCiAlZmluZF9sYW5nICV7bmFtZX0KICVmaW5kX2xhbmcgJXtuYW1lfS11
dGlscwogCkBAIC0zNDAsOSArMzk3LDkgQEAKIAogJWZpbGVzIC1mICV7bmFtZX0ubGFuZwogJWRl
ZmF0dHIoLSxyb290LHJvb3QsLSkKLSV7X2xpYmRpcn0vb3BlbmRieAogJXtfbGliZGlyfS9saWJv
cGVuZGJ4LnNvLioKICV7X2xpYmRpcn0vbGlib3BlbmRieHBsdXMuc28uKgorJWRpciAle19saWJk
aXJ9L29wZW5kYngKICVkb2MgQVVUSE9SUyBDT1BZSU5HIENoYW5nZUxvZyBORVdTIFJFQURNRSBU
T0RPCiAKIApAQCAtMzY2LDc0ICs0MjMsODEgQEAKICMle19tYW5kaXJ9L21hbjMvKgogCiAKLSVp
ZiAleyE/X3dpdGhvdXRfbXlzcWw6MX0lez9fd2l0aG91dF9teXNxbDowfQotJWZpbGVzIG15c3Fs
CislaWYgMCV7P2J1aWxkX2ZpcmViaXJkOjF9CislZmlsZXMgZmlyZWJpcmQKICVkZWZhdHRyKC0s
cm9vdCxyb290LC0pCi0le19saWJkaXJ9L29wZW5kYngvbGlibXlzcWxiYWNrZW5kLnNvKgorJXtf
bGliZGlyfS9vcGVuZGJ4L2xpYmZpcmViaXJkYmFja2VuZC5zbyoKICVlbmRpZgogCiAKLSVpZiAl
eyE/X3dpdGhvdXRfcGdzcWw6MX0lez9fd2l0aG91dF9wZ3NxbDowfQotJWZpbGVzIHBnc3FsCisl
aWYgMCV7P2J1aWxkX21zc3FsOjF9CislZmlsZXMgbXNzcWwKICVkZWZhdHRyKC0scm9vdCxyb290
LC0pCi0le19saWJkaXJ9L29wZW5kYngvbGlicGdzcWxiYWNrZW5kLnNvKgorJXtfbGliZGlyfS9v
cGVuZGJ4L2xpYm1zc3FsYmFja2VuZC5zbyoKICVlbmRpZgogCiAKLSVpZiAleyE/X3dpdGhvdXRf
c3FsaXRlMzoxfSV7P193aXRob3V0X3NxbGl0ZTM6MH0KLSVmaWxlcyBzcWxpdGUzCislaWYgMCV7
P2J1aWxkX215c3FsOjF9CislZmlsZXMgbXlzcWwKICVkZWZhdHRyKC0scm9vdCxyb290LC0pCi0l
e19saWJkaXJ9L29wZW5kYngvbGlic3FsaXRlM2JhY2tlbmQuc28qCisle19saWJkaXJ9L29wZW5k
YngvbGlibXlzcWxiYWNrZW5kLnNvKgogJWVuZGlmCiAKIAotJWlmICV7P193aXRoX3NxbGl0ZTox
fSV7IT9fd2l0aF9zcWxpdGU6MH0KLSVmaWxlcyBzcWxpdGUKKyVpZiAwJXs/YnVpbGRfb2RiYzox
fQorJWZpbGVzIG9kYmMKICVkZWZhdHRyKC0scm9vdCxyb290LC0pCi0le19saWJkaXJ9L29wZW5k
YngvbGlic3FsaXRlYmFja2VuZC5zbyoKKyV7X2xpYmRpcn0vb3BlbmRieC9saWJvZGJjYmFja2Vu
ZC5zbyoKICVlbmRpZgogCiAKLSVpZiAlez9fd2l0aF9maXJlYmlyZDoxfSV7IT9fd2l0aF9maXJl
YmlyZDowfQotJWZpbGVzIGZpcmViaXJkCislaWYgMCV7P2J1aWxkX29yYWNsZToxfQorJWZpbGVz
IG9yYWNsZQogJWRlZmF0dHIoLSxyb290LHJvb3QsLSkKLSV7X2xpYmRpcn0vb3BlbmRieC9saWJm
aXJlYmlyZGJhY2tlbmQuc28qCisle19saWJkaXJ9L29wZW5kYngvbGlib3JhY2xlYmFja2VuZC5z
byoKICVlbmRpZgogCiAKLSVpZiAlez9fd2l0aF9tc3NxbDoxfSV7IT9fd2l0aF9tc3NxbDowfQot
JWZpbGVzIG1zc3FsCislaWYgMCV7P2J1aWxkX3Bnc3FsOjF9CislZmlsZXMgcGdzcWwKICVkZWZh
dHRyKC0scm9vdCxyb290LC0pCi0le19saWJkaXJ9L29wZW5kYngvbGlibXNzcWxiYWNrZW5kLnNv
KgorJXtfbGliZGlyfS9vcGVuZGJ4L2xpYnBnc3FsYmFja2VuZC5zbyoKICVlbmRpZgogCiAKLSVp
ZiAlez9fd2l0aF9vcmFjbGU6MX0leyE/X3dpdGhfb3JhY2xlOjB9Ci0lZmlsZXMgb3JhY2xlCisl
aWYgMCV7P2J1aWxkX3NxbGl0ZToxfQorJWZpbGVzIHNxbGl0ZQogJWRlZmF0dHIoLSxyb290LHJv
b3QsLSkKLSV7X2xpYmRpcn0vb3BlbmRieC9saWJvcmFjbGViYWNrZW5kLnNvKgorJXtfbGliZGly
fS9vcGVuZGJ4L2xpYnNxbGl0ZWJhY2tlbmQuc28qCiAlZW5kaWYKIAogCi0laWYgJXs/X3dpdGhf
c3liYXNlOjF9JXshP193aXRoX3N5YmFzZTowfQotJWZpbGVzIHN5YmFzZQorJWlmIDAlez9idWls
ZF9zcWxpdGUzOjF9CislZmlsZXMgc3FsaXRlMwogJWRlZmF0dHIoLSxyb290LHJvb3QsLSkKLSV7
X2xpYmRpcn0vb3BlbmRieC9saWJzeWJhc2ViYWNrZW5kLnNvKgorJXtfbGliZGlyfS9vcGVuZGJ4
L2xpYnNxbGl0ZTNiYWNrZW5kLnNvKgogJWVuZGlmCiAKIAotJWlmICV7P193aXRoX29kYmM6MX0l
eyE/X3dpdGhfb2RiYzowfQotJWZpbGVzIG9kYmMKKyVpZiAwJXs/YnVpbGRfc3liYXNlOjF9Cisl
ZmlsZXMgc3liYXNlCiAlZGVmYXR0cigtLHJvb3Qscm9vdCwtKQotJXtfbGliZGlyfS9vcGVuZGJ4
L2xpYm9kYmNiYWNrZW5kLnNvKgorJXtfbGliZGlyfS9vcGVuZGJ4L2xpYnN5YmFzZWJhY2tlbmQu
c28qCiAlZW5kaWYKIAogCiAlY2hhbmdlbG9nCi0qIFdlZCBTZXAgMDIgMjAwOSBOb3JiZXJ0IFNl
bmRldHpreSA8bm9yYmVydEBsaW51eG5ldHdvcmtzLmRlPiAxLjQuMy0xCi0tIEFkZGVkIHdvcmth
cm91bmRzIGZvciBSSEVMLCBDZW50T1MgYW5kIE1hbmRyaXZhIHJlZ2FyZGluZyByZWFkbGluZQot
LSBGaXhlZCBvZGJjIHBhY2thZ2UgaW4gc3BlYyBmaWxlCisqIE1vbiBBcHIgMTkgMjAxMCBOb3Ji
ZXJ0IFNlbmRldHpreSA8bm9yYmVydEBsaW51eG5ldHdvcmtzLmRlPiAxLjQuNS0xCistIENlbnRy
YWxpemVkIGRlY2lzaW9ucyB3aGljaCBiYWNrZW5kcyB0byBidWlsZAorLSBCdWlsZCBmaXJlYmly
ZCwgbXNzcWwgYW5kIHN5YmFzZSBiYWNrZW5kcyBmb3Igc3VwcG9ydGVkIGRpc3RyaWJ1dGlvbnMK
Ky0gUmVvcmRlcmVkIGJhY2tlbmRzCisKKyogV2VkIFNlcCAzMCAyMDA5IE5vcmJlcnQgU2VuZGV0
emt5IDxub3JiZXJ0QGxpbnV4bmV0d29ya3MuZGU+IDEuNC40LTEKKy0gRml4ZWQgaW5jbHVkZWQg
YmFja2VuZHMgaW4gbWFpbiBwYWNrYWdlCistIEZpeGVkIG9kYnggcGFja2FnZQogLSBGaXhlZCBi
dWlsZHMgb24geDg2XzY0IHBsYXRmb3JtcworLSBDb21wYXRpYmxlIHdpdGggT3BlblNVU0UgYnVp
bGQgc2VydmljZQorLSBBZGRlZCB3b3JrYXJvdW5kcyBmb3IgUkhFTCwgQ2VudE9TIGFuZCBNYW5k
cml2YSByZWdhcmRpbmcgcmVhZGxpbmUKIAogKiBTdW4gQXByIDE5IDIwMDkgTm9yYmVydCBTZW5k
ZXR6a3kgPG5vcmJlcnRAbGludXhuZXR3b3Jrcy5kZT4gMS40LjEtMQogLSBBZGRlZCBvcGVuZGJ4
cGx1cy5wYwpkaWZmIC11ciBvcGVuZGJ4Lm9yaWcvb3BlbmRieC5zcGVjLmluIG9wZW5kYngvb3Bl
bmRieC5zcGVjLmluCi0tLSBvcGVuZGJ4Lm9yaWcvb3BlbmRieC5zcGVjLmluCTIwMjMtMDUtMzAg
MjA6Mjc6NDIuNTg1Mzg5MDc2ICswMzAwCisrKyBvcGVuZGJ4L29wZW5kYnguc3BlYy5pbgkyMDEw
LTA4LTAxIDA2OjA4OjQxLjAwMDAwMDAwMCArMDQwMApAQCAtMywyNCArMyw3OCBAQAogIwogIyAg
QnkgZGVmYXVsdCBPcGVuREJYIGlzIGJ1aWxkIHdpdGggdGhpcyBiYWNrZW5kczoKICMgIC0gbXlz
cWwKLSMgIC0gcGdzcWwKICMgIC0gb2RiYworIyAgLSBwZ3NxbAogIyAgLSBzcWxpdGUzCiAjICB0
byBkaXNhYmxlIHVzZSAtLXdpdGhvdXQgW21vZHVsZS1uYW1lXQogIwogIyAgT3B0aW9uYWwgc3Vw
cG9ydGVkIGJhY2tlbmRzIGFyZToKICMgIC0gZmlyZWJpcmQKICMgIC0gbXNzcWwKLSMgIC0gc3Fs
aXRlCiAjICAtIG9yYWNsZQorIyAgLSBzcWxpdGUKICMgIC0gc3liYXNlCiAjICB0byBlbmFibGUg
dXNlIC0td2l0aCBbbW9kdWxlLW5hbWVdCiAjCiAKKyVpZiAwJXs/X3dpdGhfZmlyZWJpcmQ6MX0K
KyAgJWRlZmluZSBidWlsZF9maXJlYmlyZCAxCislZW5kaWYKKyVpZiAwJXshP193aXRob3V0X2Zp
cmViaXJkOjF9ICYmIDAlez9mZWRvcmF9ID49IDEyCisgICVkZWZpbmUgYnVpbGRfZmlyZWJpcmQg
MQorJWVuZGlmCislaWYgMCV7IT9fd2l0aG91dF9maXJlYmlyZDoxfSAmJiAwJXs/c3VzZV92ZXJz
aW9ufSA+PSAxMTIwCisgICVkZWZpbmUgYnVpbGRfZmlyZWJpcmQgMQorJWVuZGlmCisKKyVpZiAw
JXs/X3dpdGhfbXNzcWw6MX0KKyAgJWRlZmluZSBidWlsZF9tc3NxbCAxCislZW5kaWYKKyVpZiAw
JXshP193aXRob3V0X21zc3FsOjF9ICYmIDAlez9mZWRvcmF9ID49IDkKKyAgJWRlZmluZSBidWls
ZF9tc3NxbCAxCislZW5kaWYKKyVpZiAwJXshP193aXRob3V0X21zc3FsOjF9ICYmIDAlez9tZGt2
ZXJzaW9ufSA+PSAyMDA5MTAKKyAgJWRlZmluZSBidWlsZF9tc3NxbCAxCislZW5kaWYKKworJWlm
IDAleyE/X3dpdGhvdXRfbXlzcWw6MX0KKyAgJWRlZmluZSBidWlsZF9teXNxbCAxCislZW5kaWYK
KworJWlmIDAleyE/X3dpdGhvdXRfb2RiYzoxfQorICAlZGVmaW5lIGJ1aWxkX29kYmMgMQorJWVu
ZGlmCisKKyVpZiAwJXs/X3dpdGhfb3JhY2xlOjF9CisgICVkZWZpbmUgYnVpbGRfb3JhY2xlIDEK
KyVlbmRpZgorCislaWYgMCV7IT9fd2l0aG91dF9wZ3NxbDoxfQorICAlZGVmaW5lIGJ1aWxkX3Bn
c3FsIDEKKyVlbmRpZgorCislaWYgMCV7P193aXRoX3NxbGl0ZToxfQorICAlZGVmaW5lIGJ1aWxk
X3NxbGl0ZSAxCislZW5kaWYKKworJWlmIDAleyE/X3dpdGhvdXRfc3FsaXRlMzoxfQorICAlZGVm
aW5lIGJ1aWxkX3NxbGl0ZTMgMQorJWVuZGlmCisKKyVpZiAwJXs/X3dpdGhfc3liYXNlOjF9Cisg
ICVkZWZpbmUgYnVpbGRfc3liYXNlIDEKKyVlbmRpZgorJWlmIDAleyE/X3dpdGhvdXRfc3liYXNl
OjF9ICYmIDAlez9mZWRvcmF9ID49IDkKKyAgJWRlZmluZSBidWlsZF9tc3NxbCAxCislZW5kaWYK
KyVpZiAwJXshP193aXRob3V0X3N5YmFzZToxfSAmJiAwJXs/bWRrdmVyc2lvbn0gPj0gMjAwOTEw
CisgICVkZWZpbmUgYnVpbGRfbXNzcWwgMQorJWVuZGlmCisKIAogTmFtZTogICAgQFBBQ0tBR0VA
CiBWZXJzaW9uOiAgICBAVkVSU0lPTkAKLVJlbGVhc2U6ICAgIDElez9kaXN0fQorUmVsZWFzZTog
ICAgMQogU3VtbWFyeTogICAgVW5pZmllZCBkYXRhYmFzZSBsYXllciB3aXRoIGEgY2xlYW4gYW5k
IGxpZ2h0d2VpZ2h0IGludGVyZmFjZQogU3VtbWFyeShkZS5VVEYtOCk6ICAgIEJpYmxpb3RoZWsg
enVtIFp1Z3JpZmYgYXVmIERhdGVuYmFua2VuIMO8YmVyIGVpbmUgZWluaGVpdGxpY2hlIFNjaG5p
dHRzdGVsbGUKIFN1bW1hcnkocGwuVVRGLTgpOiAgICBSb3pzemVyemFuYSBiaWJsaW90ZWthIGRv
c3TEmXB1IGRvIGJheiBkYW55Y2gKQEAgLTI4LDcgKzgyLDcgQEAKIExpY2Vuc2U6ICAgIExHUEwK
IFVSTDogICAgaHR0cDovL3d3dy5saW51eG5ldHdvcmtzLmRlL29wZW5kYngvZG93bmxvYWQvCiBT
b3VyY2UwOiAgICAle25hbWV9LSV7dmVyc2lvbn0udGFyLmd6Ci1CdWlsZFJvb3Q6ICAgICV7X3Rt
cHBhdGh9LyV7bmFtZX0tJXt2ZXJzaW9ufS0le3JlbGVhc2V9LXJvb3QtJSgle19faWRfdX0gLW4p
CitCdWlsZFJvb3Q6ICAgICV7X3RtcHBhdGh9LyV7bmFtZX0tJXt2ZXJzaW9ufS1idWlsZAogQnVp
bGRSZXF1aXJlczogICAgZ2NjLWMrKywgZ2V0dGV4dAogCiAlZGVzY3JpcHRpb24KQEAgLTU2LDcg
KzExMCw3IEBACiBHcm91cDogICAgQXBwbGljYXRpb25zL0RhdGFiYXNlcwogUmVxdWlyZXM6ICAg
ICV7bmFtZX0gPj0gJXt2ZXJzaW9ufQogUmVxdWlyZXM6ICAgIHJlYWRsaW5lLCBuY3Vyc2VzCi1C
dWlsZFJlcXVpcmVzOiAgICBnY2MtYysrLCByZWFkbGluZSwgcmVhZGxpbmUtZGV2ZWwsIG5jdXJz
ZXMsIG5jdXJzZXMtZGV2ZWwKK0J1aWxkUmVxdWlyZXM6ICAgIGdjYy1jKyssIGdldHRleHQsIHJl
YWRsaW5lLCByZWFkbGluZS1kZXZlbCwgbmN1cnNlcywgbmN1cnNlcy1kZXZlbAogCiAlZGVzY3Jp
cHRpb24gdXRpbHMKIFV0aWxpdHkgYXBwbGljYXRpb24gZm9yIG1hbmlwdWxhdGluZyBkYXRhYmFz
ZSBjb250ZW50IGVpdGhlciBpbnRlcmFjdGl2ZWx5IGJ5CkBAIC04Niw3ICsxNDAsNTMgQEAKIFBs
aWtpIG5hZ8WCw7N3a293ZSBiaWJsaW90ZWtpIG9wZW5kYnguCiAKIAotJWlmICV7IT9fd2l0aG91
dF9teXNxbDoxfSV7P193aXRob3V0X215c3FsOjB9CislaWYgMCV7P2J1aWxkX2ZpcmViaXJkOjF9
CisKKyVwYWNrYWdlIGZpcmViaXJkCitTdW1tYXJ5OiAgICBGaXJlYmlyZC9JbnRlcmJhc2UgYmFj
a2VuZCBmb3IgT3BlbkRCWAorU3VtbWFyeShkZS5VVEYtOCk6ICAgIEZpcmViaXJkL0ludGVyYmFz
ZSBVbnRlcnN0w7x0enVuZyBmw7xyIE9wZW5EQlgKK1N1bW1hcnkocGwuVVRGLTgpOglCYWNrZW5k
IGJhenkgZGFueWNoIEZpcmViaXJkIGRsYSBiaWJsaW90ZWtpIE9wZW5EQlgKK0dyb3VwOiAgICBE
ZXZlbG9wbWVudC9MaWJyYXJpZXMKK1JlcXVpcmVzOiAgICAle25hbWV9ID0gJXt2ZXJzaW9ufS0l
e3JlbGVhc2V9CitSZXF1aXJlczogICAgZmlyZWJpcmQKK0J1aWxkUmVxdWlyZXM6ICAgIGZpcmVi
aXJkLWRldmVsCisKKyVkZXNjcmlwdGlvbiBmaXJlYmlyZAorRmlyZWJpcmQvSW50ZXJiYXNlIGJh
Y2tlbmQgZm9yIHRoZSBPcGVuREJYIGRhdGFiYXNlIGFic3RyYWN0aW9uIGxpYnJhcnkKKworJWRl
c2NyaXB0aW9uIGZpcmViaXJkIC1sIGRlLlVURi04CitGaXJlYmlyZC9JbnRlcmJhc2UgVW50ZXJz
dMO8dHp1bmcgZsO8ciBkaWUgT3BlbkRCWCBEYXRlbmJhbmtiaWJsaW90aGVrCisKKyVkZXNjcmlw
dGlvbiBmaXJlYmlyZCAtbCBwbC5VVEYtOAorQmFja2VuZCBiYXp5IGRhbnljaCBGaXJlYmlyZCBk
bGEgYmlibGlvdGVraSBvcGVuZGJ4LgorCislZW5kaWYKKworCislaWYgMCV7P2J1aWxkX21zc3Fs
OjF9CisKKyVwYWNrYWdlIG1zc3FsCitTdW1tYXJ5OiAgICBNUyBTUUwgU2VydmVyIGJhY2tlbmQg
Zm9yIE9wZW5EQlgKK1N1bW1hcnkoZGUuVVRGLTgpOiAgICBNUyBTUUwgU2VydmVyIFVudGVyc3TD
vHR6dW5nIGbDvHIgT3BlbkRCWAorU3VtbWFyeShwbC5VVEYtOCk6CUJhY2tlbmQgYmF6eSBkYW55
Y2ggTVMgU1FMIGRsYSBiaWJsaW90ZWtpIE9wZW5EQlgKK0dyb3VwOiAgICBEZXZlbG9wbWVudC9M
aWJyYXJpZXMKK1JlcXVpcmVzOiAgICAle25hbWV9ID0gJXt2ZXJzaW9ufS0le3JlbGVhc2V9CitS
ZXF1aXJlczogICAgZnJlZXRkcworQnVpbGRSZXF1aXJlczogICAgZnJlZXRkcy1kZXZlbAorCisl
ZGVzY3JpcHRpb24gbXNzcWwKK01TIFNRTCBTZXJ2ZXIgYmFja2VuZCBmb3IgdGhlIE9wZW5EQlgg
ZGF0YWJhc2UgYWJzdHJhY3Rpb24gbGlicmFyeQorCislZGVzY3JpcHRpb24gbXNzcWwgLWwgZGUu
VVRGLTgKK01TIFNRTCBTZXJ2ZXIgVW50ZXJzdMO8dHp1bmcgZsO8ciBkaWUgT3BlbkRCWCBEYXRl
bmJhbmtiaWJsaW90aGVrCisKKyVkZXNjcmlwdGlvbiBtc3NxbCAtbCBwbC5VVEYtOAorQmFja2Vu
ZCBiYXp5IGRhbnljaCBNUyBTUUwgZGxhIGJpYmxpb3Rla2kgb3BlbmRieC4KKworJWVuZGlmCisK
KworJWlmIDAlez9idWlsZF9teXNxbDoxfQogCiAlcGFja2FnZSBteXNxbAogU3VtbWFyeTogICAg
TXlTUUwgYmFja2VuZCBmb3IgT3BlbkRCWApAQCAtMTA5LDcgKzIwOSw1MSBAQAogJWVuZGlmCiAK
IAotJWlmICV7IT9fd2l0aG91dF9wZ3NxbDoxfSV7P193aXRob3V0X3Bnc3FsOjB9CislaWYgMCV7
P2J1aWxkX29kYmM6MX0KKworJXBhY2thZ2Ugb2RiYworU3VtbWFyeTogICAgT0RCQyBiYWNrZW5k
IGZvciBPcGVuREJYCitTdW1tYXJ5KGRlLlVURi04KTogICAgT0RCQyBVbnRlcnN0w7x0enVuZyBm
w7xyIE9wZW5EQlgKK1N1bW1hcnkocGwuVVRGLTgpOglCYWNrZW5kIGJhenkgZGFueWNoIE9EQkMg
ZGxhIGJpYmxpb3Rla2kgT3BlbkRCWAorR3JvdXA6ICAgIERldmVsb3BtZW50L0xpYnJhcmllcwor
UmVxdWlyZXM6ICAgICV7bmFtZX0gPSAle3ZlcnNpb259LSV7cmVsZWFzZX0KK1JlcXVpcmVzOiAg
ICB1bml4T0RCQworQnVpbGRSZXF1aXJlczogICAgdW5peE9EQkMtZGV2ZWwKKworJWRlc2NyaXB0
aW9uIG9kYmMKK09EQkMgYmFja2VuZCBmb3IgdGhlIE9wZW5EQlggZGF0YWJhc2UgYWJzdHJhY3Rp
b24gbGlicmFyeQorCislZGVzY3JpcHRpb24gb2RiYyAtbCBkZS5VVEYtOAorT0RCQyBVbnRlcnN0
w7x0enVuZyBmw7xyIGRpZSBPcGVuREJYIERhdGVuYmFua2JpYmxpb3RoZWsKKworJWRlc2NyaXB0
aW9uIG9kYmMgLWwgcGwuVVRGLTgKK0JhY2tlbmQgYmF6eSBkYW55Y2ggT0RCQyBkbGEgYmlibGlv
dGVraSBvcGVuZGJ4LgorCislZW5kaWYKKworCislaWYgMCV7P2J1aWxkX29yYWNsZToxfQorCisl
cGFja2FnZSBvcmFjbGUKK1N1bW1hcnk6ICAgIE9yYWNsZSBiYWNrZW5kIGZvciBPcGVuREJYCitT
dW1tYXJ5KGRlLlVURi04KTogICAgT3JhY2xlIFVudGVyc3TDvHR6dW5nIGbDvHIgT3BlbkRCWAor
U3VtbWFyeShwbC5VVEYtOCk6CUJhY2tlbmQgYmF6eSBkYW55Y2ggT3JhY2xlIGRsYSBiaWJsaW90
ZWtpIE9wZW5EQlgKK0dyb3VwOiAgICBEZXZlbG9wbWVudC9MaWJyYXJpZXMKK1JlcXVpcmVzOiAg
ICAle25hbWV9ID0gJXt2ZXJzaW9ufS0le3JlbGVhc2V9CisKKyVkZXNjcmlwdGlvbiBvcmFjbGUK
K09yYWNsZSBjdGxpYiBiYWNrZW5kIGZvciB0aGUgT3BlbkRCWCBkYXRhYmFzZSBhYnN0cmFjdGlv
biBsaWJyYXJ5CisKKyVkZXNjcmlwdGlvbiBvcmFjbGUgLWwgZGUuVVRGLTgKK09yYWNsZSBVbnRl
cnN0w7x0enVuZyBmw7xyIGRpZSBPcGVuREJYIERhdGVuYmFua2JpYmxpb3RoZWsKKworJWRlc2Ny
aXB0aW9uIG9yYWNsZSAtbCBwbC5VVEYtOAorQmFja2VuZCBiYXp5IGRhbnljaCBPcmFjbGUgZGxh
IGJpYmxpb3Rla2kgT3BlbkRCWC4KKworJWVuZGlmCisKKworJWlmIDAlez9idWlsZF9wZ3NxbDox
fQogCiAlcGFja2FnZSBwZ3NxbAogU3VtbWFyeTogICAgUG9zdGdyZVNRTCBiYWNrZW5kIGZvciBP
cGVuREJYCkBAIC0xMzIsMzAgKzI3Niw3IEBACiAlZW5kaWYKIAogCi0laWYgJXshP193aXRob3V0
X3NxbGl0ZTM6MX0lez9fd2l0aG91dF9zcWxpdGUzOjB9Ci0KLSVwYWNrYWdlIHNxbGl0ZTMKLVN1
bW1hcnk6ICAgIFNRTGl0ZTMgYmFja2VuZCBmb3IgT3BlbkRCWAotU3VtbWFyeShkZS5VVEYtOCk6
ICAgIFNRTGl0ZTMgVW50ZXJzdMO8dHp1bmcgZsO8ciBPcGVuREJYCi1TdW1tYXJ5KHBsLlVURi04
KToJQmFja2VuZCBiYXp5IGRhbnljaCBTUUxpdGUzIGRsYSBiaWJsaW90ZWtpIE9wZW5EQlgKLUdy
b3VwOiAgICBEZXZlbG9wbWVudC9MaWJyYXJpZXMKLVJlcXVpcmVzOiAgICAle25hbWV9ID0gJXt2
ZXJzaW9ufS0le3JlbGVhc2V9Ci1SZXF1aXJlczogICAgc3FsaXRlID49IDMuMAotQnVpbGRSZXF1
aXJlczogICAgc3FsaXRlLWRldmVsID49IDMuMAotCi0lZGVzY3JpcHRpb24gc3FsaXRlMwotU1FM
aXRlMyBiYWNrZW5kIGZvciB0aGUgT3BlbkRCWCBkYXRhYmFzZSBhYnN0cmFjdGlvbiBsaWJyYXJ5
Ci0KLSVkZXNjcmlwdGlvbiBzcWxpdGUzIC1sIGRlLlVURi04Ci1TcWxpdGUzIFVudGVyc3TDvHR6
dW5nIGbDvHIgZGllIE9wZW5EQlggRGF0ZW5iYW5rYmlibGlvdGhlawotCi0lZGVzY3JpcHRpb24g
c3FsaXRlMyAtbCBwbC5VVEYtOAotQmFja2VuZCBiYXp5IGRhbnljaCBzcWxpdGUzIGRsYSBiaWJs
aW90ZWtpIG9wZW5kYnguCi0KLSVlbmRpZgotCi0KLSVpZiAlez9fd2l0aF9zcWxpdGU6MX0leyE/
X3dpdGhfc3FsaXRlOjB9CislaWYgMCV7P2J1aWxkX3NxbGl0ZToxfQogCiAlcGFja2FnZSBzcWxp
dGUKIFN1bW1hcnk6ICAgIFNRTGl0ZSBiYWNrZW5kIGZvciBPcGVuREJYCkBAIC0xNzgsNzQgKzI5
OSwzNSBAQAogJWVuZGlmCiAKIAotJWlmICV7P193aXRoX2ZpcmViaXJkOjF9JXshP193aXRoX2Zp
cmViaXJkOjB9Ci0KLSVwYWNrYWdlIGZpcmViaXJkCi1TdW1tYXJ5OiAgICBGaXJlYmlyZC9JbnRl
cmJhc2UgYmFja2VuZCBmb3IgT3BlbkRCWAotU3VtbWFyeShkZS5VVEYtOCk6ICAgIEZpcmViaXJk
L0ludGVyYmFzZSBVbnRlcnN0w7x0enVuZyBmw7xyIE9wZW5EQlgKLVN1bW1hcnkocGwuVVRGLTgp
OglCYWNrZW5kIGJhenkgZGFueWNoIEZpcmViaXJkIGRsYSBiaWJsaW90ZWtpIE9wZW5EQlgKLUdy
b3VwOiAgICBEZXZlbG9wbWVudC9MaWJyYXJpZXMKLVJlcXVpcmVzOiAgICAle25hbWV9ID0gJXt2
ZXJzaW9ufS0le3JlbGVhc2V9Ci1SZXF1aXJlczogICAgZmlyZWJpcmQKLUJ1aWxkUmVxdWlyZXM6
ICAgIGZpcmViaXJkLWRldmVsCi0KLSVkZXNjcmlwdGlvbiBmaXJlYmlyZAotRmlyZWJpcmQvSW50
ZXJiYXNlIGJhY2tlbmQgZm9yIHRoZSBPcGVuREJYIGRhdGFiYXNlIGFic3RyYWN0aW9uIGxpYnJh
cnkKKyVpZiAwJXs/YnVpbGRfc3FsaXRlMzoxfQogCi0lZGVzY3JpcHRpb24gZmlyZWJpcmQgLWwg
ZGUuVVRGLTgKLUZpcmViaXJkL0ludGVyYmFzZSBVbnRlcnN0w7x0enVuZyBmw7xyIGRpZSBPcGVu
REJYIERhdGVuYmFua2JpYmxpb3RoZWsKLQotJWRlc2NyaXB0aW9uIGZpcmViaXJkIC1sIHBsLlVU
Ri04Ci1CYWNrZW5kIGJhenkgZGFueWNoIEZpcmViaXJkIGRsYSBiaWJsaW90ZWtpIG9wZW5kYngu
Ci0KLSVlbmRpZgotCi0KLSVpZiAlez9fd2l0aF9tc3NxbDoxfSV7IT9fd2l0aF9tc3NxbDowfQot
Ci0lcGFja2FnZSBtc3NxbAotU3VtbWFyeTogICAgTVMgU1FMIFNlcnZlciBiYWNrZW5kIGZvciBP
cGVuREJYCi1TdW1tYXJ5KGRlLlVURi04KTogICAgTVMgU1FMIFNlcnZlciBVbnRlcnN0w7x0enVu
ZyBmw7xyIE9wZW5EQlgKLVN1bW1hcnkocGwuVVRGLTgpOglCYWNrZW5kIGJhenkgZGFueWNoIE1T
IFNRTCBkbGEgYmlibGlvdGVraSBPcGVuREJYCislcGFja2FnZSBzcWxpdGUzCitTdW1tYXJ5OiAg
ICBTUUxpdGUzIGJhY2tlbmQgZm9yIE9wZW5EQlgKK1N1bW1hcnkoZGUuVVRGLTgpOiAgICBTUUxp
dGUzIFVudGVyc3TDvHR6dW5nIGbDvHIgT3BlbkRCWAorU3VtbWFyeShwbC5VVEYtOCk6CUJhY2tl
bmQgYmF6eSBkYW55Y2ggU1FMaXRlMyBkbGEgYmlibGlvdGVraSBPcGVuREJYCiBHcm91cDogICAg
RGV2ZWxvcG1lbnQvTGlicmFyaWVzCiBSZXF1aXJlczogICAgJXtuYW1lfSA9ICV7dmVyc2lvbn0t
JXtyZWxlYXNlfQotUmVxdWlyZXM6ICAgIGZyZWV0ZHMKLUJ1aWxkUmVxdWlyZXM6ICAgIGZyZWV0
ZHMtZGV2ZWwKLQotJWRlc2NyaXB0aW9uIG1zc3FsCi1NUyBTUUwgU2VydmVyIGJhY2tlbmQgZm9y
IHRoZSBPcGVuREJYIGRhdGFiYXNlIGFic3RyYWN0aW9uIGxpYnJhcnkKLQotJWRlc2NyaXB0aW9u
IG1zc3FsIC1sIGRlLlVURi04Ci1NUyBTUUwgU2VydmVyIFVudGVyc3TDvHR6dW5nIGbDvHIgZGll
IE9wZW5EQlggRGF0ZW5iYW5rYmlibGlvdGhlawotCi0lZGVzY3JpcHRpb24gbXNzcWwgLWwgcGwu
VVRGLTgKLUJhY2tlbmQgYmF6eSBkYW55Y2ggTVMgU1FMIGRsYSBiaWJsaW90ZWtpIG9wZW5kYngu
Ci0KKyVpZiAwJXs/bWFuZHJpdmFfdmVyc2lvbn0KK1JlcXVpcmVzOiAgICBzcWxpdGUzCitCdWls
ZFJlcXVpcmVzOiBzcWxpdGUzLWRldmVsCislZWxzZQorUmVxdWlyZXM6ICAgIHNxbGl0ZSA+PSAz
LjAKK0J1aWxkUmVxdWlyZXM6IHNxbGl0ZS1kZXZlbCA+PSAzLjAKICVlbmRpZgogCislZGVzY3Jp
cHRpb24gc3FsaXRlMworU1FMaXRlMyBiYWNrZW5kIGZvciB0aGUgT3BlbkRCWCBkYXRhYmFzZSBh
YnN0cmFjdGlvbiBsaWJyYXJ5CiAKLSVpZiAlez9fd2l0aF9vcmFjbGU6MX0leyE/X3dpdGhfb3Jh
Y2xlOjB9Ci0KLSVwYWNrYWdlIG9yYWNsZQotU3VtbWFyeTogICAgT3JhY2xlIGJhY2tlbmQgZm9y
IE9wZW5EQlgKLVN1bW1hcnkoZGUuVVRGLTgpOiAgICBPcmFjbGUgVW50ZXJzdMO8dHp1bmcgZsO8
ciBPcGVuREJYCi1TdW1tYXJ5KHBsLlVURi04KToJQmFja2VuZCBiYXp5IGRhbnljaCBPcmFjbGUg
ZGxhIGJpYmxpb3Rla2kgT3BlbkRCWAotR3JvdXA6ICAgIERldmVsb3BtZW50L0xpYnJhcmllcwot
UmVxdWlyZXM6ICAgICV7bmFtZX0gPSAle3ZlcnNpb259LSV7cmVsZWFzZX0KLQotJWRlc2NyaXB0
aW9uIG9yYWNsZQotT3JhY2xlIGN0bGliIGJhY2tlbmQgZm9yIHRoZSBPcGVuREJYIGRhdGFiYXNl
IGFic3RyYWN0aW9uIGxpYnJhcnkKLQotJWRlc2NyaXB0aW9uIG9yYWNsZSAtbCBkZS5VVEYtOAot
T3JhY2xlIFVudGVyc3TDvHR6dW5nIGbDvHIgZGllIE9wZW5EQlggRGF0ZW5iYW5rYmlibGlvdGhl
aworJWRlc2NyaXB0aW9uIHNxbGl0ZTMgLWwgZGUuVVRGLTgKK1NxbGl0ZTMgVW50ZXJzdMO8dHp1
bmcgZsO8ciBkaWUgT3BlbkRCWCBEYXRlbmJhbmtiaWJsaW90aGVrCiAKLSVkZXNjcmlwdGlvbiBv
cmFjbGUgLWwgcGwuVVRGLTgKLUJhY2tlbmQgYmF6eSBkYW55Y2ggT3JhY2xlIGRsYSBiaWJsaW90
ZWtpIE9wZW5EQlguCislZGVzY3JpcHRpb24gc3FsaXRlMyAtbCBwbC5VVEYtOAorQmFja2VuZCBi
YXp5IGRhbnljaCBzcWxpdGUzIGRsYSBiaWJsaW90ZWtpIG9wZW5kYnguCiAKICVlbmRpZgogCiAK
LSVpZiAlez9fd2l0aF9zeWJhc2U6MX0leyE/X3dpdGhfc3liYXNlOjB9CislaWYgMCV7P2J1aWxk
X3N5YmFzZToxfQogCiAlcGFja2FnZSBzeWJhc2UKIFN1bW1hcnk6ICAgIFN5YmFzZSBiYWNrZW5k
IGZvciBPcGVuREJYCkBAIC0yNjgsNjIgKzM1MCwzNyBAQAogJWVuZGlmCiAKIAotJWlmICV7IT9f
d2l0aG91dF9vZGJjOjF9JXs/X3dpdGhvdXRfb2RiYzowfQotCi0lcGFja2FnZSBvZGJjCi1TdW1t
YXJ5OiAgICBPREJDIGJhY2tlbmQgZm9yIE9wZW5EQlgKLVN1bW1hcnkoZGUuVVRGLTgpOiAgICBP
REJDIFVudGVyc3TDvHR6dW5nIGbDvHIgT3BlbkRCWAotU3VtbWFyeShwbC5VVEYtOCk6CUJhY2tl
bmQgYmF6eSBkYW55Y2ggT0RCQyBkbGEgYmlibGlvdGVraSBPcGVuREJYCi1Hcm91cDogICAgRGV2
ZWxvcG1lbnQvTGlicmFyaWVzCi1SZXF1aXJlczogICAgJXtuYW1lfSA9ICV7dmVyc2lvbn0tJXty
ZWxlYXNlfQotUmVxdWlyZXM6ICAgIHVuaXhPREJDCi1CdWlsZFJlcXVpcmVzOiAgICB1bml4T0RC
Qy1kZXZlbAotCi0lZGVzY3JpcHRpb24gb2RiYwotT0RCQyBiYWNrZW5kIGZvciB0aGUgT3BlbkRC
WCBkYXRhYmFzZSBhYnN0cmFjdGlvbiBsaWJyYXJ5Ci0KLSVkZXNjcmlwdGlvbiBvZGJjIC1sIGRl
LlVURi04Ci1PREJDIFVudGVyc3TDvHR6dW5nIGbDvHIgZGllIE9wZW5EQlggRGF0ZW5iYW5rYmli
bGlvdGhlawotCi0lZGVzY3JpcHRpb24gb2RiYyAtbCBwbC5VVEYtOAotQmFja2VuZCBiYXp5IGRh
bnljaCBPREJDIGRsYSBiaWJsaW90ZWtpIG9wZW5kYnguCi0KLSVlbmRpZgotCi0KICVwcmVwCiAK
IAotJXNldHVwIC1xCislc2V0dXAgLXEgLW4gb3BlbmRieC0le3ZlcnNpb259CiAKIAogJWJ1aWxk
CiBDUFBGTEFHUz0iJXshP193aXRob3V0X215c3FsOi1JL3Vzci9pbmNsdWRlL215c3FsfSAleyE/
X3dpdGhvdXRfcGdzcWw6LUkvdXNyL2luY2x1ZGUvcGdzcWx9IjsgZXhwb3J0IENQUEZMQUdTOwot
TERGTEFHUz0iJXshP193aXRob3V0X215c3FsOi1ML3Vzci9saWIvbXlzcWwgLUwvdXNyL2xpYjY0
L215c3FsfSI7IGV4cG9ydCBMREZMQUdTOworTERGTEFHUz0iLUwvbGliNjQgJXshP193aXRob3V0
X215c3FsOi1ML3Vzci9saWIvbXlzcWwgLUwvdXNyL2xpYjY0L215c3FsfSI7IGV4cG9ydCBMREZM
QUdTOwogJWNvbmZpZ3VyZSBcCiAgICAgLS1kaXNhYmxlLXJwYXRoIFwKICAgICAtLWRpc2FibGUt
c3RhdGljIFwKICAgICAtLXdpdGgtYmFja2VuZHM9IlwKLSV7P193aXRoX2ZpcmViaXJkOmZpcmVi
aXJkIH1cCi0lez9fd2l0aF9tc3NxbDptc3NxbCB9XAotJXshP193aXRob3V0X215c3FsOm15c3Fs
IH1cCi0leyE/X3dpdGhvdXRfb2RiYzpvZGJjIH1cCi0lez9fd2l0aF9vcmFjbGU6b3JhY2xlIH1c
Ci0leyE/X3dpdGhvdXRfcGdzcWw6cGdzcWwgfVwKLSV7P193aXRoX3NxbGl0ZTpzcWxpdGUgfVwK
LSV7IT9fd2l0aG91dF9zcWxpdGUzOnNxbGl0ZTMgfVwKLSV7P193aXRoX3N5YmFzZTpzeWJhc2Ug
fVwKKyV7P2J1aWxkX2ZpcmViaXJkOmZpcmViaXJkIH1cCislez9idWlsZF9tc3NxbDptc3NxbCB9
XAorJXs/YnVpbGRfbXlzcWw6bXlzcWwgfVwKKyV7P2J1aWxkX29kYmM6b2RiYyB9XAorJXs/YnVp
bGRfb3JhY2xlOm9yYWNsZSB9XAorJXs/YnVpbGRfcGdzcWw6cGdzcWwgfVwKKyV7P2J1aWxkX3Nx
bGl0ZTpzcWxpdGUgfVwKKyV7P2J1aWxkX3NxbGl0ZTM6c3FsaXRlMyB9XAorJXs/YnVpbGRfc3li
YXNlOnN5YmFzZSB9XAogIiB8fCBjYXQgY29uZmlnLmxvZwogCiAle19fbWFrZX0gJXs/X3NtcF9t
ZmxhZ3N9CiAKIAogJWluc3RhbGwKLWlmIHRlc3QgIiV7YnVpbGRyb290fSIgIT0gIi8iOyB0aGVu
IHJtIC1yZiAle2J1aWxkcm9vdH07IGZpCiAle19fbWFrZX0gREVTVERJUj0le2J1aWxkcm9vdH0g
aW5zdGFsbAorcm0gJXtidWlsZHJvb3R9JXtfbGliZGlyfS9saWIqLiphCiBybSAle2J1aWxkcm9v
dH0le19saWJkaXJ9L29wZW5kYngvbGliKi4qYQotcm0gJXtidWlsZHJvb3R9JXtfbGliZGlyfS9s
aWJvcGVuZGJ4LiphCi1ybSAle2J1aWxkcm9vdH0le19saWJkaXJ9L2xpYm9wZW5kYnhwbHVzLiph
CiAlZmluZF9sYW5nICV7bmFtZX0KICVmaW5kX2xhbmcgJXtuYW1lfS11dGlscwogCkBAIC0zNDAs
OSArMzk3LDkgQEAKIAogJWZpbGVzIC1mICV7bmFtZX0ubGFuZwogJWRlZmF0dHIoLSxyb290LHJv
b3QsLSkKLSV7X2xpYmRpcn0vb3BlbmRieAogJXtfbGliZGlyfS9saWJvcGVuZGJ4LnNvLioKICV7
X2xpYmRpcn0vbGlib3BlbmRieHBsdXMuc28uKgorJWRpciAle19saWJkaXJ9L29wZW5kYngKICVk
b2MgQVVUSE9SUyBDT1BZSU5HIENoYW5nZUxvZyBORVdTIFJFQURNRSBUT0RPCiAKIApAQCAtMzY2
LDc0ICs0MjMsODEgQEAKICMle19tYW5kaXJ9L21hbjMvKgogCiAKLSVpZiAleyE/X3dpdGhvdXRf
bXlzcWw6MX0lez9fd2l0aG91dF9teXNxbDowfQotJWZpbGVzIG15c3FsCislaWYgMCV7P2J1aWxk
X2ZpcmViaXJkOjF9CislZmlsZXMgZmlyZWJpcmQKICVkZWZhdHRyKC0scm9vdCxyb290LC0pCi0l
e19saWJkaXJ9L29wZW5kYngvbGlibXlzcWxiYWNrZW5kLnNvKgorJXtfbGliZGlyfS9vcGVuZGJ4
L2xpYmZpcmViaXJkYmFja2VuZC5zbyoKICVlbmRpZgogCiAKLSVpZiAleyE/X3dpdGhvdXRfcGdz
cWw6MX0lez9fd2l0aG91dF9wZ3NxbDowfQotJWZpbGVzIHBnc3FsCislaWYgMCV7P2J1aWxkX21z
c3FsOjF9CislZmlsZXMgbXNzcWwKICVkZWZhdHRyKC0scm9vdCxyb290LC0pCi0le19saWJkaXJ9
L29wZW5kYngvbGlicGdzcWxiYWNrZW5kLnNvKgorJXtfbGliZGlyfS9vcGVuZGJ4L2xpYm1zc3Fs
YmFja2VuZC5zbyoKICVlbmRpZgogCiAKLSVpZiAleyE/X3dpdGhvdXRfc3FsaXRlMzoxfSV7P193
aXRob3V0X3NxbGl0ZTM6MH0KLSVmaWxlcyBzcWxpdGUzCislaWYgMCV7P2J1aWxkX215c3FsOjF9
CislZmlsZXMgbXlzcWwKICVkZWZhdHRyKC0scm9vdCxyb290LC0pCi0le19saWJkaXJ9L29wZW5k
YngvbGlic3FsaXRlM2JhY2tlbmQuc28qCisle19saWJkaXJ9L29wZW5kYngvbGlibXlzcWxiYWNr
ZW5kLnNvKgogJWVuZGlmCiAKIAotJWlmICV7P193aXRoX3NxbGl0ZToxfSV7IT9fd2l0aF9zcWxp
dGU6MH0KLSVmaWxlcyBzcWxpdGUKKyVpZiAwJXs/YnVpbGRfb2RiYzoxfQorJWZpbGVzIG9kYmMK
ICVkZWZhdHRyKC0scm9vdCxyb290LC0pCi0le19saWJkaXJ9L29wZW5kYngvbGlic3FsaXRlYmFj
a2VuZC5zbyoKKyV7X2xpYmRpcn0vb3BlbmRieC9saWJvZGJjYmFja2VuZC5zbyoKICVlbmRpZgog
CiAKLSVpZiAlez9fd2l0aF9maXJlYmlyZDoxfSV7IT9fd2l0aF9maXJlYmlyZDowfQotJWZpbGVz
IGZpcmViaXJkCislaWYgMCV7P2J1aWxkX29yYWNsZToxfQorJWZpbGVzIG9yYWNsZQogJWRlZmF0
dHIoLSxyb290LHJvb3QsLSkKLSV7X2xpYmRpcn0vb3BlbmRieC9saWJmaXJlYmlyZGJhY2tlbmQu
c28qCisle19saWJkaXJ9L29wZW5kYngvbGlib3JhY2xlYmFja2VuZC5zbyoKICVlbmRpZgogCiAK
LSVpZiAlez9fd2l0aF9tc3NxbDoxfSV7IT9fd2l0aF9tc3NxbDowfQotJWZpbGVzIG1zc3FsCisl
aWYgMCV7P2J1aWxkX3Bnc3FsOjF9CislZmlsZXMgcGdzcWwKICVkZWZhdHRyKC0scm9vdCxyb290
LC0pCi0le19saWJkaXJ9L29wZW5kYngvbGlibXNzcWxiYWNrZW5kLnNvKgorJXtfbGliZGlyfS9v
cGVuZGJ4L2xpYnBnc3FsYmFja2VuZC5zbyoKICVlbmRpZgogCiAKLSVpZiAlez9fd2l0aF9vcmFj
bGU6MX0leyE/X3dpdGhfb3JhY2xlOjB9Ci0lZmlsZXMgb3JhY2xlCislaWYgMCV7P2J1aWxkX3Nx
bGl0ZToxfQorJWZpbGVzIHNxbGl0ZQogJWRlZmF0dHIoLSxyb290LHJvb3QsLSkKLSV7X2xpYmRp
cn0vb3BlbmRieC9saWJvcmFjbGViYWNrZW5kLnNvKgorJXtfbGliZGlyfS9vcGVuZGJ4L2xpYnNx
bGl0ZWJhY2tlbmQuc28qCiAlZW5kaWYKIAogCi0laWYgJXs/X3dpdGhfc3liYXNlOjF9JXshP193
aXRoX3N5YmFzZTowfQotJWZpbGVzIHN5YmFzZQorJWlmIDAlez9idWlsZF9zcWxpdGUzOjF9Cisl
ZmlsZXMgc3FsaXRlMwogJWRlZmF0dHIoLSxyb290LHJvb3QsLSkKLSV7X2xpYmRpcn0vb3BlbmRi
eC9saWJzeWJhc2ViYWNrZW5kLnNvKgorJXtfbGliZGlyfS9vcGVuZGJ4L2xpYnNxbGl0ZTNiYWNr
ZW5kLnNvKgogJWVuZGlmCiAKIAotJWlmICV7P193aXRoX29kYmM6MX0leyE/X3dpdGhfb2RiYzow
fQotJWZpbGVzIG9kYmMKKyVpZiAwJXs/YnVpbGRfc3liYXNlOjF9CislZmlsZXMgc3liYXNlCiAl
ZGVmYXR0cigtLHJvb3Qscm9vdCwtKQotJXtfbGliZGlyfS9vcGVuZGJ4L2xpYm9kYmNiYWNrZW5k
LnNvKgorJXtfbGliZGlyfS9vcGVuZGJ4L2xpYnN5YmFzZWJhY2tlbmQuc28qCiAlZW5kaWYKIAog
CiAlY2hhbmdlbG9nCi0qIFdlZCBTZXAgMDIgMjAwOSBOb3JiZXJ0IFNlbmRldHpreSA8bm9yYmVy
dEBsaW51eG5ldHdvcmtzLmRlPiAxLjQuMy0xCi0tIEFkZGVkIHdvcmthcm91bmRzIGZvciBSSEVM
LCBDZW50T1MgYW5kIE1hbmRyaXZhIHJlZ2FyZGluZyByZWFkbGluZQotLSBGaXhlZCBvZGJjIHBh
Y2thZ2UgaW4gc3BlYyBmaWxlCisqIE1vbiBBcHIgMTkgMjAxMCBOb3JiZXJ0IFNlbmRldHpreSA8
bm9yYmVydEBsaW51eG5ldHdvcmtzLmRlPiAxLjQuNS0xCistIENlbnRyYWxpemVkIGRlY2lzaW9u
cyB3aGljaCBiYWNrZW5kcyB0byBidWlsZAorLSBCdWlsZCBmaXJlYmlyZCwgbXNzcWwgYW5kIHN5
YmFzZSBiYWNrZW5kcyBmb3Igc3VwcG9ydGVkIGRpc3RyaWJ1dGlvbnMKKy0gUmVvcmRlcmVkIGJh
Y2tlbmRzCisKKyogV2VkIFNlcCAzMCAyMDA5IE5vcmJlcnQgU2VuZGV0emt5IDxub3JiZXJ0QGxp
bnV4bmV0d29ya3MuZGU+IDEuNC40LTEKKy0gRml4ZWQgaW5jbHVkZWQgYmFja2VuZHMgaW4gbWFp
biBwYWNrYWdlCistIEZpeGVkIG9kYnggcGFja2FnZQogLSBGaXhlZCBidWlsZHMgb24geDg2XzY0
IHBsYXRmb3JtcworLSBDb21wYXRpYmxlIHdpdGggT3BlblNVU0UgYnVpbGQgc2VydmljZQorLSBB
ZGRlZCB3b3JrYXJvdW5kcyBmb3IgUkhFTCwgQ2VudE9TIGFuZCBNYW5kcml2YSByZWdhcmRpbmcg
cmVhZGxpbmUKIAogKiBTdW4gQXByIDE5IDIwMDkgTm9yYmVydCBTZW5kZXR6a3kgPG5vcmJlcnRA
bGludXhuZXR3b3Jrcy5kZT4gMS40LjEtMQogLSBBZGRlZCBvcGVuZGJ4cGx1cy5wYwrQlNCy0L7Q
uNGH0L3Ri9C1INGE0LDQudC70Ysgb3BlbmRieC5vcmlnL3BvL2RlLmdtbyDQuCBvcGVuZGJ4L3Bv
L2RlLmdtbyDRgNCw0LfQu9C40YfQsNGO0YLRgdGPCmRpZmYgLXVyIG9wZW5kYngub3JpZy9wby9k
ZS5wbyBvcGVuZGJ4L3BvL2RlLnBvCi0tLSBvcGVuZGJ4Lm9yaWcvcG8vZGUucG8JMjAyMy0wNS0z
MCAyMDoyNzo0Mi41ODYzODkwNzggKzAzMDAKKysrIG9wZW5kYngvcG8vZGUucG8JMjAxMi0wNi0x
MSAwMTo1ODoxMC4wMDAwMDAwMDAgKzA0MDAKQEAgLTcsNyArNyw3IEBACiBtc2dzdHIgIiIKICJQ
cm9qZWN0LUlkLVZlcnNpb246IE9wZW5EQlggMS4zLjBcbiIKICJSZXBvcnQtTXNnaWQtQnVncy1U
bzogbm9yYmVydEBsaW51eG5ldHdvcmtzLmRlXG4iCi0iUE9ULUNyZWF0aW9uLURhdGU6IDIwMDkt
MDgtMzAgMTQ6MDUrMDIwMFxuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDEyLTA2LTEwIDIzOjU4
KzAyMDBcbiIKICJQTy1SZXZpc2lvbi1EYXRlOiAyMDA3LTAyLTE4IDAwOjAwKzAxMDBcbiIKICJM
YXN0LVRyYW5zbGF0b3I6IE5vcmJlcnQgU2VuZGV0emt5IDxub3JiZXJ0QGxpbnV4bmV0d29ya3Mu
ZGU+XG4iCiAiTGFuZ3VhZ2UtVGVhbTogZGUgPGRlQGxpLm9yZz5cbiIK0JTQstC+0LjRh9C90YvQ
tSDRhNCw0LnQu9GLIG9wZW5kYngub3JpZy9wby9lbkBxdW90LmdtbyDQuCBvcGVuZGJ4L3BvL2Vu
QHF1b3QuZ21vINGA0LDQt9C70LjRh9Cw0Y7RgtGB0Y8KZGlmZiAtdXIgb3BlbmRieC5vcmlnL3Bv
L2VuQHF1b3QucG8gb3BlbmRieC9wby9lbkBxdW90LnBvCi0tLSBvcGVuZGJ4Lm9yaWcvcG8vZW5A
cXVvdC5wbwkyMDIzLTA1LTMwIDIwOjI3OjQyLjU4NjM4OTA3OCArMDMwMAorKysgb3BlbmRieC9w
by9lbkBxdW90LnBvCTIwMTItMDYtMTEgMDE6NTg6MTAuMDAwMDAwMDAwICswNDAwCkBAIC0xLDcg
KzEsNyBAQAogIyBFbmdsaXNoIHRyYW5zbGF0aW9ucyBmb3Igb3BlbmRieCBwYWNrYWdlLgotIyBD
b3B5cmlnaHQgKEMpIDIwMDkgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjIENvcHly
aWdodCAoQykgMjAxMiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KICMgVGhpcyBmaWxl
IGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIG9wZW5kYnggcGFj
a2FnZS4KLSMgQXV0b21hdGljYWxseSBnZW5lcmF0ZWQsIDIwMDkuCisjIEF1dG9tYXRpY2FsbHkg
Z2VuZXJhdGVkLCAyMDEyLgogIwogIyBBbGwgdGhpcyBjYXRhbG9nICJ0cmFuc2xhdGVzIiBhcmUg
cXVvdGF0aW9uIGNoYXJhY3RlcnMuCiAjIFRoZSBtc2dpZHMgbXVzdCBiZSBBU0NJSSBhbmQgdGhl
cmVmb3JlIGNhbm5vdCBjb250YWluIHJlYWwgcXVvdGF0aW9uCkBAIC0yNywxMCArMjcsMTAgQEAK
ICMKIG1zZ2lkICIiCiBtc2dzdHIgIiIKLSJQcm9qZWN0LUlkLVZlcnNpb246IG9wZW5kYnggMS40
LjNcbiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IG9wZW5kYnggMS40LjZcbiIKICJSZXBvcnQtTXNn
aWQtQnVncy1Ubzogbm9yYmVydEBsaW51eG5ldHdvcmtzLmRlXG4iCi0iUE9ULUNyZWF0aW9uLURh
dGU6IDIwMDktMDgtMzAgMTQ6MDUrMDIwMFxuIgotIlBPLVJldmlzaW9uLURhdGU6IDIwMDktMDgt
MzAgMTQ6MDUrMDIwMFxuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDEyLTA2LTEwIDIzOjU4KzAy
MDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDEyLTA2LTEwIDIzOjU4KzAyMDBcbiIKICJMYXN0
LVRyYW5zbGF0b3I6IEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkXG4iCiAiTGFuZ3VhZ2UtVGVhbTog
bm9uZVxuIgogIk1JTUUtVmVyc2lvbjogMS4wXG4iCmRpZmYgLXVyIG9wZW5kYngub3JpZy9wby9v
cGVuZGJ4LnBvdCBvcGVuZGJ4L3BvL29wZW5kYngucG90Ci0tLSBvcGVuZGJ4Lm9yaWcvcG8vb3Bl
bmRieC5wb3QJMjAyMy0wNS0zMCAyMDoyNzo0Mi41ODYzODkwNzggKzAzMDAKKysrIG9wZW5kYngv
cG8vb3BlbmRieC5wb3QJMjAxMi0wNi0xMSAwMTo1ODoxMC4wMDAwMDAwMDAgKzA0MDAKQEAgLTYs
OSArNiw5IEBACiAjLCBmdXp6eQogbXNnaWQgIiIKIG1zZ3N0ciAiIgotIlByb2plY3QtSWQtVmVy
c2lvbjogb3BlbmRieCAxLjQuM1xuIgorIlByb2plY3QtSWQtVmVyc2lvbjogb3BlbmRieCAxLjQu
NlxuIgogIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBub3JiZXJ0QGxpbnV4bmV0d29ya3MuZGVcbiIK
LSJQT1QtQ3JlYXRpb24tRGF0ZTogMjAwOS0wOC0zMCAxNDowNSswMjAwXG4iCisiUE9ULUNyZWF0
aW9uLURhdGU6IDIwMTItMDYtMTAgMjM6NTgrMDIwMFxuIgogIlBPLVJldmlzaW9uLURhdGU6IFlF
QVItTU8tREEgSE86TUkrWk9ORVxuIgogIkxhc3QtVHJhbnNsYXRvcjogRlVMTCBOQU1FIDxFTUFJ
TEBBRERSRVNTPlxuIgogIkxhbmd1YWdlLVRlYW06IExBTkdVQUdFIDxMTEBsaS5vcmc+XG4iCmRp
ZmYgLXVyIG9wZW5kYngub3JpZy90ZXN0L01ha2VmaWxlLmluIG9wZW5kYngvdGVzdC9NYWtlZmls
ZS5pbgotLS0gb3BlbmRieC5vcmlnL3Rlc3QvTWFrZWZpbGUuaW4JMjAyMy0wNS0zMCAyMDoyNzo0
Mi41ODczODkwODEgKzAzMDAKKysrIG9wZW5kYngvdGVzdC9NYWtlZmlsZS5pbgkyMDEyLTA2LTEx
IDAxOjMzOjUzLjAwMDAwMDAwMCArMDQwMApAQCAtMSw0ICsxLDQgQEAKLSMgTWFrZWZpbGUuaW4g
Z2VuZXJhdGVkIGJ5IGF1dG9tYWtlIDEuMTEgZnJvbSBNYWtlZmlsZS5hbS4KKyMgTWFrZWZpbGUu
aW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIDEuMTEuMSBmcm9tIE1ha2VmaWxlLmFtLgogIyBAY29u
ZmlndXJlX2lucHV0QAogCiAjIENvcHlyaWdodCAoQykgMTk5NCwgMTk5NSwgMTk5NiwgMTk5Nywg
MTk5OCwgMTk5OSwgMjAwMCwgMjAwMSwgMjAwMiwKZGlmZiAtdXIgb3BlbmRieC5vcmlnL3Rlc3Qv
b2RieHBsdXMtcmVncmVzc2lvbi5jcHAgb3BlbmRieC90ZXN0L29kYnhwbHVzLXJlZ3Jlc3Npb24u
Y3BwCi0tLSBvcGVuZGJ4Lm9yaWcvdGVzdC9vZGJ4cGx1cy1yZWdyZXNzaW9uLmNwcAkyMDIzLTA1
LTMwIDIwOjI3OjQyLjU4NzM4OTA4MSArMDMwMAorKysgb3BlbmRieC90ZXN0L29kYnhwbHVzLXJl
Z3Jlc3Npb24uY3BwCTIwMTItMDUtMDYgMTQ6MTM6NDcuMDAwMDAwMDAwICswNDAwCkBAIC0yOTMs
MTEgKzI5MywxNSBAQAogCQkJCX0KIAogCQkJCS8vIFRlc3QgY2FzZTogIENhbGxpbmcgZ2V0Um93
KCkgbW9yZSBvZnRlbiBtdXN0IG5vdCByZXN1bHQgaW4gZXJyb3IKLQkJCQlyZXN1bHQuZ2V0Um93
KCk7CisJCQkJaWYoIHJlc3VsdC5nZXRSb3coKSAhPSBPREJYX1JPV19ET05FICkgeworCQkJCQl0
aHJvdyBzdGQ6OnJ1bnRpbWVfZXJyb3IoIHN0cmluZyggIlN1Yi1zZXF1ZW50IGNhbGxzIHRvIGdl
dFJvdygpIGRvbid0IHJldHVybiBPREJYX1JFU19ET05FIiApICk7CisJCQkJfQogCQkJfQogCiAJ
CQkvLyBUZXN0IGNhc2U6ICBDYWxsaW5nIGdldFJlc3VsdCgpIG1vcmUgb2Z0ZW4gbXVzdCBub3Qg
cmVzdWx0IGluIGVycm9yCi0JCQlyZXN1bHQuZ2V0UmVzdWx0KCk7CisJCQlpZiggcmVzdWx0Lmdl
dFJlc3VsdCgpICE9IE9EQlhfUkVTX0RPTkUgKSB7CisJCQkJdGhyb3cgc3RkOjpydW50aW1lX2Vy
cm9yKCBzdHJpbmcoICJTdWItc2VxdWVudCBjYWxscyB0byBnZXRSZXN1bHQoKSBkb24ndCByZXR1
cm4gT0RCWF9SRVNfRE9ORSIgKSApOworCQkJfQogCiAJCQlyZXN1bHQuZmluaXNoKCk7CiAJCX0K
ZGlmZiAtdXIgb3BlbmRieC5vcmlnL3Rlc3Qvb2RieHRlc3Quc2ggb3BlbmRieC90ZXN0L29kYnh0
ZXN0LnNoCi0tLSBvcGVuZGJ4Lm9yaWcvdGVzdC9vZGJ4dGVzdC5zaAkyMDIzLTA1LTMwIDIwOjI3
OjQyLjU4NzM4OTA4MSArMDMwMAorKysgb3BlbmRieC90ZXN0L29kYnh0ZXN0LnNoCTIwMTItMDUt
MDYgMTY6MTA6NTkuMDAwMDAwMDAwICswNDAwCkBAIC0xMiwxMyArMTIsMTMgQEAKIE9EQlhBUFA9
Ii4vb2RieHRlc3QgLi9vZGJ4cGx1c3Rlc3QiCiAKICMgSW1wb3J0IGRhdGFiYXNlIHBhcmFtZXRl
cgotLiBvZGJ4dGVzdC5zaXRlCisuIC4vb2RieHRlc3Quc2l0ZQogCiAKICMgY29tcGFyZSByZXN1
bHRzCi1mdW5jdGlvbiBvZGJ4Y29tcGFyZSAoKQorb2RieGNvbXBhcmUgKCkKIHsKLQlkaWZmIHRl
c3Qub3V0IHJlZi8kMS5yZWYgPiAvZGV2L251bGwKKwlkaWZmIC1iIHRlc3Qub3V0IHJlZi8kMS5y
ZWYgPiAvZGV2L251bGwKIAogCWlmIHRlc3QgJD8gLWVxIDEKIAl0aGVuCmRpZmYgLXVyIG9wZW5k
Yngub3JpZy90ZXN0L3JlZi9zcWxpdGUzLnJlZiBvcGVuZGJ4L3Rlc3QvcmVmL3NxbGl0ZTMucmVm
Ci0tLSBvcGVuZGJ4Lm9yaWcvdGVzdC9yZWYvc3FsaXRlMy5yZWYJMjAyMy0wNS0zMCAyMDoyNzo0
Mi41ODgzODkwODMgKzAzMDAKKysrIG9wZW5kYngvdGVzdC9yZWYvc3FsaXRlMy5yZWYJMjAxMi0w
NS0wNiAxNjowOTozOC4wMDAwMDAwMDAgKzA0MDAKQEAgLTEsMjEgKzEsMjEgQEAKICAgICBPREJY
X0NBUF9CQVNJQzogMQogICAgIE9EQlhfQ0FQX0xPOiAwCi0gICAgT0RCWF9PUFRfQVBJX1ZFUlNJ
T046IDEwMjAwIAotICAgIE9EQlhfT1BUX1RIUkVBRF9TQUZFOiAxIAotICAgIE9EQlhfT1BUX1RM
UzogMCAKLSAgICBPREJYX09QVF9DT05ORUNUX1RJTUVPVVQ6IDAgCisgICAgT0RCWF9PUFRfQVBJ
X1ZFUlNJT046IDEwMjAwCisgICAgT0RCWF9PUFRfVEhSRUFEX1NBRkU6IDEKKyAgICBPREJYX09Q
VF9UTFM6IDAKKyAgICBPREJYX09QVF9DT05ORUNUX1RJTUVPVVQ6IDAKICAgICBPREJYX09QVF9N
VUxUSV9TVEFURU1FTlRTOiAxICh1c2luZykKLSAgICBPREJYX09QVF9QQUdFRF9SRVNVTFRTOiAw
IAotICAgIE9EQlhfT1BUX0NPTVBSRVNTOiAwIAorICAgIE9EQlhfT1BUX1BBR0VEX1JFU1VMVFM6
IDAKKyAgICBPREJYX09QVF9DT01QUkVTUzogMAogICAgIE9EQlhfQ0FQX0JBU0lDOiAxCiAgICAg
T0RCWF9DQVBfTE86IDAKLSAgICBPREJYX09QVF9BUElfVkVSU0lPTjogMTAyMDAgCi0gICAgT0RC
WF9PUFRfVEhSRUFEX1NBRkU6IDEgCi0gICAgT0RCWF9PUFRfVExTOiAwIAotICAgIE9EQlhfT1BU
X0NPTk5FQ1RfVElNRU9VVDogMCAKKyAgICBPREJYX09QVF9BUElfVkVSU0lPTjogMTAyMDAKKyAg
ICBPREJYX09QVF9USFJFQURfU0FGRTogMQorICAgIE9EQlhfT1BUX1RMUzogMAorICAgIE9EQlhf
T1BUX0NPTk5FQ1RfVElNRU9VVDogMAogICAgIE9EQlhfT1BUX01VTFRJX1NUQVRFTUVOVFM6IDEg
KHVzaW5nKQotICAgIE9EQlhfT1BUX1BBR0VEX1JFU1VMVFM6IDAgCi0gICAgT0RCWF9PUFRfQ09N
UFJFU1M6IDAgCisgICAgT0RCWF9PUFRfUEFHRURfUkVTVUxUUzogMAorICAgIE9EQlhfT1BUX0NP
TVBSRVNTOiAwCiAgICAgQWZmZWN0ZWQgcm93czogMAogICAgIEFmZmVjdGVkIHJvd3M6IDEKICAg
ICBBZmZlY3RlZCByb3dzOiAxCkBAIC0zOSw3ICszOSw3IEBACiAgICAgY29sdW1uIDE2ICh0eXBl
IDMyKTogdGltZXN0bXAgPSAnMTk5OS0wMS0wMSAwMDowMDowMCcKICAgICBjb2x1bW4gMTcgKHR5
cGUgMzIpOiB0aW1lc3RtcHR6ID0gJzE5OTktMDEtMDEgMDA6MDA6MDArMDYnCiAgICAgY29sdW1u
IDE4ICh0eXBlIDMyKTogZGF0ZXZhbCA9ICcxOTk5LTAxLTAxJwotICAgIGNvbHVtbiAwICh0eXBl
IDI1NSk6IGkxID0gTlVMTAorICAgIGNvbHVtbiAwICh0eXBlIDMpOiBpMSA9IE5VTEwKICAgICBj
b2x1bW4gMSAodHlwZSAzKTogaTE2ID0gJzInCiAgICAgY29sdW1uIDIgKHR5cGUgMyk6IGkzMiA9
ICc0JwogICAgIGNvbHVtbiAzICh0eXBlIDMpOiBpNjQgPSAnOCcKQEAgLTQ5LDcgKzQ5LDcgQEAK
ICAgICBjb2x1bW4gNyAodHlwZSA5KTogZjggPSAnOC41JwogICAgIGNvbHVtbiA4ICh0eXBlIDMy
KTogYzIgPSAnRlInCiAgICAgY29sdW1uIDkgKHR5cGUgMzIpOiBuYzEyID0gJ8Opw6fDqMOpw6fD
qCcKLSAgICBjb2x1bW4gMTAgKHR5cGUgMjU1KTogc3RyMjAgPSBOVUxMCisgICAgY29sdW1uIDEw
ICh0eXBlIDMyKTogc3RyMjAgPSBOVUxMCiAgICAgY29sdW1uIDExICh0eXBlIDMyKTogbnN0cjI0
ID0gJ8Opw6fDqMOpw6fDqMOpw6fDqMOpw6fDqCcKICAgICBjb2x1bW4gMTIgKHR5cGUgMzIpOiBj
bG9iNjRrID0gJ3RleHQnCiAgICAgY29sdW1uIDEzICh0eXBlIDMyKTogbmNsb2I2NGsgPSAnw6nD
p8OoIHZlcnkgbG9uZyBuYXRpb25hbCB0ZXh0IMOpw6fDqCcKQEAgLTEwMSw3ICsxMDEsNyBAQAog
ICAgIGNvbHVtbiAxNiAodHlwZSAzMik6IHRpbWVzdG1wID0gJzE5OTktMDEtMDEgMDA6MDA6MDAn
CiAgICAgY29sdW1uIDE3ICh0eXBlIDMyKTogdGltZXN0bXB0eiA9ICcxOTk5LTAxLTAxIDAwOjAw
OjAwKzA2JwogICAgIGNvbHVtbiAxOCAodHlwZSAzMik6IGRhdGV2YWwgPSAnMTk5OS0wMS0wMScK
LSAgICBjb2x1bW4gMCAodHlwZSAyNTUpOiBpMSA9IE5VTEwKKyAgICBjb2x1bW4gMCAodHlwZSAz
KTogaTEgPSBOVUxMCiAgICAgY29sdW1uIDEgKHR5cGUgMyk6IGkxNiA9ICcyJwogICAgIGNvbHVt
biAyICh0eXBlIDMpOiBpMzIgPSAnNCcKICAgICBjb2x1bW4gMyAodHlwZSAzKTogaTY0ID0gJzgn
CkBAIC0xMTEsNyArMTExLDcgQEAKICAgICBjb2x1bW4gNyAodHlwZSA5KTogZjggPSAnOC41Jwog
ICAgIGNvbHVtbiA4ICh0eXBlIDMyKTogYzIgPSAnRlInCiAgICAgY29sdW1uIDkgKHR5cGUgMzIp
OiBuYzEyID0gJ8Opw6fDqMOpw6fDqCcKLSAgICBjb2x1bW4gMTAgKHR5cGUgMjU1KTogc3RyMjAg
PSBOVUxMCisgICAgY29sdW1uIDEwICh0eXBlIDMyKTogc3RyMjAgPSBOVUxMCiAgICAgY29sdW1u
IDExICh0eXBlIDMyKTogbnN0cjI0ID0gJ8Opw6fDqMOpw6fDqMOpw6fDqMOpw6fDqCcKICAgICBj
b2x1bW4gMTIgKHR5cGUgMzIpOiBjbG9iNjRrID0gJ3RleHQnCiAgICAgY29sdW1uIDEzICh0eXBl
IDMyKTogbmNsb2I2NGsgPSAnw6nDp8OoIHZlcnkgbG9uZyBuYXRpb25hbCB0ZXh0IMOpw6fDqCcK
ZGlmZiAtdXIgb3BlbmRieC5vcmlnL3V0aWxzL2FyZ21hcC5jcHAgb3BlbmRieC91dGlscy9hcmdt
YXAuY3BwCi0tLSBvcGVuZGJ4Lm9yaWcvdXRpbHMvYXJnbWFwLmNwcAkyMDIzLTA1LTMwIDIwOjI3
OjQyLjU4ODM4OTA4MyArMDMwMAorKysgb3BlbmRieC91dGlscy9hcmdtYXAuY3BwCTIwMTEtMTAt
MTIgMjM6MzM6MTIuMDAwMDAwMDAwICswNDAwCkBAIC0zLDE5ICszLDggQEAKICAqICAoYykgMjAw
Ni0yMDA4LCBOb3JiZXJ0IFNlbmRldHpreSA8bm9yYmVydEBsaW51eG5ldHdvcmtzLmRlPgogICog
IEluc3BpcmVkIGJ5IFBvd2VyRE5TIEFyZ3ZNYXAgY29kZQogICoKLSAqICBUaGlzIHByb2dyYW0g
aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQot
ICogIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug
YXMgcHVibGlzaGVkIGJ5Ci0gKiAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVy
IHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKLSAqICAoYXQgeW91ciBvcHRpb24pIGFueSBs
YXRlciB2ZXJzaW9uLgotICoKLSAqICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhl
IGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKLSAqICBidXQgV0lUSE9VVCBBTlkgV0FSUkFO
VFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgotICogIE1FUkNIQU5UQUJJ
TElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKLSAqICBH
TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgotICoKLSAqICBZb3Ug
c2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj
ZW5zZQotICogIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBG
cmVlIFNvZnR3YXJlCi0gKiAgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0
ZSAzMzAsIEJvc3RvbiwgTUEgIDAyMTExLTEzMDcgIFVTQQorICogIERpc3RyaWJ1dGVkIHVuZGVy
IHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5jZQorICog
IHZlcnNpb24gMiBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogICovCiAK
IApkaWZmIC11ciBvcGVuZGJ4Lm9yaWcvdXRpbHMvYXJnbWFwLmhwcCBvcGVuZGJ4L3V0aWxzL2Fy
Z21hcC5ocHAKLS0tIG9wZW5kYngub3JpZy91dGlscy9hcmdtYXAuaHBwCTIwMjMtMDUtMzAgMjA6
Mjc6NDIuNTg4Mzg5MDgzICswMzAwCisrKyBvcGVuZGJ4L3V0aWxzL2FyZ21hcC5ocHAJMjAxMS0x
MC0xMiAyMzozMzoxOC4wMDAwMDAwMDAgKzA0MDAKQEAgLTMsMTkgKzMsOCBAQAogICogIChjKSAy
MDA2LTIwMDgsIE5vcmJlcnQgU2VuZGV0emt5IDxub3JiZXJ0QGxpbnV4bmV0d29ya3MuZGU+CiAg
KiAgSW5zcGlyZWQgYnkgUG93ZXJETlMgQXJndk1hcCBjb2RlCiAgKgotICogIFRoaXMgcHJvZ3Jh
bSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5
Ci0gKiAgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5z
ZSBhcyBwdWJsaXNoZWQgYnkKLSAqICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRo
ZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgotICogIChhdCB5b3VyIG9wdGlvbikgYW55
IGxhdGVyIHZlcnNpb24uCi0gKgotICogIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0
aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotICogIGJ1dCBXSVRIT1VUIEFOWSBXQVJS
QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCi0gKiAgTUVSQ0hBTlRB
QklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQotICog
IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCi0gKgotICogIFlv
dSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM
aWNlbnNlCi0gKiAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhl
IEZyZWUgU29mdHdhcmUKLSAqICBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1
aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAgVVNBCisgKiAgRGlzdHJpYnV0ZWQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlCisg
KiAgdmVyc2lvbiAyIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAgKi8K
IAogCmRpZmYgLXVyIG9wZW5kYngub3JpZy91dGlscy9kb2MvTWFrZWZpbGUuaW4gb3BlbmRieC91
dGlscy9kb2MvTWFrZWZpbGUuaW4KLS0tIG9wZW5kYngub3JpZy91dGlscy9kb2MvTWFrZWZpbGUu
aW4JMjAyMy0wNS0zMCAyMDoyNzo0Mi41ODgzODkwODMgKzAzMDAKKysrIG9wZW5kYngvdXRpbHMv
ZG9jL01ha2VmaWxlLmluCTIwMTItMDYtMTEgMDE6MzM6NTMuMDAwMDAwMDAwICswNDAwCkBAIC0x
LDQgKzEsNCBAQAotIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMSBmcm9t
IE1ha2VmaWxlLmFtLgorIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4x
IGZyb20gTWFrZWZpbGUuYW0uCiAjIEBjb25maWd1cmVfaW5wdXRACiAKICMgQ29weXJpZ2h0IChD
KSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLApk
aWZmIC11ciBvcGVuZGJ4Lm9yaWcvdXRpbHMvTWFrZWZpbGUuYW0gb3BlbmRieC91dGlscy9NYWtl
ZmlsZS5hbQotLS0gb3BlbmRieC5vcmlnL3V0aWxzL01ha2VmaWxlLmFtCTIwMjMtMDUtMzAgMjA6
Mjc6NDIuNTg4Mzg5MDgzICswMzAwCisrKyBvcGVuZGJ4L3V0aWxzL01ha2VmaWxlLmFtCTIwMTIt
MDYtMTEgMDE6MTk6MzUuMDAwMDAwMDAwICswNDAwCkBAIC04LDcgKzgsNyBAQAogCiBvZGJ4X3Nx
bF9TT1VSQ0VTID0gYXJnbWFwLmNwcCBhcmdtYXAuaHBwIGNvbW1hbmRzLmNwcCBjb21tYW5kcy5o
cHAgY29tcGxldGlvbi5jcHAgY29tcGxldGlvbi5ocHAgb2RieC1zcWwuaHBwIG9kYngtc3FsLmNw
cAogb2RieF9zcWxfQ1BQRkxBR1MgPSAtRExPQ0FMRURJUj1cIiQobG9jYWxlZGlyKVwiIC1ES0VZ
V09SREZJTEU9XCIkKHBrZ2RhdGFkaXIpL2tleXdvcmRzXCIKLW9kYnhfc3FsX0xEQUREID0gLi4v
bGliLy5saWJzLyQoTElCUFJFRklYKW9wZW5kYngkKExJQlNVRkZJWCkgLi4vbGliLy5saWJzLyQo
TElCUFJFRklYKW9wZW5kYnhwbHVzJChMSUJTVUZGSVgpIC1scmVhZGxpbmUgLWxuY3Vyc2VzCitv
ZGJ4X3NxbF9MREFERCA9IC4uL2xpYi8ubGlicy8kKExJQlBSRUZJWClvcGVuZGJ4JChMSUJTVUZG
SVgpIC4uL2xpYi8ubGlicy8kKExJQlBSRUZJWClvcGVuZGJ4cGx1cyQoTElCU1VGRklYKSAkKExU
TElCSU5UTCkgLWxyZWFkbGluZSAtbG5jdXJzZXMKIAogRVhUUkFfRElTVCA9IGtleXdvcmRzCiBw
a2dkYXRhX0RBVEEgPSBrZXl3b3JkcwpkaWZmIC11ciBvcGVuZGJ4Lm9yaWcvdXRpbHMvTWFrZWZp
bGUuaW4gb3BlbmRieC91dGlscy9NYWtlZmlsZS5pbgotLS0gb3BlbmRieC5vcmlnL3V0aWxzL01h
a2VmaWxlLmluCTIwMjMtMDUtMzAgMjA6Mjc6NDIuNTg4Mzg5MDgzICswMzAwCisrKyBvcGVuZGJ4
L3V0aWxzL01ha2VmaWxlLmluCTIwMTItMDYtMTEgMDE6MzM6NTMuMDAwMDAwMDAwICswNDAwCkBA
IC0xLDQgKzEsNCBAQAotIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMSBm
cm9tIE1ha2VmaWxlLmFtLgorIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4x
MS4xIGZyb20gTWFrZWZpbGUuYW0uCiAjIEBjb25maWd1cmVfaW5wdXRACiAKICMgQ29weXJpZ2h0
IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAy
LApAQCAtNjMsOCArNjMsMTAgQEAKIEBFTkFCTEVVVElMU19UUlVFQAlvZGJ4X3NxbC1jb21wbGV0
aW9uLiQoT0JKRVhUKSBcCiBARU5BQkxFVVRJTFNfVFJVRUAJb2RieF9zcWwtb2RieC1zcWwuJChP
QkpFWFQpCiBvZGJ4X3NxbF9PQkpFQ1RTID0gJChhbV9vZGJ4X3NxbF9PQkpFQ1RTKQorYW1fX0RF
UEVOREVOQ0lFU18xID0KIEBFTkFCTEVVVElMU19UUlVFQG9kYnhfc3FsX0RFUEVOREVOQ0lFUyA9
IC4uL2xpYi8ubGlicy8kKExJQlBSRUZJWClvcGVuZGJ4JChMSUJTVUZGSVgpIFwKLUBFTkFCTEVV
VElMU19UUlVFQAkuLi9saWIvLmxpYnMvJChMSUJQUkVGSVgpb3BlbmRieHBsdXMkKExJQlNVRkZJ
WCkKK0BFTkFCTEVVVElMU19UUlVFQAkuLi9saWIvLmxpYnMvJChMSUJQUkVGSVgpb3BlbmRieHBs
dXMkKExJQlNVRkZJWCkgXAorQEVOQUJMRVVUSUxTX1RSVUVACSQoYW1fX0RFUEVOREVOQ0lFU18x
KQogREVGQVVMVF9JTkNMVURFUyA9IC1JLkBhbV9faXNyY0AgLUkkKHRvcF9idWlsZGRpcikKIGRl
cGNvbXAgPSAkKFNIRUxMKSAkKHRvcF9zcmNkaXIpL2RlcGNvbXAKIGFtX19kZXBmaWxlc19tYXli
ZSA9IGRlcGZpbGVzCkBAIC0zMTMsNyArMzE1LDcgQEAKIEBFTkFCTEVVVElMU19UUlVFQElOQ0xV
REVTID0gLUkuLi9saWIKIEBFTkFCTEVVVElMU19UUlVFQG9kYnhfc3FsX1NPVVJDRVMgPSBhcmdt
YXAuY3BwIGFyZ21hcC5ocHAgY29tbWFuZHMuY3BwIGNvbW1hbmRzLmhwcCBjb21wbGV0aW9uLmNw
cCBjb21wbGV0aW9uLmhwcCBvZGJ4LXNxbC5ocHAgb2RieC1zcWwuY3BwCiBARU5BQkxFVVRJTFNf
VFJVRUBvZGJ4X3NxbF9DUFBGTEFHUyA9IC1ETE9DQUxFRElSPVwiJChsb2NhbGVkaXIpXCIgLURL
RVlXT1JERklMRT1cIiQocGtnZGF0YWRpcikva2V5d29yZHNcIgotQEVOQUJMRVVUSUxTX1RSVUVA
b2RieF9zcWxfTERBREQgPSAuLi9saWIvLmxpYnMvJChMSUJQUkVGSVgpb3BlbmRieCQoTElCU1VG
RklYKSAuLi9saWIvLmxpYnMvJChMSUJQUkVGSVgpb3BlbmRieHBsdXMkKExJQlNVRkZJWCkgLWxy
ZWFkbGluZSAtbG5jdXJzZXMKK0BFTkFCTEVVVElMU19UUlVFQG9kYnhfc3FsX0xEQUREID0gLi4v
bGliLy5saWJzLyQoTElCUFJFRklYKW9wZW5kYngkKExJQlNVRkZJWCkgLi4vbGliLy5saWJzLyQo
TElCUFJFRklYKW9wZW5kYnhwbHVzJChMSUJTVUZGSVgpICQoTFRMSUJJTlRMKSAtbHJlYWRsaW5l
IC1sbmN1cnNlcwogQEVOQUJMRVVUSUxTX1RSVUVARVhUUkFfRElTVCA9IGtleXdvcmRzCiBARU5B
QkxFVVRJTFNfVFJVRUBwa2dkYXRhX0RBVEEgPSBrZXl3b3JkcwogYWxsOiBhbGwtcmVjdXJzaXZl
CkBAIC01MTgsNyArNTIwLDcgQEAKICMgICAgICh3aGljaCB3aWxsIGNhdXNlIHRoZSBNYWtlZmls
ZXMgdG8gYmUgcmVnZW5lcmF0ZWQgd2hlbiB5b3UgcnVuIGBtYWtlJyk7CiAjICgyKSBvdGhlcndp
c2UsIHBhc3MgdGhlIGRlc2lyZWQgdmFsdWVzIG9uIHRoZSBgbWFrZScgY29tbWFuZCBsaW5lLgog
JChSRUNVUlNJVkVfVEFSR0VUUyk6Ci0JQGZhaWxjb209J2V4aXQgMSc7IFwKKwlAZmFpbD0gZmFp
bGNvbT0nZXhpdCAxJzsgXAogCWZvciBmIGluIHggJCRNQUtFRkxBR1M7IGRvIFwKIAkgIGNhc2Ug
JCRmIGluIFwKIAkgICAgKj0qIHwgLS1bIWtdKik7OyBcCkBAIC01NDMsNyArNTQ1LDcgQEAKIAlm
aTsgdGVzdCAteiAiJCRmYWlsIgogCiAkKFJFQ1VSU0lWRV9DTEVBTl9UQVJHRVRTKToKLQlAZmFp
bGNvbT0nZXhpdCAxJzsgXAorCUBmYWlsPSBmYWlsY29tPSdleGl0IDEnOyBcCiAJZm9yIGYgaW4g
eCAkJE1BS0VGTEFHUzsgZG8gXAogCSAgY2FzZSAkJGYgaW4gXAogCSAgICAqPSogfCAtLVsha10q
KTs7IFwKZGlmZiAtdXIgb3BlbmRieC5vcmlnL3V0aWxzL29kYngtc3FsLmNwcCBvcGVuZGJ4L3V0
aWxzL29kYngtc3FsLmNwcAotLS0gb3BlbmRieC5vcmlnL3V0aWxzL29kYngtc3FsLmNwcAkyMDIz
LTA1LTMwIDIwOjI3OjQyLjU4OTM4OTA4NSArMDMwMAorKysgb3BlbmRieC91dGlscy9vZGJ4LXNx
bC5jcHAJMjAxMi0wNi0xMSAwMToxMzoyMy4wMDAwMDAwMDAgKzA0MDAKQEAgLTE0Niw3ICsxNDYs
NyBAQAogCQkJewogCQkJCWxlbiA9IHN0cmxlbiggbGluZSApOwogCQkJCXNxbCArPSAiXG4iICsg
c3RyaW5nKCBsaW5lLCBsZW4gKTsKLQkJCQlmcmVlKCBsaW5lICk7CisJCQkJOjpmcmVlKCBsaW5l
ICk7CiAKIAkJCQlpZiggc3FsW3NxbC5zaXplKCktMV0gPT0gJzsnICkgeyBicmVhazsgfQogCQkJ
fQpAQCAtMjI4LDExICsyMjgsMTYgQEAKIAkJcmxfY29tcGxldGlvbl9lbnRyeV9mdW5jdGlvbiA9
ICZjb21wbGV0ZTsKIAogCQlDb25uIGNvbm4oIEEuYXNTdHJpbmcoICJiYWNrZW5kIiApLCBBLmFz
U3RyaW5nKCAiaG9zdCIgKSwgQS5hc1N0cmluZyggInBvcnQiICkgKTsKLQkJY29ubi5iaW5kKCBB
LmFzU3RyaW5nKCAiZGF0YWJhc2UiICksIEEuYXNTdHJpbmcoICJ1c2VybmFtZSIgKSwgQS5hc1N0
cmluZyggInBhc3N3b3JkIiApICk7CiAKLQkJbG9vcHN0bXRzKCBjb25uLCAmZnBhcmFtLCBBLm11
c3REbyggImludGVyYWN0aXZlIiApICk7CisJCXdoaWxlKCAxICkKKwkJeworCQkJY29ubi5iaW5k
KCBBLmFzU3RyaW5nKCAiZGF0YWJhc2UiICksIEEuYXNTdHJpbmcoICJ1c2VybmFtZSIgKSwgQS5h
c1N0cmluZyggInBhc3N3b3JkIiApICk7CisKKwkJCWxvb3BzdG10cyggY29ubiwgJmZwYXJhbSwg
QS5tdXN0RG8oICJpbnRlcmFjdGl2ZSIgKSApOworCisJCQljb25uLnVuYmluZCgpOworCQl9CiAK
LQkJY29ubi5maW5pc2goKTsKIAkJZGVsZXRlIGdfY29tcDsKIAl9CiAJY2F0Y2goIHN0ZDo6cnVu
dGltZV9lcnJvciAmZSApCtCU0LLQvtC40YfQvdGL0LUg0YTQsNC50LvRiyBvcGVuZGJ4Lm9yaWcv
dXRpbHMvcG8vZGUuZ21vINC4IG9wZW5kYngvdXRpbHMvcG8vZGUuZ21vINGA0LDQt9C70LjRh9Cw
0Y7RgtGB0Y8KZGlmZiAtdXIgb3BlbmRieC5vcmlnL3V0aWxzL3BvL2RlLnBvIG9wZW5kYngvdXRp
bHMvcG8vZGUucG8KLS0tIG9wZW5kYngub3JpZy91dGlscy9wby9kZS5wbwkyMDIzLTA1LTMwIDIw
OjI3OjQyLjU4OTM4OTA4NSArMDMwMAorKysgb3BlbmRieC91dGlscy9wby9kZS5wbwkyMDEyLTA2
LTExIDAxOjU4OjEwLjAwMDAwMDAwMCArMDQwMApAQCAtNyw3ICs3LDcgQEAKIG1zZ3N0ciAiIgog
IlByb2plY3QtSWQtVmVyc2lvbjogb3BlbmRieCAxLjMuN1xuIgogIlJlcG9ydC1Nc2dpZC1CdWdz
LVRvOiBub3JiZXJ0QGxpbnV4bmV0d29ya3MuZGVcbiIKLSJQT1QtQ3JlYXRpb24tRGF0ZTogMjAw
OS0wOC0zMCAxNDowNSswMjAwXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTItMDYtMTAgMjM6
NTgrMDIwMFxuIgogIlBPLVJldmlzaW9uLURhdGU6IDIwMDgtMDQtMDQgMDA6MTgrMDIwMFxuIgog
Ikxhc3QtVHJhbnNsYXRvcjogIDxub3JiZXJ0QGxpbnV4bmV0d29ya3MuZGU+XG4iCiAiTGFuZ3Vh
Z2UtVGVhbTogR2VybWFuXG4iCkBAIC0xMDgsMTEgKzEwOCwxMSBAQAogbXNnaWQgIlBhc3N3b3Jk
OiAiCiBtc2dzdHIgIlBhc3N3b3J0OiAiCiAKLSM6IHV0aWxzL29kYngtc3FsLmNwcDoyNDAKKyM6
IHV0aWxzL29kYngtc3FsLmNwcDoyNDUKIG1zZ2lkICJFcnJvcjogIgogbXNnc3RyICJGZWhsZXI6
ICIKIAotIzogdXRpbHMvb2RieC1zcWwuY3BwOjI0NQorIzogdXRpbHMvb2RieC1zcWwuY3BwOjI1
MAogbXNnaWQgIkVycm9yOiBDYXVnaHQgdW5rbm93biBleGNlcHRpb24iCiBtc2dzdHIgIkZlaGxl
cjogRXMgaXN0IGVpbmUgdW5iZWthbm50ZSBBdXNuYWhtZSBhdWZnZXRyZXRlbiIKIArQlNCy0L7Q
uNGH0L3Ri9C1INGE0LDQudC70Ysgb3BlbmRieC5vcmlnL3V0aWxzL3BvL2VuQHF1b3QuZ21vINC4
IG9wZW5kYngvdXRpbHMvcG8vZW5AcXVvdC5nbW8g0YDQsNC30LvQuNGH0LDRjtGC0YHRjwpkaWZm
IC11ciBvcGVuZGJ4Lm9yaWcvdXRpbHMvcG8vZW5AcXVvdC5wbyBvcGVuZGJ4L3V0aWxzL3BvL2Vu
QHF1b3QucG8KLS0tIG9wZW5kYngub3JpZy91dGlscy9wby9lbkBxdW90LnBvCTIwMjMtMDUtMzAg
MjA6Mjc6NDIuNTg5Mzg5MDg1ICswMzAwCisrKyBvcGVuZGJ4L3V0aWxzL3BvL2VuQHF1b3QucG8J
MjAxMi0wNi0xMSAwMTo1ODoxMC4wMDAwMDAwMDAgKzA0MDAKQEAgLTEsNyArMSw3IEBACiAjIEVu
Z2xpc2ggdHJhbnNsYXRpb25zIGZvciBvcGVuZGJ4IHBhY2thZ2UuCi0jIENvcHlyaWdodCAoQykg
MjAwOSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMgQ29weXJpZ2h0IChDKSAyMDEy
IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgogIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0
ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgb3BlbmRieCBwYWNrYWdlLgotIyBBdXRv
bWF0aWNhbGx5IGdlbmVyYXRlZCwgMjAwOS4KKyMgQXV0b21hdGljYWxseSBnZW5lcmF0ZWQsIDIw
MTIuCiAjCiAjIEFsbCB0aGlzIGNhdGFsb2cgInRyYW5zbGF0ZXMiIGFyZSBxdW90YXRpb24gY2hh
cmFjdGVycy4KICMgVGhlIG1zZ2lkcyBtdXN0IGJlIEFTQ0lJIGFuZCB0aGVyZWZvcmUgY2Fubm90
IGNvbnRhaW4gcmVhbCBxdW90YXRpb24KQEAgLTI3LDEwICsyNywxMCBAQAogIwogbXNnaWQgIiIK
IG1zZ3N0ciAiIgotIlByb2plY3QtSWQtVmVyc2lvbjogb3BlbmRieCAxLjQuM1xuIgorIlByb2pl
Y3QtSWQtVmVyc2lvbjogb3BlbmRieCAxLjQuNlxuIgogIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBu
b3JiZXJ0QGxpbnV4bmV0d29ya3MuZGVcbiIKLSJQT1QtQ3JlYXRpb24tRGF0ZTogMjAwOS0wOC0z
MCAxNDowNSswMjAwXG4iCi0iUE8tUmV2aXNpb24tRGF0ZTogMjAwOS0wOC0zMCAxNDowNSswMjAw
XG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTItMDYtMTAgMjM6NTgrMDIwMFxuIgorIlBPLVJl
dmlzaW9uLURhdGU6IDIwMTItMDYtMTAgMjM6NTgrMDIwMFxuIgogIkxhc3QtVHJhbnNsYXRvcjog
QXV0b21hdGljYWxseSBnZW5lcmF0ZWRcbiIKICJMYW5ndWFnZS1UZWFtOiBub25lXG4iCiAiTUlN
RS1WZXJzaW9uOiAxLjBcbiIKQEAgLTEyNiwxMCArMTI2LDEwIEBACiBtc2dpZCAiUGFzc3dvcmQ6
ICIKIG1zZ3N0ciAiUGFzc3dvcmQ6ICIKIAotIzogdXRpbHMvb2RieC1zcWwuY3BwOjI0MAorIzog
dXRpbHMvb2RieC1zcWwuY3BwOjI0NQogbXNnaWQgIkVycm9yOiAiCiBtc2dzdHIgIkVycm9yOiAi
CiAKLSM6IHV0aWxzL29kYngtc3FsLmNwcDoyNDUKKyM6IHV0aWxzL29kYngtc3FsLmNwcDoyNTAK
IG1zZ2lkICJFcnJvcjogQ2F1Z2h0IHVua25vd24gZXhjZXB0aW9uIgogbXNnc3RyICJFcnJvcjog
Q2F1Z2h0IHVua25vd24gZXhjZXB0aW9uIgpkaWZmIC11ciBvcGVuZGJ4Lm9yaWcvdXRpbHMvcG8v
b3BlbmRieC11dGlscy5wb3Qgb3BlbmRieC91dGlscy9wby9vcGVuZGJ4LXV0aWxzLnBvdAotLS0g
b3BlbmRieC5vcmlnL3V0aWxzL3BvL29wZW5kYngtdXRpbHMucG90CTIwMjMtMDUtMzAgMjA6Mjc6
NDIuNTkwMzg5MDg3ICswMzAwCisrKyBvcGVuZGJ4L3V0aWxzL3BvL29wZW5kYngtdXRpbHMucG90
CTIwMTItMDYtMTEgMDE6NTg6MTAuMDAwMDAwMDAwICswNDAwCkBAIC02LDkgKzYsOSBAQAogIywg
ZnV6enkKIG1zZ2lkICIiCiBtc2dzdHIgIiIKLSJQcm9qZWN0LUlkLVZlcnNpb246IG9wZW5kYngg
MS40LjNcbiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IG9wZW5kYnggMS40LjZcbiIKICJSZXBvcnQt
TXNnaWQtQnVncy1Ubzogbm9yYmVydEBsaW51eG5ldHdvcmtzLmRlXG4iCi0iUE9ULUNyZWF0aW9u
LURhdGU6IDIwMDktMDgtMzAgMTQ6MDUrMDIwMFxuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDEy
LTA2LTEwIDIzOjU4KzAyMDBcbiIKICJQTy1SZXZpc2lvbi1EYXRlOiBZRUFSLU1PLURBIEhPOk1J
K1pPTkVcbiIKICJMYXN0LVRyYW5zbGF0b3I6IEZVTEwgTkFNRSA8RU1BSUxAQUREUkVTUz5cbiIK
ICJMYW5ndWFnZS1UZWFtOiBMQU5HVUFHRSA8TExAbGkub3JnPlxuIgpAQCAtMTA0LDEwICsxMDQs
MTAgQEAKIG1zZ2lkICJQYXNzd29yZDogIgogbXNnc3RyICIiCiAKLSM6IHV0aWxzL29kYngtc3Fs
LmNwcDoyNDAKKyM6IHV0aWxzL29kYngtc3FsLmNwcDoyNDUKIG1zZ2lkICJFcnJvcjogIgogbXNn
c3RyICIiCiAKLSM6IHV0aWxzL29kYngtc3FsLmNwcDoyNDUKKyM6IHV0aWxzL29kYngtc3FsLmNw
cDoyNTAKIG1zZ2lkICJFcnJvcjogQ2F1Z2h0IHVua25vd24gZXhjZXB0aW9uIgogbXNnc3RyICIi
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>13306</attachid>
            <date>2023-05-31 00:05:23 +0300</date>
            <delta_ts>2023-06-01 16:15:54 +0300</delta_ts>
            <desc>Патч для spec-файла</desc>
            <filename>opendbx-1.4.6-update-spec.patch</filename>
            <type>text/plain</type>
            <size>1008</size>
            <attacher name="Danil Nazarov">idaniel959</attacher>
            
              <data encoding="base64">LS0tIG9wZW5kYnguc3BlYy5vcmlnCTIwMjMtMDUtMzAgMjM6Mjc6MDYuNTcxMTcwODk1ICswMzAw
CisrKyBvcGVuZGJ4LnNwZWMJMjAyMy0wNS0zMCAyMzozMjoyMi40MjEzNjc1MDIgKzAzMDAKQEAg
LTgsNyArOCw3IEBACiAlZGVmX3dpdGhvdXQgZmlyZWJpcmQKIAogTmFtZTogb3BlbmRieAotVmVy
c2lvbjogMS40LjMKK1ZlcnNpb246IDEuNC42CiBSZWxlYXNlOiBhbHQzCiAKIFN1bW1hcnk6IFVu
aWZpZWQgZGF0YWJhc2UgbGF5ZXIgd2l0aCBhIGNsZWFuIGFuZCBsaWdodHdlaWdodCBpbnRlcmZh
Y2UKQEAgLTE5LDcgKzE5LDggQEAKIAogIyBodHRwOi8vd3d3LmxpbnV4bmV0d29ya3MuZGUvb3Bl
bmRieC9kb3dubG9hZC8lbmFtZS0ldmVyc2lvbi50YXIuZ3oKIFNvdXJjZTogJW5hbWUtJXZlcnNp
b24udGFyCi1QYXRjaDogJW5hbWUtMS40LjAtYWx0LXNxbGl0ZTMtbm8tdGhyZWFkc2FmZS5wYXRj
aAorUGF0Y2gwOiAlbmFtZS0xLjQuMC1hbHQtc3FsaXRlMy1uby10aHJlYWRzYWZlLnBhdGNoCitQ
YXRjaDE6ICVuYW1lLTEuNC42LXVwZGF0ZS5wYXRjaAogCiAjIEF1dG9tYXRpY2FsbHkgYWRkZWQg
YnkgYnVpbGRyZXEgb24gV2VkIEFwciAwOCAyMDA5CiBCdWlsZFJlcXVpcmVzOiBnY2MtYysrIGxp
Ym5jdXJzZXMtZGV2ZWwgbGlicmVhZGxpbmUtZGV2ZWwKQEAgLTEwOSw3ICsxMTAsOCBAQAogCiAl
cHJlcAogJXNldHVwIC1xCi0lcGF0Y2ggLXAwCislcGF0Y2gwIC1wMAorJXBhdGNoMSAtcDEKIAog
JWJ1aWxkCiAlaWZfd2l0aCBteXNxbApAQCAtMTczLDYgKzE3NSw5IEBACiAlZW5kaWYKIAogJWNo
YW5nZWxvZworKiBUdWUgTWF5IDMwIDIwMjMgRGFuaWwgTmF6YXJvdiA8aWRhbmllbDk1OUB5YW5k
ZXgucnU+IDEuNC42LWFsdDMKKy0gVXBkYXRlZCB0byB2ZXJzaW9uIDEuNC42CisKICogVHVlIE9j
dCAxMiAyMDIxIEFsZWtzZWkgTmlraWZvcm92IDxkYXJrdGVtcGxhckBhbHRsaW51eC5vcmc+IDEu
NC4zLWFsdDMKIC0gRml4ZWQgYnVpbGQgd2l0aCBnY2MtMTEuCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>13361</attachid>
            <date>2023-06-01 16:15:54 +0300</date>
            <delta_ts>2023-06-01 16:15:54 +0300</delta_ts>
            <desc>Патч для spec-файла (1.4.6)</desc>
            <filename>opendbx-1.4.6-spec-update.patch</filename>
            <type>text/plain</type>
            <size>532</size>
            <attacher name="Danil Nazarov">idaniel959</attacher>
            
              <data encoding="base64">LS0tIG9wZW5kYnguc3BlYy5vcmlnCTIwMjMtMDUtMzAgMjM6Mjc6MDYuNTcxMTcwODk1ICswMzAw
CisrKyBvcGVuZGJ4LnNwZWMJMjAyMy0wNi0wMSAxNjoxMToxOS44NTgxMDUwOTUgKzAzMDAKQEAg
LTgsNyArOCw3IEBACiAlZGVmX3dpdGhvdXQgZmlyZWJpcmQKIAogTmFtZTogb3BlbmRieAotVmVy
c2lvbjogMS40LjMKK1ZlcnNpb246IDEuNC42CiBSZWxlYXNlOiBhbHQzCiAKIFN1bW1hcnk6IFVu
aWZpZWQgZGF0YWJhc2UgbGF5ZXIgd2l0aCBhIGNsZWFuIGFuZCBsaWdodHdlaWdodCBpbnRlcmZh
Y2UKQEAgLTE3Myw2ICsxNzMsOSBAQAogJWVuZGlmCiAKICVjaGFuZ2Vsb2cKKyogVHVlIE1heSAz
MCAyMDIzIERhbmlsIE5hemFyb3YgPGlkYW5pZWw5NTlAeWFuZGV4LnJ1PiAxLjQuNi1hbHQzCist
IFVwZGF0ZWQgdG8gdmVyc2lvbiAxLjQuNgorCiAqIFR1ZSBPY3QgMTIgMjAyMSBBbGVrc2VpIE5p
a2lmb3JvdiA8ZGFya3RlbXBsYXJAYWx0bGludXgub3JnPiAxLjQuMy1hbHQzCiAtIEZpeGVkIGJ1
aWxkIHdpdGggZ2NjLTExLgogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>