<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>171714</bug_id>
          
          <creation_ts>2017-05-04 22:33:30 -0700</creation_ts>
          <short_desc>REGRESSION(r216206): Multiple LayoutTests crashing in Document::page() (Requested by ap on #webkit).</short_desc>
          <delta_ts>2017-05-04 22:38:00 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>171487</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>jonlee</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1305006</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-04 22:33:30 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/216206 broke the build:
Multiple LayoutTests crashing in Document::page() (Requested by ap on #webkit).

This is an automatic bug report generated by webkitbot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1305008</commentid>
    <comment_count>1</comment_count>
      <attachid>309144</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-04 22:33:53 -0700</bug_when>
    <thetext>Created attachment 309144
ROLLOUT of r216206

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1305010</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2017-05-04 22:34:36 -0700</bug_when>
    <thetext>*** Bug 171705 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1305014</commentid>
    <comment_count>3</comment_count>
      <attachid>309144</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-04 22:37:58 -0700</bug_when>
    <thetext>Comment on attachment 309144
ROLLOUT of r216206

Clearing flags on attachment: 309144

Committed r216234: &lt;http://trac.webkit.org/changeset/216234&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1305015</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-04 22:38:00 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>309144</attachid>
            <date>2017-05-04 22:33:53 -0700</date>
            <delta_ts>2017-05-04 22:37:58 -0700</delta_ts>
            <desc>ROLLOUT of r216206</desc>
            <filename>bug-171714-20170505013353.patch</filename>
            <type>text/plain</type>
            <size>251015</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE2MjMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBj
OWZlNmEyMGVkZjY3YWRjMjkxZTNkMDE0Zjc5YzBmMzgyM2I5ZmQ0Li44NjM5ZmVkNzgzYTk1ZTJi
ZTk1OGM1NTgzNzIwZWI1OTk2Zjk5N2QyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNyBAQAorMjAxNy0wNS0wNCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIxNjIwNi4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MTcxNAorCisgICAg
ICAgIE11bHRpcGxlIExheW91dFRlc3RzIGNyYXNoaW5nIGluIERvY3VtZW50OjpwYWdlKCkgKFJl
cXVlc3RlZAorICAgICAgICBieSBhcCBvbiAjd2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBj
aGFuZ2VzZXQ6CisKKyAgICAgICAgIlJlbW92ZSBzdXBwb3J0IGZvciBsZWdhY3kgTm90aWZpY2F0
aW9ucyIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3
MTQ4NworICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yMTYyMDYKKwog
MjAxNy0wNS0wNCAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQGFtLnNvbnkuY29tPgogCiAg
ICAgICAgIFtXaW5dIFJlbW92ZSByZWR1bmRhbnQgbWFjcm9zIHRoYXQgYXJlIHNldCBpbiB0aGUg
Q01ha2UgY29uZmlnCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9X
VEYvQ2hhbmdlTG9nCmluZGV4IDYwM2FmZjJkMWY0NmIwNjI0Y2JlM2I1Yzg4ODUyY2I0MzQ4MDY5
YzEuLmNhMmUzNzVlZGJkNWVlZjgxNDJkNzE1OTc0ZTRhY2RlMDMzZGNhYjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTcgQEAKKzIwMTctMDUtMDQgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQu
b3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMTYyMDYuCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzE3MTQKKworICAgICAg
ICBNdWx0aXBsZSBMYXlvdXRUZXN0cyBjcmFzaGluZyBpbiBEb2N1bWVudDo6cGFnZSgpIChSZXF1
ZXN0ZWQKKyAgICAgICAgYnkgYXAgb24gI3dlYmtpdCkuCisKKyAgICAgICAgUmV2ZXJ0ZWQgY2hh
bmdlc2V0OgorCisgICAgICAgICJSZW1vdmUgc3VwcG9ydCBmb3IgbGVnYWN5IE5vdGlmaWNhdGlv
bnMiCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzE0
ODcKKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjE2MjA2CisKIDIw
MTctMDUtMDQgIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBhbS5zb255LmNvbT4KIAogICAg
ICAgICBbV2luXSBSZW1vdmUgcmVkdW5kYW50IG1hY3JvcyB0aGF0IGFyZSBzZXQgaW4gdGhlIENN
YWtlIGNvbmZpZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDBiY2E2NWM2MzFhNjdkZGEwYjQ5MGM0NDVmYmQyYTM0
NTAyZTU5OWUuLmQyMjlkY2E1ZGI2OWFlZGZmZTEzZTMwMTQ4ZWFkN2VkNzlmYjVjNWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxNy0wNS0wNCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0
LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIx
NjIwNi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3
MTcxNAorCisgICAgICAgIE11bHRpcGxlIExheW91dFRlc3RzIGNyYXNoaW5nIGluIERvY3VtZW50
OjpwYWdlKCkgKFJlcXVlc3RlZAorICAgICAgICBieSBhcCBvbiAjd2Via2l0KS4KKworICAgICAg
ICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIlJlbW92ZSBzdXBwb3J0IGZvciBsZWdh
Y3kgTm90aWZpY2F0aW9ucyIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE3MTQ4NworICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNl
dC8yMTYyMDYKKwogMjAxNy0wNS0wNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgog
CiAgICAgICAgIERyb3AgcmVtYWluaW5nIHVzZXMgb2YgUGFzc1JlZlB0ciBmcm9tIENvbXBvc2l0
ZUVkaXRDb21tYW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBlZjk3NDg2ZDMwNTA5YmEyODNhMjMy
N2RjMDc3ODk2MWRiM2JkMTUwLi5mNjY1NzdhNjc4M2EyMTU1NGQ4MTA2ZGEwNjAyMGNkMGEwNjQ2
Y2ViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxNy0wNS0wNCAgQ29t
bWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdl
ZCwgcm9sbGluZyBvdXQgcjIxNjIwNi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE3MTcxNAorCisgICAgICAgIE11bHRpcGxlIExheW91dFRlc3RzIGNy
YXNoaW5nIGluIERvY3VtZW50OjpwYWdlKCkgKFJlcXVlc3RlZAorICAgICAgICBieSBhcCBvbiAj
d2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIlJlbW92
ZSBzdXBwb3J0IGZvciBsZWdhY3kgTm90aWZpY2F0aW9ucyIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MTQ4NworICAgICAgICBodHRwOi8vdHJhYy53
ZWJraXQub3JnL2NoYW5nZXNldC8yMTYyMDYKKwogMjAxNy0wNS0wNCAgRG9uIE9sbXN0ZWFkICA8
ZG9uLm9sbXN0ZWFkQGFtLnNvbnkuY29tPgogCiAgICAgICAgIFtXaW5dIFJlbW92ZSByZWR1bmRh
bnQgbWFjcm9zIHRoYXQgYXJlIHNldCBpbiB0aGUgQ01ha2UgY29uZmlnCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
aW5kZXggMmE4MGI1MDRjMjg3MTFiMzYyYTdmMDkyOGQ0Nzc5ZTQzNjIzZmE3Ni4uZTQzZWE0OGU5
NTYzYmRlYzFiNTMwM2VjNjhkM2JjNThlOWY0OGIzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE3IEBACisyMDE3LTA1LTA0ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0
Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjE2MjA2LgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcxNzE0CisKKyAgICAg
ICAgTXVsdGlwbGUgTGF5b3V0VGVzdHMgY3Jhc2hpbmcgaW4gRG9jdW1lbnQ6OnBhZ2UoKSAoUmVx
dWVzdGVkCisgICAgICAgIGJ5IGFwIG9uICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVkIGNo
YW5nZXNldDoKKworICAgICAgICAiUmVtb3ZlIHN1cHBvcnQgZm9yIGxlZ2FjeSBOb3RpZmljYXRp
b25zIgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcx
NDg3CisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzIxNjIwNgorCiAy
MDE3LTA1LTA0ICBKZXJlbXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KIAogICAgICAgICBV
SUNvbG9yICt3aGl0ZUNvbG9yIGFuZCArY2xlYXJDb2xvciBhcmUgYW1iaWd1b3VzIGFuZCBuZWVk
IHRvIGJlIGNhc3RlZCB3aGVuIHNvZnQgbGlua2VkLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC93aW4vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCmluZGV4IGYwOTc2
YmJjNjZjM2VjODc3N2Y2ZGVkMTUxZWI2YjQ5MjE1MjQ5ZDYuLjJjN2IyNDNkYTJiYjQ0YTFjNTA0
MDEzOGE1MjIxMzBmYmNhMTZhZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAor
MjAxNy0wNS0wNCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAg
ICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIxNjIwNi4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MTcxNAorCisgICAgICAgIE11bHRpcGxl
IExheW91dFRlc3RzIGNyYXNoaW5nIGluIERvY3VtZW50OjpwYWdlKCkgKFJlcXVlc3RlZAorICAg
ICAgICBieSBhcCBvbiAjd2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisK
KyAgICAgICAgIlJlbW92ZSBzdXBwb3J0IGZvciBsZWdhY3kgTm90aWZpY2F0aW9ucyIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MTQ4NworICAgICAg
ICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yMTYyMDYKKwogMjAxNy0wNS0wNCAg
RG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQGFtLnNvbnkuY29tPgogCiAgICAgICAgIFtXaW5d
IFJlbW92ZSByZWR1bmRhbnQgbWFjcm9zIHRoYXQgYXJlIHNldCBpbiB0aGUgQ01ha2UgY29uZmln
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cKaW5kZXggZGM3ODE5ZTk4ZmZiNGI2NDkzM2Q5YmViZjU1NWU0YjVmNWM2NGRkMC4u
NjU2NzAzZGNjN2NhMzc0NTRhMTZhNWJmNDhmZjRhYTRiOGY3MmJkYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE3IEBACisyMDE3LTA1LTA0ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Vi
a2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjE2MjA2LgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcxNzE0CisKKyAg
ICAgICAgTXVsdGlwbGUgTGF5b3V0VGVzdHMgY3Jhc2hpbmcgaW4gRG9jdW1lbnQ6OnBhZ2UoKSAo
UmVxdWVzdGVkCisgICAgICAgIGJ5IGFwIG9uICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVk
IGNoYW5nZXNldDoKKworICAgICAgICAiUmVtb3ZlIHN1cHBvcnQgZm9yIGxlZ2FjeSBOb3RpZmlj
YXRpb25zIgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTcxNDg3CisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzIxNjIwNgor
CiAyMDE3LTA1LTA0ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBO
ZXZlckRlc3Ryb3llZDxTdHJpbmc+KEFTQ0lJTGl0ZXJhbCguLi4pKSBpcyBub3QgdGhyZWFkIHNh
ZmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVh
dHVyZURlZmluZXMueGNjb25maWcgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggNGFiYTAyZDEwYmRkNGE5MDU3OGFlY2E5
ODIwNmEyNjYzNDA1M2EzYS4uMGJhNWUxODFmN2IwZTFhZmFjZjQ0MjExYTRkMDEzMjBhYTQ5NmZi
NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1
cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0
aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtMTM5LDYgKzEzOSw3IEBAIEVOQUJMRV9L
RVlCT0FSRF9LRVlfQVRUUklCVVRFID0gRU5BQkxFX0tFWUJPQVJEX0tFWV9BVFRSSUJVVEU7CiBF
TkFCTEVfS0VZQk9BUkRfQ09ERV9BVFRSSUJVVEUgPSBFTkFCTEVfS0VZQk9BUkRfQ09ERV9BVFRS
SUJVVEU7CiBFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVMgPSBFTkFCTEVfTEVHQUNZ
X0NTU19WRU5ET1JfUFJFRklYRVM7CiBFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQVtzZGs9
bWFjb3N4Kl0gPSBFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQTsKK0VOQUJMRV9MRUdBQ1lf
Tk9USUZJQ0FUSU9OU1tzZGs9bWFjb3N4Kl0gPSBFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlM7
CiBFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUyA9IEVOQUJMRV9MRUdBQ1lfVkVORE9SX1BS
RUZJWEVTOwogRU5BQkxFX0xFVFRFUlBSRVNTW3Nkaz1pcGhvbmUqXSA9IEVOQUJMRV9MRVRURVJQ
UkVTUzsKIEVOQUJMRV9MSU5LX1BSRUZFVENIID0gOwpAQCAtMjU0LDQgKzI1NSw0IEBAIEVOQUJM
RV9WQVJJQVRJT05fRk9OVFNfSUZfTk9UXyA9ICQoRU5BQkxFX1ZBUklBVElPTl9GT05UU19JRl9O
T1RfTk8pOwogRU5BQkxFX1ZBUklBVElPTl9GT05UU19JRl9OT1RfTk8gPSBFTkFCTEVfVkFSSUFU
SU9OX0ZPTlRTOwogRU5BQkxFX1ZBUklBVElPTl9GT05UU19JRl9OT1RfWUVTID0gOwogCi1GRUFU
VVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9UUkFOU0ZPUk1TKSAkKEVOQUJMRV9BQ0NFTEVSQVRF
RF8yRF9DQU5WQVMpICQoRU5BQkxFX0FDQ0VMRVJBVEVEX09WRVJGTE9XX1NDUk9MTElORykgJChF
TkFCTEVfQVBQTEVfUEFZKSAkKEVOQUJMRV9BUFBMRV9QQVlfREVMRUdBVEUpICQoRU5BQkxFX0FU
VEFDSE1FTlRfRUxFTUVOVCkgJChFTkFCTEVfQVZGX0NBUFRJT05TKSAkKEVOQUJMRV9DQUNIRV9Q
QVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkp
ICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DT05URU5UX0ZJTFRFUklORykg
JChFTkFCTEVfQ1NTX0FOSU1BVElPTlNfTEVWRUxfMikgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFU
SU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0Vf
QURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9DU1Nf
SU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQoRU5BQkxFX0NTU19TQ1JP
TExfU05BUCkgJChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpICQoRU5BQkxFX0NTU19UUkFJ
TElOR19XT1JEKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZ
KSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQ
T1JUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9EQVRBQ1VFX1ZBTFVF
KSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04p
ICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRkFTVF9KSVRfUEVSTUlTU0lPTlMp
ICQoRU5BQkxFX0ZFVENIX0FQSSkgJChFTkFCTEVfRklMVEVSU19MRVZFTF8yKSAkKEVOQUJMRV9G
T05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQ
SSkgJChFTkFCTEVfR0FNRVBBRF9ERVBSRUNBVEVEKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJM
RV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RB
VEFCQVNFX0lOX1dPUktFUlMpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lO
UFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUikgJChFTkFC
TEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExF
VEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQ
RV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dF
RUspICQoRU5BQkxFX0lOVEVSU0VDVElPTl9PQlNFUlZFUikgJChFTkFCTEVfSU5UTCkgJChFTkFC
TEVfSU9TX0dFU1RVUkVfRVZFTlRTKSAkKEVOQUJMRV9JT1NfVE9VQ0hfRVZFTlRTKSAkKEVOQUJM
RV9KSVQpICQoRU5BQkxFX0tFWUJPQVJEX0tFWV9BVFRSSUJVVEUpICQoRU5BQkxFX0tFWUJPQVJE
X0NPREVfQVRUUklCVVRFKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChF
TkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVG
SVhFUykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5B
QkxFX01BQ19HRVNUVVJFX0VWRU5UUykgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9D
QVBUVVJFKSAkKEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01FRElBX1NF
U1NJT04pICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykg
JChFTkFCTEVfTUVESUFfU1RSRUFNKSAkKEVOQUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9N
SFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09O
VEVOVF9VVElMUykgJChFTkFCTEVfTkFWSUdBVE9SX0hXQ09OQ1VSUkVOQ1kpICQoRU5BQkxFX05P
U05JRkYpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQo
RU5BQkxFX1BPSU5URVJfTE9DSykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVf
UFVCTElDX1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVNT1RFX0lOU1BF
Q1RPUikgJChFTkFCTEVfUkVRVUVTVF9BVVRPQ09NUExFVEUpICQoRU5BQkxFX1JFU09MVVRJT05f
TUVESUFfUVVFUlkpICQoRU5BQkxFX1JFU09VUkNFX1VTQUdFKSAkKEVOQUJMRV9SVUJCRVJfQkFO
RElORykgJChFTkFCTEVfU0VSVklDRV9DT05UUk9MUykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJ
UykgJChFTkFCTEVfU1RSRUFNU19BUEkpICQoRU5BQkxFX1NVQlRMRV9DUllQVE8pICQoRU5BQkxF
X1NWR19GT05UUykgJChFTkFCTEVfVEVMRVBIT05FX05VTUJFUl9ERVRFQ1RJT04pICQoRU5BQkxF
X1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9J
Q09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WQVJJQVRJT05f
Rk9OVFMpICQoRU5BQkxFX1ZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSAkKEVOQUJMRV9NQUNfVklE
RU9fVE9PTEJPWCkgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJM
RV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9OUykgJChFTkFCTEVf
V0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfUlRDKSAkKEVOQUJM
RV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV0VCQVNTRU1CTFkp
ICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJHTDIpICQoRU5BQkxFX1dFQkdQVSkgJChFTkFC
TEVfV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAkKEVOQUJMRV9YU0xUKTsKK0ZFQVRVUkVfREVG
SU5FUyA9ICQoRU5BQkxFXzNEX1RSQU5TRk9STVMpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NB
TlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJMRV9B
UFBMRV9QQVkpICQoRU5BQkxFX0FQUExFX1BBWV9ERUxFR0FURSkgJChFTkFCTEVfQVRUQUNITUVO
VF9FTEVNRU5UKSAkKEVOQUJMRV9BVkZfQ0FQVElPTlMpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElP
TklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFC
TEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HKSAkKEVOQUJM
RV9DU1NfQU5JTUFUSU9OU19MRVZFTF8yKSAkKEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJF
QUspICQoRU5BQkxFX0NTU19DT01QT1NJVElORykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFU
SU9OKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9S
RVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NDUk9MTF9TTkFQ
KSAkKEVOQUJMRV9DU1NfU0VMRUNUT1JTX0xFVkVMNCkgJChFTkFCTEVfQ1NTX1RSQUlMSU5HX1dP
UkQpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5B
QkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQo
RU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RBVEFDVUVfVkFMVUUpICQoRU5B
QkxFX0RBVEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFC
TEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9GQVNUX0pJVF9QRVJNSVNTSU9OUykgJChFTkFC
TEVfRkVUQ0hfQVBJKSAkKEVOQUJMRV9GSUxURVJTX0xFVkVMXzIpICQoRU5BQkxFX0ZPTlRfTE9B
RF9FVkVOVFMpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVO
QUJMRV9HQU1FUEFEX0RFUFJFQ0FURUQpICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xP
Q0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0Vf
SU5fV09SS0VSUykgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5QVVRfVFlQ
RV9DT0xPUl9QT1BPVkVSKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBV
VF9UWVBFX0RBVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVfSU5DT01QTEVURSkgJChF
TkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRI
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VFSykgJChF
TkFCTEVfSU5URVJTRUNUSU9OX09CU0VSVkVSKSAkKEVOQUJMRV9JTlRMKSAkKEVOQUJMRV9JT1Nf
R0VTVFVSRV9FVkVOVFMpICQoRU5BQkxFX0lPU19UT1VDSF9FVkVOVFMpICQoRU5BQkxFX0pJVCkg
JChFTkFCTEVfS0VZQk9BUkRfS0VZX0FUVFJJQlVURSkgJChFTkFCTEVfS0VZQk9BUkRfQ09ERV9B
VFRSSUJVVEUpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9M
RUdBQ1lfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykgJChF
TkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5B
QkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BQ19HRVNUVVJFX0VWRU5UUykgJChFTkFCTEVf
TUFUSE1MKSAkKEVOQUJMRV9NRURJQV9DQVBUVVJFKSAkKEVOQUJMRV9NRURJQV9DT05UUk9MU19T
Q1JJUFQpICQoRU5BQkxFX01FRElBX1NFU1NJT04pICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChF
TkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVESUFfU1RSRUFNKSAkKEVOQUJMRV9N
RVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxF
KSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTkFWSUdBVE9SX0hX
Q09OQ1VSUkVOQ1kpICQoRU5BQkxFX05PU05JRkYpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQo
RU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BPSU5URVJfTE9DSykgJChFTkFCTEVfUFJP
WElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9U
QSkgJChFTkFCTEVfUkVNT1RFX0lOU1BFQ1RPUikgJChFTkFCTEVfUkVRVUVTVF9BVVRPQ09NUExF
VEUpICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFfUVVFUlkpICQoRU5BQkxFX1JFU09VUkNFX1VT
QUdFKSAkKEVOQUJMRV9SVUJCRVJfQkFORElORykgJChFTkFCTEVfU0VSVklDRV9DT05UUk9MUykg
JChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1RSRUFNU19BUEkpICQoRU5BQkxF
X1NVQlRMRV9DUllQVE8pICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVMRVBIT05FX05V
TUJFUl9ERVRFQ1RJT04pICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hf
RVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1Rf
QUxMKSAkKEVOQUJMRV9WQVJJQVRJT05fRk9OVFMpICQoRU5BQkxFX1ZJREVPX1BSRVNFTlRBVElP
Tl9NT0RFKSAkKEVOQUJMRV9NQUNfVklERU9fVE9PTEJPWCkgJChFTkFCTEVfVklERU9fVFJBQ0sp
ICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJMRV9X
RUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAk
KEVOQUJMRV9XRUJfUlRDKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlO
RykgJChFTkFCTEVfV0VCQVNTRU1CTFkpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJHTDIp
ICQoRU5BQkxFX1dFQkdQVSkgJChFTkFCTEVfV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAkKEVO
QUJMRV9YU0xUKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0ZlYXR1cmVEZWZpbmVzLmgg
Yi9Tb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCmluZGV4IDEzNGE4YjFhOGI1Zjg4NzMw
MjJiYjliZmM3NDA2YTlhNDcxM2RkODEuLmI1ODQ3MTI0MmRiNTNlZTk4MDg2NWFjZmVkNDJmOTU5
YTBkOGFlNzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0ZlYXR1cmVEZWZpbmVzLmgKKysr
IGIvU291cmNlL1dURi93dGYvRmVhdHVyZURlZmluZXMuaApAQCAtNTM4LDYgKzUzOCwxMCBAQCB0
aGUgcHVibGljIGlPUyBTREsuIFdlIHdpbGwgYWxzbyBuZWVkIHRvIHVwZGF0ZSB0aGUgRmVhdHVy
ZURlZmluZXMueGNjb25maWcgZmlsZQogI2RlZmluZSBFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9N
RURJQSAwCiAjZW5kaWYKIAorI2lmICFkZWZpbmVkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9O
UykKKyNkZWZpbmUgRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TIDAKKyNlbmRpZgorCiAjaWYg
IWRlZmluZWQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpCiAjZGVmaW5lIEVOQUJMRV9M
RUdBQ1lfVkVORE9SX1BSRUZJWEVTIDAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBh
NDcyZTQwOGUwYzA5NTY2Y2UwNzIzYTdkNTIwMWFhZDM4ZGM3MTAwLi4yODI1YmU0MzhkOGY0MTk2
MWEzNTAwODE2YmQ1OWY2YzYyMDc3ZjVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjYxLDgg
KzI2MSwxMSBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxFUwogCiAgICAgTW9kdWxlcy9u
YXZpZ2F0b3Jjb250ZW50dXRpbHMvTmF2aWdhdG9yQ29udGVudFV0aWxzLmlkbAogCisgICAgTW9k
dWxlcy9ub3RpZmljYXRpb25zL0RPTVdpbmRvd05vdGlmaWNhdGlvbnMuaWRsCiAgICAgTW9kdWxl
cy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5pZGwKKyAgICBNb2R1bGVzL25vdGlmaWNhdGlv
bnMvTm90aWZpY2F0aW9uQ2VudGVyLmlkbAogICAgIE1vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3Rp
ZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2suaWRsCisgICAgTW9kdWxlcy9ub3RpZmljYXRpb25z
L1dvcmtlckdsb2JhbFNjb3BlTm90aWZpY2F0aW9ucy5pZGwKIAogICAgIE1vZHVsZXMvcHJveGlt
aXR5L0RldmljZVByb3hpbWl0eUV2ZW50LmlkbAogCkBAIC05NzksOCArOTgyLDExIEBAIHNldChX
ZWJDb3JlX1NPVVJDRVMKIAogICAgIE1vZHVsZXMvbmF2aWdhdG9yY29udGVudHV0aWxzL05hdmln
YXRvckNvbnRlbnRVdGlscy5jcHAKIAorICAgIE1vZHVsZXMvbm90aWZpY2F0aW9ucy9ET01XaW5k
b3dOb3RpZmljYXRpb25zLmNwcAogICAgIE1vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRp
b24uY3BwCisgICAgTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5jcHAK
ICAgICBNb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ29udHJvbGxlci5jcHAKKyAg
ICBNb2R1bGVzL25vdGlmaWNhdGlvbnMvV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25zLmNw
cAogCiAgICAgTW9kdWxlcy9wcm94aW1pdHkvRGV2aWNlUHJveGltaXR5Q29udHJvbGxlci5jcHAK
ICAgICBNb2R1bGVzL3Byb3hpbWl0eS9EZXZpY2VQcm94aW1pdHlFdmVudC5jcHAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmln
IGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcK
aW5kZXggNGFiYTAyZDEwYmRkNGE5MDU3OGFlY2E5ODIwNmEyNjYzNDA1M2EzYS4uMGJhNWUxODFm
N2IwZTFhZmFjZjQ0MjExYTRkMDEzMjBhYTQ5NmZiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dl
YkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTEzOSw2ICsx
MzksNyBAQCBFTkFCTEVfS0VZQk9BUkRfS0VZX0FUVFJJQlVURSA9IEVOQUJMRV9LRVlCT0FSRF9L
RVlfQVRUUklCVVRFOwogRU5BQkxFX0tFWUJPQVJEX0NPREVfQVRUUklCVVRFID0gRU5BQkxFX0tF
WUJPQVJEX0NPREVfQVRUUklCVVRFOwogRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVT
ID0gRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTOwogRU5BQkxFX0xFR0FDWV9FTkNS
WVBURURfTUVESUFbc2RrPW1hY29zeCpdID0gRU5BQkxFX0xFR0FDWV9FTkNSWVBURURfTUVESUE7
CitFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlNbc2RrPW1hY29zeCpdID0gRU5BQkxFX0xFR0FD
WV9OT1RJRklDQVRJT05TOwogRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMgPSBFTkFCTEVf
TEVHQUNZX1ZFTkRPUl9QUkVGSVhFUzsKIEVOQUJMRV9MRVRURVJQUkVTU1tzZGs9aXBob25lKl0g
PSBFTkFCTEVfTEVUVEVSUFJFU1M7CiBFTkFCTEVfTElOS19QUkVGRVRDSCA9IDsKQEAgLTI1NCw0
ICsyNTUsNCBAQCBFTkFCTEVfVkFSSUFUSU9OX0ZPTlRTX0lGX05PVF8gPSAkKEVOQUJMRV9WQVJJ
QVRJT05fRk9OVFNfSUZfTk9UX05PKTsKIEVOQUJMRV9WQVJJQVRJT05fRk9OVFNfSUZfTk9UX05P
ID0gRU5BQkxFX1ZBUklBVElPTl9GT05UUzsKIEVOQUJMRV9WQVJJQVRJT05fRk9OVFNfSUZfTk9U
X1lFUyA9IDsKIAotRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfVFJBTlNGT1JNUykgJChF
TkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxP
V19TQ1JPTExJTkcpICQoRU5BQkxFX0FQUExFX1BBWSkgJChFTkFCTEVfQVBQTEVfUEFZX0RFTEVH
QVRFKSAkKEVOQUJMRV9BVFRBQ0hNRU5UX0VMRU1FTlQpICQoRU5BQkxFX0FWRl9DQVBUSU9OUykg
JChFTkFCTEVfQ0FDSEVfUEFSVElUSU9OSU5HKSAkKEVOQUJMRV9DQU5WQVNfUEFUSCkgJChFTkFC
TEVfQ0FOVkFTX1BST1hZKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ09O
VEVOVF9GSUxURVJJTkcpICQoRU5BQkxFX0NTU19BTklNQVRJT05TX0xFVkVMXzIpICQoRU5BQkxF
X0NTU19CT1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKSAkKEVO
QUJMRV9DU1NfREVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElP
TikgJChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAk
KEVOQUJMRV9DU1NfU0NST0xMX1NOQVApICQoRU5BQkxFX0NTU19TRUxFQ1RPUlNfTEVWRUw0KSAk
KEVOQUJMRV9DU1NfVFJBSUxJTkdfV09SRCkgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9D
VVJTT1JfVklTSUJJTElUWSkgJChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKSAkKEVOQUJM
RV9EQVNIQk9BUkRfU1VQUE9SVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFC
TEVfREFUQUNVRV9WQUxVRSkgJChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCkgJChFTkFCTEVfREVW
SUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUEpICQoRU5BQkxFX0ZBU1Rf
SklUX1BFUk1JU1NJT05TKSAkKEVOQUJMRV9GRVRDSF9BUEkpICQoRU5BQkxFX0ZJTFRFUlNfTEVW
RUxfMikgJChFTkFCTEVfRk9OVF9MT0FEX0VWRU5UUykgJChFTkFCTEVfRlRMX0pJVCkgJChFTkFC
TEVfRlVMTFNDUkVFTl9BUEkpICQoRU5BQkxFX0dBTUVQQURfREVQUkVDQVRFRCkgJChFTkFCTEVf
R0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChF
TkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFC
QVNFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZ
UEVfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9E
QVRFVElNRV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQo
RU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFC
TEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JTlRFUlNFQ1RJT05fT0JTRVJWRVIpICQoRU5B
QkxFX0lOVEwpICQoRU5BQkxFX0lPU19HRVNUVVJFX0VWRU5UUykgJChFTkFCTEVfSU9TX1RPVUNI
X0VWRU5UUykgJChFTkFCTEVfSklUKSAkKEVOQUJMRV9LRVlCT0FSRF9LRVlfQVRUUklCVVRFKSAk
KEVOQUJMRV9LRVlCT0FSRF9DT0RFX0FUVFJJQlVURSkgJChFTkFCTEVfTEVHQUNZX0NTU19WRU5E
T1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9FTkNSWVBURURfTUVESUEpICQoRU5BQkxFX0xF
R0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5L
X1BSRUZFVENIKSAkKEVOQUJMRV9NQUNfR0VTVFVSRV9FVkVOVFMpICQoRU5BQkxFX01BVEhNTCkg
JChFTkFCTEVfTUVESUFfQ0FQVFVSRSkgJChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAk
KEVOQUJMRV9NRURJQV9TRVNTSU9OKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01F
RElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FRElBX1NUUkVBTSkgJChFTkFCTEVfTUVURVJfRUxF
TUVOVCkgJChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFC
TEVfTkFWSUdBVE9SX0NPTlRFTlRfVVRJTFMpICQoRU5BQkxFX05BVklHQVRPUl9IV0NPTkNVUlJF
TkNZKSAkKEVOQUJMRV9OT1NOSUZGKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9Q
REZLSVRfUExVR0lOKSAkKEVOQUJMRV9QT0lOVEVSX0xPQ0spICQoRU5BQkxFX1BST1hJTUlUWV9F
VkVOVFMpICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5B
QkxFX1JFTU9URV9JTlNQRUNUT1IpICQoRU5BQkxFX1JFUVVFU1RfQVVUT0NPTVBMRVRFKSAkKEVO
QUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9SRVNPVVJDRV9VU0FHRSkgJChF
TkFCTEVfUlVCQkVSX0JBTkRJTkcpICQoRU5BQkxFX1NFUlZJQ0VfQ09OVFJPTFMpICQoRU5BQkxF
X1NQRUVDSF9TWU5USEVTSVMpICQoRU5BQkxFX1NUUkVBTVNfQVBJKSAkKEVOQUJMRV9TVUJUTEVf
Q1JZUFRPKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTEVQSE9ORV9OVU1CRVJfREVU
RUNUSU9OKSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykg
JChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChF
TkFCTEVfVkFSSUFUSU9OX0ZPTlRTKSAkKEVOQUJMRV9WSURFT19QUkVTRU5UQVRJT05fTU9ERSkg
JChFTkFCTEVfTUFDX1ZJREVPX1RPT0xCT1gpICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJM
RV9WSURFTykgJChFTkFCTEVfVklFV19NT0RFX0NTU19NRURJQSkgJChFTkFCTEVfV0VCX0FOSU1B
VElPTlMpICQoRU5BQkxFX1dFQl9BVURJTykgJChFTkFCTEVfV0VCX1JFUExBWSkgJChFTkFCTEVf
V0VCX1JUQykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9USU1JTkcpICQoRU5B
QkxFX1dFQkFTU0VNQkxZKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCR0wyKSAkKEVOQUJM
RV9XRUJHUFUpICQoRU5BQkxFX1dJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkgJChFTkFCTEVfWFNM
VCk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9UUkFOU0ZPUk1TKSAkKEVOQUJMRV9B
Q0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FDQ0VMRVJBVEVEX09WRVJGTE9XX1NDUk9M
TElORykgJChFTkFCTEVfQVBQTEVfUEFZKSAkKEVOQUJMRV9BUFBMRV9QQVlfREVMRUdBVEUpICQo
RU5BQkxFX0FUVEFDSE1FTlRfRUxFTUVOVCkgJChFTkFCTEVfQVZGX0NBUFRJT05TKSAkKEVOQUJM
RV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5W
QVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DT05URU5UX0ZJ
TFRFUklORykgJChFTkFCTEVfQ1NTX0FOSU1BVElPTlNfTEVWRUxfMikgJChFTkFCTEVfQ1NTX0JP
WF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NT
U19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OKSAkKEVO
QUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQoRU5BQkxF
X0NTU19TQ1JPTExfU05BUCkgJChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpICQoRU5BQkxF
X0NTU19UUkFJTElOR19XT1JEKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxFX0NVUlNPUl9W
SVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hC
T0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9EQVRB
Q1VFX1ZBTFVFKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9ERVZJQ0VfT1JJ
RU5UQVRJT04pICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRkFTVF9KSVRfUEVS
TUlTU0lPTlMpICQoRU5BQkxFX0ZFVENIX0FQSSkgJChFTkFCTEVfRklMVEVSU19MRVZFTF8yKSAk
KEVOQUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9GVUxM
U0NSRUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRF9ERVBSRUNBVEVEKSAkKEVOQUJMRV9HQU1FUEFE
KSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9J
TkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQo
RU5BQkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xP
UikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1F
X0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVf
SU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBV
VF9UWVBFX1dFRUspICQoRU5BQkxFX0lOVEVSU0VDVElPTl9PQlNFUlZFUikgJChFTkFCTEVfSU5U
TCkgJChFTkFCTEVfSU9TX0dFU1RVUkVfRVZFTlRTKSAkKEVOQUJMRV9JT1NfVE9VQ0hfRVZFTlRT
KSAkKEVOQUJMRV9KSVQpICQoRU5BQkxFX0tFWUJPQVJEX0tFWV9BVFRSSUJVVEUpICQoRU5BQkxF
X0tFWUJPQVJEX0NPREVfQVRUUklCVVRFKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVG
SVhFUykgJChFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfTEVHQUNZX05P
VElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xF
VFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQUNfR0VTVFVSRV9F
VkVOVFMpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfQ0FQVFVSRSkgJChFTkFCTEVf
TUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9TRVNTSU9OKSAkKEVOQUJMRV9N
RURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FRElBX1NU
UkVBTSkgJChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01P
VVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFWSUdBVE9SX0NPTlRFTlRfVVRJTFMpICQoRU5B
QkxFX05BVklHQVRPUl9IV0NPTkNVUlJFTkNZKSAkKEVOQUJMRV9OT1NOSUZGKSAkKEVOQUJMRV9O
T1RJRklDQVRJT05TKSAkKEVOQUJMRV9QREZLSVRfUExVR0lOKSAkKEVOQUJMRV9QT0lOVEVSX0xP
Q0spICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElT
VCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFTU9URV9JTlNQRUNUT1IpICQoRU5BQkxFX1JF
UVVFU1RfQVVUT0NPTVBMRVRFKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVO
QUJMRV9SRVNPVVJDRV9VU0FHRSkgJChFTkFCTEVfUlVCQkVSX0JBTkRJTkcpICQoRU5BQkxFX1NF
UlZJQ0VfQ09OVFJPTFMpICQoRU5BQkxFX1NQRUVDSF9TWU5USEVTSVMpICQoRU5BQkxFX1NUUkVB
TVNfQVBJKSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5B
QkxFX1RFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcp
ICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVO
QUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVkFSSUFUSU9OX0ZPTlRTKSAkKEVOQUJMRV9W
SURFT19QUkVTRU5UQVRJT05fTU9ERSkgJChFTkFCTEVfTUFDX1ZJREVPX1RPT0xCT1gpICQoRU5B
QkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklFV19NT0RFX0NTU19N
RURJQSkgJChFTkFCTEVfV0VCX0FOSU1BVElPTlMpICQoRU5BQkxFX1dFQl9BVURJTykgJChFTkFC
TEVfV0VCX1JFUExBWSkgJChFTkFCTEVfV0VCX1JUQykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQo
RU5BQkxFX1dFQl9USU1JTkcpICQoRU5BQkxFX1dFQkFTU0VNQkxZKSAkKEVOQUJMRV9XRUJHTCkg
JChFTkFCTEVfV0VCR0wyKSAkKEVOQUJMRV9XRUJHUFUpICQoRU5BQkxFX1dJUkVMRVNTX1BMQVlC
QUNLX1RBUkdFVCkgJChFTkFCTEVfWFNMVCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKaW5k
ZXggZTM0NzFjZjU0MTdjNmFmMDAxNzVmZjJmYWM5OTgyZTExMmZkMjliZi4uNWE2NjFmMTYxMTQx
NGY2OGQ2NjllNDY4ZGQwYjdiMTZkN2UxMTc2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNw
cApAQCAtMTc5LDYgKzE3OSw3IEBACiAjaW5jbHVkZSAiSlNET01XaW5kb3cuY3BwIgogI2luY2x1
ZGUgIkpTRE9NV2luZG93RmV0Y2guY3BwIgogI2luY2x1ZGUgIkpTRE9NV2luZG93SW5kZXhlZERh
dGFiYXNlLmNwcCIKKyNpbmNsdWRlICJKU0RPTVdpbmRvd05vdGlmaWNhdGlvbnMuY3BwIgogI2lu
Y2x1ZGUgIkpTRE9NV2luZG93U3BlZWNoU3ludGhlc2lzLmNwcCIKICNpbmNsdWRlICJKU0RPTVdp
bmRvd1dlYkRhdGFiYXNlLmNwcCIKICNpbmNsdWRlICJKU0VsZW1lbnQuY3BwIgpAQCAtMzUyLDYg
KzM1Myw3IEBACiAjaW5jbHVkZSAiSlNOb25Eb2N1bWVudFR5cGVDaGlsZE5vZGUuY3BwIgogI2lu
Y2x1ZGUgIkpTTm9uRWxlbWVudFBhcmVudE5vZGUuY3BwIgogI2luY2x1ZGUgIkpTTm90aWZpY2F0
aW9uLmNwcCIKKyNpbmNsdWRlICJKU05vdGlmaWNhdGlvbkNlbnRlci5jcHAiCiAjaW5jbHVkZSAi
SlNOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2suY3BwIgogI2luY2x1ZGUgIkpTT3ZlcmZs
b3dFdmVudC5jcHAiCiAjaW5jbHVkZSAiSlNPZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnQuY3Bw
IgpAQCAtNjQyLDYgKzY0NCw3IEBACiAjaW5jbHVkZSAiSlNXb3JrZXJHbG9iYWxTY29wZS5jcHAi
CiAjaW5jbHVkZSAiSlNXb3JrZXJHbG9iYWxTY29wZUZldGNoLmNwcCIKICNpbmNsdWRlICJKU1dv
cmtlckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNlLmNwcCIKKyNpbmNsdWRlICJKU1dvcmtlckds
b2JhbFNjb3BlTm90aWZpY2F0aW9ucy5jcHAiCiAjaW5jbHVkZSAiSlNXb3JrZXJMb2NhdGlvbi5j
cHAiCiAjaW5jbHVkZSAiSlNXb3JrZXJOYXZpZ2F0b3IuY3BwIgogI2luY2x1ZGUgIkpTV3JpdGFi
bGVTdHJlYW0uY3BwIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMu
bWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNjQ3MjIyZjg4
ZDIyNmUyM2FhYjc2NmRiYjk1NGJmNzMyNmY4Nzg2ZS4uMGFjZDI5YzEzZDM2MDRjMmVmZDZmNzc4
M2M0YTJmOWM2OGZmZTExYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0yMDIs
OCArMjAyLDExIEBAIEpTX0JJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMv
bWVkaWFzdHJlYW0vUlRDU2lnbmFsaW5nU3RhdGUuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDU3RhdHNSZXBvcnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDVHJhY2tFdmVudC5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxl
cy9ub3RpZmljYXRpb25zL0RPTVdpbmRvd05vdGlmaWNhdGlvbnMuaWRsIFwKICAgICAkKFdlYkNv
cmUpL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaWRsIFwKKyAgICAkKFdlYkNv
cmUpL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaWRsIFwKICAgICAk
KFdlYkNvcmUpL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25QZXJtaXNzaW9uQ2Fs
bGJhY2suaWRsIFwKKyAgICAkKFdlYkNvcmUpL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Xb3JrZXJH
bG9iYWxTY29wZU5vdGlmaWNhdGlvbnMuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvcGx1
Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9k
dWxlcy9xdW90YS9ET01XaW5kb3dRdW90YS5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9x
dW90YS9OYXZpZ2F0b3JTdG9yYWdlUXVvdGEuaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9ET01XaW5kb3dOb3RpZmljYXRpb25zLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9ET01XaW5kb3dOb3RpZmljYXRpb25z
LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5iZTlkNjgxYjMwYTQzNzgzNjI5Y2RmOTlmZDZiNGRmNWNiNGI0NTA5
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25z
L0RPTVdpbmRvd05vdGlmaWNhdGlvbnMuY3BwCkBAIC0wLDAgKzEsMTI3IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDA2LCAyMDA3LCAyMDA4LCAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMCBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3Ig
aXRzIHN1YnNpZGlhcnkoLWllcykKKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkRPTVdpbmRvd05vdGlmaWNh
dGlvbnMuaCIKKworI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05P
VElGSUNBVElPTlMpCisKKyNpbmNsdWRlICJET01XaW5kb3cuaCIKKyNpbmNsdWRlICJEb2N1bWVu
dC5oIgorI2luY2x1ZGUgIk5vdGlmaWNhdGlvbkNlbnRlci5oIgorI2luY2x1ZGUgIk5vdGlmaWNh
dGlvbkNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJQYWdlLmgiCisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworRE9NV2luZG93Tm90aWZpY2F0aW9uczo6RE9NV2luZG93Tm90aWZpY2F0aW9ucyhET01X
aW5kb3cqIHdpbmRvdykKKyAgICA6IERPTVdpbmRvd1Byb3BlcnR5KHdpbmRvdy0+ZnJhbWUoKSkK
KyAgICAsIG1fd2luZG93KHdpbmRvdykKK3sKK30KKworRE9NV2luZG93Tm90aWZpY2F0aW9uczo6
fkRPTVdpbmRvd05vdGlmaWNhdGlvbnMoKQoreworfQorCitjb25zdCBjaGFyKiBET01XaW5kb3dO
b3RpZmljYXRpb25zOjpzdXBwbGVtZW50TmFtZSgpCit7CisgICAgcmV0dXJuICJET01XaW5kb3dO
b3RpZmljYXRpb25zIjsKK30KKworRE9NV2luZG93Tm90aWZpY2F0aW9ucyogRE9NV2luZG93Tm90
aWZpY2F0aW9uczo6ZnJvbShET01XaW5kb3cqIHdpbmRvdykKK3sKKyAgICBET01XaW5kb3dOb3Rp
ZmljYXRpb25zKiBzdXBwbGVtZW50ID0gc3RhdGljX2Nhc3Q8RE9NV2luZG93Tm90aWZpY2F0aW9u
cyo+KFN1cHBsZW1lbnQ8RE9NV2luZG93Pjo6ZnJvbSh3aW5kb3csIHN1cHBsZW1lbnROYW1lKCkp
KTsKKyAgICBpZiAoIXN1cHBsZW1lbnQpIHsKKyAgICAgICAgYXV0byBuZXdTdXBwbGVtZW50ID0g
c3RkOjptYWtlX3VuaXF1ZTxET01XaW5kb3dOb3RpZmljYXRpb25zPih3aW5kb3cpOworICAgICAg
ICBzdXBwbGVtZW50ID0gbmV3U3VwcGxlbWVudC5nZXQoKTsKKyAgICAgICAgcHJvdmlkZVRvKHdp
bmRvdywgc3VwcGxlbWVudE5hbWUoKSwgV1RGTW92ZShuZXdTdXBwbGVtZW50KSk7CisgICAgfQor
ICAgIHJldHVybiBzdXBwbGVtZW50OworfQorCitOb3RpZmljYXRpb25DZW50ZXIqIERPTVdpbmRv
d05vdGlmaWNhdGlvbnM6OndlYmtpdE5vdGlmaWNhdGlvbnMoRE9NV2luZG93JiB3aW5kb3cpCit7
CisgICAgcmV0dXJuIERPTVdpbmRvd05vdGlmaWNhdGlvbnM6OmZyb20oJndpbmRvdyktPndlYmtp
dE5vdGlmaWNhdGlvbnMoKTsKK30KKwordm9pZCBET01XaW5kb3dOb3RpZmljYXRpb25zOjpkaXNj
b25uZWN0RnJhbWVGb3JEb2N1bWVudFN1c3BlbnNpb24oKQoreworICAgIG1fc3VzcGVuZGVkTm90
aWZpY2F0aW9uQ2VudGVyID0gV1RGTW92ZShtX25vdGlmaWNhdGlvbkNlbnRlcik7CisgICAgRE9N
V2luZG93UHJvcGVydHk6OmRpc2Nvbm5lY3RGcmFtZUZvckRvY3VtZW50U3VzcGVuc2lvbigpOwor
fQorCit2b2lkIERPTVdpbmRvd05vdGlmaWNhdGlvbnM6OnJlY29ubmVjdEZyYW1lRnJvbURvY3Vt
ZW50U3VzcGVuc2lvbihGcmFtZSogZnJhbWUpCit7CisgICAgRE9NV2luZG93UHJvcGVydHk6OnJl
Y29ubmVjdEZyYW1lRnJvbURvY3VtZW50U3VzcGVuc2lvbihmcmFtZSk7CisgICAgbV9ub3RpZmlj
YXRpb25DZW50ZXIgPSBXVEZNb3ZlKG1fc3VzcGVuZGVkTm90aWZpY2F0aW9uQ2VudGVyKTsKK30K
Kwordm9pZCBET01XaW5kb3dOb3RpZmljYXRpb25zOjp3aWxsRGVzdHJveUdsb2JhbE9iamVjdElu
Q2FjaGVkRnJhbWUoKQoreworICAgIG1fc3VzcGVuZGVkTm90aWZpY2F0aW9uQ2VudGVyID0gbnVs
bHB0cjsKKyAgICBET01XaW5kb3dQcm9wZXJ0eTo6d2lsbERlc3Ryb3lHbG9iYWxPYmplY3RJbkNh
Y2hlZEZyYW1lKCk7Cit9CisKK3ZvaWQgRE9NV2luZG93Tm90aWZpY2F0aW9uczo6d2lsbERlc3Ry
b3lHbG9iYWxPYmplY3RJbkZyYW1lKCkKK3sKKyAgICBtX25vdGlmaWNhdGlvbkNlbnRlciA9IG51
bGxwdHI7CisgICAgRE9NV2luZG93UHJvcGVydHk6OndpbGxEZXN0cm95R2xvYmFsT2JqZWN0SW5G
cmFtZSgpOworfQorCit2b2lkIERPTVdpbmRvd05vdGlmaWNhdGlvbnM6OndpbGxEZXRhY2hHbG9i
YWxPYmplY3RGcm9tRnJhbWUoKQoreworICAgIG1fbm90aWZpY2F0aW9uQ2VudGVyID0gbnVsbHB0
cjsKKyAgICBET01XaW5kb3dQcm9wZXJ0eTo6d2lsbERldGFjaEdsb2JhbE9iamVjdEZyb21GcmFt
ZSgpOworfQorCitOb3RpZmljYXRpb25DZW50ZXIqIERPTVdpbmRvd05vdGlmaWNhdGlvbnM6Ondl
YmtpdE5vdGlmaWNhdGlvbnMoKQoreworICAgIGlmICghbV93aW5kb3ctPmlzQ3VycmVudGx5RGlz
cGxheWVkSW5GcmFtZSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIGlmIChtX25v
dGlmaWNhdGlvbkNlbnRlcikKKyAgICAgICAgcmV0dXJuIG1fbm90aWZpY2F0aW9uQ2VudGVyLmdl
dCgpOworCisgICAgYXV0byogZG9jdW1lbnQgPSBtX3dpbmRvdy0+ZG9jdW1lbnQoKTsKKyAgICBp
ZiAoIWRvY3VtZW50KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAKKyAgICBhdXRvKiBw
YWdlID0gZG9jdW1lbnQtPnBhZ2UoKTsKKyAgICBpZiAoIXBhZ2UpCisgICAgICAgIHJldHVybiBu
dWxscHRyOworCisgICAgYXV0byogcHJvdmlkZXIgPSBOb3RpZmljYXRpb25Db250cm9sbGVyOjpj
bGllbnRGcm9tKCpwYWdlKTsKKyAgICBpZiAoIXByb3ZpZGVyKQorICAgICAgICByZXR1cm4gbnVs
bHB0cjsKKworICAgIG1fbm90aWZpY2F0aW9uQ2VudGVyID0gTm90aWZpY2F0aW9uQ2VudGVyOjpj
cmVhdGUoKmRvY3VtZW50LCBwcm92aWRlcik7CisgICAgcmV0dXJuIG1fbm90aWZpY2F0aW9uQ2Vu
dGVyLmdldCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL0RPTVdpbmRvd05vdGlm
aWNhdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9ET01XaW5k
b3dOb3RpZmljYXRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2ZkNWJhNjcxNDgxMGZiMzljNTNjNDYxOGMz
NjhlZGVlMzk1NmU5YQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bm90aWZpY2F0aW9ucy9ET01XaW5kb3dOb3RpZmljYXRpb25zLmgKQEAgLTAsMCArMSw2NSBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAwNywgMjAwOSwgMjAxMCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9yYXRp
b24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxFKE5PVElGSUNBVElP
TlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKKworI2luY2x1ZGUgIkRPTVdpbmRv
d1Byb3BlcnR5LmgiCisjaW5jbHVkZSAiU3VwcGxlbWVudGFibGUuaCIKKyNpbmNsdWRlIDx3dGYv
dGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBET01XaW5k
b3c7CitjbGFzcyBOb3RpZmljYXRpb25DZW50ZXI7CisKK2NsYXNzIERPTVdpbmRvd05vdGlmaWNh
dGlvbnMgOiBwdWJsaWMgU3VwcGxlbWVudDxET01XaW5kb3c+LCBwdWJsaWMgRE9NV2luZG93UHJv
cGVydHkgeworcHVibGljOgorICAgIGV4cGxpY2l0IERPTVdpbmRvd05vdGlmaWNhdGlvbnMoRE9N
V2luZG93Kik7CisgICAgdmlydHVhbCB+RE9NV2luZG93Tm90aWZpY2F0aW9ucygpOworCisgICAg
c3RhdGljIE5vdGlmaWNhdGlvbkNlbnRlciogd2Via2l0Tm90aWZpY2F0aW9ucyhET01XaW5kb3cm
KTsKKyAgICBzdGF0aWMgRE9NV2luZG93Tm90aWZpY2F0aW9ucyogZnJvbShET01XaW5kb3cqKTsK
KworICAgIHZvaWQgZGlzY29ubmVjdEZyYW1lRm9yRG9jdW1lbnRTdXNwZW5zaW9uKCkgb3ZlcnJp
ZGU7CisgICAgdm9pZCByZWNvbm5lY3RGcmFtZUZyb21Eb2N1bWVudFN1c3BlbnNpb24oRnJhbWUq
KSBvdmVycmlkZTsKKyAgICB2b2lkIHdpbGxEZXN0cm95R2xvYmFsT2JqZWN0SW5DYWNoZWRGcmFt
ZSgpIG92ZXJyaWRlOworICAgIHZvaWQgd2lsbERlc3Ryb3lHbG9iYWxPYmplY3RJbkZyYW1lKCkg
b3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsRGV0YWNoR2xvYmFsT2JqZWN0RnJvbUZyYW1lKCkgb3Zl
cnJpZGU7CisKK3ByaXZhdGU6CisgICAgTm90aWZpY2F0aW9uQ2VudGVyKiB3ZWJraXROb3RpZmlj
YXRpb25zKCk7CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIHN1cHBsZW1lbnROYW1lKCk7CisKKyAg
ICBET01XaW5kb3cqIG1fd2luZG93OworICAgIFJlZlB0cjxOb3RpZmljYXRpb25DZW50ZXI+IG1f
bm90aWZpY2F0aW9uQ2VudGVyOworICAgIFJlZlB0cjxOb3RpZmljYXRpb25DZW50ZXI+IG1fc3Vz
cGVuZGVkTm90aWZpY2F0aW9uQ2VudGVyOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQor
CisjZW5kaWYgLy8gRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJ
Q0FUSU9OUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9u
cy9ET01XaW5kb3dOb3RpZmljYXRpb25zLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90
aWZpY2F0aW9ucy9ET01XaW5kb3dOb3RpZmljYXRpb25zLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MGRkZmIy
ZGI3MmI0ZWQ5YmUwNDk3ZmViZWE1NmFmMWQyMjg3YzgyCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL0RPTVdpbmRvd05vdGlmaWNhdGlvbnMu
aWRsCkBAIC0wLDAgKzEsMzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcsIDIw
MDgsIDIwMDksIDIwMTIgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJp
Z2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBB
TkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisg
KiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK1sKKyAgICBDb25kaXRpb25hbD1OT1RJ
RklDQVRJT05TfExFR0FDWV9OT1RJRklDQVRJT05TLAorXSBwYXJ0aWFsIGludGVyZmFjZSBET01X
aW5kb3cgeworI2lmIGRlZmluZWQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TKSAmJiBFTkFC
TEVfTEVHQUNZX05PVElGSUNBVElPTlMKKyAgICByZWFkb25seSBhdHRyaWJ1dGUgTm90aWZpY2F0
aW9uQ2VudGVyIHdlYmtpdE5vdGlmaWNhdGlvbnM7CisjZW5kaWYKK307CisKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5jcHAKaW5k
ZXggODQ4MjY2ZDVjZGE0Y2Y2NjUxMzQzYjRhZjcyZGM4MDIwYzMxZmZmMy4uYmI4NzE5ZDgyZjUy
MDg2YTBlNDNiN2QwZTg0OGIxODIyOGRhZDY0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5jcHAKQEAgLTMxLDMzICszMSw3
OCBAQAogCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykK
KyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05T
KQogCiAjaW5jbHVkZSAiTm90aWZpY2F0aW9uLmgiCiAKKyNpbmNsdWRlICJET01XaW5kb3cuaCIK
KyNpbmNsdWRlICJET01XaW5kb3dOb3RpZmljYXRpb25zLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQu
aCIKICNpbmNsdWRlICJFdmVudC5oIgogI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKICNpbmNsdWRl
ICJFeGNlcHRpb25Db2RlLmgiCisjaW5jbHVkZSAiTm90aWZpY2F0aW9uQ2VudGVyLmgiCiAjaW5j
bHVkZSAiTm90aWZpY2F0aW9uQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIk5vdGlmaWNhdGlvblBl
cm1pc3Npb25DYWxsYmFjay5oIgorI2luY2x1ZGUgIlZvaWRDYWxsYmFjay5oIgogI2luY2x1ZGUg
IldpbmRvd0ZvY3VzQWxsb3dlZEluZGljYXRvci5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
KyNpZiBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCisKK05vdGlmaWNhdGlvbjo6Tm90aWZp
Y2F0aW9uKGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgYm9keSwgVVJMJiYgaWNv
blVSTCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgTm90aWZpY2F0aW9uQ2VudGVy
JiBub3RpZmljYXRpb25DZW50ZXIpCisgICAgOiBBY3RpdmVET01PYmplY3QoJmNvbnRleHQpCisg
ICAgLCBtX2ljb24oV1RGTW92ZShpY29uVVJMKSkKKyAgICAsIG1fdGl0bGUodGl0bGUpCisgICAg
LCBtX2JvZHkoYm9keSkKKyAgICAsIG1fbm90aWZpY2F0aW9uQ2VudGVyKCZub3RpZmljYXRpb25D
ZW50ZXIpCit7Cit9CisKKyNlbmRpZgorCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisKIE5v
dGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKERvY3VtZW50JiBkb2N1bWVudCwgY29uc3QgU3RyaW5n
JiB0aXRsZSkKICAgICA6IEFjdGl2ZURPTU9iamVjdCgmZG9jdW1lbnQpCiAgICAgLCBtX3RpdGxl
KHRpdGxlKQogICAgICwgbV9zdGF0ZShJZGxlKQorICAgICwgbV9ub3RpZmljYXRpb25DZW50ZXIo
RE9NV2luZG93Tm90aWZpY2F0aW9uczo6d2Via2l0Tm90aWZpY2F0aW9ucygqZG9jdW1lbnQuZG9t
V2luZG93KCkpKQogICAgICwgbV90YXNrVGltZXIoc3RkOjptYWtlX3VuaXF1ZTxUaW1lcj4oW3Ro
aXNdICgpIHsgc2hvdygpOyB9KSkKIHsKKyAgICAvLyBGSVhNRTogU2VlbXMgdGhhdCBtX25vdGlm
aWNhdGlvbkNlbnRlciBjYW4gYmUgbnVsbCBzbyBzaG91bGQgbm90IGJlIGNoYW5nZWQgZnJvbSBS
ZWZQdHIgdG8gUmVmLgorICAgIC8vIEJ1dCB0aGUgcmVzdCBvZiB0aGUgY29kZSBpbiB0aGlzIGNs
YXNzIGlzbid0IHRyeWluZyB0byBoYW5kbGUgdGhhdCBjYXNlLgorICAgIEFTU0VSVChtX25vdGlm
aWNhdGlvbkNlbnRlci0+Y2xpZW50KCkpOwogICAgIG1fdGFza1RpbWVyLT5zdGFydE9uZVNob3Qo
MF9zKTsKIH0KIAorI2VuZGlmCisKIE5vdGlmaWNhdGlvbjo6fk5vdGlmaWNhdGlvbigpIAogewog
fQogCisjaWYgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQorCitFeGNlcHRpb25PcjxSZWY8
Tm90aWZpY2F0aW9uPj4gTm90aWZpY2F0aW9uOjpjcmVhdGUoY29uc3QgU3RyaW5nJiB0aXRsZSwg
Y29uc3QgU3RyaW5nJiBib2R5LCBjb25zdCBTdHJpbmcmIGljb25VUkwsIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQmIGNvbnRleHQsIE5vdGlmaWNhdGlvbkNlbnRlciYgcHJvdmlkZXIpCit7IAorICAg
IGlmIChwcm92aWRlci5jaGVja1Blcm1pc3Npb24oKSAhPSBOb3RpZmljYXRpb25DbGllbnQ6OlBl
cm1pc3Npb25BbGxvd2VkKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgU0VDVVJJVFlfRVJS
IH07CisKKyAgICBVUkwgY29tcGxldGVkSWNvblVSTCA9IGljb25VUkwuaXNFbXB0eSgpID8gVVJM
KCkgOiBjb250ZXh0LmNvbXBsZXRlVVJMKGljb25VUkwpOworICAgIGlmICghY29tcGxldGVkSWNv
blVSTC5pc0VtcHR5KCkgJiYgIWNvbXBsZXRlZEljb25VUkwuaXNWYWxpZCgpKQorICAgICAgICBy
ZXR1cm4gRXhjZXB0aW9uIHsgU1lOVEFYX0VSUiB9OworCisgICAgYXV0byBub3RpZmljYXRpb24g
PSBhZG9wdFJlZigqbmV3IE5vdGlmaWNhdGlvbih0aXRsZSwgYm9keSwgV1RGTW92ZShjb21wbGV0
ZWRJY29uVVJMKSwgY29udGV4dCwgcHJvdmlkZXIpKTsKKyAgICBub3RpZmljYXRpb24uZ2V0KCku
c3VzcGVuZElmTmVlZGVkKCk7CisgICAgcmV0dXJuIFdURk1vdmUobm90aWZpY2F0aW9uKTsKK30K
KworI2VuZGlmCisKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKwogc3RhdGljIFN0cmluZyBk
aXJlY3Rpb25TdHJpbmcoTm90aWZpY2F0aW9uOjpEaXJlY3Rpb24gZGlyZWN0aW9uKQogewogICAg
IC8vIEZJWE1FOiBTdG9yaW5nIHRoaXMgYXMgYSBzdHJpbmcgaXMgbm90IHRoZSByaWdodCB3YXkg
dG8gZG8gaXQuCkBAIC03NywzOCArMTIyLDM4IEBAIHN0YXRpYyBTdHJpbmcgZGlyZWN0aW9uU3Ry
aW5nKE5vdGlmaWNhdGlvbjo6RGlyZWN0aW9uIGRpcmVjdGlvbikKIFJlZjxOb3RpZmljYXRpb24+
IE5vdGlmaWNhdGlvbjo6Y3JlYXRlKERvY3VtZW50JiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIHRp
dGxlLCBjb25zdCBPcHRpb25zJiBvcHRpb25zKQogewogICAgIGF1dG8gbm90aWZpY2F0aW9uID0g
YWRvcHRSZWYoKm5ldyBOb3RpZmljYXRpb24oY29udGV4dCwgdGl0bGUpKTsKLSAgICBub3RpZmlj
YXRpb24tPm1fYm9keSA9IG9wdGlvbnMuYm9keTsKLSAgICBub3RpZmljYXRpb24tPm1fdGFnID0g
b3B0aW9ucy50YWc7Ci0gICAgbm90aWZpY2F0aW9uLT5tX2xhbmcgPSBvcHRpb25zLmxhbmc7Ci0g
ICAgbm90aWZpY2F0aW9uLT5tX2RpcmVjdGlvbiA9IGRpcmVjdGlvblN0cmluZyhvcHRpb25zLmRp
cik7CisgICAgbm90aWZpY2F0aW9uLmdldCgpLm1fYm9keSA9IG9wdGlvbnMuYm9keTsKKyAgICBu
b3RpZmljYXRpb24uZ2V0KCkubV90YWcgPSBvcHRpb25zLnRhZzsKKyAgICBub3RpZmljYXRpb24u
Z2V0KCkubV9sYW5nID0gb3B0aW9ucy5sYW5nOworICAgIG5vdGlmaWNhdGlvbi5nZXQoKS5tX2Rp
cmVjdGlvbiA9IGRpcmVjdGlvblN0cmluZyhvcHRpb25zLmRpcik7CiAgICAgaWYgKCFvcHRpb25z
Lmljb24uaXNFbXB0eSgpKSB7CiAgICAgICAgIGF1dG8gaWNvblVSTCA9IGNvbnRleHQuY29tcGxl
dGVVUkwob3B0aW9ucy5pY29uKTsKICAgICAgICAgaWYgKGljb25VUkwuaXNWYWxpZCgpKQotICAg
ICAgICAgICAgbm90aWZpY2F0aW9uLT5tX2ljb24gPSBpY29uVVJMOworICAgICAgICAgICAgbm90
aWZpY2F0aW9uLmdldCgpLm1faWNvbiA9IGljb25VUkw7CiAgICAgfQotICAgIG5vdGlmaWNhdGlv
bi0+c3VzcGVuZElmTmVlZGVkKCk7CisgICAgbm90aWZpY2F0aW9uLmdldCgpLnN1c3BlbmRJZk5l
ZWRlZCgpOwogICAgIHJldHVybiBub3RpZmljYXRpb247CiB9CiAKKyNlbmRpZgorCiB2b2lkIE5v
dGlmaWNhdGlvbjo6c2hvdygpIAogewogICAgIC8vIHByZXZlbnQgZG91YmxlLXNob3dpbmcKLSAg
ICBpZiAobV9zdGF0ZSAhPSBJZGxlKQotICAgICAgICByZXR1cm47Ci0KLSAgICBhdXRvKiBwYWdl
ID0gZG93bmNhc3Q8RG9jdW1lbnQ+KCpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpLnBhZ2UoKTsK
LSAgICBpZiAoIXBhZ2UpCi0gICAgICAgIHJldHVybjsKLQotICAgIGF1dG8mIGNsaWVudCA9IE5v
dGlmaWNhdGlvbkNvbnRyb2xsZXI6OmZyb20ocGFnZSktPmNsaWVudCgpOwotCi0gICAgaWYgKGNs
aWVudC5jaGVja1Blcm1pc3Npb24oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKSAhPSBOb3RpZmlj
YXRpb25DbGllbnQ6OlBlcm1pc3Npb25BbGxvd2VkKSB7Ci0gICAgICAgIGRpc3BhdGNoRXJyb3JF
dmVudCgpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIGlmIChjbGllbnQuc2hvdyh0aGlz
KSkgewotICAgICAgICBtX3N0YXRlID0gU2hvd2luZzsKLSAgICAgICAgc2V0UGVuZGluZ0FjdGl2
aXR5KHRoaXMpOworICAgIGlmIChtX3N0YXRlID09IElkbGUgJiYgbV9ub3RpZmljYXRpb25DZW50
ZXItPmNsaWVudCgpKSB7CisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisgICAgICAgIGF1dG8q
IHBhZ2UgPSBkb3duY2FzdDxEb2N1bWVudD4oKnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkucGFn
ZSgpOworICAgICAgICBpZiAoIXBhZ2UpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGlm
IChOb3RpZmljYXRpb25Db250cm9sbGVyOjpmcm9tKHBhZ2UpLT5jbGllbnQoKS5jaGVja1Blcm1p
c3Npb24oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKSAhPSBOb3RpZmljYXRpb25DbGllbnQ6OlBl
cm1pc3Npb25BbGxvd2VkKSB7CisgICAgICAgICAgICBkaXNwYXRjaEVycm9yRXZlbnQoKTsKKyAg
ICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorI2VuZGlmCisgICAgICAgIGlmIChtX25vdGlm
aWNhdGlvbkNlbnRlci0+Y2xpZW50KCktPnNob3codGhpcykpIHsKKyAgICAgICAgICAgIG1fc3Rh
dGUgPSBTaG93aW5nOworICAgICAgICAgICAgc2V0UGVuZGluZ0FjdGl2aXR5KHRoaXMpOworICAg
ICAgICB9CiAgICAgfQogfQogCkBAIC0xMTcsMTIgKzE2MiwxMCBAQCB2b2lkIE5vdGlmaWNhdGlv
bjo6Y2xvc2UoKQogICAgIHN3aXRjaCAobV9zdGF0ZSkgewogICAgIGNhc2UgSWRsZToKICAgICAg
ICAgYnJlYWs7Ci0gICAgY2FzZSBTaG93aW5nOiB7Ci0gICAgICAgIGF1dG8qIHBhZ2UgPSBkb3du
Y2FzdDxEb2N1bWVudD4oKnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkucGFnZSgpOwotICAgICAg
ICBpZiAocGFnZSkKLSAgICAgICAgICAgIE5vdGlmaWNhdGlvbkNvbnRyb2xsZXI6OmZyb20ocGFn
ZSktPmNsaWVudCgpLmNhbmNlbCh0aGlzKTsKKyAgICBjYXNlIFNob3dpbmc6CisgICAgICAgIGlm
IChtX25vdGlmaWNhdGlvbkNlbnRlci0+Y2xpZW50KCkpCisgICAgICAgICAgICBtX25vdGlmaWNh
dGlvbkNlbnRlci0+Y2xpZW50KCktPmNhbmNlbCh0aGlzKTsKICAgICAgICAgYnJlYWs7Ci0gICAg
fQogICAgIGNhc2UgQ2xvc2VkOgogICAgICAgICBicmVhazsKICAgICB9CkBAIC0xMzEsMTAgKzE3
NCw4IEBAIHZvaWQgTm90aWZpY2F0aW9uOjpjbG9zZSgpCiB2b2lkIE5vdGlmaWNhdGlvbjo6Y29u
dGV4dERlc3Ryb3llZCgpCiB7CiAgICAgQWN0aXZlRE9NT2JqZWN0Ojpjb250ZXh0RGVzdHJveWVk
KCk7Ci0KLSAgICBhdXRvKiBwYWdlID0gZG93bmNhc3Q8RG9jdW1lbnQ+KCpzY3JpcHRFeGVjdXRp
b25Db250ZXh0KCkpLnBhZ2UoKTsKLSAgICBpZiAocGFnZSkKLSAgICAgICAgTm90aWZpY2F0aW9u
Q29udHJvbGxlcjo6ZnJvbShwYWdlKS0+Y2xpZW50KCkubm90aWZpY2F0aW9uT2JqZWN0RGVzdHJv
eWVkKHRoaXMpOworICAgIGlmIChtX25vdGlmaWNhdGlvbkNlbnRlci0+Y2xpZW50KCkpCisgICAg
ICAgIG1fbm90aWZpY2F0aW9uQ2VudGVyLT5jbGllbnQoKS0+bm90aWZpY2F0aW9uT2JqZWN0RGVz
dHJveWVkKHRoaXMpOwogfQogCiBjb25zdCBjaGFyKiBOb3RpZmljYXRpb246OmFjdGl2ZURPTU9i
amVjdE5hbWUoKSBjb25zdApAQCAtMTc4LDYgKzIxOSw4IEBAIHZvaWQgTm90aWZpY2F0aW9uOjpk
aXNwYXRjaEVycm9yRXZlbnQoKQogICAgIGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVu
dE5hbWVzKCkuZXJyb3JFdmVudCwgZmFsc2UsIGZhbHNlKSk7CiB9CiAKKyNpZiBFTkFCTEUoTk9U
SUZJQ0FUSU9OUykKKwogU3RyaW5nIE5vdGlmaWNhdGlvbjo6cGVybWlzc2lvbihEb2N1bWVudCYg
ZG9jdW1lbnQpCiB7CiAgICAgcmV0dXJuIHBlcm1pc3Npb25TdHJpbmcoTm90aWZpY2F0aW9uQ29u
dHJvbGxlcjo6ZnJvbShkb2N1bWVudC5wYWdlKCkpLT5jbGllbnQoKS5jaGVja1Blcm1pc3Npb24o
JmRvY3VtZW50KSk7CkBAIC0yMDIsNiArMjQ1LDggQEAgdm9pZCBOb3RpZmljYXRpb246OnJlcXVl
c3RQZXJtaXNzaW9uKERvY3VtZW50JiBkb2N1bWVudCwgUmVmUHRyPE5vdGlmaWNhdGlvblBlcm0K
ICAgICBOb3RpZmljYXRpb25Db250cm9sbGVyOjpmcm9tKGRvY3VtZW50LnBhZ2UoKSktPmNsaWVu
dCgpLnJlcXVlc3RQZXJtaXNzaW9uKCZkb2N1bWVudCwgV1RGTW92ZShjYWxsYmFjaykpOwogfQog
CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKE5P
VElGSUNBVElPTlMpCisjZW5kaWYgLy8gRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShM
RUdBQ1lfTk9USUZJQ0FUSU9OUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90
aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaAppbmRleCBlMzJhZjA3YjlkNmY0ZTAxMGVlMGZkZGIx
YjZjNTk2ZDNlMDViMmU1Li4zYjIxYmJjODhiZTc3ZGFmMzZkM2Q2ZmFjMGIyNWU2OWNhYjRlYzQ3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZp
Y2F0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlm
aWNhdGlvbi5oCkBAIC0zMSw3ICszMSw3IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxF
KE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdB
Q1lfTk9USUZJQ0FUSU9OUykKIAogI2luY2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgogI2luY2x1
ZGUgIkV2ZW50VGFyZ2V0LmgiCkBAIC00NCwxMSArNDQsMTcgQEAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogY2xhc3MgRG9jdW1lbnQ7CitjbGFzcyBOb3RpZmljYXRpb25DZW50ZXI7CiBjbGFzcyBO
b3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2s7CiAKIGNsYXNzIE5vdGlmaWNhdGlvbiBmaW5h
bCA6IHB1YmxpYyBSZWZDb3VudGVkPE5vdGlmaWNhdGlvbj4sIHB1YmxpYyBBY3RpdmVET01PYmpl
Y3QsIHB1YmxpYyBFdmVudFRhcmdldFdpdGhJbmxpbmVEYXRhIHsKICAgICBXVEZfTUFLRV9GQVNU
X0FMTE9DQVRFRDsKIHB1YmxpYzoKKyNpZiBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCisg
ICAgc3RhdGljIEV4Y2VwdGlvbk9yPFJlZjxOb3RpZmljYXRpb24+PiBjcmVhdGUoY29uc3QgU3Ry
aW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiBib2R5LCBjb25zdCBTdHJpbmcmIGljb25VUkwsIFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBOb3RpZmljYXRpb25DZW50ZXImKTsKKyNlbmRpZgorCisj
aWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCiAgICAgZW51bSBjbGFzcyBEaXJlY3Rpb24geyBBdXRv
LCBMdHIsIFJ0bCB9OwogICAgIHN0cnVjdCBPcHRpb25zIHsKICAgICAgICAgRGlyZWN0aW9uIGRp
cjsKQEAgLTU4LDYgKzY0LDcgQEAgcHVibGljOgogICAgICAgICBTdHJpbmcgaWNvbjsKICAgICB9
OwogICAgIHN0YXRpYyBSZWY8Tm90aWZpY2F0aW9uPiBjcmVhdGUoRG9jdW1lbnQmLCBjb25zdCBT
dHJpbmcmIHRpdGxlLCBjb25zdCBPcHRpb25zJik7CisjZW5kaWYKICAgICAKICAgICB2aXJ0dWFs
IH5Ob3RpZmljYXRpb24oKTsKIApAQCAtODcsOSArOTQsMTEgQEAgcHVibGljOgogCiAgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCBmaW5hbGl6ZSgpOwogCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMp
CiAgICAgc3RhdGljIFN0cmluZyBwZXJtaXNzaW9uKERvY3VtZW50Jik7CiAgICAgV0VCQ09SRV9F
WFBPUlQgc3RhdGljIFN0cmluZyBwZXJtaXNzaW9uU3RyaW5nKE5vdGlmaWNhdGlvbkNsaWVudDo6
UGVybWlzc2lvbik7CiAgICAgc3RhdGljIHZvaWQgcmVxdWVzdFBlcm1pc3Npb24oRG9jdW1lbnQm
LCBSZWZQdHI8Tm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrPiYmKTsKKyNlbmRpZgogCiAg
ICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0
IGZpbmFsIHsgcmV0dXJuIEFjdGl2ZURPTU9iamVjdDo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgp
OyB9CiAKQEAgLTk3LDcgKzEwNiwxMyBAQCBwdWJsaWM6CiAgICAgdXNpbmcgUmVmQ291bnRlZDo6
ZGVyZWY7CiAKIHByaXZhdGU6CisjaWYgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQorICAg
IE5vdGlmaWNhdGlvbihjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHksIFVS
TCYmIGljb25VUkwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBOb3RpZmljYXRpb25DZW50ZXIm
KTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCiAgICAgTm90aWZpY2F0aW9u
KERvY3VtZW50JiwgY29uc3QgU3RyaW5nJiB0aXRsZSk7CisjZW5kaWYKIAogICAgIEV2ZW50VGFy
Z2V0SW50ZXJmYWNlIGV2ZW50VGFyZ2V0SW50ZXJmYWNlKCkgY29uc3QgZmluYWwgeyByZXR1cm4g
Tm90aWZpY2F0aW9uRXZlbnRUYXJnZXRJbnRlcmZhY2VUeXBlOyB9CiAKQEAgLTExOCw5ICsxMzMs
MTMgQEAgcHJpdmF0ZToKICAgICBlbnVtIFN0YXRlIHsgSWRsZSwgU2hvd2luZywgQ2xvc2VkIH07
CiAgICAgU3RhdGUgbV9zdGF0ZSB7IElkbGUgfTsKIAorICAgIFJlZlB0cjxOb3RpZmljYXRpb25D
ZW50ZXI+IG1fbm90aWZpY2F0aW9uQ2VudGVyOworCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMp
CiAgICAgc3RkOjp1bmlxdWVfcHRyPFRpbWVyPiBtX3Rhc2tUaW1lcjsKKyNlbmRpZgogfTsKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKE5PVElGSUNBVElPTlMp
CisjZW5kaWYgLy8gRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJ
Q0FUSU9OUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9u
cy9Ob3RpZmljYXRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25z
L05vdGlmaWNhdGlvbi5pZGwKaW5kZXggOGNiZmMwZWE4MDkyODczOWRmMmQ2MDQ0MDI0NGI4NzAx
MTczMzhiYS4uY2IzZmJlZTc0NTI2YTQ4ZTRkZWE3MWIxMGQzNTQ5M2VmODdlMmNkYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlv
bi5pZGwKQEAgLTMwLDM4ICszMCwzNiBAQAogICovCiAKIFsKLSAgICBDb25kaXRpb25hbD1OT1RJ
RklDQVRJT05TLAorICAgIENvbmRpdGlvbmFsPU5PVElGSUNBVElPTlN8TEVHQUNZX05PVElGSUNB
VElPTlMsCiAgICAgQWN0aXZlRE9NT2JqZWN0LAogICAgIEV4cG9ydE1hY3JvPVdFQkNPUkVfRVhQ
T1JULAorI2lmIGRlZmluZWQoRU5BQkxFX05PVElGSUNBVElPTlMpICYmIEVOQUJMRV9OT1RJRklD
QVRJT05TCiAgICAgQ29uc3RydWN0b3IoRE9NU3RyaW5nIHRpdGxlLCBvcHRpb25hbCBOb3RpZmlj
YXRpb25PcHRpb25zIG9wdGlvbnMpLAogICAgIENvbnN0cnVjdG9yQ2FsbFdpdGg9RG9jdW1lbnQs
CisjZW5kaWYKIF0gaW50ZXJmYWNlIE5vdGlmaWNhdGlvbiA6IEV2ZW50VGFyZ2V0IHsKICAgICB2
b2lkIHNob3coKTsKLSAgICB2b2lkIGNsb3NlKCk7CisgICAgW0NvbmRpdGlvbmFsPUxFR0FDWV9O
T1RJRklDQVRJT05TLCBJbXBsZW1lbnRlZEFzPWNsb3NlXSB2b2lkIGNhbmNlbCgpOworICAgIFtD
b25kaXRpb25hbD1OT1RJRklDQVRJT05TXSB2b2lkIGNsb3NlKCk7CiAKLSAgICBbQ2FsbFdpdGg9
RG9jdW1lbnRdIHN0YXRpYyByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHBlcm1pc3Npb247
Ci0gICAgW0NhbGxXaXRoPURvY3VtZW50XSBzdGF0aWMgdm9pZCByZXF1ZXN0UGVybWlzc2lvbihv
cHRpb25hbCBOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2s/IGNhbGxiYWNrKTsKKyAgICBb
Q29uZGl0aW9uYWw9Tk9USUZJQ0FUSU9OUywgQ2FsbFdpdGg9RG9jdW1lbnRdIHN0YXRpYyByZWFk
b25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHBlcm1pc3Npb247CisgICAgW0NvbmRpdGlvbmFsPU5P
VElGSUNBVElPTlMsIENhbGxXaXRoPURvY3VtZW50XSBzdGF0aWMgdm9pZCByZXF1ZXN0UGVybWlz
c2lvbihvcHRpb25hbCBOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2s/IGNhbGxiYWNrKTsK
IAogICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb25jbGljazsKLSAgICBhdHRyaWJ1dGUgRXZl
bnRIYW5kbGVyIG9uZXJyb3I7CiAgICAgYXR0cmlidXRlIEV2ZW50SGFuZGxlciBvbmNsb3NlOwog
ICAgIFtJbXBsZW1lbnRlZEFzPW9uc2hvd10gYXR0cmlidXRlIEV2ZW50SGFuZGxlciBvbmRpc3Bs
YXk7CisgICAgYXR0cmlidXRlIEV2ZW50SGFuZGxlciBvbmVycm9yOwogICAgIGF0dHJpYnV0ZSBF
dmVudEhhbmRsZXIgb25zaG93OwogCi0gICAgYXR0cmlidXRlIERPTVN0cmluZyB0YWc7Ci19Owor
ICAgIFtDb25kaXRpb25hbD1MRUdBQ1lfTk9USUZJQ0FUSU9OU10gYXR0cmlidXRlIERPTVN0cmlu
ZyBkaXI7CisgICAgW0NvbmRpdGlvbmFsPUxFR0FDWV9OT1RJRklDQVRJT05TXSBhdHRyaWJ1dGUg
RE9NU3RyaW5nIHJlcGxhY2VJZDsKIAotWwotICAgIENvbmRpdGlvbmFsPU5PVElGSUNBVElPTlMK
LV0gZW51bSBOb3RpZmljYXRpb25EaXJlY3Rpb24gewotICAgICJhdXRvIiwKLSAgICAibHRyIiwK
LSAgICAicnRsIgorICAgIFtDb25kaXRpb25hbD1OT1RJRklDQVRJT05TXSBhdHRyaWJ1dGUgRE9N
U3RyaW5nIHRhZzsKIH07CiAKLVsKLSAgICBDb25kaXRpb25hbD1OT1RJRklDQVRJT05TCi1dIGRp
Y3Rpb25hcnkgTm90aWZpY2F0aW9uT3B0aW9ucyB7CitbQ29uZGl0aW9uYWw9Tk9USUZJQ0FUSU9O
U10gZW51bSBOb3RpZmljYXRpb25EaXJlY3Rpb24geyAiYXV0byIsICJsdHIiLCAicnRsIiB9Owor
CitbQ29uZGl0aW9uYWw9Tk9USUZJQ0FUSU9OU10gZGljdGlvbmFyeSBOb3RpZmljYXRpb25PcHRp
b25zIHsKICAgICBOb3RpZmljYXRpb25EaXJlY3Rpb24gZGlyID0gImF1dG8iOwogICAgIERPTVN0
cmluZyBsYW5nID0gIiI7CiAgICAgRE9NU3RyaW5nIGJvZHkgPSAiIjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRl
ci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uOTI1ZWI5NmEzMWMzODhlNjY1ODdjOTljNTQ2ZGU4OTM3ZWY2NDY1
MgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9u
cy9Ob3RpZmljYXRpb25DZW50ZXIuY3BwCkBAIC0wLDAgKzEsMTU4IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDA5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmln
aHQgKEMpIDIwMTIsIDIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmli
dXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJj
b25maWcuaCIKKworI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05P
VElGSUNBVElPTlMpCisKKyNpbmNsdWRlICJOb3RpZmljYXRpb25DZW50ZXIuaCIKKworI2luY2x1
ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKKyNpbmNsdWRlICJOb3RpZmljYXRpb24uaCIKKyNpbmNsdWRl
ICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCisjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIK
KyNpbmNsdWRlICJWb2lkQ2FsbGJhY2suaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitSZWY8
Tm90aWZpY2F0aW9uQ2VudGVyPiBOb3RpZmljYXRpb25DZW50ZXI6OmNyZWF0ZShTY3JpcHRFeGVj
dXRpb25Db250ZXh0JiBjb250ZXh0LCBOb3RpZmljYXRpb25DbGllbnQqIGNsaWVudCkKK3sKKyAg
ICBhdXRvIG5vdGlmaWNhdGlvbkNlbnRlciA9IGFkb3B0UmVmKCpuZXcgTm90aWZpY2F0aW9uQ2Vu
dGVyKGNvbnRleHQsIGNsaWVudCkpOworICAgIG5vdGlmaWNhdGlvbkNlbnRlci0+c3VzcGVuZElm
TmVlZGVkKCk7CisgICAgcmV0dXJuIG5vdGlmaWNhdGlvbkNlbnRlcjsKK30KKworTm90aWZpY2F0
aW9uQ2VudGVyOjpOb3RpZmljYXRpb25DZW50ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29u
dGV4dCwgTm90aWZpY2F0aW9uQ2xpZW50KiBjbGllbnQpCisgICAgOiBBY3RpdmVET01PYmplY3Qo
JmNvbnRleHQpCisgICAgLCBtX2NsaWVudChjbGllbnQpCisgICAgLCBtX3RpbWVyKFt0aGlzXSgp
IHsgdGltZXJGaXJlZCgpOyB9KQoreworfQorCisjaWYgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJ
T05TKQorCitFeGNlcHRpb25PcjxSZWY8Tm90aWZpY2F0aW9uPj4gTm90aWZpY2F0aW9uQ2VudGVy
OjpjcmVhdGVOb3RpZmljYXRpb24oY29uc3QgU3RyaW5nJiBpY29uVVJJLCBjb25zdCBTdHJpbmcm
IHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHkpCit7CisgICAgaWYgKCFtX2NsaWVudCB8fCAhc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSU5WQUxJ
RF9TVEFURV9FUlIgfTsKKyAgICByZXR1cm4gTm90aWZpY2F0aW9uOjpjcmVhdGUodGl0bGUsIGJv
ZHksIGljb25VUkksICpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksICp0aGlzKTsKK30KKworaW50
IE5vdGlmaWNhdGlvbkNlbnRlcjo6Y2hlY2tQZXJtaXNzaW9uKCkKK3sKKyAgICBpZiAoIW1fY2xp
ZW50IHx8ICFzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpCisgICAgICAgIHJldHVybiBOb3RpZmlj
YXRpb25DbGllbnQ6OlBlcm1pc3Npb25EZW5pZWQ7CisKKyAgICBzd2l0Y2ggKHNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuU2hvd05vdGlmaWNhdGlvbnMoKSkg
eworICAgIGNhc2UgU2VjdXJpdHlPcmlnaW46OkFsd2F5c0FsbG93OgorICAgICAgICByZXR1cm4g
Tm90aWZpY2F0aW9uQ2xpZW50OjpQZXJtaXNzaW9uQWxsb3dlZDsKKyAgICBjYXNlIFNlY3VyaXR5
T3JpZ2luOjpBbHdheXNEZW55OgorICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uQ2xpZW50OjpQ
ZXJtaXNzaW9uRGVuaWVkOworICAgIGNhc2UgU2VjdXJpdHlPcmlnaW46OkFzazoKKyAgICAgICAg
cmV0dXJuIG1fY2xpZW50LT5jaGVja1Blcm1pc3Npb24oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgp
KTsKKyAgICB9CisKKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gbV9jbGll
bnQtPmNoZWNrUGVybWlzc2lvbihzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpOworfQorCit2b2lk
IE5vdGlmaWNhdGlvbkNlbnRlcjo6cmVxdWVzdFBlcm1pc3Npb24oUmVmUHRyPFZvaWRDYWxsYmFj
az4mJiBjYWxsYmFjaykKK3sKKyAgICBpZiAoIW1fY2xpZW50IHx8ICFzY3JpcHRFeGVjdXRpb25D
b250ZXh0KCkpCisgICAgICAgIHJldHVybjsKKworICAgIHN3aXRjaCAoc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5TaG93Tm90aWZpY2F0aW9ucygpKSB7Cisg
ICAgY2FzZSBTZWN1cml0eU9yaWdpbjo6QWx3YXlzQWxsb3c6CisgICAgY2FzZSBTZWN1cml0eU9y
aWdpbjo6QWx3YXlzRGVueToKKyAgICAgICAgaWYgKG1fY2FsbGJhY2tzLmlzRW1wdHkoKSkgewor
ICAgICAgICAgICAgcmVmKCk7IC8vIEJhbGFuY2VkIGJ5IHRoZSBkZXJlZnMgaW4gTm90aWZpY2F0
aW9uQ2VudGVyOjpzdG9wIGFuZCBOb3RpZmljYXRpb25DZW50ZXI6OnRpbWVyRmlyZWQuCisgICAg
ICAgICAgICBtX3RpbWVyLnN0YXJ0T25lU2hvdCgwX3MpOworICAgICAgICB9CisgICAgICAgIG1f
Y2FsbGJhY2tzLmFwcGVuZChbY2FsbGJhY2tdKCkgeworICAgICAgICAgICAgaWYgKGNhbGxiYWNr
KQorICAgICAgICAgICAgICAgIGNhbGxiYWNrLT5oYW5kbGVFdmVudCgpOworICAgICAgICB9KTsK
KyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgU2VjdXJpdHlPcmlnaW46OkFzazoKKyAgICAgICAg
bV9jbGllbnQtPnJlcXVlc3RQZXJtaXNzaW9uKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgV1RG
TW92ZShjYWxsYmFjaykpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CisgICAgbV9jbGllbnQtPnJlcXVlc3RQZXJtaXNzaW9uKHNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQoKSwgV1RGTW92ZShjYWxsYmFjaykpOworfQorCisjZW5kaWYKKwordm9pZCBO
b3RpZmljYXRpb25DZW50ZXI6OnN0b3AoKQoreworICAgIGlmICghbV9jbGllbnQpCisgICAgICAg
IHJldHVybjsKKworICAgIC8vIENsZWFyIG1fY2xpZW50IGltbWVkaWF0ZWx5IHRvIGd1YXJhbnRl
ZSByZWVudHJhbnQgY2FsbHMgdG8gTm90aWZpY2F0aW9uQ2VudGVyIGRvIG5vdGhpbmcuCisgICAg
Ly8gQWxzbyBwcm90ZWN0IHx0aGlzfCBzbyBpdCdzIG5vdCBpbmRpcmVjdGx5IGRlc3Ryb3llZCB1
bmRlciB1cyBieSB3b3JrIGRvbmUgYnkgdGhlIGNsaWVudC4KKyAgICBhdXRvJiBjbGllbnQgPSAq
c3RkOjpleGNoYW5nZShtX2NsaWVudCwgbnVsbHB0cik7CisgICAgUmVmPE5vdGlmaWNhdGlvbkNl
bnRlcj4gcHJvdGVjdGVkVGhpcygqdGhpcyk7CisKKyAgICBpZiAoIW1fY2FsbGJhY2tzLmlzRW1w
dHkoKSkKKyAgICAgICAgZGVyZWYoKTsgLy8gQmFsYW5jZWQgYnkgdGhlIHJlZiBpbiBOb3RpZmlj
YXRpb25DZW50ZXI6OnJlcXVlc3RQZXJtaXNzaW9uLgorCisgICAgbV90aW1lci5zdG9wKCk7Cisg
ICAgbV9jYWxsYmFja3MuY2xlYXIoKTsKKworICAgIGNsaWVudC5jYW5jZWxSZXF1ZXN0c0ZvclBl
cm1pc3Npb24oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKTsKKyAgICBjbGllbnQuY2xlYXJOb3Rp
ZmljYXRpb25zKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7Cit9CisKK2NvbnN0IGNoYXIqIE5v
dGlmaWNhdGlvbkNlbnRlcjo6YWN0aXZlRE9NT2JqZWN0TmFtZSgpIGNvbnN0Cit7CisgICAgcmV0
dXJuICJOb3RpZmljYXRpb25DZW50ZXIiOworfQorCitib29sIE5vdGlmaWNhdGlvbkNlbnRlcjo6
Y2FuU3VzcGVuZEZvckRvY3VtZW50U3VzcGVuc2lvbigpIGNvbnN0Cit7CisgICAgLy8gV2UgZG9u
J3QgbmVlZCB0byB3b3JyeSBhYm91dCBOb3RpZmljYXRpb25zIGJlY2F1c2UgdGhvc2UgYXJlIEFj
dGl2ZURPTU9iamVjdCB0b28uCisgICAgLy8gVGhlIE5vdGlmaWNhdGlvbkNlbnRlciBjYW4gc2Fm
ZWx5IGJlIHN1c3BlbmRlZCBpZiB0aGVyZSBhcmUgbm8gcGVuZGluZyBwZXJtaXNzaW9uIHJlcXVl
c3RzLgorICAgIHJldHVybiBtX2NhbGxiYWNrcy5pc0VtcHR5KCkgJiYgKCFtX2NsaWVudCB8fCAh
bV9jbGllbnQtPmhhc1BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHMoc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpKSk7Cit9CisKK3ZvaWQgTm90aWZpY2F0aW9uQ2VudGVyOjp0aW1lckZpcmVkKCkKK3sK
KyAgICBBU1NFUlQobV9jbGllbnQpOworICAgIGF1dG8gY2FsbGJhY2tzID0gV1RGTW92ZShtX2Nh
bGxiYWNrcyk7CisgICAgZm9yIChhdXRvJiBjYWxsYmFjayA6IGNhbGxiYWNrcykKKyAgICAgICAg
Y2FsbGJhY2soKTsKKyAgICBkZXJlZigpOyAvLyBCYWxhbmNlZCBieSB0aGUgcmVmIGluIE5vdGlm
aWNhdGlvbkNlbnRlcjo6cmVxdWVzdFBlcm1pc3Npb24uCit9CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZ
X05PVElGSUNBVElPTlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25v
dGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDY0NmUxODJlMTRh
YjY1ZTgxN2EzMzZiNzJhYjc4NWM5NmUzMzlhMwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaApAQCAtMCww
ICsxLDc4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDA5IEdvb2dsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEsIDIwMTIsIDIwMTUgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFy
ZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRo
ZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRv
cnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisg
KiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQWN0aXZlRE9NT2Jq
ZWN0LmgiCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKKyNpbmNsdWRlICJUaW1lci5oIgorI2lu
Y2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwg
RU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2Ns
YXNzIE5vdGlmaWNhdGlvbjsKK2NsYXNzIE5vdGlmaWNhdGlvbkNsaWVudDsKK2NsYXNzIFZvaWRD
YWxsYmFjazsKKworY2xhc3MgTm90aWZpY2F0aW9uQ2VudGVyIGZpbmFsIDogcHVibGljIFJlZkNv
dW50ZWQ8Tm90aWZpY2F0aW9uQ2VudGVyPiwgcHJpdmF0ZSBBY3RpdmVET01PYmplY3QgeworcHVi
bGljOgorICAgIHN0YXRpYyBSZWY8Tm90aWZpY2F0aW9uQ2VudGVyPiBjcmVhdGUoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCYsIE5vdGlmaWNhdGlvbkNsaWVudCopOworCisjaWYgRU5BQkxFKExFR0FD
WV9OT1RJRklDQVRJT05TKQorICAgIEV4Y2VwdGlvbk9yPFJlZjxOb3RpZmljYXRpb24+PiBjcmVh
dGVOb3RpZmljYXRpb24oY29uc3QgU3RyaW5nJiBpY29uVVJMLCBjb25zdCBTdHJpbmcmIHRpdGxl
LCBjb25zdCBTdHJpbmcmIGJvZHkpOworCisgICAgaW50IGNoZWNrUGVybWlzc2lvbigpOworICAg
IHZvaWQgcmVxdWVzdFBlcm1pc3Npb24oUmVmUHRyPFZvaWRDYWxsYmFjaz4mJik7CisjZW5kaWYK
KworICAgIE5vdGlmaWNhdGlvbkNsaWVudCogY2xpZW50KCkgY29uc3QgeyByZXR1cm4gbV9jbGll
bnQ7IH0KKworICAgIHVzaW5nIEFjdGl2ZURPTU9iamVjdDo6aGFzUGVuZGluZ0FjdGl2aXR5Owor
Citwcml2YXRlOgorICAgIE5vdGlmaWNhdGlvbkNlbnRlcihTY3JpcHRFeGVjdXRpb25Db250ZXh0
JiwgTm90aWZpY2F0aW9uQ2xpZW50Kik7CisKKyAgICB2b2lkIHN0b3AoKSBmaW5hbDsKKyAgICBj
b25zdCBjaGFyKiBhY3RpdmVET01PYmplY3ROYW1lKCkgY29uc3QgZmluYWw7CisgICAgYm9vbCBj
YW5TdXNwZW5kRm9yRG9jdW1lbnRTdXNwZW5zaW9uKCkgY29uc3QgZmluYWw7CisKKyAgICB2b2lk
IHRpbWVyRmlyZWQoKTsKKworICAgIE5vdGlmaWNhdGlvbkNsaWVudCogbV9jbGllbnQ7CisgICAg
VmVjdG9yPHN0ZDo6ZnVuY3Rpb248dm9pZCAoKT4+IG1fY2FsbGJhY2tzOworICAgIFRpbWVyIG1f
dGltZXI7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUo
Tk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRl
ci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9u
Q2VudGVyLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wN2EzODBmYzQ4NzFhNDU3NzUyZjI1NWVjN2UyMzc2ODYz
NDY3NDZkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmlj
YXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5pZGwKQEAgLTAsMCArMSw0MSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAwOSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChDKSAyMDExLCAyMDEyIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlz
dHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwor
ICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitbCisgICAg
QWN0aXZlRE9NT2JqZWN0LAorICAgIENvbmRpdGlvbmFsPUxFR0FDWV9OT1RJRklDQVRJT05TLAor
ICAgIE5vSW50ZXJmYWNlT2JqZWN0LAorXSBpbnRlcmZhY2UgTm90aWZpY2F0aW9uQ2VudGVyIHsK
KyAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gTm90aWZpY2F0aW9uIGNyZWF0ZU5vdGlmaWNhdGlvbihE
T01TdHJpbmcgaWNvblVybCwgRE9NU3RyaW5nIHRpdGxlLCBET01TdHJpbmcgYm9keSk7CisKKyAg
IGxvbmcgY2hlY2tQZXJtaXNzaW9uKCk7CisgICB2b2lkIHJlcXVlc3RQZXJtaXNzaW9uKG9wdGlv
bmFsIFZvaWRDYWxsYmFjaz8gY2FsbGJhY2spOworfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DbGllbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DbGllbnQuaAppbmRleCAy
NGZiNTM0ODQ3ZjlkZjkyM2EzYjgwNWFkZjZjMWZmYTZkNTZhZTA5Li5iMDNkZmQ5MmExOWE4YTQ0
YzI4M2NlMzYxZWMyZmY5OTliNjVmNTY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNsaWVudC5oCkBAIC03MCw3ICs3
MCwxMiBAQCBwdWJsaWM6CiAgICAgLy8gUmVxdWVzdHMgdXNlciBwZXJtaXNzaW9uIHRvIHNob3cg
ZGVza3RvcCBub3RpZmljYXRpb25zIGZyb20gYSBwYXJ0aWN1bGFyCiAgICAgLy8gc2NyaXB0IGNv
bnRleHQuIFRoZSBjYWxsYmFjayBwYXJhbWV0ZXIgc2hvdWxkIGJlIHJ1biB3aGVuIHRoZSB1c2Vy
IGhhcwogICAgIC8vIG1hZGUgYSBkZWNpc2lvbi4KKyNpZiBFTkFCTEUoTEVHQUNZX05PVElGSUNB
VElPTlMpCisgICAgdmlydHVhbCB2b2lkIHJlcXVlc3RQZXJtaXNzaW9uKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqLCBSZWZQdHI8Vm9pZENhbGxiYWNrPiYmKSA9IDA7CisjZW5kaWYKKyNpZiBFTkFC
TEUoTk9USUZJQ0FUSU9OUykKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFBlcm1pc3Npb24oU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCosIFJlZlB0cjxOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJh
Y2s+JiYpID0gMDsKKyNlbmRpZgogCiAgICAgdmlydHVhbCBib29sIGhhc1BlbmRpbmdQZXJtaXNz
aW9uUmVxdWVzdHMoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIGNvbnN0ID0gMDsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNv
bnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlm
aWNhdGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IGE2MjAzNTM5M2M3ZmIzZjZkZGYwMWM1Yzg5ZDc0
ZjNiNWVkZDJkNDQuLmZjMDhiMjc2ZjEwMWM1NWJlZGM4ZGQxOGVjZjBiZmNlYmU5ZTE5ZTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRp
b25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlv
bnMvTm90aWZpY2F0aW9uQ29udHJvbGxlci5jcHAKQEAgLTI2LDcgKzI2LDcgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJOb3RpZmljYXRpb25Db250cm9sbGVyLmgiCiAKLSNpZiBF
TkFCTEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxF
KExFR0FDWV9OT1RJRklDQVRJT05TKQogCiAjaW5jbHVkZSAiTm90aWZpY2F0aW9uQ2xpZW50Lmgi
CiAKQEAgLTYzLDQgKzYzLDQgQEAgdm9pZCBwcm92aWRlTm90aWZpY2F0aW9uKFBhZ2UqIHBhZ2Us
IE5vdGlmaWNhdGlvbkNsaWVudCogY2xpZW50KQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAK
LSNlbmRpZiAvLyBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNlbmRpZiAvLyBFTkFCTEUoTk9USUZJ
Q0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNvbnRyb2xsZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25Db250
cm9sbGVyLmgKaW5kZXggZTYwMTliMWI0NTEyMWUxZTIwYWM1MTQ5MjFmYzZjZWIwNWIxOWY5My4u
MjVmY2E3NDIyMDNlZWEwZWFiYzkyOWQ5YjQzNzU4MzkwYWE5ZmUxNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNvbnRyb2xsZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9u
Q29udHJvbGxlci5oCkBAIC0yNSw3ICsyNSw3IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5B
QkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShM
RUdBQ1lfTk9USUZJQ0FUSU9OUykKIAogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlIDx3dGYv
Rm9yd2FyZC5oPgpAQCAtNTIsNCArNTIsNCBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCiAKLSNlbmRpZiAvLyBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNlbmRpZiAvLyBFTkFC
TEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL1dvcmtlckdsb2JhbFNj
b3BlTm90aWZpY2F0aW9ucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlv
bnMvV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25zLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMjIxNjNk
NGJmNjE2MGQ5OThlYWNkYmE3N2VlNDFjZDFjMzI1N2MwCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL1dvcmtlckdsb2JhbFNjb3BlTm90aWZp
Y2F0aW9ucy5jcHAKQEAgLTAsMCArMSw4MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAwOCBB
cHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDksIDIw
MTEgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UK
KyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuIAorICoKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25zLmgiCisKKyNpZiBFTkFCTEUoTk9USUZJ
Q0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQorCisjaW5jbHVkZSAiTm90
aWZpY2F0aW9uQ2VudGVyLmgiCisjaW5jbHVkZSAiV29ya2VyR2xvYmFsU2NvcGUuaCIKKyNpbmNs
dWRlICJXb3JrZXJUaHJlYWQuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitXb3JrZXJHbG9i
YWxTY29wZU5vdGlmaWNhdGlvbnM6Oldvcmtlckdsb2JhbFNjb3BlTm90aWZpY2F0aW9ucyhXb3Jr
ZXJHbG9iYWxTY29wZSYgc2NvcGUpCisgICAgOiBtX2NvbnRleHQoJnNjb3BlKQoreworfQorCitX
b3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnM6On5Xb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNh
dGlvbnMoKQoreworfQorCitjb25zdCBjaGFyKiBXb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlv
bnM6OnN1cHBsZW1lbnROYW1lKCkKK3sKKyAgICByZXR1cm4gIldvcmtlckdsb2JhbFNjb3BlTm90
aWZpY2F0aW9ucyI7Cit9CisKK1dvcmtlckdsb2JhbFNjb3BlTm90aWZpY2F0aW9ucyogV29ya2Vy
R2xvYmFsU2NvcGVOb3RpZmljYXRpb25zOjpmcm9tKFdvcmtlckdsb2JhbFNjb3BlJiBzY29wZSkK
K3sKKyAgICBXb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnMqIHN1cHBsZW1lbnQgPSBzdGF0
aWNfY2FzdDxXb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnMqPihTdXBwbGVtZW50PFdvcmtl
ckdsb2JhbFNjb3BlPjo6ZnJvbSgmc2NvcGUsIHN1cHBsZW1lbnROYW1lKCkpKTsKKyAgICBpZiAo
IXN1cHBsZW1lbnQpIHsKKyAgICAgICAgYXV0byBuZXdTdXBwbGVtZW50ID0gc3RkOjptYWtlX3Vu
aXF1ZTxXb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnM+KHNjb3BlKTsKKyAgICAgICAgc3Vw
cGxlbWVudCA9IG5ld1N1cHBsZW1lbnQuZ2V0KCk7CisgICAgICAgIHByb3ZpZGVUbygmc2NvcGUs
IHN1cHBsZW1lbnROYW1lKCksIFdURk1vdmUobmV3U3VwcGxlbWVudCkpOworICAgIH0KKyAgICBy
ZXR1cm4gc3VwcGxlbWVudDsKK30KKworTm90aWZpY2F0aW9uQ2VudGVyKiBXb3JrZXJHbG9iYWxT
Y29wZU5vdGlmaWNhdGlvbnM6OndlYmtpdE5vdGlmaWNhdGlvbnMoV29ya2VyR2xvYmFsU2NvcGUm
IHNjb3BlKQoreworICAgIHJldHVybiBXb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnM6OmZy
b20oc2NvcGUpLT53ZWJraXROb3RpZmljYXRpb25zKCk7Cit9CisKK05vdGlmaWNhdGlvbkNlbnRl
ciogV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25zOjp3ZWJraXROb3RpZmljYXRpb25zKCkK
K3sKKyAgICAvLyBGSVhNRTogQXMgb2YgdGhpcyB3cml0aW5nLCB0aGlzIGFsd2F5cyBwYXNzZXMg
bnVsbHB0ciBmb3IgdGhlIGNsaWVudC4KKyAgICAvLyBJZiBpdCB3YXNuJ3QgZm9yIHRoYXQsIHRo
ZSBub3RpZmljYXRpb24gY2VudGVyIGNyZWF0ZSBmdW5jdGlvbiBjb3VsZCBiZSB0YWtpbmcgYSBy
ZWZlcmVuY2UuCisgICAgLy8gSG93IGlzIGl0IHVzZWZ1bCB0byBjcmVhdGUgYSBub3RpZmljYXRp
b24gY2VudGVyIHdpdGggbm8gY2xpZW50PworICAgIGlmICghbV9ub3RpZmljYXRpb25DZW50ZXIp
CisgICAgICAgIG1fbm90aWZpY2F0aW9uQ2VudGVyID0gTm90aWZpY2F0aW9uQ2VudGVyOjpjcmVh
dGUoKm1fY29udGV4dCwgbV9jb250ZXh0LT50aHJlYWQoKS5nZXROb3RpZmljYXRpb25DbGllbnQo
KSk7CisgICAgcmV0dXJuIG1fbm90aWZpY2F0aW9uQ2VudGVyLmdldCgpOworfQorCit9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5B
QkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9ub3RpZmljYXRpb25zL1dvcmtlckdsb2JhbFNjb3BlTm90aWZpY2F0aW9ucy5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL1dvcmtlckdsb2JhbFNjb3BlTm90aWZp
Y2F0aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY3NjBlNmUxMTc2ZDAxMDE5YWUwYjk1ZGUwZDk1MTgzYjc4
ODQ1MWUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNh
dGlvbnMvV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25zLmgKQEAgLTAsMCArMSw1NiBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSwgMjAxMywgMjAxNCwgMjAxNSwgMjAxNiBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICoKKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVOQUJMRShOT1RJRklD
QVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCisKKyNpbmNsdWRlICJTdXBw
bGVtZW50YWJsZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIE5vdGlmaWNhdGlv
bkNlbnRlcjsKK2NsYXNzIFdvcmtlckdsb2JhbFNjb3BlOworCitjbGFzcyBXb3JrZXJHbG9iYWxT
Y29wZU5vdGlmaWNhdGlvbnMgOiBwdWJsaWMgU3VwcGxlbWVudDxXb3JrZXJHbG9iYWxTY29wZT4g
eworcHVibGljOgorICAgIGV4cGxpY2l0IFdvcmtlckdsb2JhbFNjb3BlTm90aWZpY2F0aW9ucyhX
b3JrZXJHbG9iYWxTY29wZSYpOworICAgIHZpcnR1YWwgfldvcmtlckdsb2JhbFNjb3BlTm90aWZp
Y2F0aW9ucygpOworCisgICAgc3RhdGljIE5vdGlmaWNhdGlvbkNlbnRlciogd2Via2l0Tm90aWZp
Y2F0aW9ucyhXb3JrZXJHbG9iYWxTY29wZSYpOworICAgIHN0YXRpYyBXb3JrZXJHbG9iYWxTY29w
ZU5vdGlmaWNhdGlvbnMqIGZyb20oV29ya2VyR2xvYmFsU2NvcGUmKTsKKworcHJpdmF0ZToKKyAg
ICBOb3RpZmljYXRpb25DZW50ZXIqIHdlYmtpdE5vdGlmaWNhdGlvbnMoKTsKKyAgICBzdGF0aWMg
Y29uc3QgY2hhciogc3VwcGxlbWVudE5hbWUoKTsKKworICAgIFdvcmtlckdsb2JhbFNjb3BlKiBt
X2NvbnRleHQ7CisgICAgUmVmUHRyPE5vdGlmaWNhdGlvbkNlbnRlcj4gbV9ub3RpZmljYXRpb25D
ZW50ZXI7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUo
Tk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL1dvcmtlckdsb2JhbFNjb3Bl
Tm90aWZpY2F0aW9ucy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMv
V29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25zLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ZWIyNDlkNTY3
Zjk4MWNlZTZlNDA4ZGRjM2M2YTA2Y2M4YjQ3YmUwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL1dvcmtlckdsb2JhbFNjb3BlTm90aWZpY2F0
aW9ucy5pZGwKQEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBs
ZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKKyAqCisgKi8KKworWworICAgIENvbmRpdGlvbmFsPU5PVElGSUNBVElPTlN8TEVH
QUNZX05PVElGSUNBVElPTlMsCitdIHBhcnRpYWwgaW50ZXJmYWNlIFdvcmtlckdsb2JhbFNjb3Bl
IHsKKyNpZiBkZWZpbmVkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykgJiYgRU5BQkxFX0xF
R0FDWV9OT1RJRklDQVRJT05TCisgICAgcmVhZG9ubHkgYXR0cmlidXRlIE5vdGlmaWNhdGlvbkNl
bnRlciB3ZWJraXROb3RpZmljYXRpb25zOworI2VuZGlmCit9OworCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcgYi9T
b3VyY2UvV2ViQ29yZS9QQUwvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcK
aW5kZXggNGFiYTAyZDEwYmRkNGE5MDU3OGFlY2E5ODIwNmEyNjYzNDA1M2EzYS4uMGJhNWUxODFm
N2IwZTFhZmFjZjQ0MjExYTRkMDEzMjBhYTQ5NmZiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvUEFML0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1BBTC9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAt
MTM5LDYgKzEzOSw3IEBAIEVOQUJMRV9LRVlCT0FSRF9LRVlfQVRUUklCVVRFID0gRU5BQkxFX0tF
WUJPQVJEX0tFWV9BVFRSSUJVVEU7CiBFTkFCTEVfS0VZQk9BUkRfQ09ERV9BVFRSSUJVVEUgPSBF
TkFCTEVfS0VZQk9BUkRfQ09ERV9BVFRSSUJVVEU7CiBFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1Jf
UFJFRklYRVMgPSBFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVM7CiBFTkFCTEVfTEVH
QUNZX0VOQ1JZUFRFRF9NRURJQVtzZGs9bWFjb3N4Kl0gPSBFTkFCTEVfTEVHQUNZX0VOQ1JZUFRF
RF9NRURJQTsKK0VOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OU1tzZGs9bWFjb3N4Kl0gPSBFTkFC
TEVfTEVHQUNZX05PVElGSUNBVElPTlM7CiBFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUyA9
IEVOQUJMRV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTOwogRU5BQkxFX0xFVFRFUlBSRVNTW3Nkaz1p
cGhvbmUqXSA9IEVOQUJMRV9MRVRURVJQUkVTUzsKIEVOQUJMRV9MSU5LX1BSRUZFVENIID0gOwpA
QCAtMjU0LDQgKzI1NSw0IEBAIEVOQUJMRV9WQVJJQVRJT05fRk9OVFNfSUZfTk9UXyA9ICQoRU5B
QkxFX1ZBUklBVElPTl9GT05UU19JRl9OT1RfTk8pOwogRU5BQkxFX1ZBUklBVElPTl9GT05UU19J
Rl9OT1RfTk8gPSBFTkFCTEVfVkFSSUFUSU9OX0ZPTlRTOwogRU5BQkxFX1ZBUklBVElPTl9GT05U
U19JRl9OT1RfWUVTID0gOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9UUkFOU0ZP
Uk1TKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FDQ0VMRVJBVEVE
X09WRVJGTE9XX1NDUk9MTElORykgJChFTkFCTEVfQVBQTEVfUEFZKSAkKEVOQUJMRV9BUFBMRV9Q
QVlfREVMRUdBVEUpICQoRU5BQkxFX0FUVEFDSE1FTlRfRUxFTUVOVCkgJChFTkFCTEVfQVZGX0NB
UFRJT05TKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRI
KSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVO
QUJMRV9DT05URU5UX0ZJTFRFUklORykgJChFTkFCTEVfQ1NTX0FOSU1BVElPTlNfTEVWRUxfMikg
JChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJ
TkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX09S
SUVOVEFUSU9OKSAkKEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JF
R0lPTlMpICQoRU5BQkxFX0NTU19TQ1JPTExfU05BUCkgJChFTkFCTEVfQ1NTX1NFTEVDVE9SU19M
RVZFTDQpICQoRU5BQkxFX0NTU19UUkFJTElOR19XT1JEKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQo
RU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIp
ICQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1T
KSAkKEVOQUJMRV9EQVRBQ1VFX1ZBTFVFKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVO
QUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFC
TEVfRkFTVF9KSVRfUEVSTUlTU0lPTlMpICQoRU5BQkxFX0ZFVENIX0FQSSkgJChFTkFCTEVfRklM
VEVSU19MRVZFTF8yKSAkKEVOQUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVExfSklU
KSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRF9ERVBSRUNBVEVEKSAk
KEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFC
QVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpICQoRU5BQkxFX0lOREVY
RURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVf
SU5QVVRfVFlQRV9DT0xPUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBV
VF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVM
T0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1F
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lOVEVSU0VDVElPTl9PQlNFUlZF
UikgJChFTkFCTEVfSU5UTCkgJChFTkFCTEVfSU9TX0dFU1RVUkVfRVZFTlRTKSAkKEVOQUJMRV9J
T1NfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9KSVQpICQoRU5BQkxFX0tFWUJPQVJEX0tFWV9BVFRS
SUJVVEUpICQoRU5BQkxFX0tFWUJPQVJEX0NPREVfQVRUUklCVVRFKSAkKEVOQUJMRV9MRUdBQ1lf
Q1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkgJChF
TkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5B
QkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BQ19HRVNUVVJFX0VWRU5UUykgJChFTkFCTEVf
TUFUSE1MKSAkKEVOQUJMRV9NRURJQV9DQVBUVVJFKSAkKEVOQUJMRV9NRURJQV9DT05UUk9MU19T
Q1JJUFQpICQoRU5BQkxFX01FRElBX1NFU1NJT04pICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChF
TkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVESUFfU1RSRUFNKSAkKEVOQUJMRV9N
RVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxF
KSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTkFWSUdBVE9SX0hX
Q09OQ1VSUkVOQ1kpICQoRU5BQkxFX05PU05JRkYpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQo
RU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BPSU5URVJfTE9DSykgJChFTkFCTEVfUFJP
WElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9U
QSkgJChFTkFCTEVfUkVNT1RFX0lOU1BFQ1RPUikgJChFTkFCTEVfUkVRVUVTVF9BVVRPQ09NUExF
VEUpICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFfUVVFUlkpICQoRU5BQkxFX1JFU09VUkNFX1VT
QUdFKSAkKEVOQUJMRV9SVUJCRVJfQkFORElORykgJChFTkFCTEVfU0VSVklDRV9DT05UUk9MUykg
JChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1RSRUFNU19BUEkpICQoRU5BQkxF
X1NVQlRMRV9DUllQVE8pICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVMRVBIT05FX05V
TUJFUl9ERVRFQ1RJT04pICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hf
RVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1Rf
QUxMKSAkKEVOQUJMRV9WQVJJQVRJT05fRk9OVFMpICQoRU5BQkxFX1ZJREVPX1BSRVNFTlRBVElP
Tl9NT0RFKSAkKEVOQUJMRV9NQUNfVklERU9fVE9PTEJPWCkgJChFTkFCTEVfVklERU9fVFJBQ0sp
ICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJMRV9X
RUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAk
KEVOQUJMRV9XRUJfUlRDKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlO
RykgJChFTkFCTEVfV0VCQVNTRU1CTFkpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJHTDIp
ICQoRU5BQkxFX1dFQkdQVSkgJChFTkFCTEVfV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAkKEVO
QUJMRV9YU0xUKTsKK0ZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX1RSQU5TRk9STVMpICQo
RU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZM
T1dfU0NST0xMSU5HKSAkKEVOQUJMRV9BUFBMRV9QQVkpICQoRU5BQkxFX0FQUExFX1BBWV9ERUxF
R0FURSkgJChFTkFCTEVfQVRUQUNITUVOVF9FTEVNRU5UKSAkKEVOQUJMRV9BVkZfQ0FQVElPTlMp
ICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5B
QkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NP
TlRFTlRfRklMVEVSSU5HKSAkKEVOQUJMRV9DU1NfQU5JTUFUSU9OU19MRVZFTF8yKSAkKEVOQUJM
RV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19DT01QT1NJVElORykgJChF
TkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJ
T04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykg
JChFTkFCTEVfQ1NTX1NDUk9MTF9TTkFQKSAkKEVOQUJMRV9DU1NfU0VMRUNUT1JTX0xFVkVMNCkg
JChFTkFCTEVfQ1NTX1RSQUlMSU5HX1dPUkQpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVf
Q1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikgJChFTkFC
TEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5B
QkxFX0RBVEFDVUVfVkFMVUUpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RF
VklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9GQVNU
X0pJVF9QRVJNSVNTSU9OUykgJChFTkFCTEVfRkVUQ0hfQVBJKSAkKEVOQUJMRV9GSUxURVJTX0xF
VkVMXzIpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5B
QkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEX0RFUFJFQ0FURUQpICQoRU5BQkxF
X0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQo
RU5BQkxFX0lOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykgJChFTkFCTEVfSU5ERVhFRF9EQVRB
QkFTRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUl9QT1BPVkVSKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVf
REFURVRJTUVfSU5DT01QTEVURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5B
QkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSU5URVJTRUNUSU9OX09CU0VSVkVSKSAkKEVO
QUJMRV9JTlRMKSAkKEVOQUJMRV9JT1NfR0VTVFVSRV9FVkVOVFMpICQoRU5BQkxFX0lPU19UT1VD
SF9FVkVOVFMpICQoRU5BQkxFX0pJVCkgJChFTkFCTEVfS0VZQk9BUkRfS0VZX0FUVFJJQlVURSkg
JChFTkFCTEVfS0VZQk9BUkRfQ09ERV9BVFRSSUJVVEUpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVO
RE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9M
RUdBQ1lfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChF
TkFCTEVfTEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BQ19H
RVNUVVJFX0VWRU5UUykgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9DQVBUVVJFKSAk
KEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01FRElBX1NFU1NJT04pICQo
RU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVf
TUVESUFfU1RSRUFNKSAkKEVOQUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChF
TkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElM
UykgJChFTkFCTEVfTkFWSUdBVE9SX0hXQ09OQ1VSUkVOQ1kpICQoRU5BQkxFX05PU05JRkYpICQo
RU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BP
SU5URVJfTE9DSykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NV
RkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVNT1RFX0lOU1BFQ1RPUikgJChF
TkFCTEVfUkVRVUVTVF9BVVRPQ09NUExFVEUpICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFfUVVF
UlkpICQoRU5BQkxFX1JFU09VUkNFX1VTQUdFKSAkKEVOQUJMRV9SVUJCRVJfQkFORElORykgJChF
TkFCTEVfU0VSVklDRV9DT05UUk9MUykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFC
TEVfU1RSRUFNU19BUEkpICQoRU5BQkxFX1NVQlRMRV9DUllQVE8pICQoRU5BQkxFX1NWR19GT05U
UykgJChFTkFCTEVfVEVMRVBIT05FX05VTUJFUl9ERVRFQ1RJT04pICQoRU5BQkxFX1RFWFRfQVVU
T1NJWklORykgJChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJ
TkcpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WQVJJQVRJT05fRk9OVFMpICQo
RU5BQkxFX1ZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSAkKEVOQUJMRV9NQUNfVklERU9fVE9PTEJP
WCkgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSUVXX01P
REVfQ1NTX01FRElBKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElP
KSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfUlRDKSAkKEVOQUJMRV9XRUJfU09D
S0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV0VCQVNTRU1CTFkpICQoRU5BQkxF
X1dFQkdMKSAkKEVOQUJMRV9XRUJHTDIpICQoRU5BQkxFX1dFQkdQVSkgJChFTkFCTEVfV0lSRUxF
U1NfUExBWUJBQ0tfVEFSR0VUKSAkKEVOQUJMRV9YU0xUKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA2MTg5MTJjYTQ0MjYxYmRk
Njk4NjI0YjJhOGMyYmU1OWU5NGM1YWNlLi41MDJjOWZhNjRlOTYzNTEwZGRkZTEwNWFjNDY1OGE0
YzVjZjQzYzViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCkBAIC0xNTcyLDcgKzE1NzIsMTEgQEAKIAkJMzM1MDNDOUExMDE3OUE3NDAw
M0I0N0UxIC8qIE5vdGlmaWNhdGlvbkNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMzM1MDNDOTkxMDE3OUE3NDAwM0I0N0UxIC8qIE5vdGlmaWNh
dGlvbkNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCTMzNTAzQ0EzMTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbi5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMzUwM0M5RjEwMTc5
QUQ3MDAzQjQ3RTEgLyogSlNOb3RpZmljYXRpb24uY3BwICovOyB9OwogCQkzMzUwM0NBNDEwMTc5
QUQ3MDAzQjQ3RTEgLyogSlNOb3RpZmljYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMzNTAzQ0EwMTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlm
aWNhdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTMzNTAzQ0E1MTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbkNlbnRlci5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMzUwM0NBMTEw
MTc5QUQ3MDAzQjQ3RTEgLyogSlNOb3RpZmljYXRpb25DZW50ZXIuY3BwICovOyB9OworCQkzMzUw
M0NBNjEwMTc5QUQ3MDAzQjQ3RTEgLyogSlNOb3RpZmljYXRpb25DZW50ZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMzNTAzQ0EyMTAxNzlBRDcwMDNC
NDdFMSAvKiBKU05vdGlmaWNhdGlvbkNlbnRlci5oICovOyB9OwogCQkzMzUwM0NDNzEwMTdBMUIx
MDAzQjQ3RTEgLyogTm90aWZpY2F0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMzNTAzQ0M2MTAxN0ExQjEwMDNCNDdFMSAvKiBOb3RpZmljYXRp
b24uY3BwICovOyB9OworCQkzMzkwQ0E1NTBGRkMxNTdCMDA5MjE5NjIgLyogTm90aWZpY2F0aW9u
Q2VudGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDMzOTBDQTUxMEZGQzE1N0IwMDkyMTk2MiAvKiBOb3RpZmljYXRpb25DZW50ZXIuY3BwICovOyB9
OworCQkzMzkwQ0E1NjBGRkMxNTdCMDA5MjE5NjIgLyogTm90aWZpY2F0aW9uQ2VudGVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMzkwQ0E1MjBGRkMx
NTdCMDA5MjE5NjIgLyogTm90aWZpY2F0aW9uQ2VudGVyLmggKi87IH07CiAJCTMzOUI1QjYzMTMx
REFBMzIwMEY0OEQwMiAvKiBDb29raWVzU3RyYXRlZ3kuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMzOUI1QjYyMTMxREFBMzIwMEY0OEQwMiAvKiBDb29r
aWVzU3RyYXRlZ3kuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQkzM0QwMjEyRDEzMURCMzdCMDA0MDkxQTggLyogQ29va2llU3RvcmFnZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEzRjAxRUExMjcwRTEw
RDAwREZCQTcxIC8qIENvb2tpZVN0b3JhZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQkzNTcxODgzRUVGNjE4NzkzNzUxRTQwODkgLyogUmVuZGVy
TWF0aE1MTWVuY2xvc2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzY2MkY5ODQwNDdDRURCRTVERERBRkFBIC8qIFJlbmRlck1hdGhNTE1lbmNsb3Nl
LmNwcCAqLzsgfTsKQEAgLTQwNDMsNiArNDA0Nyw4IEBACiAJCTk3QUFCRDI3MTRGQTA5RDUwMDc0
NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDk3QUFCRDBDMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRI
YW5kc2hha2UuaCAqLzsgfTsKIAkJOTdBQUJEMkMxNEZBMDlENTAwNzQ1N0FFIC8qIFdvcmtlclRo
cmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDk3QUFCRDExMTRGQTA5RDUwMDc0NTdBRSAvKiBXb3JrZXJUaHJl
YWRhYmxlV2ViU29ja2V0Q2hhbm5lbC5jcHAgKi87IH07CiAJCTk3QUFCRDJEMTRGQTA5RDUwMDc0
NTdBRSAvKiBXb3JrZXJUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdBQUJEMTIxNEZBMDlENTAwNzQ1N0FF
IC8qIFdvcmtlclRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTdCMzhFMjcxNTFDNDI3MTAwNDYyMkU5
IC8qIERPTVdpbmRvd05vdGlmaWNhdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDk3QjM4RTI0MTUxQzQyNjQwMDQ2MjJFOSAvKiBET01XaW5kb3dO
b3RpZmljYXRpb25zLmggKi87IH07CisJCTk3QjM4RTI4MTUxQzQyNzMwMDQ2MjJFOSAvKiBET01X
aW5kb3dOb3RpZmljYXRpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDk3QjM4RTIzMTUxQzQyNjQwMDQ2MjJFOSAvKiBET01XaW5kb3dOb3RpZmlj
YXRpb25zLmNwcCAqLzsgfTsKIAkJOTdCOEZGRDExNkFFN0Y5NjAwMzgzODhEIC8qIENoYXJhY3Rl
clJlZmVyZW5jZVBhcnNlcklubGluZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDk3QjhGRkNGMTZBRTdGOTIwMDM4Mzg4RCAvKiBDaGFyYWN0ZXJSZWZl
cmVuY2VQYXJzZXJJbmxpbmVzLmggKi87IH07CiAJCTk3QkM2OURDMTUwNUYwNzYwMDFCNzRBQyAv
KiBDaGFuZ2VWZXJzaW9uV3JhcHBlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5N0JDNjlEODE1MDVGMDc2MDAxQjc0QUMgLyogQ2hhbmdlVmVyc2lv
bldyYXBwZXIuY3BwICovOyB9OwogCQk5N0JDNjlERDE1MDVGMDc2MDAxQjc0QUMgLyogQ2hhbmdl
VmVyc2lvbldyYXBwZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDk3QkM2OUQ5MTUwNUYwNzYwMDFCNzRBQyAvKiBDaGFuZ2VWZXJzaW9uV3JhcHBlci5o
ICovOyB9OwpAQCAtNDA5MSw2ICs0MDk3LDggQEAKIAkJOTdEQ0UyMDIxMDgwN0M3NTAwNTdEMzk0
IC8qIEhpc3RvcnlDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5N0RDRTIwMDEwODA3Qzc1MDA1N0QzOTQgLyogSGlzdG9yeUNvbnRyb2xs
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5
N0U0MDI4RjEzQTY5NkVEMDA5MTNENjcgLyogSWNvbkNvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdFNDAyOEQxM0E2OTZFRDAwOTEz
RDY3IC8qIEljb25Db250cm9sbGVyLmNwcCAqLzsgfTsKIAkJOTdFNDAyOTAxM0E2OTZFRDAwOTEz
RDY3IC8qIEljb25Db250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5N0U0MDI4RTEzQTY5NkVEMDA5MTNENjcgLyogSWNvbkNvbnRyb2xsZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5N0Y4
RTY2NTE1MUQ0QTRCMDBEMkQxODEgLyogV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25zLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3RjhFNjYx
MTUxRDRBM0YwMEQyRDE4MSAvKiBXb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnMuY3BwICov
OyB9OworCQk5N0Y4RTY2NjE1MUQ0QTRFMDBEMkQxODEgLyogV29ya2VyR2xvYmFsU2NvcGVOb3Rp
ZmljYXRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA5N0Y4RTY2MjE1MUQ0QTNGMDBEMkQxODEgLyogV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRp
b25zLmggKi87IH07CiAJCTk4MzFBRTRBMTU0MjI1QzkwMEZFMjY0NCAvKiBSZWZlcnJlclBvbGlj
eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTgzMUFF
NDkxNTQyMjVBMjAwRkUyNjQ0IC8qIFJlZmVycmVyUG9saWN5LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTg0MjY0RjExMkQ1MjgwQTAwMEQ4OEE0
IC8qIExpbmtMb2FkZXJDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDk4NDI2NEVGMTJENTI4MEEwMDBEODhBNCAvKiBMaW5rTG9hZGVyQ2xpZW50
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTg1
QkI5NkQxM0E5NDA1ODAwN0EwQjY5IC8qIExpbmtSZWxBdHRyaWJ1dGUuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTg1QkI5NkIxM0E5NDA1ODAwN0Ew
QjY5IC8qIExpbmtSZWxBdHRyaWJ1dGUuY3BwICovOyB9OwpAQCAtOTE4NCw3ICs5MTkyLDEyIEBA
CiAJCTMzNTAzQzk5MTAxNzlBNzQwMDNCNDdFMSAvKiBOb3RpZmljYXRpb25DbGllbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBleHBsaWNpdEZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IGZpbGVFbmNvZGluZyA9IDQ7IHBhdGggPSBOb3RpZmljYXRpb25DbGllbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzM1MDNDOUYxMDE3OUFENzAwM0I0N0UxIC8qIEpTTm90
aWZpY2F0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTm90
aWZpY2F0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzM1MDNDQTAxMDE3
OUFENzAwM0I0N0UxIC8qIEpTTm90aWZpY2F0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTTm90aWZpY2F0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTMzNTAzQ0ExMTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbkNlbnRlci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05vdGlmaWNhdGlvbkNlbnRlci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMzNTAzQ0EyMTAxNzlBRDcwMDNCNDdF
MSAvKiBKU05vdGlmaWNhdGlvbkNlbnRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU05vdGlmaWNhdGlvbkNlbnRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQkzMzUwM0NDNjEwMTdBMUIxMDAzQjQ3RTEgLyogTm90aWZpY2F0aW9uLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5vdGlmaWNhdGlvbi5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTMzOTBDQTUxMEZGQzE1N0IwMDkyMTk2MiAvKiBOb3RpZmljYXRp
b25DZW50ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTm90aWZp
Y2F0aW9uQ2VudGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzM5MENBNTIw
RkZDMTU3QjAwOTIxOTYyIC8qIE5vdGlmaWNhdGlvbkNlbnRlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBOb3RpZmljYXRpb25DZW50ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMzM5MENBNTMwRkZDMTU3QjAwOTIxOTYyIC8qIE5vdGlmaWNhdGlvbkNlbnRl
ci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTm90aWZpY2F0aW9uQ2VudGVyLmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzM5QjVCNjIxMzFEQUEzMjAwRjQ4RDAyIC8qIENv
b2tpZXNTdHJhdGVneS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb29raWVz
U3RyYXRlZ3kuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzY2MkY5ODQwNDdDRURC
RTVERERBRkFBIC8qIFJlbmRlck1hdGhNTE1lbmNsb3NlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlck1hdGhNTE1lbmNsb3NlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJMzcxN0Q3RTUxN0VDQzNBNjAwM0MyNzZEIC8qIGV4dHJhY3QtbG9j
YWxpemFibGUtc3RyaW5ncy5wbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQuc2NyaXB0LnBlcmw7IHBhdGggPSAiZXh0cmFjdC1sb2NhbGl6YWJs
ZS1zdHJpbmdzLnBsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEyMTYzLDYgKzEy
MTc2LDkgQEAKIAkJOTdBQUJEMEMxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFr
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJTb2NrZXRIYW5kc2hha2Uu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTdBQUJEMTExNEZBMDlENTAwNzQ1N0FF
IC8qIFdvcmtlclRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtlclRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTdBQUJEMTIxNEZBMDlENTAwNzQ1N0FF
IC8qIFdvcmtlclRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFdvcmtlclRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QjM4RTIzMTUxQzQyNjQwMDQ2MjJFOSAvKiBET01X
aW5kb3dOb3RpZmljYXRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IERPTVdpbmRvd05vdGlmaWNhdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5N0IzOEUyNDE1MUM0MjY0MDA0NjIyRTkgLyogRE9NV2luZG93Tm90aWZpY2F0aW9ucy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01XaW5kb3dOb3RpZmljYXRpb25z
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QjM4RTI1MTUxQzQyNjQwMDQ2MjJF
OSAvKiBET01XaW5kb3dOb3RpZmljYXRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBE
T01XaW5kb3dOb3RpZmljYXRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTdCOEZGQ0YxNkFFN0Y5MjAwMzgzODhEIC8qIENoYXJhY3RlclJlZmVyZW5jZVBhcnNlcklubGlu
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2hhcmFjdGVyUmVmZXJlbmNl
UGFyc2VySW5saW5lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5N0JDNjlEODE1
MDVGMDc2MDAxQjc0QUMgLyogQ2hhbmdlVmVyc2lvbldyYXBwZXIuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2hhbmdlVmVyc2lvbldyYXBwZXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk5N0JDNjlEOTE1MDVGMDc2MDAxQjc0QUMgLyogQ2hhbmdl
VmVyc2lvbldyYXBwZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2hhbmdl
VmVyc2lvbldyYXBwZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEyMjI3LDYg
KzEyMjQzLDkgQEAKIAkJOTdFNDAyOEUxM0E2OTZFRDAwOTEzRDY3IC8qIEljb25Db250cm9sbGVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEljb25Db250cm9sbGVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3RTlFQzhCMTVEQzQ5MkYwMDRGMkU3MSAvKiBK
U1ZvaWRDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U1ZvaWRDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3RTlFQzhD
MTVEQzQ5MkYwMDRGMkU3MSAvKiBKU1ZvaWRDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU1ZvaWRDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5N0Y4RTY2MTE1MUQ0QTNGMDBEMkQxODEgLyogV29ya2VyR2xvYmFsU2NvcGVOb3RpZmlj
YXRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtlckds
b2JhbFNjb3BlTm90aWZpY2F0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTk3RjhFNjYyMTUxRDRBM0YwMEQyRDE4MSAvKiBXb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlv
bnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyR2xvYmFsU2NvcGVO
b3RpZmljYXRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3RjhFNjYzMTUx
RDRBM0YwMEQyRDE4MSAvKiBXb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnMuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFdvcmtlckdsb2JhbFNjb3BlTm90aWZpY2F0aW9ucy5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk4MzFBRTQ5MTU0MjI1QTIwMEZFMjY0NCAvKiBS
ZWZlcnJlclBvbGljeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZWZlcnJl
clBvbGljeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5ODQyNjRFRjEyRDUyODBB
MDAwRDg4QTQgLyogTGlua0xvYWRlckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBMaW5rTG9hZGVyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTk4NUJCOTZCMTNBOTQwNTgwMDdBMEI2OSAvKiBMaW5rUmVsQXR0cmlidXRlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IExpbmtSZWxBdHRyaWJ1dGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTc0NjMsMTQgKzE3NDgyLDIzIEBACiAJCTMzM0Y3
MDNEMEZCNDlDMTYwMDhFMTJBNiAvKiBub3RpZmljYXRpb25zICovID0gewogCQkJaXNhID0gUEJY
R3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQk5N0IzOEUyMzE1MUM0MjY0MDA0NjIyRTkgLyog
RE9NV2luZG93Tm90aWZpY2F0aW9ucy5jcHAgKi8sCisJCQkJOTdCMzhFMjQxNTFDNDI2NDAwNDYy
MkU5IC8qIERPTVdpbmRvd05vdGlmaWNhdGlvbnMuaCAqLywKKwkJCQk5N0IzOEUyNTE1MUM0MjY0
MDA0NjIyRTkgLyogRE9NV2luZG93Tm90aWZpY2F0aW9ucy5pZGwgKi8sCiAJCQkJMzM1MDNDQzYx
MDE3QTFCMTAwM0I0N0UxIC8qIE5vdGlmaWNhdGlvbi5jcHAgKi8sCiAJCQkJMzMzRjcwNEYwRkI0
OUNBMjAwOEUxMkE2IC8qIE5vdGlmaWNhdGlvbi5oICovLAogCQkJCTMzM0Y3MDRFMEZCNDlDQTIw
MDhFMTJBNiAvKiBOb3RpZmljYXRpb24uaWRsICovLAorCQkJCTMzOTBDQTUxMEZGQzE1N0IwMDky
MTk2MiAvKiBOb3RpZmljYXRpb25DZW50ZXIuY3BwICovLAorCQkJCTMzOTBDQTUyMEZGQzE1N0Iw
MDkyMTk2MiAvKiBOb3RpZmljYXRpb25DZW50ZXIuaCAqLywKKwkJCQkzMzkwQ0E1MzBGRkMxNTdC
MDA5MjE5NjIgLyogTm90aWZpY2F0aW9uQ2VudGVyLmlkbCAqLywKIAkJCQkzMzUwM0M5OTEwMTc5
QTc0MDAzQjQ3RTEgLyogTm90aWZpY2F0aW9uQ2xpZW50LmggKi8sCiAJCQkJMzEyOENBNjcxNDcz
MzE1MjAwNzRDNzJBIC8qIE5vdGlmaWNhdGlvbkNvbnRyb2xsZXIuY3BwICovLAogCQkJCTMxMjhD
QTZBMTQ3MzMxNjMwMDc0QzcyQSAvKiBOb3RpZmljYXRpb25Db250cm9sbGVyLmggKi8sCiAJCQkJ
MzFFQzFEQUMxNEZGMjZFQTAwQzk0NjYyIC8qIE5vdGlmaWNhdGlvblBlcm1pc3Npb25DYWxsYmFj
ay5oICovLAogCQkJCTMxRUMxRDUwMTRGRUZEMDgwMEM5NDY2MiAvKiBOb3RpZmljYXRpb25QZXJt
aXNzaW9uQ2FsbGJhY2suaWRsICovLAorCQkJCTk3RjhFNjYxMTUxRDRBM0YwMEQyRDE4MSAvKiBX
b3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnMuY3BwICovLAorCQkJCTk3RjhFNjYyMTUxRDRB
M0YwMEQyRDE4MSAvKiBXb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnMuaCAqLywKKwkJCQk5
N0Y4RTY2MzE1MUQ0QTNGMDBEMkQxODEgLyogV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25z
LmlkbCAqLywKIAkJCSk7CiAJCQlwYXRoID0gbm90aWZpY2F0aW9uczsKIAkJCXNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7CkBAIC0xNzQ4MCw2ICsxNzUwOCw4IEBACiAJCQljaGlsZHJlbiA9ICgKIAkJ
CQkzMzUwM0M5RjEwMTc5QUQ3MDAzQjQ3RTEgLyogSlNOb3RpZmljYXRpb24uY3BwICovLAogCQkJ
CTMzNTAzQ0EwMTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbi5oICovLAorCQkJCTMz
NTAzQ0ExMTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbkNlbnRlci5jcHAgKi8sCisJ
CQkJMzM1MDNDQTIxMDE3OUFENzAwM0I0N0UxIC8qIEpTTm90aWZpY2F0aW9uQ2VudGVyLmggKi8s
CiAJCQkJMzFFQzFFMjYxNEZGNjBFRTAwQzk0NjYyIC8qIEpTTm90aWZpY2F0aW9uUGVybWlzc2lv
bkNhbGxiYWNrLmNwcCAqLywKIAkJCQkzMUVDMUUyNzE0RkY2MEVFMDBDOTQ2NjIgLyogSlNOb3Rp
ZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2suaCAqLywKIAkJCSk7CkBAIC0yNjk2OSw2ICsyNjk5
OSw3IEBACiAJCQkJMTQwM0I5OTcwOUVCMTNBRjAwNzk3QzdGIC8qIERPTVdpbmRvdy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJNTFGQTJENzgxNTIxMzJCMzAwQzFCQTBCIC8qIERPTVdpbmRvd0V4dGVu
c2lvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTE4NUZDNzUxQkI0QzRFODAwMTI4OThGIC8qIERP
TVdpbmRvd0luZGV4ZWREYXRhYmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTdCMzhFMjcxNTFD
NDI3MTAwNDYyMkU5IC8qIERPTVdpbmRvd05vdGlmaWNhdGlvbnMuaCBpbiBIZWFkZXJzICovLAog
CQkJCTk3RDJBRDA0MTRCODIzQTYwMDkzREYzMiAvKiBET01XaW5kb3dQcm9wZXJ0eS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJODlGNjBCMTExNTdGNjg2RTAwNzVFMTU3IC8qIERPTVdpbmRvd1F1b3Rh
LmggaW4gSGVhZGVycyAqLywKIAkJCQlBQTJBNUFENjE2QTQ4NjE2MDA5NzVBMjUgLyogRE9NV2lu
ZG93U3BlZWNoU3ludGhlc2lzLmggaW4gSGVhZGVycyAqLywKQEAgLTI3OTI0LDYgKzI3OTU1LDcg
QEAKIAkJCQlCQ0Q5QzJDMzBDMTdCNjlFMDA1QzkwQTIgLyogSlNOb2RlTGlzdC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQUQyMEIxOEQxOEU5RDIzNzAwNUE4MDgzIC8qIEpTTm9kZUxpc3RDdXN0b20u
aCBpbiBIZWFkZXJzICovLAogCQkJCTMzNTAzQ0E0MTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlm
aWNhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzM1MDNDQTYxMDE3OUFENzAwM0I0N0UxIC8q
IEpTTm90aWZpY2F0aW9uQ2VudGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUVDMUUyOTE0RkY2
MEVFMDBDOTQ2NjIgLyogSlNOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2suaCBpbiBIZWFk
ZXJzICovLAogCQkJCTdFNDZGNkZCMTYyN0EyQ0EwMDA2MjIyMyAvKiBKU09FU0VsZW1lbnRJbmRl
eFVpbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTkwMDE3ODgxMTJFMDM3MDcwMDY0ODQ2MiAvKiBK
U09FU1N0YW5kYXJkRGVyaXZhdGl2ZXMuaCBpbiBIZWFkZXJzICovLApAQCAtMjg1NzEsNiArMjg2
MDMsNyBAQAogCQkJCTkzODJBQUI0MEQ4QzM4NjEwMEYzNTdBNiAvKiBOb2RlV2l0aEluZGV4Lmgg
aW4gSGVhZGVycyAqLywKIAkJCQlFNDZCNDFGOTFDQjI0RTcwMDA4RjExREUgLyogTm9FdmVudERp
c3BhdGNoQXNzZXJ0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTJDMEM0MTE0NkRDNkNDMDAx
NkM5MTEgLyogTm90aWZpY2F0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMzkwQ0E1NjBGRkMx
NTdCMDA5MjE5NjIgLyogTm90aWZpY2F0aW9uQ2VudGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkz
MzUwM0M5QTEwMTc5QTc0MDAzQjQ3RTEgLyogTm90aWZpY2F0aW9uQ2xpZW50LmggaW4gSGVhZGVy
cyAqLywKIAkJCQkzMTI4Q0E2QjE0NzMzMTYzMDA3NEM3MkEgLyogTm90aWZpY2F0aW9uQ29udHJv
bGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFGRTZERkExNTAwNEMyQTAwMDRFQkM0IC8qIE5v
dGlmaWNhdGlvblBlcm1pc3Npb25DYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCkBAIC0yOTk3MCw2
ICszMDAwMyw3IEBACiAJCQkJQTNFMjY0MzExNDc0ODk5MTAwNUE4NTg4IC8qIFdvcmtlckV2ZW50
UXVldWUuaCBpbiBIZWFkZXJzICovLAogCQkJCTJFNDM0NjQ5MEY1NDZBODIwMEIwRjFCQSAvKiBX
b3JrZXJHbG9iYWxTY29wZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTE4NUZDQjQxQkI0QzRFODAw
MTI4OThGIC8qIFdvcmtlckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk5N0Y4RTY2NjE1MUQ0QTRFMDBEMkQxODEgLyogV29ya2VyR2xvYmFsU2NvcGVOb3Rp
ZmljYXRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRTQzNDY0QjBGNTQ2QTgyMDBCMEYxQkEg
LyogV29ya2VyR2xvYmFsU2NvcGVQcm94eS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTU0QTBDNjIx
REI3RjhDMTAwMTdBOTBCIC8qIFdvcmtlckluc3BlY3RvckNvbnRyb2xsZXIuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUE1NEEwQzZDMURCODMxRjkwMDE3QTkwQiAvKiBXb3JrZXJJbnNwZWN0b3JQcm94
eS5oIGluIEhlYWRlcnMgKi8sCkBAIC0zMDk1OCw2ICszMDk5Miw3IEBACiAJCQkJNTE3RkJBMUUx
NTFBQjE3QzAwQjU3OTU5IC8qIERPTVdpbmRvd0V4dGVuc2lvbi5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQk0MThDMzk1NjFDOERBQzdGMDA1MUM4QTMgLyogRE9NV2luZG93RmV0Y2guY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJNTE4NUZDNzQxQkI0QzRFODAwMTI4OThGIC8qIERPTVdpbmRvd0luZGV4
ZWREYXRhYmFzZS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk5N0IzOEUyODE1MUM0MjczMDA0NjIy
RTkgLyogRE9NV2luZG93Tm90aWZpY2F0aW9ucy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5N0Qy
QUQwMzE0QjgyM0E2MDA5M0RGMzIgLyogRE9NV2luZG93UHJvcGVydHkuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQUEyQTVBRDcxNkE0ODYxQTAwOTc1QTI1IC8qIERPTVdpbmRvd1NwZWVjaFN5bnRo
ZXNpcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBOENDQkI0ODE1MUY4MzE2MDBBQjdDRTkgLyog
RE9NV2luZG93V2ViRGF0YWJhc2UuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0zMTkwNSw2ICszMTk0
MCw3IEBACiAJCQkJQkNEOUMyQzIwQzE3QjY5RTAwNUM5MEEyIC8qIEpTTm9kZUxpc3QuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJQkNEOUMyNjUwQzE3QUE2NzAwNUM5MEEyIC8qIEpTTm9kZUxpc3RD
dXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzM1MDNDQTMxMDE3OUFENzAwM0I0N0UxIC8q
IEpTTm90aWZpY2F0aW9uLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMzNTAzQ0E1MTAxNzlBRDcw
MDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbkNlbnRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkz
MUVDMUUyODE0RkY2MEVFMDBDOTQ2NjIgLyogSlNOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJh
Y2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0U0NkY2RkExNjI3QTJDQTAwMDYyMjIzIC8qIEpT
T0VTRWxlbWVudEluZGV4VWludC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MDAxNzg4MDEyRTAz
NzA3MDA2NDg0NjIgLyogSlNPRVNTdGFuZGFyZERlcml2YXRpdmVzLmNwcCBpbiBTb3VyY2VzICov
LApAQCAtMzI1NTYsNiArMzI1OTIsNyBAQAogCQkJCTRGRkMwMjJCMTY0M0I3MTAwMDRFMTYzOCAv
KiBOb2RlUmFyZURhdGEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTQzMTA1QjgxNjc1MEYwQzAw
REIyRkI4IC8qIE5vZGVUcmF2ZXJzYWwuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzM1MDNDQzcx
MDE3QTFCMTAwM0I0N0UxIC8qIE5vdGlmaWNhdGlvbi5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkz
MzkwQ0E1NTBGRkMxNTdCMDA5MjE5NjIgLyogTm90aWZpY2F0aW9uQ2VudGVyLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTMxMjhDQTY4MTQ3MzMxNTIwMDc0QzcyQSAvKiBOb3RpZmljYXRpb25Db250
cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxNTEzRDUxMTY3N0YwODgwMDE0OUZDQiAv
KiBOb3RJbXBsZW1lbnRlZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQTU2OUQwQTBEN0UyQjgy
MDA3QzM5ODMgLyogTlBfanNvYmplY3QuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0zMzY2Nyw2ICsz
MzcwNCw3IEBACiAJCQkJMkU0MzQ2NDgwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNj
b3BlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQxOEMzOTVBMUM4REQ2OTkwMDUxQzhBMyAvKiBX
b3JrZXJHbG9iYWxTY29wZUZldGNoLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUxODVGQ0IzMUJC
NEM0RTgwMDEyODk4RiAvKiBXb3JrZXJHbG9iYWxTY29wZUluZGV4ZWREYXRhYmFzZS5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQk5N0Y4RTY2NTE1MUQ0QTRCMDBEMkQxODEgLyogV29ya2VyR2xvYmFs
U2NvcGVOb3RpZmljYXRpb25zLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE1NEEwQzYxMURCN0Y4
QzEwMDE3QTkwQiAvKiBXb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCUE1NEEwQzZCMURCODMxRjkwMDE3QTkwQiAvKiBXb3JrZXJJbnNwZWN0b3JQcm94eS5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkyRTQzNDY0QzBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2Vy
TG9jYXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRXZlbnRUYXJnZXRGYWN0b3J5LmluIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0
RmFjdG9yeS5pbgppbmRleCA4ZmM1OGY1NTlhMzVmMTRlN2RjNGVhNTk3ZTY3YjM0NmVkZmM1NjQx
Li4xYzZjOWYxMDgwNjVjZGI3ZjA1NTg0MzgzZGU1MjNlMjg5Njg2YjM4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXRGYWN0b3J5LmluCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9FdmVudFRhcmdldEZhY3RvcnkuaW4KQEAgLTIzLDcgKzIzLDcgQEAgTWVkaWFTdHJl
YW0gY29uZGl0aW9uYWw9TUVESUFfU1RSRUFNCiBNZWRpYVN0cmVhbVRyYWNrIGNvbmRpdGlvbmFs
PU1FRElBX1NUUkVBTQogTWVzc2FnZVBvcnQKIE5vZGUKLU5vdGlmaWNhdGlvbiBjb25kaXRpb25h
bD1OT1RJRklDQVRJT05TCitOb3RpZmljYXRpb24gY29uZGl0aW9uYWw9Tk9USUZJQ0FUSU9OU3xM
RUdBQ1lfTk9USUZJQ0FUSU9OUwogUGVyZm9ybWFuY2UgY29uZGl0aW9uYWw9V0VCX1RJTUlORwog
UlRDRGF0YUNoYW5uZWwgY29uZGl0aW9uYWw9V0VCX1JUQwogUlRDRFRNRlNlbmRlciBjb25kaXRp
b25hbD1XRUJfUlRDX0RUTUYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2lu
ZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAppbmRleCA2NmIxMzcw
NjMzMjRhY2VkMDc4Y2MyNjJmOTFiMTY4ZGE1ZTE0ZGY2Li4wNTU4Yzc1Y2Y0ODcxYTc5NTc5MmI3
Y2Q5OGM5OGVlMjg2YThmNTM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdp
bmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCkBAIC00Niw2
ICs0Niw3IEBACiAjaW5jbHVkZSAiRE9NVG9rZW5MaXN0LmgiCiAjaW5jbHVkZSAiRE9NVVJMLmgi
CiAjaW5jbHVkZSAiRE9NV2luZG93RXh0ZW5zaW9uLmgiCisjaW5jbHVkZSAiRE9NV2luZG93Tm90
aWZpY2F0aW9ucy5oIgogI2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIuaCIKICNpbmNs
dWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJEb2N1bWVudC5o
IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuaCBiL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmgKaW5kZXggMmNkNDM3MmQ3NTQ3NWMw
OTMwYzlhNWMwMGE2M2QxMzcwMzMxMGZiOS4uZjgwOWVlNjY3MjdlZTEzOWRjNGYxOWQyY2I2MWIy
MjY1ZTRlYTRiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJl
YWQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclRocmVhZC5oCkBAIC02OSw3
ICs2OSw3IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdW5zaWduZWQgd29y
a2VyVGhyZWFkQ291bnQoKTsKICAgICBzdGF0aWMgdm9pZCByZWxlYXNlRmFzdE1hbGxvY0ZyZWVN
ZW1vcnlJbkFsbFRocmVhZHMoKTsKIAotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVO
QUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAg
Tm90aWZpY2F0aW9uQ2xpZW50KiBnZXROb3RpZmljYXRpb25DbGllbnQoKSB7IHJldHVybiBtX25v
dGlmaWNhdGlvbkNsaWVudDsgfQogICAgIHZvaWQgc2V0Tm90aWZpY2F0aW9uQ2xpZW50KE5vdGlm
aWNhdGlvbkNsaWVudCogY2xpZW50KSB7IG1fbm90aWZpY2F0aW9uQ2xpZW50ID0gY2xpZW50OyB9
CiAjZW5kaWYKQEAgLTExMCw3ICsxMTAsNyBAQCBwcml2YXRlOgogCiAgICAgc3RkOjp1bmlxdWVf
cHRyPFdvcmtlclRocmVhZFN0YXJ0dXBEYXRhPiBtX3N0YXJ0dXBEYXRhOwogCi0jaWYgRU5BQkxF
KE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdB
Q1lfTk9USUZJQ0FUSU9OUykKICAgICBOb3RpZmljYXRpb25DbGllbnQqIG1fbm90aWZpY2F0aW9u
Q2xpZW50IHsgbnVsbHB0ciB9OwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
bWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYktp
dC9tYWMvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggNGFiYTAy
ZDEwYmRkNGE5MDU3OGFlY2E5ODIwNmEyNjYzNDA1M2EzYS4uMGJhNWUxODFmN2IwZTFhZmFjZjQ0
MjExYTRkMDEzMjBhYTQ5NmZiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ29uZmln
dXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYktpdC9tYWMv
Q29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTEzOSw2ICsxMzksNyBA
QCBFTkFCTEVfS0VZQk9BUkRfS0VZX0FUVFJJQlVURSA9IEVOQUJMRV9LRVlCT0FSRF9LRVlfQVRU
UklCVVRFOwogRU5BQkxFX0tFWUJPQVJEX0NPREVfQVRUUklCVVRFID0gRU5BQkxFX0tFWUJPQVJE
X0NPREVfQVRUUklCVVRFOwogRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTID0gRU5B
QkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTOwogRU5BQkxFX0xFR0FDWV9FTkNSWVBURURf
TUVESUFbc2RrPW1hY29zeCpdID0gRU5BQkxFX0xFR0FDWV9FTkNSWVBURURfTUVESUE7CitFTkFC
TEVfTEVHQUNZX05PVElGSUNBVElPTlNbc2RrPW1hY29zeCpdID0gRU5BQkxFX0xFR0FDWV9OT1RJ
RklDQVRJT05TOwogRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMgPSBFTkFCTEVfTEVHQUNZ
X1ZFTkRPUl9QUkVGSVhFUzsKIEVOQUJMRV9MRVRURVJQUkVTU1tzZGs9aXBob25lKl0gPSBFTkFC
TEVfTEVUVEVSUFJFU1M7CiBFTkFCTEVfTElOS19QUkVGRVRDSCA9IDsKQEAgLTI1NCw0ICsyNTUs
NCBAQCBFTkFCTEVfVkFSSUFUSU9OX0ZPTlRTX0lGX05PVF8gPSAkKEVOQUJMRV9WQVJJQVRJT05f
Rk9OVFNfSUZfTk9UX05PKTsKIEVOQUJMRV9WQVJJQVRJT05fRk9OVFNfSUZfTk9UX05PID0gRU5B
QkxFX1ZBUklBVElPTl9GT05UUzsKIEVOQUJMRV9WQVJJQVRJT05fRk9OVFNfSUZfTk9UX1lFUyA9
IDsKIAotRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfVFJBTlNGT1JNUykgJChFTkFCTEVf
QUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JP
TExJTkcpICQoRU5BQkxFX0FQUExFX1BBWSkgJChFTkFCTEVfQVBQTEVfUEFZX0RFTEVHQVRFKSAk
KEVOQUJMRV9BVFRBQ0hNRU5UX0VMRU1FTlQpICQoRU5BQkxFX0FWRl9DQVBUSU9OUykgJChFTkFC
TEVfQ0FDSEVfUEFSVElUSU9OSU5HKSAkKEVOQUJMRV9DQU5WQVNfUEFUSCkgJChFTkFCTEVfQ0FO
VkFTX1BST1hZKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ09OVEVOVF9G
SUxURVJJTkcpICQoRU5BQkxFX0NTU19BTklNQVRJT05TX0xFVkVMXzIpICQoRU5BQkxFX0NTU19C
T1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKSAkKEVOQUJMRV9D
U1NfREVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikgJChF
TkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAkKEVOQUJM
RV9DU1NfU0NST0xMX1NOQVApICQoRU5BQkxFX0NTU19TRUxFQ1RPUlNfTEVWRUw0KSAkKEVOQUJM
RV9DU1NfVFJBSUxJTkdfV09SRCkgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DVVJTT1Jf
VklTSUJJTElUWSkgJChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKSAkKEVOQUJMRV9EQVNI
Qk9BUkRfU1VQUE9SVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREFU
QUNVRV9WQUxVRSkgJChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09S
SUVOVEFUSU9OKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUEpICQoRU5BQkxFX0ZBU1RfSklUX1BF
Uk1JU1NJT05TKSAkKEVOQUJMRV9GRVRDSF9BUEkpICQoRU5BQkxFX0ZJTFRFUlNfTEVWRUxfMikg
JChFTkFCTEVfRk9OVF9MT0FEX0VWRU5UUykgJChFTkFCTEVfRlRMX0pJVCkgJChFTkFCTEVfRlVM
TFNDUkVFTl9BUEkpICQoRU5BQkxFX0dBTUVQQURfREVQUkVDQVRFRCkgJChFTkFCTEVfR0FNRVBB
RCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVf
SU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09M
T1IpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElN
RV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxF
X0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JTlRFUlNFQ1RJT05fT0JTRVJWRVIpICQoRU5BQkxFX0lO
VEwpICQoRU5BQkxFX0lPU19HRVNUVVJFX0VWRU5UUykgJChFTkFCTEVfSU9TX1RPVUNIX0VWRU5U
UykgJChFTkFCTEVfSklUKSAkKEVOQUJMRV9LRVlCT0FSRF9LRVlfQVRUUklCVVRFKSAkKEVOQUJM
RV9LRVlCT0FSRF9DT0RFX0FUVFJJQlVURSkgJChFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJF
RklYRVMpICQoRU5BQkxFX0xFR0FDWV9FTkNSWVBURURfTUVESUEpICQoRU5BQkxFX0xFR0FDWV9W
RU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZF
VENIKSAkKEVOQUJMRV9NQUNfR0VTVFVSRV9FVkVOVFMpICQoRU5BQkxFX01BVEhNTCkgJChFTkFC
TEVfTUVESUFfQ0FQVFVSRSkgJChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJM
RV9NRURJQV9TRVNTSU9OKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NU
QVRJU1RJQ1MpICQoRU5BQkxFX01FRElBX1NUUkVBTSkgJChFTkFCTEVfTUVURVJfRUxFTUVOVCkg
JChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFW
SUdBVE9SX0NPTlRFTlRfVVRJTFMpICQoRU5BQkxFX05BVklHQVRPUl9IV0NPTkNVUlJFTkNZKSAk
KEVOQUJMRV9OT1NOSUZGKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9QREZLSVRf
UExVR0lOKSAkKEVOQUJMRV9QT0lOVEVSX0xPQ0spICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMp
ICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JF
TU9URV9JTlNQRUNUT1IpICQoRU5BQkxFX1JFUVVFU1RfQVVUT0NPTVBMRVRFKSAkKEVOQUJMRV9S
RVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9SRVNPVVJDRV9VU0FHRSkgJChFTkFCTEVf
UlVCQkVSX0JBTkRJTkcpICQoRU5BQkxFX1NFUlZJQ0VfQ09OVFJPTFMpICQoRU5BQkxFX1NQRUVD
SF9TWU5USEVTSVMpICQoRU5BQkxFX1NUUkVBTVNfQVBJKSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRP
KSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9O
KSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFC
TEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVf
VkFSSUFUSU9OX0ZPTlRTKSAkKEVOQUJMRV9WSURFT19QUkVTRU5UQVRJT05fTU9ERSkgJChFTkFC
TEVfTUFDX1ZJREVPX1RPT0xCT1gpICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9WSURF
TykgJChFTkFCTEVfVklFV19NT0RFX0NTU19NRURJQSkgJChFTkFCTEVfV0VCX0FOSU1BVElPTlMp
ICQoRU5BQkxFX1dFQl9BVURJTykgJChFTkFCTEVfV0VCX1JFUExBWSkgJChFTkFCTEVfV0VCX1JU
QykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9USU1JTkcpICQoRU5BQkxFX1dF
QkFTU0VNQkxZKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCR0wyKSAkKEVOQUJMRV9XRUJH
UFUpICQoRU5BQkxFX1dJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkgJChFTkFCTEVfWFNMVCk7CitG
RUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9UUkFOU0ZPUk1TKSAkKEVOQUJMRV9BQ0NFTEVS
QVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FDQ0VMRVJBVEVEX09WRVJGTE9XX1NDUk9MTElORykg
JChFTkFCTEVfQVBQTEVfUEFZKSAkKEVOQUJMRV9BUFBMRV9QQVlfREVMRUdBVEUpICQoRU5BQkxF
X0FUVEFDSE1FTlRfRUxFTUVOVCkgJChFTkFCTEVfQVZGX0NBUFRJT05TKSAkKEVOQUJMRV9DQUNI
RV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJP
WFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DT05URU5UX0ZJTFRFUklO
RykgJChFTkFCTEVfQ1NTX0FOSU1BVElPTlNfTEVWRUxfMikgJChFTkFCTEVfQ1NTX0JPWF9ERUNP
UkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJ
Q0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9D
U1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQoRU5BQkxFX0NTU19T
Q1JPTExfU05BUCkgJChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpICQoRU5BQkxFX0NTU19U
UkFJTElOR19XT1JEKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxFX0NVUlNPUl9WSVNJQklM
SVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FSRF9T
VVBQT1JUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9EQVRBQ1VFX1ZB
TFVFKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJ
T04pICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRkFTVF9KSVRfUEVSTUlTU0lP
TlMpICQoRU5BQkxFX0ZFVENIX0FQSSkgJChFTkFCTEVfRklMVEVSU19MRVZFTF8yKSAkKEVOQUJM
RV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9GVUxMU0NSRUVO
X0FQSSkgJChFTkFCTEVfR0FNRVBBRF9ERVBSRUNBVEVEKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVO
QUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVE
X0RBVEFCQVNFX0lOX1dPUktFUlMpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxF
X0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUikgJChF
TkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09N
UExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRf
VFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBF
X1dFRUspICQoRU5BQkxFX0lOVEVSU0VDVElPTl9PQlNFUlZFUikgJChFTkFCTEVfSU5UTCkgJChF
TkFCTEVfSU9TX0dFU1RVUkVfRVZFTlRTKSAkKEVOQUJMRV9JT1NfVE9VQ0hfRVZFTlRTKSAkKEVO
QUJMRV9KSVQpICQoRU5BQkxFX0tFWUJPQVJEX0tFWV9BVFRSSUJVVEUpICQoRU5BQkxFX0tFWUJP
QVJEX0NPREVfQVRUUklCVVRFKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykg
JChFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfTEVHQUNZX05PVElGSUNB
VElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFVFRFUlBS
RVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQUNfR0VTVFVSRV9FVkVOVFMp
ICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfQ0FQVFVSRSkgJChFTkFCTEVfTUVESUFf
Q09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9TRVNTSU9OKSAkKEVOQUJMRV9NRURJQV9T
T1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FRElBX1NUUkVBTSkg
JChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01PVVNFX0NV
UlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFWSUdBVE9SX0NPTlRFTlRfVVRJTFMpICQoRU5BQkxFX05B
VklHQVRPUl9IV0NPTkNVUlJFTkNZKSAkKEVOQUJMRV9OT1NOSUZGKSAkKEVOQUJMRV9OT1RJRklD
QVRJT05TKSAkKEVOQUJMRV9QREZLSVRfUExVR0lOKSAkKEVOQUJMRV9QT0lOVEVSX0xPQ0spICQo
RU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChF
TkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFTU9URV9JTlNQRUNUT1IpICQoRU5BQkxFX1JFUVVFU1Rf
QVVUT0NPTVBMRVRFKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9S
RVNPVVJDRV9VU0FHRSkgJChFTkFCTEVfUlVCQkVSX0JBTkRJTkcpICQoRU5BQkxFX1NFUlZJQ0Vf
Q09OVFJPTFMpICQoRU5BQkxFX1NQRUVDSF9TWU5USEVTSVMpICQoRU5BQkxFX1NUUkVBTVNfQVBJ
KSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RF
TEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5B
QkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9V
U0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVkFSSUFUSU9OX0ZPTlRTKSAkKEVOQUJMRV9WSURFT19Q
UkVTRU5UQVRJT05fTU9ERSkgJChFTkFCTEVfTUFDX1ZJREVPX1RPT0xCT1gpICQoRU5BQkxFX1ZJ
REVPX1RSQUNLKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklFV19NT0RFX0NTU19NRURJQSkg
JChFTkFCTEVfV0VCX0FOSU1BVElPTlMpICQoRU5BQkxFX1dFQl9BVURJTykgJChFTkFCTEVfV0VC
X1JFUExBWSkgJChFTkFCTEVfV0VCX1JUQykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxF
X1dFQl9USU1JTkcpICQoRU5BQkxFX1dFQkFTU0VNQkxZKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFC
TEVfV0VCR0wyKSAkKEVOQUJMRV9XRUJHUFUpICQoRU5BQkxFX1dJUkVMRVNTX1BMQVlCQUNLX1RB
UkdFVCkgJChFTkFCTEVfWFNMVCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJOb3RpZmljYXRpb25DbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYk5vdGlmaWNhdGlvbkNsaWVudC5oCmluZGV4IDgzNzg3NWY3OGE1YzU2
MDA4ZDczYjNiMzE3YTk5MDc0Mzg3YWM4Y2EuLmQ4N2FhMTQzZDQ5N2IwMjFhNDFhMzNlOTM2YzQ5
OTY1ZjIzMGE1YzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYk5vdGlmaWNhdGlvbkNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYk5vdGlmaWNhdGlvbkNsaWVudC5oCkBAIC0yNSw3ICsyNSw3IEBACiAKICNpbXBv
cnQgPFdlYkNvcmUvTm90aWZpY2F0aW9uQ2xpZW50Lmg+CiAKLSNpZiBFTkFCTEUoTk9USUZJQ0FU
SU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklD
QVRJT05TKQogI2ltcG9ydCA8V2ViQ29yZS9Ob3RpZmljYXRpb24uaD4KICNpbXBvcnQgPHd0Zi9I
YXNoTWFwLmg+CiAjaW1wb3J0IDx3dGYvUmVmUHRyLmg+CkBAIC00OCw3ICs0OCw3IEBAIHB1Ymxp
YzoKICAgICBXZWJOb3RpZmljYXRpb25DbGllbnQoV2ViVmlldyAqKTsKICAgICBXZWJWaWV3ICp3
ZWJWaWV3KCkgeyByZXR1cm4gbV93ZWJWaWV3OyB9CiAKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9O
UykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJ
T05TKQogICAgIC8vIEZvciB0ZXN0aW5nIHB1cnBvc2VzLgogICAgIHVpbnQ2NF90IG5vdGlmaWNh
dGlvbklERm9yVGVzdGluZyhXZWJDb3JlOjpOb3RpZmljYXRpb24qKTsKICNlbmRpZgpAQCAtNTks
NiArNTksOSBAQCBwcml2YXRlOgogICAgIHZvaWQgY2xlYXJOb3RpZmljYXRpb25zKFdlYkNvcmU6
OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKSBvdmVycmlkZTsKICAgICB2b2lkIG5vdGlmaWNhdGlv
bk9iamVjdERlc3Ryb3llZChXZWJDb3JlOjpOb3RpZmljYXRpb24qKSBvdmVycmlkZTsKICAgICB2
b2lkIG5vdGlmaWNhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKSBvdmVycmlkZTsKKyNpZiBFTkFC
TEUoTEVHQUNZX05PVElGSUNBVElPTlMpCisgICAgdm9pZCByZXF1ZXN0UGVybWlzc2lvbihXZWJD
b3JlOjpTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUmVmUHRyPFdlYkNvcmU6OlZvaWRDYWxsYmFj
az4mJikgb3ZlcnJpZGU7CisjZW5kaWYKICNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKICAgICB2
b2lkIHJlcXVlc3RQZXJtaXNzaW9uKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBS
ZWZQdHI8V2ViQ29yZTo6Tm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrPiYmKSBvdmVycmlk
ZTsKICNlbmRpZgpAQCAtNjYsMTIgKzY5LDEyIEBAIHByaXZhdGU6CiAgICAgYm9vbCBoYXNQZW5k
aW5nUGVybWlzc2lvblJlcXVlc3RzKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKSBj
b25zdCBvdmVycmlkZTsKICAgICBXZWJDb3JlOjpOb3RpZmljYXRpb25DbGllbnQ6OlBlcm1pc3Np
b24gY2hlY2tQZXJtaXNzaW9uKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKSBvdmVy
cmlkZTsKIAotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJ
T05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgdm9pZCByZXF1ZXN0UGVy
bWlzc2lvbihXZWJDb3JlOjpTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgV2ViTm90aWZpY2F0aW9u
UG9saWN5TGlzdGVuZXIgKik7CiAjZW5kaWYKIAogICAgIFdlYlZpZXcgKm1fd2ViVmlldzsKLSNp
ZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5B
QkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogICAgIEhhc2hNYXA8UmVmUHRyPFdlYkNvcmU6Ok5v
dGlmaWNhdGlvbj4sIFJldGFpblB0cjxXZWJOb3RpZmljYXRpb24+PiBtX25vdGlmaWNhdGlvbk1h
cDsKICAgICAKICAgICB0eXBlZGVmIEhhc2hNYXA8UmVmUHRyPFdlYkNvcmU6OlNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQ+LCBWZWN0b3I8UmV0YWluUHRyPFdlYk5vdGlmaWNhdGlvbj4+PiBOb3RpZmlj
YXRpb25Db250ZXh0TWFwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViTm90aWZpY2F0aW9uQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViTm90aWZpY2F0aW9uQ2xpZW50Lm1tCmluZGV4IDRmYTBkNDE5OGE1YjI4MDYz
YmVhNGE4OGU1YjQ0NmU5YzkzOWI3MDQuLjBiZGQwYTcxYTRiNjEwYTFkNWVmNDM3NDYyZDI0Zjg4
ZDU4ODEwYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
Yk5vdGlmaWNhdGlvbkNsaWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJOb3RpZmljYXRpb25DbGllbnQubW0KQEAgLTI1LDMwICsyNSw0OCBAQAogCiAjaW1w
b3J0ICJXZWJOb3RpZmljYXRpb25DbGllbnQuaCIKIAotI2lmIEVOQUJMRShOT1RJRklDQVRJT05T
KQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElP
TlMpCiAjaW1wb3J0ICJXZWJEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGluZy5oIgogI2ltcG9y
dCAiV2ViTm90aWZpY2F0aW9uSW50ZXJuYWwuaCIKICNpbXBvcnQgIldlYlByZWZlcmVuY2VzUHJp
dmF0ZS5oIgogI2ltcG9ydCAiV2ViU2VjdXJpdHlPcmlnaW5JbnRlcm5hbC5oIgogI2ltcG9ydCAi
V2ViVUlEZWxlZ2F0ZVByaXZhdGUuaCIKICNpbXBvcnQgIldlYlZpZXdJbnRlcm5hbC5oIgotI2lt
cG9ydCA8V2ViQ29yZS9Ob3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2suaD4KICNpbXBvcnQg
PFdlYkNvcmUvU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oPgogI2ltcG9ydCA8d3RmL0Jsb2NrT2Jq
Q0V4Y2VwdGlvbnMuaD4KICNlbmRpZgogCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaW1w
b3J0IDxXZWJDb3JlL05vdGlmaWNhdGlvblBlcm1pc3Npb25DYWxsYmFjay5oPgorI2VuZGlmCisj
aWYgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQorI2ltcG9ydCA8V2ViQ29yZS9Wb2lkQ2Fs
bGJhY2suaD4KKyNlbmRpZgorCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotI2lmIEVOQUJM
RShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVH
QUNZX05PVElGSUNBVElPTlMpCiBAaW50ZXJmYWNlIFdlYk5vdGlmaWNhdGlvblBvbGljeUxpc3Rl
bmVyIDogTlNPYmplY3QgPFdlYkFsbG93RGVueVBvbGljeUxpc3RlbmVyPgogeworI2lmIEVOQUJM
RShOT1RJRklDQVRJT05TKQogICAgIFJlZlB0cjxOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJh
Y2s+IF9jYWxsYmFjazsKKyNlbmRpZgorI2lmIEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykK
KyAgICBSZWZQdHI8Vm9pZENhbGxiYWNrPiBfdm9pZENhbGxiYWNrOworICAgIGJvb2wgX2lzTGVn
YWN5UmVxdWVzdDsKKyNlbmRpZgogfQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQogLSAoaWQp
aW5pdFdpdGhDYWxsYmFjazooUGFzc1JlZlB0cjxOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJh
Y2s+KWNhbGxiYWNrOworI2VuZGlmCisjaWYgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQor
LSAoaWQpaW5pdFdpdGhWb2lkQ2FsbGJhY2s6KFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiljYWxs
YmFjazsKKyNlbmRpZgorCiBAZW5kCiAjZW5kaWYKIAotI2lmIEVOQUJMRShOT1RJRklDQVRJT05T
KQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElP
TlMpCiBzdGF0aWMgdWludDY0X3QgZ2VuZXJhdGVOb3RpZmljYXRpb25JRCgpCiB7CiAgICAgc3Rh
dGljIHVpbnQ2NF90IHVuaXF1ZU5vdGlmaWNhdGlvbklEID0gMTsKQEAgLTYzLDcgKzgxLDcgQEAg
V2ViTm90aWZpY2F0aW9uQ2xpZW50OjpXZWJOb3RpZmljYXRpb25DbGllbnQoV2ViVmlldyAqd2Vi
VmlldykKIAogYm9vbCBXZWJOb3RpZmljYXRpb25DbGllbnQ6OnNob3coTm90aWZpY2F0aW9uKiBu
b3RpZmljYXRpb24pCiB7Ci0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5P
VElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBpZiAoIVtt
X3dlYlZpZXcgX25vdGlmaWNhdGlvblByb3ZpZGVyXSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwog
CkBAIC03MSw3ICs4OSw3IEBAIGJvb2wgV2ViTm90aWZpY2F0aW9uQ2xpZW50OjpzaG93KE5vdGlm
aWNhdGlvbiogbm90aWZpY2F0aW9uKQogICAgIFJldGFpblB0cjxXZWJOb3RpZmljYXRpb24+IHdl
Yk5vdGlmaWNhdGlvbiA9IGFkb3B0TlMoW1tXZWJOb3RpZmljYXRpb24gYWxsb2NdIGluaXRXaXRo
Q29yZU5vdGlmaWNhdGlvbjpub3RpZmljYXRpb24gbm90aWZpY2F0aW9uSUQ6bm90aWZpY2F0aW9u
SURdKTsKICAgICBtX25vdGlmaWNhdGlvbk1hcC5zZXQobm90aWZpY2F0aW9uLCB3ZWJOb3RpZmlj
YXRpb24pOwogCi0gICAgYXV0byBpdCA9IG1fbm90aWZpY2F0aW9uQ29udGV4dE1hcC5hZGQobm90
aWZpY2F0aW9uLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIFZlY3RvcjxSZXRhaW5QdHI8V2Vi
Tm90aWZpY2F0aW9uPj4oKSkuaXRlcmF0b3I7CisgICAgTm90aWZpY2F0aW9uQ29udGV4dE1hcDo6
aXRlcmF0b3IgaXQgPSBtX25vdGlmaWNhdGlvbkNvbnRleHRNYXAuYWRkKG5vdGlmaWNhdGlvbi0+
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLCBWZWN0b3I8UmV0YWluUHRyPFdlYk5vdGlmaWNhdGlv
bj4+KCkpLml0ZXJhdG9yOwogICAgIGl0LT52YWx1ZS5hcHBlbmQod2ViTm90aWZpY2F0aW9uKTsK
IAogICAgIFtbbV93ZWJWaWV3IF9ub3RpZmljYXRpb25Qcm92aWRlcl0gc2hvd05vdGlmaWNhdGlv
bjp3ZWJOb3RpZmljYXRpb24uZ2V0KCkgZnJvbVdlYlZpZXc6bV93ZWJWaWV3XTsKQEAgLTg0LDcg
KzEwMiw3IEBAIGJvb2wgV2ViTm90aWZpY2F0aW9uQ2xpZW50OjpzaG93KE5vdGlmaWNhdGlvbiog
bm90aWZpY2F0aW9uKQogCiB2b2lkIFdlYk5vdGlmaWNhdGlvbkNsaWVudDo6Y2FuY2VsKE5vdGlm
aWNhdGlvbiogbm90aWZpY2F0aW9uKQogewotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lm
IEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAg
ICAgV2ViTm90aWZpY2F0aW9uICp3ZWJOb3RpZmljYXRpb24gPSBtX25vdGlmaWNhdGlvbk1hcC5n
ZXQobm90aWZpY2F0aW9uKS5nZXQoKTsKICAgICBpZiAoIXdlYk5vdGlmaWNhdGlvbikKICAgICAg
ICAgcmV0dXJuOwpAQCAtOTcsOCArMTE1LDggQEAgdm9pZCBXZWJOb3RpZmljYXRpb25DbGllbnQ6
OmNhbmNlbChOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbikKIAogdm9pZCBXZWJOb3RpZmljYXRp
b25DbGllbnQ6OmNsZWFyTm90aWZpY2F0aW9ucyhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250
ZXh0KQogewotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQotICAgIGF1dG8gaXQgPSBtX25vdGlm
aWNhdGlvbkNvbnRleHRNYXAuZmluZChjb250ZXh0KTsKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9O
UykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQorICAgIE5vdGlmaWNhdGlvbkNvbnRl
eHRNYXA6Oml0ZXJhdG9yIGl0ID0gbV9ub3RpZmljYXRpb25Db250ZXh0TWFwLmZpbmQoY29udGV4
dCk7CiAgICAgaWYgKGl0ID09IG1fbm90aWZpY2F0aW9uQ29udGV4dE1hcC5lbmQoKSkKICAgICAg
ICAgcmV0dXJuOwogICAgIApAQCAtMTIxLDEyICsxMzksMTIgQEAgdm9pZCBXZWJOb3RpZmljYXRp
b25DbGllbnQ6OmNsZWFyTm90aWZpY2F0aW9ucyhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250
ZXh0KQogCiB2b2lkIFdlYk5vdGlmaWNhdGlvbkNsaWVudDo6bm90aWZpY2F0aW9uT2JqZWN0RGVz
dHJveWVkKE5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uKQogewotI2lmIEVOQUJMRShOT1RJRklD
QVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElG
SUNBVElPTlMpCiAgICAgUmV0YWluUHRyPFdlYk5vdGlmaWNhdGlvbj4gd2ViTm90aWZpY2F0aW9u
ID0gbV9ub3RpZmljYXRpb25NYXAudGFrZShub3RpZmljYXRpb24pOwogICAgIGlmICghd2ViTm90
aWZpY2F0aW9uKQogICAgICAgICByZXR1cm47CiAKLSAgICBhdXRvIGl0ID0gbV9ub3RpZmljYXRp
b25Db250ZXh0TWFwLmZpbmQobm90aWZpY2F0aW9uLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkp
OworICAgIE5vdGlmaWNhdGlvbkNvbnRleHRNYXA6Oml0ZXJhdG9yIGl0ID0gbV9ub3RpZmljYXRp
b25Db250ZXh0TWFwLmZpbmQobm90aWZpY2F0aW9uLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkp
OwogICAgIEFTU0VSVChpdCAhPSBtX25vdGlmaWNhdGlvbkNvbnRleHRNYXAuZW5kKCkpOwogICAg
IHNpemVfdCBpbmRleCA9IGl0LT52YWx1ZS5maW5kKHdlYk5vdGlmaWNhdGlvbik7CiAgICAgQVNT
RVJUKGluZGV4ICE9IG5vdEZvdW5kKTsKQEAgLTE0NSw3ICsxNjMsNyBAQCB2b2lkIFdlYk5vdGlm
aWNhdGlvbkNsaWVudDo6bm90aWZpY2F0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpCiAgICAgZGVs
ZXRlIHRoaXM7CiB9CiAKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9U
SUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogdm9pZCBXZWJOb3Rp
ZmljYXRpb25DbGllbnQ6OnJlcXVlc3RQZXJtaXNzaW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IGNvbnRleHQsIFdlYk5vdGlmaWNhdGlvblBvbGljeUxpc3RlbmVyICpsaXN0ZW5lcikKIHsKICAg
ICBTRUwgc2VsZWN0b3IgPSBAc2VsZWN0b3Iod2ViVmlldzpkZWNpZGVQb2xpY3lGb3JOb3RpZmlj
YXRpb25SZXF1ZXN0RnJvbU9yaWdpbjpsaXN0ZW5lcjopOwpAQCAtMTYyLDkgKzE4MCwyMCBAQCB2
b2lkIFdlYk5vdGlmaWNhdGlvbkNsaWVudDo6cmVxdWVzdFBlcm1pc3Npb24oU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogY29udGV4dCwgVwogfQogI2VuZGlmCiAKKyNpZiBFTkFCTEUoTEVHQUNZX05P
VElGSUNBVElPTlMpCit2b2lkIFdlYk5vdGlmaWNhdGlvbkNsaWVudDo6cmVxdWVzdFBlcm1pc3Np
b24oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUmVmUHRyPFZvaWRDYWxsYmFjaz4m
JiBjYWxsYmFjaykKK3sKKyAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CisgICAgV2Vi
Tm90aWZpY2F0aW9uUG9saWN5TGlzdGVuZXIgKmxpc3RlbmVyID0gW1tXZWJOb3RpZmljYXRpb25Q
b2xpY3lMaXN0ZW5lciBhbGxvY10gaW5pdFdpdGhWb2lkQ2FsbGJhY2s6Y2FsbGJhY2tdOworICAg
IHJlcXVlc3RQZXJtaXNzaW9uKGNvbnRleHQsIGxpc3RlbmVyKTsKKyAgICBbbGlzdGVuZXIgcmVs
ZWFzZV07CisgICAgRU5EX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKK30KKyNlbmRpZgorCiBib29s
IFdlYk5vdGlmaWNhdGlvbkNsaWVudDo6aGFzUGVuZGluZ1Blcm1pc3Npb25SZXF1ZXN0cyhTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KikgY29uc3QKIHsKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykK
KyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05T
KQogICAgIC8vIFdlIGtub3cgcGVybWlzc2lvbiB3YXMgcmVxdWVzdGVkIGJ1dCB3ZSBkb24ndCBr
bm93IGlmIHRoZSBjbGllbnQgcmVzcG9uZGVkLiBJbiB0aGlzIGNhc2UsIHdlIHBsYXkgaXQKICAg
ICAvLyBzYWZlIGFuZCBwcmVzdW1lIHRoZXJlIGlzIG9uZSBwZW5kaW5nIHNvIHRoYXQgQWN0aXZl
RE9NT2JqZWN0cyBkb24ndCBnZXQgc3VzcGVuZGVkLgogICAgIHJldHVybiBtX2V2ZXJSZXF1ZXN0
ZWRQZXJtaXNzaW9uOwpAQCAtMTg2LDcgKzIxNSw3IEBAIHZvaWQgV2ViTm90aWZpY2F0aW9uQ2xp
ZW50OjpyZXF1ZXN0UGVybWlzc2lvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBS
CiAKIE5vdGlmaWNhdGlvbkNsaWVudDo6UGVybWlzc2lvbiBXZWJOb3RpZmljYXRpb25DbGllbnQ6
OmNoZWNrUGVybWlzc2lvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQogewotI2lm
IEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFC
TEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgaWYgKCFjb250ZXh0IHx8ICFjb250ZXh0LT5p
c0RvY3VtZW50KCkpCiAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25DbGllbnQ6OlBlcm1pc3Np
b25EZW5pZWQ7CiAgICAgaWYgKCFbW21fd2ViVmlldyBwcmVmZXJlbmNlc10gbm90aWZpY2F0aW9u
c0VuYWJsZWRdKQpAQCAtMjEwLDggKzIzOSw3IEBAIE5vdGlmaWNhdGlvbkNsaWVudDo6UGVybWlz
c2lvbiBXZWJOb3RpZmljYXRpb25DbGllbnQ6OmNoZWNrUGVybWlzc2lvbihTY3JpcHRFeGVjCiAj
ZW5kaWYKIH0KIAotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQotCisjaWYgRU5BQkxFKE5PVElG
SUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKIHVpbnQ2NF90IFdlYk5v
dGlmaWNhdGlvbkNsaWVudDo6bm90aWZpY2F0aW9uSURGb3JUZXN0aW5nKFdlYkNvcmU6Ok5vdGlm
aWNhdGlvbiogbm90aWZpY2F0aW9uKQogewogICAgIHJldHVybiBbbV9ub3RpZmljYXRpb25NYXAu
Z2V0KG5vdGlmaWNhdGlvbikuZ2V0KCkgbm90aWZpY2F0aW9uSURdOwpAQCAtMjE5LDYgKzI0Nyw3
IEBAIHVpbnQ2NF90IFdlYk5vdGlmaWNhdGlvbkNsaWVudDo6bm90aWZpY2F0aW9uSURGb3JUZXN0
aW5nKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbioKIAogQGltcGxlbWVudGF0aW9uIFdlYk5vdGlmaWNh
dGlvblBvbGljeUxpc3RlbmVyCiAKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKIC0gKGlkKWlu
aXRXaXRoQ2FsbGJhY2s6KFBhc3NSZWZQdHI8Tm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNr
PiljYWxsYmFjawogewogICAgIGlmICghKHNlbGYgPSBbc3VwZXIgaW5pdF0pKQpAQCAtMjI3LDE3
ICsyNTYsNDggQEAgdWludDY0X3QgV2ViTm90aWZpY2F0aW9uQ2xpZW50Ojpub3RpZmljYXRpb25J
REZvclRlc3RpbmcoV2ViQ29yZTo6Tm90aWZpY2F0aW9uKgogICAgIF9jYWxsYmFjayA9IGNhbGxi
YWNrOwogICAgIHJldHVybiBzZWxmOwogfQorI2VuZGlmCisKKyNpZiBFTkFCTEUoTEVHQUNZX05P
VElGSUNBVElPTlMpCistIChpZClpbml0V2l0aFZvaWRDYWxsYmFjazooUGFzc1JlZlB0cjxWb2lk
Q2FsbGJhY2s+KWNhbGxiYWNrCit7CisgICAgaWYgKCEoc2VsZiA9IFtzdXBlciBpbml0XSkpCisg
ICAgICAgIHJldHVybiBuaWw7CisKKyAgICBfaXNMZWdhY3lSZXF1ZXN0ID0gdHJ1ZTsKKyAgICBf
dm9pZENhbGxiYWNrID0gY2FsbGJhY2s7CisgICAgcmV0dXJuIHNlbGY7Cit9CisjZW5kaWYKIAog
LSAodm9pZClhbGxvdwogeworI2lmIEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKKyAgICBp
ZiAoX2lzTGVnYWN5UmVxdWVzdCkgeworICAgICAgICBpZiAoX3ZvaWRDYWxsYmFjaykKKyAgICAg
ICAgICAgIF92b2lkQ2FsbGJhY2stPmhhbmRsZUV2ZW50KCk7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisjZW5kaWYKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKICAgICBpZiAoX2NhbGxiYWNr
KQogICAgICAgICBfY2FsbGJhY2stPmhhbmRsZUV2ZW50KE5vdGlmaWNhdGlvbjo6cGVybWlzc2lv
blN0cmluZyhOb3RpZmljYXRpb25DbGllbnQ6OlBlcm1pc3Npb25BbGxvd2VkKSk7CisjZW5kaWYK
IH0KIAogLSAodm9pZClkZW55CiB7CisjaWYgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQor
ICAgIGlmIChfaXNMZWdhY3lSZXF1ZXN0KSB7CisgICAgICAgIGlmIChfdm9pZENhbGxiYWNrKQor
ICAgICAgICAgICAgX3ZvaWRDYWxsYmFjay0+aGFuZGxlRXZlbnQoKTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKyNlbmRpZgorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQogICAgIGlmIChfY2Fs
bGJhY2spCiAgICAgICAgIF9jYWxsYmFjay0+aGFuZGxlRXZlbnQoTm90aWZpY2F0aW9uOjpwZXJt
aXNzaW9uU3RyaW5nKE5vdGlmaWNhdGlvbkNsaWVudDo6UGVybWlzc2lvbkRlbmllZCkpOworI2Vu
ZGlmCiB9CiAKICNpZiBQTEFURk9STShJT1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJWaWV3L1dlYk5vdGlmaWNhdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViTm90aWZpY2F0aW9uLm1tCmluZGV4IGE3MGQ3NWIxNThhOWQ0NzcyM2ZiOGM5OTI2YmEyODM1
M2EyZTRkYTcuLjY1Y2Q1OWVjN2NiOTgwNmI5YmZlMGJkYWIzMzU2ODhmOWM5ZWRhNDAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViTm90aWZpY2F0aW9uLm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViTm90aWZpY2F0aW9uLm1tCkBAIC0zMCw3ICsz
MCw3IEBACiAKICNpbXBvcnQgIldlYk5vdGlmaWNhdGlvbkludGVybmFsLmgiCiAKLSNpZiBFTkFC
TEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExF
R0FDWV9OT1RJRklDQVRJT05TKQogI2ltcG9ydCAiV2ViU2VjdXJpdHlPcmlnaW5JbnRlcm5hbC5o
IgogI2ltcG9ydCA8V2ViQ29yZS9Ob3RpZmljYXRpb24uaD4KICNpbXBvcnQgPFdlYkNvcmUvU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dC5oPgpAQCAtNDIsNyArNDIsNyBAQCB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIEBpbnRlcmZhY2UgV2ViTm90aWZpY2F0aW9uUHJpdmF0ZSA6IE5TT2JqZWN0CiB7
CiBAcHVibGljCi0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNB
VElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBSZWZQdHI8Tm90aWZp
Y2F0aW9uPiBfaW50ZXJuYWw7CiAgICAgdWludDY0X3QgX25vdGlmaWNhdGlvbklEOwogI2VuZGlm
CkBAIC01Miw5ICs1Miw4IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogQGltcGxlbWVudGF0
aW9uIFdlYk5vdGlmaWNhdGlvblByaXZhdGUKIEBlbmQKIAotI2lmIEVOQUJMRShOT1RJRklDQVRJ
T05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNB
VElPTlMpCiBAaW1wbGVtZW50YXRpb24gV2ViTm90aWZpY2F0aW9uIChXZWJOb3RpZmljYXRpb25J
bnRlcm5hbCkKLQogTm90aWZpY2F0aW9uKiBjb3JlKFdlYk5vdGlmaWNhdGlvbiAqbm90aWZpY2F0
aW9uKQogewogICAgIGlmICghbm90aWZpY2F0aW9uLT5fcHJpdmF0ZSkKQEAgLTg4LDcgKzg3LDcg
QEAgTm90aWZpY2F0aW9uKiBjb3JlKFdlYk5vdGlmaWNhdGlvbiAqbm90aWZpY2F0aW9uKQogCiAt
IChOU1N0cmluZyAqKXRpdGxlCiB7Ci0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5B
QkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBy
ZXR1cm4gY29yZShzZWxmKS0+dGl0bGUoKTsKICNlbHNlCiAgICAgcmV0dXJuIG5pbDsKQEAgLTk3
LDcgKzk2LDcgQEAgTm90aWZpY2F0aW9uKiBjb3JlKFdlYk5vdGlmaWNhdGlvbiAqbm90aWZpY2F0
aW9uKQogCiAtIChOU1N0cmluZyAqKWJvZHkKIHsKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykK
KyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05T
KQogICAgIHJldHVybiBjb3JlKHNlbGYpLT5ib2R5KCk7CiAjZWxzZQogICAgIHJldHVybiBuaWw7
CkBAIC0xMDYsNyArMTA1LDcgQEAgTm90aWZpY2F0aW9uKiBjb3JlKFdlYk5vdGlmaWNhdGlvbiAq
bm90aWZpY2F0aW9uKQogCiAtIChOU1N0cmluZyAqKXRhZwogewotI2lmIEVOQUJMRShOT1RJRklD
QVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElG
SUNBVElPTlMpCiAgICAgcmV0dXJuIGNvcmUoc2VsZiktPnRhZygpOwogI2Vsc2UKICAgICByZXR1
cm4gbmlsOwpAQCAtMTE1LDcgKzExNCw3IEBAIE5vdGlmaWNhdGlvbiogY29yZShXZWJOb3RpZmlj
YXRpb24gKm5vdGlmaWNhdGlvbikKIAogLSAoTlNTdHJpbmcgKilpY29uVVJMCiB7Ci0jaWYgRU5B
QkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShM
RUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICByZXR1cm4gY29yZShzZWxmKS0+aWNvblVSTCgpOwog
I2Vsc2UKICAgICByZXR1cm4gbmlsOwpAQCAtMTI0LDcgKzEyMyw3IEBAIE5vdGlmaWNhdGlvbiog
Y29yZShXZWJOb3RpZmljYXRpb24gKm5vdGlmaWNhdGlvbikKIAogLSAoTlNTdHJpbmcgKilsYW5n
CiB7Ci0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMp
IHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICByZXR1cm4gY29yZShzZWxmKS0+
bGFuZygpOwogI2Vsc2UKICAgICByZXR1cm4gbmlsOwpAQCAtMTMzLDcgKzEzMiw3IEBAIE5vdGlm
aWNhdGlvbiogY29yZShXZWJOb3RpZmljYXRpb24gKm5vdGlmaWNhdGlvbikKIAogLSAoTlNTdHJp
bmcgKilkaXIKIHsKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJ
Q0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogICAgIHJldHVybiBjb3Jl
KHNlbGYpLT5kaXIoKTsKICNlbHNlCiAgICAgcmV0dXJuIG5pbDsKQEAgLTE0Miw3ICsxNDEsNyBA
QCBOb3RpZmljYXRpb24qIGNvcmUoV2ViTm90aWZpY2F0aW9uICpub3RpZmljYXRpb24pCiAKIC0g
KFdlYlNlY3VyaXR5T3JpZ2luICopb3JpZ2luCiB7Ci0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMp
CisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9O
UykKICAgICByZXR1cm4gW1tbV2ViU2VjdXJpdHlPcmlnaW4gYWxsb2NdIF9pbml0V2l0aFdlYkNv
cmVTZWN1cml0eU9yaWdpbjpjb3JlKHNlbGYpLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPnNl
Y3VyaXR5T3JpZ2luKCldIGF1dG9yZWxlYXNlXTsKICNlbHNlCiAgICAgcmV0dXJuIG5pbDsKQEAg
LTE1MSw3ICsxNTAsNyBAQCBOb3RpZmljYXRpb24qIGNvcmUoV2ViTm90aWZpY2F0aW9uICpub3Rp
ZmljYXRpb24pCiAKIC0gKHVpbnQ2NF90KW5vdGlmaWNhdGlvbklECiB7Ci0jaWYgRU5BQkxFKE5P
VElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lf
Tk9USUZJQ0FUSU9OUykKICAgICByZXR1cm4gX3ByaXZhdGUtPl9ub3RpZmljYXRpb25JRDsKICNl
bHNlCiAgICAgcmV0dXJuIDA7CkBAIC0xNjAsMjggKzE1OSwyOCBAQCBOb3RpZmljYXRpb24qIGNv
cmUoV2ViTm90aWZpY2F0aW9uICpub3RpZmljYXRpb24pCiAKIC0gKHZvaWQpZGlzcGF0Y2hTaG93
RXZlbnQKIHsKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FU
SU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogICAgIGNvcmUoc2VsZiktPmRp
c3BhdGNoU2hvd0V2ZW50KCk7CiAjZW5kaWYKIH0KIAogLSAodm9pZClkaXNwYXRjaENsb3NlRXZl
bnQKIHsKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9O
UykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogICAgIGNvcmUoc2VsZiktPmRpc3Bh
dGNoQ2xvc2VFdmVudCgpOwogI2VuZGlmCiB9CiAKIC0gKHZvaWQpZGlzcGF0Y2hDbGlja0V2ZW50
CiB7Ci0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMp
IHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBjb3JlKHNlbGYpLT5kaXNwYXRj
aENsaWNrRXZlbnQoKTsKICNlbmRpZgogfQogCiAtICh2b2lkKWRpc3BhdGNoRXJyb3JFdmVudAog
ewotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8
fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgY29yZShzZWxmKS0+ZGlzcGF0Y2hF
cnJvckV2ZW50KCk7CiAjZW5kaWYKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YlZpZXcvV2ViTm90aWZpY2F0aW9uSW50ZXJuYWwuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViTm90aWZpY2F0aW9uSW50ZXJuYWwuaAppbmRleCBhNzc5YzA3NTM1YmI0YzU5MWRmNzE5
ODE0ODI2YzZiNzhkMjg4MjQ1Li5lZDZhM2Y3OWFkMWZjODZiYWM3NmJhN2NkNzIzZDZkYWRkNzdm
NzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYk5vdGlmaWNhdGlv
bkludGVybmFsLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJOb3RpZmljYXRp
b25JbnRlcm5hbC5oCkBAIC0yOCw3ICsyOCw3IEBACiAKICNpbXBvcnQgIldlYk5vdGlmaWNhdGlv
bi5oIgogCi0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElP
TlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogY2xhc3MgTm90aWZpY2F0aW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCmlu
ZGV4IGRiMzliMTc0NzA0NjIwYzhiZGEwZmIzMDZhZjUyMzdhNWQ2M2VlZjYuLjk1ZTBlZWUwNTAw
OGNjNzA5NWU0YmNiMDRkM2FlMzNmMjQxNzU2ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dl
YlZpZXcubW0KQEAgLTE0ODEsNyArMTQ4MSw3IEBAIHN0YXRpYyB2b2lkIFdlYktpdEluaXRpYWxp
emVHYW1lcGFkUHJvdmlkZXJJZk5lY2Vzc2FyeSgpCiAjaWYgRU5BQkxFKEdFT0xPQ0FUSU9OKQog
ICAgIFdlYkNvcmU6OnByb3ZpZGVHZW9sb2NhdGlvblRvKF9wcml2YXRlLT5wYWdlLCBuZXcgV2Vi
R2VvbG9jYXRpb25DbGllbnQoc2VsZikpOwogI2VuZGlmCi0jaWYgRU5BQkxFKE5PVElGSUNBVElP
TlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FU
SU9OUykKICAgICBXZWJDb3JlOjpwcm92aWRlTm90aWZpY2F0aW9uKF9wcml2YXRlLT5wYWdlLCBu
ZXcgV2ViTm90aWZpY2F0aW9uQ2xpZW50KHNlbGYpKTsKICNlbmRpZgogI2lmIEVOQUJMRShERVZJ
Q0VfT1JJRU5UQVRJT04pCkBAIC0xMDAzMyw3ICsxMDAzMyw3IEBAIHN0YXRpYyBOU1RleHRBbGln
bm1lbnQgbnNUZXh0QWxpZ25tZW50RnJvbVJlbmRlclN0eWxlKGNvbnN0IFJlbmRlclN0eWxlKiBz
dHlsZSkKIAogLSAodWludDY0X3QpX25vdGlmaWNhdGlvbklERm9yVGVzdGluZzooSlNWYWx1ZVJl
Zilqc05vdGlmaWNhdGlvbgogewotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJM
RShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgYXV0
byogcGFnZSA9IF9wcml2YXRlLT5wYWdlOwogICAgIGlmICghcGFnZSkKICAgICAgICAgcmV0dXJu
IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50LmNwcAppbmRleCA3ODJhMTM2N2RmMGNiMjI4YzIyYzdkNGQwM2FkZWRjZGY3MDE5MmQ5
Li5jZDAwMGI0YjRhNjk4YThmY2Q2ZjI4N2ZiMzJhOGQ5YmU4YTFlNmI1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKQEAg
LTcwLDcgKzcwLDcgQEAgc3RhdGljIGNvbnN0IHNpemVfdCBtYXhGaWxlUGF0aHNMaXN0U2l6ZSA9
IFVTSFJUX01BWDsKIAogV2ViQ2hyb21lQ2xpZW50OjpXZWJDaHJvbWVDbGllbnQoV2ViVmlldyog
d2ViVmlldykKICAgICA6IG1fd2ViVmlldyh3ZWJWaWV3KQotI2lmIEVOQUJMRShOT1RJRklDQVRJ
T05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNB
VElPTlMpCiAgICAgLCBtX25vdGlmaWNhdGlvbnNEZWxlZ2F0ZShzdGQ6Om1ha2VfdW5pcXVlPFdl
YkRlc2t0b3BOb3RpZmljYXRpb25zRGVsZWdhdGU+KHdlYlZpZXcpKQogI2VuZGlmCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQu
aCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCmlu
ZGV4IDgwOWI4YTc5YzM0ZTdiYWRhNWE1ZGNkMjVkYjkzMjYyMWVhNDlhYzEuLjRlY2U1MGE2Yzkz
ZmJjNTlhYmViY2NmOWM5NGIyZGZhZmU0MzJkODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
d2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
d2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCkBAIC0xNDQsNyArMTQ0LDcgQEAg
cHVibGljOgogICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJD
b3JlOjpIVE1MVmlkZW9FbGVtZW50JikgZmluYWw7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShOT1RJ
RklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05P
VElGSUNBVElPTlMpCiAgICAgV2ViQ29yZTo6Tm90aWZpY2F0aW9uQ2xpZW50KiBub3RpZmljYXRp
b25QcmVzZW50ZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiByZWludGVycHJldF9jYXN0PFdlYkNv
cmU6Ok5vdGlmaWNhdGlvbkNsaWVudCo+KG1fbm90aWZpY2F0aW9uc0RlbGVnYXRlLmdldCgpKTsg
fQogI2VuZGlmCiAKQEAgLTE3Niw3ICsxNzYsNyBAQCBwcml2YXRlOgogCiAgICAgV2ViVmlldyog
bV93ZWJWaWV3OwogCi0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElG
SUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBzdGQ6OnVuaXF1
ZV9wdHI8V2ViRGVza3RvcE5vdGlmaWNhdGlvbnNEZWxlZ2F0ZT4gbV9ub3RpZmljYXRpb25zRGVs
ZWdhdGU7CiAjZW5kaWYKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3Jl
U3VwcG9ydC9XZWJEZXNrdG9wTm90aWZpY2F0aW9uc0RlbGVnYXRlLmNwcCBiL1NvdXJjZS9XZWJL
aXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkRlc2t0b3BOb3RpZmljYXRpb25zRGVsZWdhdGUuY3Bw
CmluZGV4IDY0MzUwNzY3ZjkzNDAyNmQwOWMwZmE4Yjg4ZGNjZGQzODk0MmVkMDcuLjE0YTcwNTlk
NTkwNTk2ZDY4MmQ5Y2Q0ODZlMmYzNTYwMGRkYzkzZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkRlc2t0b3BOb3RpZmljYXRpb25zRGVsZWdhdGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkRlc2t0b3BOb3RpZmlj
YXRpb25zRGVsZWdhdGUuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9E
b2N1bWVudC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVVJMLmg+CiAKLSNpZiBFTkFCTEUoTk9USUZJ
Q0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJ
RklDQVRJT05TKQogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIApAQCAtMjIzLDQgKzIyMyw0
IEBAIENPTVB0cjxJV2ViRGVza3RvcE5vdGlmaWNhdGlvbnNEZWxlZ2F0ZT4gV2ViRGVza3RvcE5v
dGlmaWNhdGlvbnNEZWxlZ2F0ZTo6bm90aWZpCiAgICAgcmV0dXJuIGRlbGVnYXRlOwogfQogCi0j
ZW5kaWYgLy8gRU5BQkxFKE5PVElGSUNBVElPTlMpCisjZW5kaWYgLy8gRU5BQkxFKE5PVElGSUNB
VElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkRlc2t0b3BOb3RpZmljYXRpb25zRGVsZWdh
dGUuaCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkRlc2t0b3BOb3RpZmlj
YXRpb25zRGVsZWdhdGUuaAppbmRleCBmMGYxZDkyZjJkYjI1Yjc0NDI4Nzc1MjQ2MmFmYmE0YmMx
ZDFjN2YxLi4yODc4YTk4MjJlOTNlYzdlNjQxZTQ1MjRkZDA0Y2QxY2E1MGUyYWE3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJEZXNrdG9wTm90aWZpY2F0
aW9uc0RlbGVnYXRlLmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2Vi
RGVza3RvcE5vdGlmaWNhdGlvbnNEZWxlZ2F0ZS5oCkBAIC0zMiw3ICszMiw3IEBACiAjaW5jbHVk
ZSA8V2ViQ29yZS9Ob3RpZmljYXRpb24uaD4KICNpbmNsdWRlIDxXZWJDb3JlL05vdGlmaWNhdGlv
bkNsaWVudC5oPgogCi0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElG
SUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKIAogaW50ZXJmYWNlIElX
ZWJEZXNrdG9wTm90aWZpY2F0aW9uUHJlc2VudGVyOwogCkBAIC01MCw3ICs1MCwxMiBAQCBwdWJs
aWM6CiAgICAgdmlydHVhbCB2b2lkIGNhbmNlbChXZWJDb3JlOjpOb3RpZmljYXRpb24qIG9iamVj
dCk7CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmaWNhdGlvbk9iamVjdERlc3Ryb3llZChXZWJDb3Jl
OjpOb3RpZmljYXRpb24qIG9iamVjdCk7CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmaWNhdGlvbkNv
bnRyb2xsZXJEZXN0cm95ZWQoKTsKKyNpZiBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCisg
ICAgdmlydHVhbCB2b2lkIHJlcXVlc3RQZXJtaXNzaW9uKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2lu
KiwgUmVmUHRyPFdlYkNvcmU6OlZvaWRDYWxsYmFjaz4mJik7CisjZW5kaWYKKyNpZiBFTkFCTEUo
Tk9USUZJQ0FUSU9OUykKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFBlcm1pc3Npb24oV2ViQ29y
ZTo6U2VjdXJpdHlPcmlnaW4qLCBSZWZQdHI8V2ViQ29yZTo6Tm90aWZpY2F0aW9uUGVybWlzc2lv
bkNhbGxiYWNrPiYmKTsKKyNlbmRpZgogICAgIGJvb2wgaGFzUGVuZGluZ1Blcm1pc3Npb25SZXF1
ZXN0cyhXZWJDb3JlOjpTY3JpcHRFeGVjdXRpb25Db250ZXh0KikgY29uc3Qgb3ZlcnJpZGU7CiAg
ICAgdmlydHVhbCB2b2lkIGNhbmNlbFJlcXVlc3RzRm9yUGVybWlzc2lvbihXZWJDb3JlOjpTY3Jp
cHRFeGVjdXRpb25Db250ZXh0Kik7CiAgICAgdmlydHVhbCBXZWJDb3JlOjpOb3RpZmljYXRpb25D
bGllbnQ6OlBlcm1pc3Npb24gY2hlY2tQZXJtaXNzaW9uKGNvbnN0IFVSTCYpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcg
Yi9Tb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpp
bmRleCA0YWJhMDJkMTBiZGQ0YTkwNTc4YWVjYTk4MjA2YTI2NjM0MDUzYTNhLi4wYmE1ZTE4MWY3
YjBlMWFmYWNmNDQyMTFhNGQwMTMyMGFhNDk2ZmI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtMTM5LDYgKzEz
OSw3IEBAIEVOQUJMRV9LRVlCT0FSRF9LRVlfQVRUUklCVVRFID0gRU5BQkxFX0tFWUJPQVJEX0tF
WV9BVFRSSUJVVEU7CiBFTkFCTEVfS0VZQk9BUkRfQ09ERV9BVFRSSUJVVEUgPSBFTkFCTEVfS0VZ
Qk9BUkRfQ09ERV9BVFRSSUJVVEU7CiBFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVMg
PSBFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVM7CiBFTkFCTEVfTEVHQUNZX0VOQ1JZ
UFRFRF9NRURJQVtzZGs9bWFjb3N4Kl0gPSBFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQTsK
K0VOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OU1tzZGs9bWFjb3N4Kl0gPSBFTkFCTEVfTEVHQUNZ
X05PVElGSUNBVElPTlM7CiBFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUyA9IEVOQUJMRV9M
RUdBQ1lfVkVORE9SX1BSRUZJWEVTOwogRU5BQkxFX0xFVFRFUlBSRVNTW3Nkaz1pcGhvbmUqXSA9
IEVOQUJMRV9MRVRURVJQUkVTUzsKIEVOQUJMRV9MSU5LX1BSRUZFVENIID0gOwpAQCAtMjU0LDQg
KzI1NSw0IEBAIEVOQUJMRV9WQVJJQVRJT05fRk9OVFNfSUZfTk9UXyA9ICQoRU5BQkxFX1ZBUklB
VElPTl9GT05UU19JRl9OT1RfTk8pOwogRU5BQkxFX1ZBUklBVElPTl9GT05UU19JRl9OT1RfTk8g
PSBFTkFCTEVfVkFSSUFUSU9OX0ZPTlRTOwogRU5BQkxFX1ZBUklBVElPTl9GT05UU19JRl9OT1Rf
WUVTID0gOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9UUkFOU0ZPUk1TKSAkKEVO
QUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FDQ0VMRVJBVEVEX09WRVJGTE9X
X1NDUk9MTElORykgJChFTkFCTEVfQVBQTEVfUEFZKSAkKEVOQUJMRV9BUFBMRV9QQVlfREVMRUdB
VEUpICQoRU5BQkxFX0FUVEFDSE1FTlRfRUxFTUVOVCkgJChFTkFCTEVfQVZGX0NBUFRJT05TKSAk
KEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRIKSAkKEVOQUJM
RV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DT05U
RU5UX0ZJTFRFUklORykgJChFTkFCTEVfQ1NTX0FOSU1BVElPTlNfTEVWRUxfMikgJChFTkFCTEVf
Q1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5B
QkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9O
KSAkKEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQo
RU5BQkxFX0NTU19TQ1JPTExfU05BUCkgJChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpICQo
RU5BQkxFX0NTU19UUkFJTElOR19XT1JEKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxFX0NV
UlNPUl9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxF
X0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJM
RV9EQVRBQ1VFX1ZBTFVFKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9ERVZJ
Q0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRkFTVF9K
SVRfUEVSTUlTU0lPTlMpICQoRU5BQkxFX0ZFVENIX0FQSSkgJChFTkFCTEVfRklMVEVSU19MRVZF
TF8yKSAkKEVOQUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJM
RV9GVUxMU0NSRUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRF9ERVBSRUNBVEVEKSAkKEVOQUJMRV9H
QU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpICQoRU5BQkxFX0lOREVYRURfREFUQUJB
U0UpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQ
RV9DT0xPUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RB
VEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkgJChF
TkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVOQUJM
RV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lOVEVSU0VDVElPTl9PQlNFUlZFUikgJChFTkFC
TEVfSU5UTCkgJChFTkFCTEVfSU9TX0dFU1RVUkVfRVZFTlRTKSAkKEVOQUJMRV9JT1NfVE9VQ0hf
RVZFTlRTKSAkKEVOQUJMRV9KSVQpICQoRU5BQkxFX0tFWUJPQVJEX0tFWV9BVFRSSUJVVEUpICQo
RU5BQkxFX0tFWUJPQVJEX0NPREVfQVRUUklCVVRFKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRP
Ul9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfTEVH
QUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktf
UFJFRkVUQ0gpICQoRU5BQkxFX01BQ19HRVNUVVJFX0VWRU5UUykgJChFTkFCTEVfTUFUSE1MKSAk
KEVOQUJMRV9NRURJQV9DQVBUVVJFKSAkKEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQo
RU5BQkxFX01FRElBX1NFU1NJT04pICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFCTEVfTUVE
SUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVESUFfU1RSRUFNKSAkKEVOQUJMRV9NRVRFUl9FTEVN
RU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJM
RV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTkFWSUdBVE9SX0hXQ09OQ1VSUkVO
Q1kpICQoRU5BQkxFX05PU05JRkYpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BE
RktJVF9QTFVHSU4pICQoRU5BQkxFX1BPSU5URVJfTE9DSykgJChFTkFCTEVfUFJPWElNSVRZX0VW
RU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChFTkFC
TEVfUkVNT1RFX0lOU1BFQ1RPUikgJChFTkFCTEVfUkVRVUVTVF9BVVRPQ09NUExFVEUpICQoRU5B
QkxFX1JFU09MVVRJT05fTUVESUFfUVVFUlkpICQoRU5BQkxFX1JFU09VUkNFX1VTQUdFKSAkKEVO
QUJMRV9SVUJCRVJfQkFORElORykgJChFTkFCTEVfU0VSVklDRV9DT05UUk9MUykgJChFTkFCTEVf
U1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1RSRUFNU19BUEkpICQoRU5BQkxFX1NVQlRMRV9D
UllQVE8pICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVMRVBIT05FX05VTUJFUl9ERVRF
Q1RJT04pICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAk
KEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVO
QUJMRV9WQVJJQVRJT05fRk9OVFMpICQoRU5BQkxFX1ZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSAk
KEVOQUJMRV9NQUNfVklERU9fVE9PTEJPWCkgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxF
X1ZJREVPKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJMRV9XRUJfQU5JTUFU
SU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9X
RUJfUlRDKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFC
TEVfV0VCQVNTRU1CTFkpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJHTDIpICQoRU5BQkxF
X1dFQkdQVSkgJChFTkFCTEVfV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAkKEVOQUJMRV9YU0xU
KTsKK0ZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX1RSQU5TRk9STVMpICQoRU5BQkxFX0FD
Q0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xM
SU5HKSAkKEVOQUJMRV9BUFBMRV9QQVkpICQoRU5BQkxFX0FQUExFX1BBWV9ERUxFR0FURSkgJChF
TkFCTEVfQVRUQUNITUVOVF9FTEVNRU5UKSAkKEVOQUJMRV9BVkZfQ0FQVElPTlMpICQoRU5BQkxF
X0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZB
U19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NPTlRFTlRfRklM
VEVSSU5HKSAkKEVOQUJMRV9DU1NfQU5JTUFUSU9OU19MRVZFTF8yKSAkKEVOQUJMRV9DU1NfQk9Y
X0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19DT01QT1NJVElORykgJChFTkFCTEVfQ1NT
X0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5B
QkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVf
Q1NTX1NDUk9MTF9TTkFQKSAkKEVOQUJMRV9DU1NfU0VMRUNUT1JTX0xFVkVMNCkgJChFTkFCTEVf
Q1NTX1RSQUlMSU5HX1dPUkQpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1VSU09SX1ZJ
U0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJP
QVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RBVEFD
VUVfVkFMVUUpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklF
TlRBVElPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9GQVNUX0pJVF9QRVJN
SVNTSU9OUykgJChFTkFCTEVfRkVUQ0hfQVBJKSAkKEVOQUJMRV9GSUxURVJTX0xFVkVMXzIpICQo
RU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0ZVTExT
Q1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEX0RFUFJFQ0FURUQpICQoRU5BQkxFX0dBTUVQQUQp
ICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lO
REVYRURfREFUQUJBU0VfSU5fV09SS0VSUykgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChF
TkFCTEVfSU5QVVRfVFlQRV9DT0xPUl9QT1BPVkVSKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9S
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVf
SU5DT01QTEVURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5BQkxFX0lOUFVU
X1RZUEVfV0VFSykgJChFTkFCTEVfSU5URVJTRUNUSU9OX09CU0VSVkVSKSAkKEVOQUJMRV9JTlRM
KSAkKEVOQUJMRV9JT1NfR0VTVFVSRV9FVkVOVFMpICQoRU5BQkxFX0lPU19UT1VDSF9FVkVOVFMp
ICQoRU5BQkxFX0pJVCkgJChFTkFCTEVfS0VZQk9BUkRfS0VZX0FUVFJJQlVURSkgJChFTkFCTEVf
S0VZQk9BUkRfQ09ERV9BVFRSSUJVVEUpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJ
WEVTKSAkKEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9MRUdBQ1lfTk9U
SUZJQ0FUSU9OUykgJChFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVU
VEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BQ19HRVNUVVJFX0VW
RU5UUykgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9DQVBUVVJFKSAkKEVOQUJMRV9N
RURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01FRElBX1NFU1NJT04pICQoRU5BQkxFX01F
RElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVESUFfU1RS
RUFNKSAkKEVOQUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9V
U0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFC
TEVfTkFWSUdBVE9SX0hXQ09OQ1VSUkVOQ1kpICQoRU5BQkxFX05PU05JRkYpICQoRU5BQkxFX05P
VElGSUNBVElPTlMpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BPSU5URVJfTE9D
SykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNU
KSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVNT1RFX0lOU1BFQ1RPUikgJChFTkFCTEVfUkVR
VUVTVF9BVVRPQ09NUExFVEUpICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFfUVVFUlkpICQoRU5B
QkxFX1JFU09VUkNFX1VTQUdFKSAkKEVOQUJMRV9SVUJCRVJfQkFORElORykgJChFTkFCTEVfU0VS
VklDRV9DT05UUk9MUykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1RSRUFN
U19BUEkpICQoRU5BQkxFX1NVQlRMRV9DUllQVE8pICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFC
TEVfVEVMRVBIT05FX05VTUJFUl9ERVRFQ1RJT04pICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykg
JChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5B
QkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WQVJJQVRJT05fRk9OVFMpICQoRU5BQkxFX1ZJ
REVPX1BSRVNFTlRBVElPTl9NT0RFKSAkKEVOQUJMRV9NQUNfVklERU9fVE9PTEJPWCkgJChFTkFC
TEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01F
RElBKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJM
RV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfUlRDKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChF
TkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV0VCQVNTRU1CTFkpICQoRU5BQkxFX1dFQkdMKSAk
KEVOQUJMRV9XRUJHTDIpICQoRU5BQkxFX1dFQkdQVSkgJChFTkFCTEVfV0lSRUxFU1NfUExBWUJB
Q0tfVEFSR0VUKSAkKEVOQUJMRV9YU0xUKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAppbmRleCAyYmRmZjA4OWYwZDhl
YWUwNTFkZmJmN2Q2ODkwZGRhYWQ5OTUyYzZhLi4wZGVmY2E1YmExNzU2MDAyOTlmOGQ1ZWI1ZTEx
MzUxOGUwNzAyZTczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJvY2Vz
c0NyZWF0aW9uUGFyYW1ldGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBy
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCkBAIC0xMTEsNyArMTExLDcgQEAgdm9pZCBXZWJQ
cm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUoSVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBj
b25zdAogICAgICAgICBlbmNvZGVyIDw8IGJ1bmRsZVBhcmFtZXRlckRhdGEtPmRhdGFSZWZlcmVu
Y2UoKTsKICNlbmRpZgogCi0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5P
VElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBlbmNvZGVy
IDw8IG5vdGlmaWNhdGlvblBlcm1pc3Npb25zOwogI2VuZGlmCiAKQEAgLTI3OCw3ICsyNzgsNyBA
QCBib29sIFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZShJUEM6OkRlY29kZXIm
IGRlY29kZXIsIFdlYlByb2Nlc3NDcmVhdAogICAgIH0KICNlbmRpZgogCi0jaWYgRU5BQkxFKE5P
VElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lf
Tk9USUZJQ0FUSU9OUykKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHBhcmFtZXRlcnMubm90aWZp
Y2F0aW9uUGVybWlzc2lvbnMpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
LmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5o
CmluZGV4IDFmZDA2ZDMzY2EzZTU1MmNhZjdlZTE4NDFkYmFiNzIwODZiZjEwNTAuLmE5NGI0MDM5
ZDhhZTI2OTA2NDJjMWI2NDFjZGY3NDgxYTI3NjY2MGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dl
YktpdDIvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaApAQCAtMTUwLDcgKzE1
MCw3IEBAIHN0cnVjdCBXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzIHsKICAgICBSZWZQdHI8
QVBJOjpEYXRhPiBidW5kbGVQYXJhbWV0ZXJEYXRhOwogI2VuZGlmIC8vIFBMQVRGT1JNKENPQ09B
KQogCi0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMp
IHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBIYXNoTWFwPFN0cmluZywgYm9v
bD4gbm90aWZpY2F0aW9uUGVybWlzc2lvbnM7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKaW5kZXggOGFlOWM5YTEzZTQ5MGNlZWFlMjBhZThh
ZWJjYmRjOTQwOTQ1ZDk1Yi4uODUwZTY1ZGZjNWE0YTkxOTExY2ZiNmNmZjcwZTZjNjlhMzA4ZWU0
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCkBAIC03
MDksNyArNzA5LDcgQEAgV2ViUHJvY2Vzc1Byb3h5JiBXZWJQcm9jZXNzUG9vbDo6Y3JlYXRlTmV3
V2ViUHJvY2VzcyhXZWJzaXRlRGF0YVN0b3JlJiB3ZWJzaXRlRGEKIAogICAgIHBhcmFtZXRlcnMu
ZGVmYXVsdFJlcXVlc3RUaW1lb3V0SW50ZXJ2YWwgPSBBUEk6OlVSTFJlcXVlc3Q6OmRlZmF1bHRU
aW1lb3V0SW50ZXJ2YWwoKTsKIAotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJM
RShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgLy8g
RklYTUU6IFRoZXJlIHNob3VsZCBiZSBhIGdlbmVyaWMgd2F5IGZvciBzdXBwbGVtZW50cyB0byBh
ZGQgdG8gdGhlIGludGlhbGl6YXRpb24gcGFyYW1ldGVycy4KICAgICBzdXBwbGVtZW50PFdlYk5v
dGlmaWNhdGlvbk1hbmFnZXJQcm94eT4oKS0+cG9wdWxhdGVDb3B5T2ZOb3RpZmljYXRpb25QZXJt
aXNzaW9ucyhwYXJhbWV0ZXJzLm5vdGlmaWNhdGlvblBlcm1pc3Npb25zKTsKICNlbmRpZgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3Rl
ZEJ1bmRsZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0lu
amVjdGVkQnVuZGxlLmNwcAppbmRleCA5MmI2ZmRiMWZhNjk5MzllZjllZTU3YjM5MmY1ZTNlNjc4
MDAwM2Y2Li5jNDRhODA4MmM0Mjk1YmI3ODdmYTg1MThmN2UzYTVlYzJlNWRmMWU3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVu
ZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0lu
amVjdGVkQnVuZGxlLmNwcApAQCAtNzksNyArNzksOCBAQAogI2luY2x1ZGUgPFdlYkNvcmUvVXNl
clNjcmlwdC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVXNlclN0eWxlU2hlZXQuaD4KIAotI2lmIEVO
QUJMRShOT1RJRklDQVRJT05TKQorCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJM
RShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICNpbmNsdWRlICJXZWJOb3RpZmljYXRpb25NYW5hZ2Vy
LmgiCiAjZW5kaWYKIApAQCAtNTM5LDcgKzU0MCw3IEBAIHZvaWQgSW5qZWN0ZWRCdW5kbGU6OnNl
dFVzZXJTdHlsZVNoZWV0TG9jYXRpb24oV2ViUGFnZUdyb3VwUHJveHkqIHBhZ2VHcm91cCwgY29u
CiAKIHZvaWQgSW5qZWN0ZWRCdW5kbGU6OnNldFdlYk5vdGlmaWNhdGlvblBlcm1pc3Npb24oV2Vi
UGFnZSogcGFnZSwgY29uc3QgU3RyaW5nJiBvcmlnaW5TdHJpbmcsIGJvb2wgYWxsb3dlZCkKIHsK
LSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwg
RU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogICAgIHBhZ2UtPm5vdGlmaWNhdGlvblBlcm1p
c3Npb25SZXF1ZXN0TWFuYWdlcigpLT5zZXRQZXJtaXNzaW9uTGV2ZWxGb3JUZXN0aW5nKG9yaWdp
blN0cmluZywgYWxsb3dlZCk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShwYWdlKTsKQEAgLTU1
MCw3ICs1NTEsNyBAQCB2b2lkIEluamVjdGVkQnVuZGxlOjpzZXRXZWJOb3RpZmljYXRpb25QZXJt
aXNzaW9uKFdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFN0cmluZyYgbwogCiB2b2lkIEluamVjdGVkQnVu
ZGxlOjpyZW1vdmVBbGxXZWJOb3RpZmljYXRpb25QZXJtaXNzaW9ucyhXZWJQYWdlKiBwYWdlKQog
ewotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8
fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgcGFnZS0+bm90aWZpY2F0aW9uUGVy
bWlzc2lvblJlcXVlc3RNYW5hZ2VyKCktPnJlbW92ZUFsbFBlcm1pc3Npb25zRm9yVGVzdGluZygp
OwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0ocGFnZSk7CkBAIC01NTksNyArNTYwLDcgQEAgdm9p
ZCBJbmplY3RlZEJ1bmRsZTo6cmVtb3ZlQWxsV2ViTm90aWZpY2F0aW9uUGVybWlzc2lvbnMoV2Vi
UGFnZSogcGFnZSkKIAogdWludDY0X3QgSW5qZWN0ZWRCdW5kbGU6OndlYk5vdGlmaWNhdGlvbklE
KEpTQ29udGV4dFJlZiBqc0NvbnRleHQsIEpTVmFsdWVSZWYganNOb3RpZmljYXRpb24pCiB7Ci0j
aWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVO
QUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBXZWJDb3JlOjpOb3RpZmljYXRpb24qIG5v
dGlmaWNhdGlvbiA9IEpTTm90aWZpY2F0aW9uOjp0b1dyYXBwZWQodG9KUyhqc0NvbnRleHQpLT52
bSgpLCB0b0pTKHRvSlMoanNDb250ZXh0KSwganNOb3RpZmljYXRpb24pKTsKICAgICBpZiAoIW5v
dGlmaWNhdGlvbikKICAgICAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL05vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uUGVybWlzc2lvblJlcXVlc3RN
YW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTm90aWZpY2F0aW9ucy9Ob3Rp
ZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIuY3BwCmluZGV4IGIxZjg5MTMwN2Y4Njc1
OGQ5MjkxZTE2MDhiYWEzNzliYzI4MzlkZWUuLjgxZmYxYjFiNzVlMGZmMmZiMDRiNzRmMGYwNzVk
NjQ3MWRhMzM4MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTm90aWZp
Y2F0aW9ucy9Ob3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25QZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXIuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAjaW5jbHVkZSA8V2ViQ29y
ZS9TZWN1cml0eU9yaWdpbi5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2V0dGluZ3MuaD4KIAotI2lm
IEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFC
TEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAjaW5jbHVkZSAiV2ViTm90aWZpY2F0aW9uTWFuYWdl
ci5oIgogI2VuZGlmCiAKQEAgLTQ0LDcgKzQ0LDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7
CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYg
RU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKIHN0
YXRpYyB1aW50NjRfdCBnZW5lcmF0ZVJlcXVlc3RJRCgpCiB7CiAgICAgc3RhdGljIHVpbnQ2NF90
IHVuaXF1ZVJlcXVlc3RJRCA9IDE7CkBAIC01Nyw3ICs1Nyw3IEBAIFJlZjxOb3RpZmljYXRpb25Q
ZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI+IE5vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlcjo6CiAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgTm90aWZpY2F0aW9uUGVybWlzc2lvblJl
cXVlc3RNYW5hZ2VyKHBhZ2UpKTsKIH0KIAotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lm
IEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiBO
b3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6Ok5vdGlmaWNhdGlvblBlcm1pc3Np
b25SZXF1ZXN0TWFuYWdlcihXZWJQYWdlKiBwYWdlKQogICAgIDogbV9wYWdlKHBhZ2UpCiB7CkBA
IC04NiwxNSArODYsMzggQEAgdm9pZCBOb3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFn
ZXI6OnN0YXJ0UmVxdWVzdChTZWN1cml0eU9yaWdpbiogb3JpZ2luLAogfQogI2VuZGlmCiAKKyNp
ZiBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCit2b2lkIE5vdGlmaWNhdGlvblBlcm1pc3Np
b25SZXF1ZXN0TWFuYWdlcjo6c3RhcnRSZXF1ZXN0KFNlY3VyaXR5T3JpZ2luKiBvcmlnaW4sIFJl
ZlB0cjxXZWJDb3JlOjpWb2lkQ2FsbGJhY2s+JiYgY2FsbGJhY2spCit7CisgICAgTm90aWZpY2F0
aW9uQ2xpZW50OjpQZXJtaXNzaW9uIHBlcm1pc3Npb24gPSBwZXJtaXNzaW9uTGV2ZWwob3JpZ2lu
KTsKKyAgICBpZiAocGVybWlzc2lvbiAhPSBOb3RpZmljYXRpb25DbGllbnQ6OlBlcm1pc3Npb25O
b3RBbGxvd2VkKSB7CisgICAgICAgIGlmIChjYWxsYmFjaykKKyAgICAgICAgICAgIGNhbGxiYWNr
LT5oYW5kbGVFdmVudCgpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIAorICAgIHVpbnQ2
NF90IHJlcXVlc3RJRCA9IGdlbmVyYXRlUmVxdWVzdElEKCk7CisgICAgbV9vcmlnaW5Ub0lETWFw
LnNldChvcmlnaW4sIHJlcXVlc3RJRCk7CisgICAgbV9pZFRvT3JpZ2luTWFwLnNldChyZXF1ZXN0
SUQsIG9yaWdpbik7CisgICAgbV9pZFRvVm9pZENhbGxiYWNrTWFwLnNldChyZXF1ZXN0SUQsIFdU
Rk1vdmUoY2FsbGJhY2spKTsKKyAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6UmVxdWVzdE5vdGlmaWNhdGlvblBlcm1pc3Npb24ocmVxdWVzdElELCBvcmlnaW4tPnRvU3Ry
aW5nKCkpKTsKK30KKyNlbmRpZgorCiB2b2lkIE5vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0
TWFuYWdlcjo6Y2FuY2VsUmVxdWVzdChTZWN1cml0eU9yaWdpbiogb3JpZ2luKQogewotI2lmIEVO
QUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUo
TEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgdWludDY0X3QgaWQgPSBtX29yaWdpblRvSURNYXAu
dGFrZShvcmlnaW4pOwogICAgIGlmICghaWQpCiAgICAgICAgIHJldHVybjsKICAgICAKICAgICBt
X2lkVG9PcmlnaW5NYXAucmVtb3ZlKGlkKTsKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKICAg
ICBtX2lkVG9DYWxsYmFja01hcC5yZW1vdmUoaWQpOworI2VuZGlmCisjaWYgRU5BQkxFKExFR0FD
WV9OT1RJRklDQVRJT05TKQorICAgIG1faWRUb1ZvaWRDYWxsYmFja01hcC5yZW1vdmUoaWQpOwor
I2VuZGlmCiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShvcmlnaW4pOwogI2VuZGlmCkBAIC0xMDIs
NyArMTI1LDcgQEAgdm9pZCBOb3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6OmNh
bmNlbFJlcXVlc3QoU2VjdXJpdHlPcmlnaW4qIG9yaWdpbikKIAogYm9vbCBOb3RpZmljYXRpb25Q
ZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6Omhhc1BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHMoU2Vj
dXJpdHlPcmlnaW4qIG9yaWdpbikgY29uc3QKIHsKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykK
KyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05T
KQogICAgIHJldHVybiBtX29yaWdpblRvSURNYXAuY29udGFpbnMob3JpZ2luKTsKICNlbHNlCiAg
ICAgVU5VU0VEX1BBUkFNKG9yaWdpbik7CkBAIC0xMTIsNyArMTM1LDcgQEAgYm9vbCBOb3RpZmlj
YXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6Omhhc1BlbmRpbmdQZXJtaXNzaW9uUmVxdWVz
dHMoU2VjdXJpdHkKIAogTm90aWZpY2F0aW9uQ2xpZW50OjpQZXJtaXNzaW9uIE5vdGlmaWNhdGlv
blBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6cGVybWlzc2lvbkxldmVsKFNlY3VyaXR5T3JpZ2lu
KiBzZWN1cml0eU9yaWdpbikKIHsKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFC
TEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogICAgIGlm
ICghbV9wYWdlLT5jb3JlUGFnZSgpLT5zZXR0aW5ncygpLm5vdGlmaWNhdGlvbnNFbmFibGVkKCkp
CiAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25DbGllbnQ6OlBlcm1pc3Npb25EZW5pZWQ7CiAg
ICAgCkBAIC0xMjUsNyArMTQ4LDcgQEAgTm90aWZpY2F0aW9uQ2xpZW50OjpQZXJtaXNzaW9uIE5v
dGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6cGVybWlzc2lvbkwKIAogdm9pZCBO
b3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6OnNldFBlcm1pc3Npb25MZXZlbEZv
clRlc3RpbmcoY29uc3QgU3RyaW5nJiBvcmlnaW5TdHJpbmcsIGJvb2wgYWxsb3dlZCkKIHsKLSNp
ZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5B
QkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnN1
cHBsZW1lbnQ8V2ViTm90aWZpY2F0aW9uTWFuYWdlcj4oKS0+ZGlkVXBkYXRlTm90aWZpY2F0aW9u
RGVjaXNpb24ob3JpZ2luU3RyaW5nLCBhbGxvd2VkKTsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFN
KG9yaWdpblN0cmluZyk7CkBAIC0xMzUsMTQgKzE1OCwxNCBAQCB2b2lkIE5vdGlmaWNhdGlvblBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6c2V0UGVybWlzc2lvbkxldmVsRm9yVGVzdGluZyhjb25z
dCBTdAogCiB2b2lkIE5vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6cmVtb3Zl
QWxsUGVybWlzc2lvbnNGb3JUZXN0aW5nKCkKIHsKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykK
KyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05T
KQogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnN1cHBsZW1lbnQ8V2ViTm90aWZpY2F0aW9u
TWFuYWdlcj4oKS0+cmVtb3ZlQWxsUGVybWlzc2lvbnNGb3JUZXN0aW5nKCk7CiAjZW5kaWYKIH0K
IAogdm9pZCBOb3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6OmRpZFJlY2VpdmVO
b3RpZmljYXRpb25QZXJtaXNzaW9uRGVjaXNpb24odWludDY0X3QgcmVxdWVzdElELCBib29sIGFs
bG93ZWQpCiB7Ci0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNB
VElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBpZiAoIWlzUmVxdWVz
dElEVmFsaWQocmVxdWVzdElEKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xNTQsMTEgKzE3Nywy
MiBAQCB2b2lkIE5vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6ZGlkUmVjZWl2
ZU5vdGlmaWNhdGlvblBlcm1pc3Npb25EZWNpcwogCiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9u
KCkuc3VwcGxlbWVudDxXZWJOb3RpZmljYXRpb25NYW5hZ2VyPigpLT5kaWRVcGRhdGVOb3RpZmlj
YXRpb25EZWNpc2lvbihvcmlnaW4tPnRvU3RyaW5nKCksIGFsbG93ZWQpOwogCisjaWYgRU5BQkxF
KExFR0FDWV9OT1RJRklDQVRJT05TKQorICAgIFJlZlB0cjxXZWJDb3JlOjpWb2lkQ2FsbGJhY2s+
IHZvaWRDYWxsYmFjayA9IG1faWRUb1ZvaWRDYWxsYmFja01hcC50YWtlKHJlcXVlc3RJRCk7Cisg
ICAgaWYgKHZvaWRDYWxsYmFjaykgeworICAgICAgICB2b2lkQ2FsbGJhY2stPmhhbmRsZUV2ZW50
KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisjZW5kaWYKKworI2lmIEVOQUJMRShOT1RJRklD
QVRJT05TKQogICAgIFJlZlB0cjxOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2s+IGNhbGxi
YWNrID0gbV9pZFRvQ2FsbGJhY2tNYXAudGFrZShyZXF1ZXN0SUQpOwogICAgIGlmICghY2FsbGJh
Y2spCiAgICAgICAgIHJldHVybjsKICAgICAKICAgICBjYWxsYmFjay0+aGFuZGxlRXZlbnQoTm90
aWZpY2F0aW9uOjpwZXJtaXNzaW9uU3RyaW5nKGFsbG93ZWQgPyBOb3RpZmljYXRpb25DbGllbnQ6
OlBlcm1pc3Npb25BbGxvd2VkIDogTm90aWZpY2F0aW9uQ2xpZW50OjpQZXJtaXNzaW9uRGVuaWVk
KSk7CisjZW5kaWYKKwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0ocmVxdWVzdElEKTsKICAgICBV
TlVTRURfUEFSQU0oYWxsb3dlZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL05vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmgg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uUGVy
bWlzc2lvblJlcXVlc3RNYW5hZ2VyLmgKaW5kZXggYjQ4NmIyNDYzNjc2MWVkODA0OTY2YTllMThm
NThjYmZkNTYyOGNmNS4uODZlNGNmYzI2NGMyMTczN2FjMGFjN2RlYWQ4YTk2NjBhNDU2ZmMyNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Ob3RpZmljYXRpb25zL05vdGlm
aWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvTm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFn
ZXIuaApAQCAtNTIsNiArNTIsOSBAQCBwdWJsaWM6CiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMp
CiAgICAgdm9pZCBzdGFydFJlcXVlc3QoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBSZWZQdHI8
V2ViQ29yZTo6Tm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrPiYmKTsKICNlbmRpZgorI2lm
IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKKyAgICB2b2lkIHN0YXJ0UmVxdWVzdChXZWJD
b3JlOjpTZWN1cml0eU9yaWdpbiosIFJlZlB0cjxXZWJDb3JlOjpWb2lkQ2FsbGJhY2s+JiYpOwor
I2VuZGlmCiAgICAgdm9pZCBjYW5jZWxSZXF1ZXN0KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKik7
CiAgICAgYm9vbCBoYXNQZW5kaW5nUGVybWlzc2lvblJlcXVlc3RzKFdlYkNvcmU6OlNlY3VyaXR5
T3JpZ2luKikgY29uc3Q7CiAgICAgCkBAIC02OSwxMCArNzIsMTMgQEAgcHJpdmF0ZToKICNpZiBF
TkFCTEUoTk9USUZJQ0FUSU9OUykKICAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWZQdHI8V2ViQ29y
ZTo6Tm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrPj4gbV9pZFRvQ2FsbGJhY2tNYXA7CiAj
ZW5kaWYKKyNpZiBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCisgICAgSGFzaE1hcDx1aW50
NjRfdCwgUmVmUHRyPFdlYkNvcmU6OlZvaWRDYWxsYmFjaz4+IG1faWRUb1ZvaWRDYWxsYmFja01h
cDsKKyNlbmRpZgogICAgIEhhc2hNYXA8UmVmUHRyPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiwg
dWludDY0X3Q+IG1fb3JpZ2luVG9JRE1hcDsKICAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWZQdHI8
V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4+PiBtX2lkVG9PcmlnaW5NYXA7CiAKLSNpZiBFTkFCTEUo
Tk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FD
WV9OT1RJRklDQVRJT05TKQogICAgIFdlYlBhZ2UqIG1fcGFnZTsKICNlbmRpZgogfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTm90aWZpY2F0aW9ucy9XZWJOb3RpZmlj
YXRpb25NYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTm90aWZpY2F0aW9u
cy9XZWJOb3RpZmljYXRpb25NYW5hZ2VyLmNwcAppbmRleCAyMTk5ZWNmZDhhODAxMjIzNmE5Njhi
ZGM5YjgzOTEwN2U4NzIyYzdjLi43NGUzNWY2YjM3YzBiOTVmMmFmNjY5MzA2YjNkYTk2OGY4Yjhi
MDQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05vdGlmaWNhdGlvbnMv
V2ViTm90aWZpY2F0aW9uTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9Ob3RpZmljYXRpb25zL1dlYk5vdGlmaWNhdGlvbk1hbmFnZXIuY3BwCkBAIC0zMCw3ICszMCw3
IEBACiAjaW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3NDcmVhdGlv
blBhcmFtZXRlcnMuaCIKIAotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShO
T1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAjaW5jbHVkZSAi
V2ViTm90aWZpY2F0aW9uLmgiCiAjaW5jbHVkZSAiV2ViTm90aWZpY2F0aW9uTWFuYWdlck1lc3Nh
Z2VzLmgiCiAjaW5jbHVkZSAiV2ViUGFnZVByb3h5TWVzc2FnZXMuaCIKQEAgLTQ3LDcgKzQ3LDcg
QEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi0jaWYg
RU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJM
RShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKIHN0YXRpYyB1aW50NjRfdCBnZW5lcmF0ZU5vdGlmaWNh
dGlvbklEKCkKIHsKICAgICBzdGF0aWMgdWludDY0X3QgdW5pcXVlTm90aWZpY2F0aW9uSUQgPSAx
OwpAQCAtNjMsNyArNjMsNyBAQCBjb25zdCBjaGFyKiBXZWJOb3RpZmljYXRpb25NYW5hZ2VyOjpz
dXBwbGVtZW50TmFtZSgpCiBXZWJOb3RpZmljYXRpb25NYW5hZ2VyOjpXZWJOb3RpZmljYXRpb25N
YW5hZ2VyKFdlYlByb2Nlc3MqIHByb2Nlc3MpCiAgICAgOiBtX3Byb2Nlc3MocHJvY2VzcykKIHsK
LSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwg
RU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogICAgIG1fcHJvY2Vzcy0+YWRkTWVzc2FnZVJl
Y2VpdmVyKE1lc3NhZ2VzOjpXZWJOb3RpZmljYXRpb25NYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJO
YW1lKCksICp0aGlzKTsKICNlbmRpZgogfQpAQCAtNzQsNyArNzQsNyBAQCBXZWJOb3RpZmljYXRp
b25NYW5hZ2VyOjp+V2ViTm90aWZpY2F0aW9uTWFuYWdlcigpCiAKIHZvaWQgV2ViTm90aWZpY2F0
aW9uTWFuYWdlcjo6aW5pdGlhbGl6ZShjb25zdCBXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
JiBwYXJhbWV0ZXJzKQogewotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShO
T1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgbV9wZXJt
aXNzaW9uc01hcCA9IHBhcmFtZXRlcnMubm90aWZpY2F0aW9uUGVybWlzc2lvbnM7CiAjZWxzZQog
ICAgIFVOVVNFRF9QQVJBTShwYXJhbWV0ZXJzKTsKQEAgLTgzLDcgKzgzLDcgQEAgdm9pZCBXZWJO
b3RpZmljYXRpb25NYW5hZ2VyOjppbml0aWFsaXplKGNvbnN0IFdlYlByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMmIHBhcmEKIAogdm9pZCBXZWJOb3RpZmljYXRpb25NYW5hZ2VyOjpkaWRVcGRhdGVO
b3RpZmljYXRpb25EZWNpc2lvbihjb25zdCBTdHJpbmcmIG9yaWdpblN0cmluZywgYm9vbCBhbGxv
d2VkKQogewotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJ
T05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgbV9wZXJtaXNzaW9uc01h
cC5zZXQob3JpZ2luU3RyaW5nLCBhbGxvd2VkKTsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFNKG9y
aWdpblN0cmluZyk7CkBAIC05MywyMiArOTMsMjMgQEAgdm9pZCBXZWJOb3RpZmljYXRpb25NYW5h
Z2VyOjpkaWRVcGRhdGVOb3RpZmljYXRpb25EZWNpc2lvbihjb25zdCBTdHJpbmcmIG9yaWdpblMK
IAogdm9pZCBXZWJOb3RpZmljYXRpb25NYW5hZ2VyOjpkaWRSZW1vdmVOb3RpZmljYXRpb25EZWNp
c2lvbnMoY29uc3QgVmVjdG9yPFN0cmluZz4mIG9yaWdpblN0cmluZ3MpCiB7Ci0jaWYgRU5BQkxF
KE5PVElGSUNBVElPTlMpCi0gICAgZm9yIChhdXRvJiBvcmlnaW5TdHJpbmcgOiBvcmlnaW5TdHJp
bmdzKQotICAgICAgICBtX3Blcm1pc3Npb25zTWFwLnJlbW92ZShvcmlnaW5TdHJpbmcpOworI2lm
IEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCisg
ICAgc2l6ZV90IGNvdW50ID0gb3JpZ2luU3RyaW5ncy5zaXplKCk7CisgICAgZm9yIChzaXplX3Qg
aSA9IDA7IGkgPCBjb3VudDsgKytpKQorICAgICAgICBtX3Blcm1pc3Npb25zTWFwLnJlbW92ZShv
cmlnaW5TdHJpbmdzW2ldKTsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFNKG9yaWdpblN0cmluZ3Mp
OwogI2VuZGlmCiB9CiAKLU5vdGlmaWNhdGlvbkNsaWVudDo6UGVybWlzc2lvbiBXZWJOb3RpZmlj
YXRpb25NYW5hZ2VyOjpwb2xpY3lGb3JPcmlnaW4oV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qIG9y
aWdpbikgY29uc3QKK05vdGlmaWNhdGlvbkNsaWVudDo6UGVybWlzc2lvbiBXZWJOb3RpZmljYXRp
b25NYW5hZ2VyOjpwb2xpY3lGb3JPcmlnaW4oV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4gKm9yaWdp
bikgY29uc3QKIHsKLSNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJ
Q0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogICAgIGlmICghb3JpZ2lu
KQogICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uQ2xpZW50OjpQZXJtaXNzaW9uTm90QWxsb3dl
ZDsKIAogICAgIEFTU0VSVCghb3JpZ2luLT5pc1VuaXF1ZSgpKTsKLSAgICBhdXRvIGl0ID0gbV9w
ZXJtaXNzaW9uc01hcC5maW5kKG9yaWdpbi0+dG9SYXdTdHJpbmcoKSk7CisgICAgSGFzaE1hcDxT
dHJpbmcsIGJvb2w+Ojpjb25zdF9pdGVyYXRvciBpdCA9IG1fcGVybWlzc2lvbnNNYXAuZmluZChv
cmlnaW4tPnRvUmF3U3RyaW5nKCkpOwogICAgIGlmIChpdCAhPSBtX3Blcm1pc3Npb25zTWFwLmVu
ZCgpKQogICAgICAgICByZXR1cm4gaXQtPnZhbHVlID8gTm90aWZpY2F0aW9uQ2xpZW50OjpQZXJt
aXNzaW9uQWxsb3dlZCA6IE5vdGlmaWNhdGlvbkNsaWVudDo6UGVybWlzc2lvbkRlbmllZDsKICNl
bHNlCkBAIC0xMjAsMTQgKzEyMSwxNCBAQCBOb3RpZmljYXRpb25DbGllbnQ6OlBlcm1pc3Npb24g
V2ViTm90aWZpY2F0aW9uTWFuYWdlcjo6cG9saWN5Rm9yT3JpZ2luKFdlYkNvcmU6OgogCiB2b2lk
IFdlYk5vdGlmaWNhdGlvbk1hbmFnZXI6OnJlbW92ZUFsbFBlcm1pc3Npb25zRm9yVGVzdGluZygp
CiB7Ci0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMp
IHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBtX3Blcm1pc3Npb25zTWFwLmNs
ZWFyKCk7CiAjZW5kaWYKIH0KIAogdWludDY0X3QgV2ViTm90aWZpY2F0aW9uTWFuYWdlcjo6bm90
aWZpY2F0aW9uSURGb3JUZXN0aW5nKE5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uKQogewotI2lm
IEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFC
TEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgaWYgKCFub3RpZmljYXRpb24pCiAgICAgICAg
IHJldHVybiAwOwogICAgIHJldHVybiBtX25vdGlmaWNhdGlvbk1hcC5nZXQobm90aWZpY2F0aW9u
KTsKQEAgLTEzOSw3ICsxNDAsNyBAQCB1aW50NjRfdCBXZWJOb3RpZmljYXRpb25NYW5hZ2VyOjpu
b3RpZmljYXRpb25JREZvclRlc3RpbmcoTm90aWZpY2F0aW9uKiBub3RpZmljYQogCiBib29sIFdl
Yk5vdGlmaWNhdGlvbk1hbmFnZXI6OnNob3coTm90aWZpY2F0aW9uKiBub3RpZmljYXRpb24sIFdl
YlBhZ2UqIHBhZ2UpCiB7Ci0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5P
VElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBpZiAoIW5v
dGlmaWNhdGlvbiB8fCAhcGFnZS0+Y29yZVBhZ2UoKS0+c2V0dGluZ3MoKS5ub3RpZmljYXRpb25z
RW5hYmxlZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgCkBAIC0xNDcsMTAgKzE0OCwx
NCBAQCBib29sIFdlYk5vdGlmaWNhdGlvbk1hbmFnZXI6OnNob3coTm90aWZpY2F0aW9uKiBub3Rp
ZmljYXRpb24sIFdlYlBhZ2UqIHBhZ2UpCiAgICAgbV9ub3RpZmljYXRpb25NYXAuc2V0KG5vdGlm
aWNhdGlvbiwgbm90aWZpY2F0aW9uSUQpOwogICAgIG1fbm90aWZpY2F0aW9uSURNYXAuc2V0KG5v
dGlmaWNhdGlvbklELCBub3RpZmljYXRpb24pOwogICAgIAotICAgIGF1dG8gaXQgPSBtX25vdGlm
aWNhdGlvbkNvbnRleHRNYXAuYWRkKG5vdGlmaWNhdGlvbi0+c2NyaXB0RXhlY3V0aW9uQ29udGV4
dCgpLCBWZWN0b3I8dWludDY0X3Q+KCkpLml0ZXJhdG9yOworICAgIE5vdGlmaWNhdGlvbkNvbnRl
eHRNYXA6Oml0ZXJhdG9yIGl0ID0gbV9ub3RpZmljYXRpb25Db250ZXh0TWFwLmFkZChub3RpZmlj
YXRpb24tPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgVmVjdG9yPHVpbnQ2NF90PigpKS5pdGVy
YXRvcjsKICAgICBpdC0+dmFsdWUuYXBwZW5kKG5vdGlmaWNhdGlvbklEKTsKIAorI2lmIEVOQUJM
RShOT1RJRklDQVRJT05TKQogICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24o
KS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTaG93Tm90aWZpY2F0aW9uKG5vdGlmaWNh
dGlvbi0+dGl0bGUoKSwgbm90aWZpY2F0aW9uLT5ib2R5KCksIG5vdGlmaWNhdGlvbi0+aWNvblVS
TCgpLnN0cmluZygpLCBub3RpZmljYXRpb24tPnRhZygpLCBub3RpZmljYXRpb24tPmxhbmcoKSwg
bm90aWZpY2F0aW9uLT5kaXIoKSwgbm90aWZpY2F0aW9uLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0
KCktPnNlY3VyaXR5T3JpZ2luKCktPnRvU3RyaW5nKCksIG5vdGlmaWNhdGlvbklEKSwgcGFnZS0+
cGFnZUlEKCkpOworI2Vsc2UKKyAgICBtX3Byb2Nlc3MtPnBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2hvd05vdGlmaWNhdGlvbihub3RpZmlj
YXRpb24tPnRpdGxlKCksIG5vdGlmaWNhdGlvbi0+Ym9keSgpLCBub3RpZmljYXRpb24tPmljb25V
UkwoKS5zdHJpbmcoKSwgbm90aWZpY2F0aW9uLT5yZXBsYWNlSWQoKSwgbm90aWZpY2F0aW9uLT5s
YW5nKCksIG5vdGlmaWNhdGlvbi0+ZGlyKCksIG5vdGlmaWNhdGlvbi0+c2NyaXB0RXhlY3V0aW9u
Q29udGV4dCgpLT5zZWN1cml0eU9yaWdpbigpLT50b1N0cmluZygpLCBub3RpZmljYXRpb25JRCks
IHBhZ2UtPnBhZ2VJRCgpKTsKKyNlbmRpZgogICAgIHJldHVybiB0cnVlOwogI2Vsc2UKICAgICBV
TlVTRURfUEFSQU0obm90aWZpY2F0aW9uKTsKQEAgLTE2MSw3ICsxNjYsNyBAQCBib29sIFdlYk5v
dGlmaWNhdGlvbk1hbmFnZXI6OnNob3coTm90aWZpY2F0aW9uKiBub3RpZmljYXRpb24sIFdlYlBh
Z2UqIHBhZ2UpCiAKIHZvaWQgV2ViTm90aWZpY2F0aW9uTWFuYWdlcjo6Y2FuY2VsKE5vdGlmaWNh
dGlvbiogbm90aWZpY2F0aW9uLCBXZWJQYWdlKiBwYWdlKQogewotI2lmIEVOQUJMRShOT1RJRklD
QVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElG
SUNBVElPTlMpCiAgICAgaWYgKCFub3RpZmljYXRpb24gfHwgIXBhZ2UtPmNvcmVQYWdlKCktPnNl
dHRpbmdzKCkubm90aWZpY2F0aW9uc0VuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogICAgIApA
QCAtMTc4LDcgKzE4Myw3IEBAIHZvaWQgV2ViTm90aWZpY2F0aW9uTWFuYWdlcjo6Y2FuY2VsKE5v
dGlmaWNhdGlvbiogbm90aWZpY2F0aW9uLCBXZWJQYWdlKiBwYWdlKQogCiB2b2lkIFdlYk5vdGlm
aWNhdGlvbk1hbmFnZXI6OmNsZWFyTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBjb250ZXh0LCBXZWJQYWdlKiBwYWdlKQogewotI2lmIEVOQUJMRShOT1RJRklD
QVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElG
SUNBVElPTlMpCiAgICAgTm90aWZpY2F0aW9uQ29udGV4dE1hcDo6aXRlcmF0b3IgaXQgPSBtX25v
dGlmaWNhdGlvbkNvbnRleHRNYXAuZmluZChjb250ZXh0KTsKICAgICBpZiAoaXQgPT0gbV9ub3Rp
ZmljYXRpb25Db250ZXh0TWFwLmVuZCgpKQogICAgICAgICByZXR1cm47CkBAIC0yMDMsNyArMjA4
LDcgQEAgdm9pZCBXZWJOb3RpZmljYXRpb25NYW5hZ2VyOjpjbGVhck5vdGlmaWNhdGlvbnMoV2Vi
Q29yZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dCoKIAogdm9pZCBXZWJOb3RpZmljYXRpb25NYW5h
Z2VyOjpkaWREZXN0cm95Tm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uLCBX
ZWJQYWdlKiBwYWdlKQogewotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShO
T1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgdWludDY0
X3Qgbm90aWZpY2F0aW9uSUQgPSBtX25vdGlmaWNhdGlvbk1hcC50YWtlKG5vdGlmaWNhdGlvbik7
CiAgICAgaWYgKCFub3RpZmljYXRpb25JRCkKICAgICAgICAgcmV0dXJuOwpAQCAtMjE5LDcgKzIy
NCw3IEBAIHZvaWQgV2ViTm90aWZpY2F0aW9uTWFuYWdlcjo6ZGlkRGVzdHJveU5vdGlmaWNhdGlv
bihOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbiwKIAogdm9pZCBXZWJOb3RpZmljYXRpb25NYW5h
Z2VyOjpkaWRTaG93Tm90aWZpY2F0aW9uKHVpbnQ2NF90IG5vdGlmaWNhdGlvbklEKQogewotI2lm
IEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFC
TEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgaWYgKCFpc05vdGlmaWNhdGlvbklEVmFsaWQo
bm90aWZpY2F0aW9uSUQpKQogICAgICAgICByZXR1cm47CiAgICAgCkBAIC0yMzUsNyArMjQwLDcg
QEAgdm9pZCBXZWJOb3RpZmljYXRpb25NYW5hZ2VyOjpkaWRTaG93Tm90aWZpY2F0aW9uKHVpbnQ2
NF90IG5vdGlmaWNhdGlvbklEKQogCiB2b2lkIFdlYk5vdGlmaWNhdGlvbk1hbmFnZXI6OmRpZENs
aWNrTm90aWZpY2F0aW9uKHVpbnQ2NF90IG5vdGlmaWNhdGlvbklEKQogewotI2lmIEVOQUJMRShO
T1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZ
X05PVElGSUNBVElPTlMpCiAgICAgaWYgKCFpc05vdGlmaWNhdGlvbklEVmFsaWQobm90aWZpY2F0
aW9uSUQpKQogICAgICAgICByZXR1cm47CiAKQEAgLTI1Myw3ICsyNTgsNyBAQCB2b2lkIFdlYk5v
dGlmaWNhdGlvbk1hbmFnZXI6OmRpZENsaWNrTm90aWZpY2F0aW9uKHVpbnQ2NF90IG5vdGlmaWNh
dGlvbklEKQogCiB2b2lkIFdlYk5vdGlmaWNhdGlvbk1hbmFnZXI6OmRpZENsb3NlTm90aWZpY2F0
aW9ucyhjb25zdCBWZWN0b3I8dWludDY0X3Q+JiBub3RpZmljYXRpb25JRHMpCiB7Ci0jaWYgRU5B
QkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShM
RUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBzaXplX3QgY291bnQgPSBub3RpZmljYXRpb25JRHMu
c2l6ZSgpOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgY291bnQ7ICsraSkgewogICAgICAg
ICB1aW50NjRfdCBub3RpZmljYXRpb25JRCA9IG5vdGlmaWNhdGlvbklEc1tpXTsKQEAgLTI3NCw3
ICsyNzksNyBAQCB2b2lkIFdlYk5vdGlmaWNhdGlvbk1hbmFnZXI6OmRpZENsb3NlTm90aWZpY2F0
aW9ucyhjb25zdCBWZWN0b3I8dWludDY0X3Q+JiBub3RpZgogI2VuZGlmCiB9CiAKLSNpZiBFTkFC
TEUoTk9USUZJQ0FUSU9OUykKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExF
R0FDWV9OT1RJRklDQVRJT05TKQogdm9pZCBXZWJOb3RpZmljYXRpb25NYW5hZ2VyOjpyZW1vdmVO
b3RpZmljYXRpb25Gcm9tQ29udGV4dE1hcCh1aW50NjRfdCBub3RpZmljYXRpb25JRCwgTm90aWZp
Y2F0aW9uKiBub3RpZmljYXRpb24pCiB7CiAgICAgLy8gVGhpcyBpcyBhIGhlbHBlciBmdW5jdGlv
biBmb3IgbWFuYWdpbmcgdGhlIGhhc2ggbWFwcy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvTm90aWZpY2F0aW9ucy9XZWJOb3RpZmljYXRpb25NYW5hZ2VyLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05vdGlmaWNhdGlvbnMvV2ViTm90aWZpY2F0aW9uTWFuYWdl
ci5oCmluZGV4IDEyYjgzYTM0NWJmNWE3MGQ4MGM1YWIwZGY4YWRkMjdmNzBjYzNhOTAuLjE3MWU1
NWZjOGIxNzI2YzNhN2Q0MDdiYjg5MTM3NDIxNjYwYjI3ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvTm90aWZpY2F0aW9ucy9XZWJOb3RpZmljYXRpb25NYW5hZ2VyLmgK
KysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Ob3RpZmljYXRpb25zL1dlYk5vdGlmaWNh
dGlvbk1hbmFnZXIuaApAQCAtODAsMTMgKzgwLDEzIEBAIHByaXZhdGU6CiAgICAgdm9pZCBkaWRD
bG9zZU5vdGlmaWNhdGlvbnMoY29uc3QgVmVjdG9yPHVpbnQ2NF90PiYgbm90aWZpY2F0aW9uSURz
KTsKICAgICB2b2lkIGRpZFJlbW92ZU5vdGlmaWNhdGlvbkRlY2lzaW9ucyhjb25zdCBWZWN0b3I8
U3RyaW5nPiYgb3JpZ2luU3RyaW5ncyk7CiAgICAgCi0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMp
CisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9O
UykKICAgICB2b2lkIHJlbW92ZU5vdGlmaWNhdGlvbkZyb21Db250ZXh0TWFwKHVpbnQ2NF90IG5v
dGlmaWNhdGlvbklELCBXZWJDb3JlOjpOb3RpZmljYXRpb24qKTsKICNlbmRpZgogCiAgICAgV2Vi
UHJvY2VzcyogbV9wcm9jZXNzOwogCi0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5B
QkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICB0
eXBlZGVmIEhhc2hNYXA8UmVmUHRyPFdlYkNvcmU6Ok5vdGlmaWNhdGlvbj4sIHVpbnQ2NF90PiBO
b3RpZmljYXRpb25NYXA7CiAgICAgTm90aWZpY2F0aW9uTWFwIG1fbm90aWZpY2F0aW9uTWFwOwog
ICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJOb3RpZmljYXRpb25DbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJOb3RpZmljYXRpb25DbGllbnQuY3BwCmluZGV4IGM5NWZlMGM2Njcy
MDQ4ZWMzYzQwNzc1ODk0YmYyODUzNDgwMTE1N2YuLjIzYTE0MDE3NzExMTQ1N2IzMDM0ZGQ0M2Y2
NTc2NmRlNTFhZWVhZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViTm90aWZpY2F0aW9uQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYk5vdGlmaWNhdGlvbkNsaWVudC5jcHAKQEAg
LTI2LDcgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJXZWJOb3RpZmlj
YXRpb25DbGllbnQuaCIKIAotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShO
T1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAKICNpbmNsdWRl
ICJOb3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIuaCIKICNpbmNsdWRlICJXZWJO
b3RpZmljYXRpb25NYW5hZ2VyLmgiCkBAIC03MiwxMCArNzIsMTkgQEAgdm9pZCBXZWJOb3RpZmlj
YXRpb25DbGllbnQ6Om5vdGlmaWNhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKQogICAgIGRlbGV0
ZSB0aGlzOwogfQogCisjaWYgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQordm9pZCBXZWJO
b3RpZmljYXRpb25DbGllbnQ6OnJlcXVlc3RQZXJtaXNzaW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGNvbnRleHQsIFJlZlB0cjxXZWJDb3JlOjpWb2lkQ2FsbGJhY2s+JiYgY2FsbGJhY2spCit7
CisgICAgbV9wYWdlLT5ub3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIoKS0+c3Rh
cnRSZXF1ZXN0KGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCksIFdURk1vdmUoY2FsbGJhY2spKTsK
K30KKyNlbmRpZgorCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCiB2b2lkIFdlYk5vdGlmaWNh
dGlvbkNsaWVudDo6cmVxdWVzdFBlcm1pc3Npb24oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29u
dGV4dCwgUmVmUHRyPE5vdGlmaWNhdGlvblBlcm1pc3Npb25DYWxsYmFjaz4mJiBjYWxsYmFjaykK
IHsKICAgICBtX3BhZ2UtPm5vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcigpLT5z
dGFydFJlcXVlc3QoY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKSwgV1RGTW92ZShjYWxsYmFjaykp
OwogfQorI2VuZGlmCiAKIGJvb2wgV2ViTm90aWZpY2F0aW9uQ2xpZW50OjpoYXNQZW5kaW5nUGVy
bWlzc2lvblJlcXVlc3RzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpIGNvbnN0CiB7
CkBAIC05Niw0ICsxMDUsNCBAQCBOb3RpZmljYXRpb25DbGllbnQ6OlBlcm1pc3Npb24gV2ViTm90
aWZpY2F0aW9uQ2xpZW50OjpjaGVja1Blcm1pc3Npb24oU2NyaXB0RXhlYwogCiB9IC8vIG5hbWVz
cGFjZSBXZWJLaXQKIAotI2VuZGlmIC8vIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2VuZGlmIC8v
IEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYk5v
dGlmaWNhdGlvbkNsaWVudC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJOb3RpZmljYXRpb25DbGllbnQuaAppbmRleCA0YzA3ZTVjZTk0ODg4ZDMyY2IxYTRi
YzZjMDc0YzVhYTAxYTllZmFlLi45YmM4MGQxZWU1ZjUwYWNjYzY4MzZiOTM2ZTQzMzI1YTU3MDRl
MWQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYk5vdGlmaWNhdGlvbkNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvV2ViTm90aWZpY2F0aW9uQ2xpZW50LmgKQEAgLTI2LDcgKzI2LDcgQEAK
ICNpZm5kZWYgV2ViTm90aWZpY2F0aW9uQ2xpZW50X2gKICNkZWZpbmUgV2ViTm90aWZpY2F0aW9u
Q2xpZW50X2gKIAotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklD
QVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAKICNpbmNsdWRlIDxXZWJD
b3JlL05vdGlmaWNhdGlvbkNsaWVudC5oPgogCkBAIC01MSw3ICs1MSwxMiBAQCBwcml2YXRlOgog
ICAgIHZvaWQgY2xlYXJOb3RpZmljYXRpb25zKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqKSBvdmVycmlkZTsKICAgICB2b2lkIG5vdGlmaWNhdGlvbk9iamVjdERlc3Ryb3llZChXZWJD
b3JlOjpOb3RpZmljYXRpb24qKSBvdmVycmlkZTsKICAgICB2b2lkIG5vdGlmaWNhdGlvbkNvbnRy
b2xsZXJEZXN0cm95ZWQoKSBvdmVycmlkZTsKKyNpZiBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElP
TlMpCisgICAgdm9pZCByZXF1ZXN0UGVybWlzc2lvbihXZWJDb3JlOjpTY3JpcHRFeGVjdXRpb25D
b250ZXh0KiwgUmVmUHRyPFdlYkNvcmU6OlZvaWRDYWxsYmFjaz4mJikgb3ZlcnJpZGU7CisjZW5k
aWYKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKICAgICB2b2lkIHJlcXVlc3RQZXJtaXNzaW9u
KFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBSZWZQdHI8V2ViQ29yZTo6Tm90aWZp
Y2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrPiYmKSBvdmVycmlkZTsKKyNlbmRpZgogICAgIHZvaWQg
Y2FuY2VsUmVxdWVzdHNGb3JQZXJtaXNzaW9uKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqKSBvdmVycmlkZTsKICAgICBib29sIGhhc1BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHMoV2Vi
Q29yZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIGNvbnN0IG92ZXJyaWRlOwogICAgIE5vdGlm
aWNhdGlvbkNsaWVudDo6UGVybWlzc2lvbiBjaGVja1Blcm1pc3Npb24oV2ViQ29yZTo6U2NyaXB0
RXhlY3V0aW9uQ29udGV4dCopIG92ZXJyaWRlOwpAQCAtNjEsNiArNjYsNiBAQCBwcml2YXRlOgog
CiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAotI2VuZGlmIC8vIEVOQUJMRShOT1RJRklDQVRJT05T
KQorI2VuZGlmIC8vIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElG
SUNBVElPTlMpCiAKICNlbmRpZiAvLyBXZWJOb3RpZmljYXRpb25DbGllbnRfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IGJiOTVkNzA0ZWI4
MTg2ZGY0YzJiYTZkZGIyZGNmYTgwOWUyYmJjNTEuLjUxNTY4M2EyYTQ1NjM5ODRjY2QxZGI2ZTM4
Yjc0ZWU5OTdkYmFmNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAKQEAgLTQzMiw3ICs0MzIsNyBAQCBXZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90
IHBhZ2VJRCwgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiAjaWYgRU5B
QkxFKEdFT0xPQ0FUSU9OKQogICAgIFdlYkNvcmU6OnByb3ZpZGVHZW9sb2NhdGlvblRvKG1fcGFn
ZS5nZXQoKSwgbmV3IFdlYkdlb2xvY2F0aW9uQ2xpZW50KHRoaXMpKTsKICNlbmRpZgotI2lmIEVO
QUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUo
TEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgV2ViQ29yZTo6cHJvdmlkZU5vdGlmaWNhdGlvbiht
X3BhZ2UuZ2V0KCksIG5ldyBXZWJOb3RpZmljYXRpb25DbGllbnQodGhpcykpOwogI2VuZGlmCiAj
aWYgRU5BQkxFKFZJQlJBVElPTikKQEAgLTMxOTgsNyArMzE5OCw3IEBAIHZvaWQgV2ViUGFnZTo6
dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCiAgICAg
c2V0dGluZ3Muc2V0U2hvdWxkRGlzcGxheVRleHREZXNjcmlwdGlvbnMoc3RvcmUuZ2V0Qm9vbFZh
bHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjpzaG91bGREaXNwbGF5VGV4dERlc2NyaXB0aW9u
c0tleSgpKSk7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJM
RShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgc2V0
dGluZ3Muc2V0Tm90aWZpY2F0aW9uc0VuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdl
YlByZWZlcmVuY2VzS2V5Ojpub3RpZmljYXRpb25zRW5hYmxlZEtleSgpKSk7CiAjZW5kaWYKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKaW5kZXggNWY5MGNhY2JhOGYz
Nzg5MjhkNWM2Mjg5NmExNmJlZWI4YWM0MDQ1ZC4uMTg3ZWVmOThhYjBhY2I5MmMxNjFkMjJiZjhi
NGM0NzExMzViNWFmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
cm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3Bw
CkBAIC0xMjgsNyArMTI4LDcgQEAKICNpbmNsdWRlICJXZWJUb0RhdGFiYXNlUHJvY2Vzc0Nvbm5l
Y3Rpb24uaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisjaWYgRU5BQkxF
KE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICNpbmNsdWRl
ICJXZWJOb3RpZmljYXRpb25NYW5hZ2VyLmgiCiAjZW5kaWYKIApAQCAtMTgyLDcgKzE4Miw3IEBA
IFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQogICAgIGFkZFN1cHBsZW1lbnQ8V2ViQ29va2llTWFu
YWdlcj4oKTsKICAgICBhZGRTdXBwbGVtZW50PEF1dGhlbnRpY2F0aW9uTWFuYWdlcj4oKTsKIAot
I2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBF
TkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgYWRkU3VwcGxlbWVudDxXZWJOb3RpZmlj
YXRpb25NYW5hZ2VyPigpOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRp
b25zTWFjLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNNYWMuY21ha2UKaW5kZXggMmNmNDI3
YTA4OWE4MzRmNDg2YmJjZTk3MDNhMmM4MDUwOTI0ZWI4Yi4uZDRjOWE3MWNhOTViMjc1OGYxZmVh
ODc4YjA5MzNlYTk3NTM3NjE1NSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNNYWMu
Y21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNNYWMuY21ha2UKQEAgLTQ4LDYgKzQ4LDcg
QEAgV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVfTU9O
VEggUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9J
TlBVVF9UWVBFX1RJTUUgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUyBQUklWQVRFIE9OKQogV0VCS0lU
X09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0xFR0FDWV9FTkNSWVBURURfTUVESUEg
UFJJVkFURSBPTikKK1dFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MRUdB
Q1lfTk9USUZJQ0FUSU9OUyBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRf
VkFMVUUoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMgUFJJVkFURSBPTikKIFdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MRVRURVJQUkVTUyBQUklWQVRFIE9OKQog
V0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0xJTktfUFJFRkVUQ0ggUFJJ
VkFURSBPRkYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvT3B0aW9uc1dpbi5jbWFrZSBiL1Nv
dXJjZS9jbWFrZS9PcHRpb25zV2luLmNtYWtlCmluZGV4IDVkOTNiYTA1NGU1MTM5M2U4M2M4NWI3
NmQ4ODk3NzNhMTEwNzEzMGYuLjY2NWFlYzEzZGU1ZDRkNTUyMzNiZDNlYjFmNTY1ZGM4NDIzZmEz
MDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9PcHRpb25zV2luLmNtYWtlCisrKyBiL1NvdXJj
ZS9jbWFrZS9PcHRpb25zV2luLmNtYWtlCkBAIC00NCw2ICs0NCw3IEBAIFdFQktJVF9PUFRJT05f
REVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIIFBVQkxJQyBPRkYpCiBX
RUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5QVVRfVFlQRV9USU1FIFBV
QkxJQyBPRkYpCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5QVVRf
VFlQRV9XRUVLIFBVQkxJQyBPRkYpCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShF
TkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVMgUFVCTElDIE9OKQorV0VCS0lUX09QVElP
Tl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TIFBVQkxJQyBP
RkYpCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfTEVHQUNZX1ZFTkRP
Ul9QUkVGSVhFUyBQVUJMSUMgT0ZGKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUo
RU5BQkxFX0xJTktfUFJFRkVUQ0ggUFVCTElDIE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9Q
T1JUX1ZBTFVFKEVOQUJMRV9NQVRITUwgUFVCTElDIE9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL2Nt
YWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNt
YWtlCmluZGV4IDE1MDlhZjQ5YjI3YmYxOWRlNGJlMDk3MzY2MzY5N2U1YzMxY2U3YjguLmZmNzM3
MDU3NDUzYzUzODRiNTExZTk4MjJiZDA0NjdmZTk4ZmM4ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9j
bWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVy
ZXMuY21ha2UKQEAgLTEzNiw2ICsxMzYsNyBAQCBtYWNybyhXRUJLSVRfT1BUSU9OX0JFR0lOKQog
ICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9KSVQgIkVuYWJsZSBKdXN0SW5UaW1lIGph
dmFzY3JpcHQgc3VwcG9ydCIgUFJJVkFURSBPTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShF
TkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVMgIlRvZ2dsZSBsZWdhY3kgY3NzIHZlbmRv
ciBwcmVmaXggc3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUo
RU5BQkxFX0xFR0FDWV9FTkNSWVBURURfTUVESUEgIlN1cHBvcnQgbGVnYWN5IEVNRSIgUFJJVkFU
RSBPRkYpCisgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJ
T05TICJUb2dnbGUgTGVnYWN5IERlc2t0b3AgTm90aWZpY2F0aW9ucyBTdXBwb3J0IiBQUklWQVRF
IE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVG
SVhFUyAiVG9nZ2xlIExlZ2FjeSBWZW5kb3IgUHJlZml4IFN1cHBvcnQiIFBSSVZBVEUgT04pCiAg
ICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0xFVFRFUlBSRVNTICJUb2dnbGUgbGV0dGVy
cHJlc3Mgc3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5B
QkxFX0xJTktfUFJFRkVUQ0ggIlRvZ2dsZSBwcmUgZmV0Y2hpbmcgc3VwcG9ydCIgUFJJVkFURSBP
RkYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5l
cy5wcm9wcyBiL1NvdXJjZS9jbWFrZS90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzLnByb3Bz
CmluZGV4IGJmYTM5MmY1OTMwYjBjMDkxZjI1MzQ4MjE2OTRlNjNiOWM5OTg3NGUuLjY2YzU5ZTZl
N2Q4ZDA3OGZjNjQwNGE5N2YyMzJhMjhjZGM4ZDg2NWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFr
ZS90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzLnByb3BzCisrKyBiL1NvdXJjZS9jbWFrZS90
b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzLnByb3BzCkBAIC00NSw2ICs0NSw3IEBACiAgICAg
PEVOQUJMRV9JTlRMPkVOQUJMRV9JTlRMPC9FTkFCTEVfSU5UTD4KICAgICA8RU5BQkxFX0xFR0FD
WV9DU1NfVkVORE9SX1BSRUZJWEVTPkVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUzwv
RU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTPgogICAgIDxFTkFCTEVfTEVHQUNZX0VO
Q1JZUFRFRF9NRURJQT5FTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQTwvRU5BQkxFX0xFR0FD
WV9FTkNSWVBURURfTUVESUE+CisgICAgPEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUyAvPgog
ICAgIDxFTkFCTEVfTElOS19QUkVGRVRDSCAvPgogICAgIDxFTkFCTEVfTElOS19QUkVSRU5ERVIg
Lz4KICAgICA8RU5BQkxFX01BVEhNTD5FTkFCTEVfTUFUSE1MPC9FTkFCTEVfTUFUSE1MPgpAQCAt
ODQsNyArODUsNyBAQAogICA8L1Byb3BlcnR5R3JvdXA+CiAgIDxJdGVtRGVmaW5pdGlvbkdyb3Vw
PgogICAgIDxDbENvbXBpbGU+Ci0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+JChFTkFC
TEVfM0RfVFJBTlNGT1JNUyk7JChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKTskKEVOQUJM
RV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpOyQoRU5BQkxFX0FUVEFDSE1FTlRfRUxF
TUVOVCk7JChFTkFCTEVfQ0FOVkFTX1BBVEgpOyQoRU5BQkxFX0NBTlZBU19QUk9YWSk7JChFTkFC
TEVfQ0hBTk5FTF9NRVNTQUdJTkcpOyQoRU5BQkxFX0NTUzNfQ09ORElUSU9OQUxfUlVMRVMpOyQo
RU5BQkxFX0NTU19JTUFHRV9TRVQpOyQoRU5BQkxFX0NTUzNfVEVYVCk7JChFTkFCTEVfQ1NTX0JP
WF9ERUNPUkFUSU9OX0JSRUFLKTskKEVOQUJMRV9DU1NfU0hBREVSUyk7JChFTkFCTEVfQ1NTX0NP
TVBPU0lUSU5HKTskKEVOQUJMRV9DU1NfUkVHSU9OUyk7JChFTkFCTEVfQ1NTX1NFTEVDVE9SU19M
RVZFTDQpOyQoRU5BQkxFX0NTU19TSEFQRV9JTlNJREUpOyQoRU5BQkxFX0NTU19UUkFOU0ZPUk1T
X0FOSU1BVElPTlNfVFJBTlNJVElPTlNfVU5QUkVGSVhFRCk7JChFTkFCTEVfQ1VSU09SX1ZJU0lC
SUxJVFkpOyQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUik7JChFTkFCTEVfREFUQUdSSUQp
OyQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpOyQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMp
OyQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTik7JChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCk7
JChFTkFCTEVfRU5DUllQVEVEX01FRElBKTskKEVOQUJMRV9GRVRDSF9BUEkpOyQoRU5BQkxFX0ZJ
TEVfU1lTVEVNKTskKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSk7JChFTkFCTEVfR0FNRVBBRCk7JChF
TkFCTEVfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUyk7JChFTkFCTEVfSUNP
TkRBVEFCQVNFKTskKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKTskKEVOQUJMRV9JTlBVVF9UWVBF
X0NPTE9SKTskKEVOQUJMRV9JTlBVVF9TUEVFQ0gpOyQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSk7
JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNPTVBMRVRFKTskKEVOQUJMRV9JTlBVVF9U
WVBFX0RBVEVUSU1FTE9DQUwpOyQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpOyQoRU5BQkxFX0lO
UFVUX1RZUEVfVElNRSk7JChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKTskKEVOQUJMRV9JTlRMKTsk
KEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUyk7JChFTkFCTEVfTEVHQUNZX0VOQ1JZ
UFRFRF9NRURJQSk7JChFTkFCTEVfTElOS19QUkVGRVRDSCk7JChFTkFCTEVfTElOS19QUkVSRU5E
RVIpOyQoRU5BQkxFX01BVEhNTCk7JChFTkFCTEVfTUVURVJfRUxFTUVOVCk7JChFTkFCTEVfTUlD
Uk9EQVRBKTskKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpOyQoRU5BQkxFX05PVElGSUNBVElP
TlMpOyQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpOyQoRU5BQkxFX1FVT1RBKTskKEVOQUJMRV9O
QVZJR0FUT1JfQ09OVEVOVF9VVElMUyk7JChFTkFCTEVfU1RSRUFNU19BUEkpOyQoRU5BQkxFX1ND
UklQVEVEX1NQRUVDSCk7JChFTkFCTEVfU0hBUkVEX1dPUktFUlMpOyQoRU5BQkxFX01FRElBX0NP
TlRST0xTX1NDUklQVCk7JChFTkFCTEVfTUVESUFfU09VUkNFKTskKEVOQUJMRV9NRURJQV9TVEFU
SVNUSUNTKTskKEVOQUJMRV9TUUxfREFUQUJBU0UpOyQoRU5BQkxFX1NUWUxFX1NDT1BFRCk7JChF
TkFCTEVfU1VCUElYRUxfTEFZT1VUKTskKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpOyQo
RU5BQkxFX1NWR19GT05UUyk7JChFTkFCTEVfVklERU8pOyQoRU5BQkxFX1ZJREVPX1RSQUNLKTsk
KEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKTskKEVOQUJMRV9XRUJfQU5JTUFUSU9OUyk7JChF
TkFCTEVfV0VCX0FVRElPKTskKEVOQUJMRV9XRUJfU09DS0VUUyk7JChFTkFCTEVfV0VCX1RJTUlO
Ryk7JChFTkFCTEVfV0VCR0wpOyQoRU5BQkxFX1dFQkdQVSk7JChFTkFCTEVfV0VCVlRUX1JFR0lP
TlMpOyQoRU5BQkxFX1hIUl9USU1FT1VUKTskKEVOQUJMRV9YU0xUKTslKFByZXByb2Nlc3NvckRl
ZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+CisgICAgICA8UHJlcHJvY2Vzc29y
RGVmaW5pdGlvbnM+JChFTkFCTEVfM0RfVFJBTlNGT1JNUyk7JChFTkFCTEVfQUNDRUxFUkFURURf
MkRfQ0FOVkFTKTskKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpOyQoRU5B
QkxFX0FUVEFDSE1FTlRfRUxFTUVOVCk7JChFTkFCTEVfQ0FOVkFTX1BBVEgpOyQoRU5BQkxFX0NB
TlZBU19QUk9YWSk7JChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpOyQoRU5BQkxFX0NTUzNfQ09O
RElUSU9OQUxfUlVMRVMpOyQoRU5BQkxFX0NTU19JTUFHRV9TRVQpOyQoRU5BQkxFX0NTUzNfVEVY
VCk7JChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKTskKEVOQUJMRV9DU1NfU0hBREVS
Uyk7JChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKTskKEVOQUJMRV9DU1NfUkVHSU9OUyk7JChFTkFC
TEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpOyQoRU5BQkxFX0NTU19TSEFQRV9JTlNJREUpOyQoRU5B
QkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVFJBTlNJVElPTlNfVU5QUkVGSVhFRCk7JChF
TkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpOyQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUik7
JChFTkFCTEVfREFUQUdSSUQpOyQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpOyQoRU5BQkxFX0RB
VEFfVFJBTlNGRVJfSVRFTVMpOyQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTik7JChFTkFCTEVf
RElSRUNUT1JZX1VQTE9BRCk7JChFTkFCTEVfRU5DUllQVEVEX01FRElBKTskKEVOQUJMRV9GRVRD
SF9BUEkpOyQoRU5BQkxFX0ZJTEVfU1lTVEVNKTskKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSk7JChF
TkFCTEVfR0FNRVBBRCk7JChFTkFCTEVfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0hJR0hfRFBJX0NB
TlZBUyk7JChFTkFCTEVfSUNPTkRBVEFCQVNFKTskKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKTsk
KEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKTskKEVOQUJMRV9JTlBVVF9TUEVFQ0gpOyQoRU5BQkxF
X0lOUFVUX1RZUEVfREFURSk7JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNPTVBMRVRF
KTskKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpOyQoRU5BQkxFX0lOUFVUX1RZUEVf
TU9OVEgpOyQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSk7JChFTkFCTEVfSU5QVVRfVFlQRV9XRUVL
KTskKEVOQUJMRV9JTlRMKTskKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUyk7JChF
TkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSk7JChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElP
TlMpOyQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpOyQoRU5BQkxFX0xJTktfUFJFUkVOREVSKTskKEVO
QUJMRV9NQVRITUwpOyQoRU5BQkxFX01FVEVSX0VMRU1FTlQpOyQoRU5BQkxFX01JQ1JPREFUQSk7
JChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKTskKEVOQUJMRV9OT1RJRklDQVRJT05TKTskKEVO
QUJMRV9QUk9YSU1JVFlfRVZFTlRTKTskKEVOQUJMRV9RVU9UQSk7JChFTkFCTEVfTkFWSUdBVE9S
X0NPTlRFTlRfVVRJTFMpOyQoRU5BQkxFX1NUUkVBTVNfQVBJKTskKEVOQUJMRV9TQ1JJUFRFRF9T
UEVFQ0gpOyQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKTskKEVOQUJMRV9NRURJQV9DT05UUk9MU19T
Q1JJUFQpOyQoRU5BQkxFX01FRElBX1NPVVJDRSk7JChFTkFCTEVfTUVESUFfU1RBVElTVElDUyk7
JChFTkFCTEVfU1FMX0RBVEFCQVNFKTskKEVOQUJMRV9TVFlMRV9TQ09QRUQpOyQoRU5BQkxFX1NV
QlBJWEVMX0xBWU9VVCk7JChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKTskKEVOQUJMRV9T
VkdfRk9OVFMpOyQoRU5BQkxFX1ZJREVPKTskKEVOQUJMRV9WSURFT19UUkFDSyk7JChFTkFCTEVf
VklFV19NT0RFX0NTU19NRURJQSk7JChFTkFCTEVfV0VCX0FOSU1BVElPTlMpOyQoRU5BQkxFX1dF
Ql9BVURJTyk7JChFTkFCTEVfV0VCX1NPQ0tFVFMpOyQoRU5BQkxFX1dFQl9USU1JTkcpOyQoRU5B
QkxFX1dFQkdMKTskKEVOQUJMRV9XRUJHUFUpOyQoRU5BQkxFX1dFQlZUVF9SRUdJT05TKTskKEVO
QUJMRV9YSFJfVElNRU9VVCk7JChFTkFCTEVfWFNMVCk7JShQcmVwcm9jZXNzb3JEZWZpbml0aW9u
cyk8L1ByZXByb2Nlc3NvckRlZmluaXRpb25zPgogICAgIDwvQ2xDb21waWxlPgogICA8L0l0ZW1E
ZWZpbml0aW9uR3JvdXA+CiAgIDxJdGVtR3JvdXA+CkBAIC0yNjQsNiArMjY1LDEwIEBACiAgICAg
ICA8VmFsdWU+JChFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSk8L1ZhbHVlPgogICAgICAg
PEVudmlyb25tZW50VmFyaWFibGU+dHJ1ZTwvRW52aXJvbm1lbnRWYXJpYWJsZT4KICAgICA8L0J1
aWxkTWFjcm8+CisgICAgPEJ1aWxkTWFjcm8gSW5jbHVkZT0iRU5BQkxFX0xFR0FDWV9OT1RJRklD
QVRJT05TIj4KKyAgICAgIDxWYWx1ZT4kKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUyk8L1Zh
bHVlPgorICAgICAgPEVudmlyb25tZW50VmFyaWFibGU+dHJ1ZTwvRW52aXJvbm1lbnRWYXJpYWJs
ZT4KKyAgICA8L0J1aWxkTWFjcm8+CiAgICAgPEJ1aWxkTWFjcm8gSW5jbHVkZT0iRU5BQkxFX0xJ
TktfUFJFRkVUQ0giPgogICAgICAgPFZhbHVlPiQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpPC9WYWx1
ZT4KICAgICAgIDxFbnZpcm9ubWVudFZhcmlhYmxlPnRydWU8L0Vudmlyb25tZW50VmFyaWFibGU+
CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lc0Nh
aXJvLnByb3BzIGIvU291cmNlL2NtYWtlL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURlZmluZXNDYWly
by5wcm9wcwppbmRleCA2MzQ4YzNlYzgzZjhmNDhkOTljNGFiYjJiMmJkZTQwODFhYTdkYzkyLi4z
MDg0NzcwMzUwMGJiYjI3YWNlZDUxZDEwMGNmZWM5OGVlZjk3MjU0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvY21ha2UvdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lc0NhaXJvLnByb3BzCisrKyBiL1Nv
dXJjZS9jbWFrZS90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzQ2Fpcm8ucHJvcHMKQEAgLTQ1
LDYgKzQ1LDcgQEAKICAgICA8RU5BQkxFX0lOVEw+RU5BQkxFX0lOVEw8L0VOQUJMRV9JTlRMPgog
ICAgIDxFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVM+RU5BQkxFX0xFR0FDWV9DU1Nf
VkVORE9SX1BSRUZJWEVTPC9FTkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVM+CiAgICAg
PEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBIC8+CisgICAgPEVOQUJMRV9MRUdBQ1lfTk9U
SUZJQ0FUSU9OUyAvPgogICAgIDxFTkFCTEVfTElOS19QUkVGRVRDSCAvPgogICAgIDxFTkFCTEVf
TElOS19QUkVSRU5ERVIgLz4KICAgICA8RU5BQkxFX01BVEhNTD5FTkFCTEVfTUFUSE1MPC9FTkFC
TEVfTUFUSE1MPgpAQCAtODMsNyArODQsNyBAQAogICA8L1Byb3BlcnR5R3JvdXA+CiAgIDxJdGVt
RGVmaW5pdGlvbkdyb3VwPgogICAgIDxDbENvbXBpbGU+Ci0gICAgICA8UHJlcHJvY2Vzc29yRGVm
aW5pdGlvbnM+JChFTkFCTEVfM0RfVFJBTlNGT1JNUyk7JChFTkFCTEVfQUNDRUxFUkFURURfMkRf
Q0FOVkFTKTskKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpOyQoRU5BQkxF
X0FUVEFDSE1FTlRfRUxFTUVOVCk7JChFTkFCTEVfQ0FOVkFTX1BBVEgpOyQoRU5BQkxFX0NBTlZB
U19QUk9YWSk7JChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpOyQoRU5BQkxFX0NTUzNfQ09ORElU
SU9OQUxfUlVMRVMpOyQoRU5BQkxFX0NTU19JTUFHRV9TRVQpOyQoRU5BQkxFX0NTUzNfVEVYVCk7
JChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKTskKEVOQUJMRV9DU1NfU0hBREVSUyk7
JChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKTskKEVOQUJMRV9DU1NfUkVHSU9OUyk7JChFTkFCTEVf
Q1NTX1NFTEVDVE9SU19MRVZFTDQpOyQoRU5BQkxFX0NTU19TSEFQRV9JTlNJREUpOyQoRU5BQkxF
X0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVFJBTlNJVElPTlNfVU5QUkVGSVhFRCk7JChFTkFC
TEVfQ1VSU09SX1ZJU0lCSUxJVFkpOyQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUik7JChF
TkFCTEVfREFUQUdSSUQpOyQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpOyQoRU5BQkxFX0RBVEFf
VFJBTlNGRVJfSVRFTVMpOyQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTik7JChFTkFCTEVfRElS
RUNUT1JZX1VQTE9BRCk7JChFTkFCTEVfRU5DUllQVEVEX01FRElBKTskKEVOQUJMRV9GRVRDSF9B
UEkpOyQoRU5BQkxFX0ZJTEVfU1lTVEVNKTskKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSk7JChFTkFC
TEVfR0FNRVBBRCk7JChFTkFCTEVfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0hJR0hfRFBJX0NBTlZB
Uyk7JChFTkFCTEVfSUNPTkRBVEFCQVNFKTskKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKTskKEVO
QUJMRV9JTlBVVF9UWVBFX0NPTE9SKTskKEVOQUJMRV9JTlBVVF9TUEVFQ0gpOyQoRU5BQkxFX0lO
UFVUX1RZUEVfREFURSk7JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNPTVBMRVRFKTsk
KEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpOyQoRU5BQkxFX0lOUFVUX1RZUEVfTU9O
VEgpOyQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSk7JChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKTsk
KEVOQUJMRV9JTlRMKTskKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUyk7JChFTkFC
TEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSk7JChFTkFCTEVfTElOS19QUkVGRVRDSCk7JChFTkFC
TEVfTElOS19QUkVSRU5ERVIpOyQoRU5BQkxFX01BVEhNTCk7JChFTkFCTEVfTUVURVJfRUxFTUVO
VCk7JChFTkFCTEVfTUlDUk9EQVRBKTskKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpOyQoRU5B
QkxFX05PVElGSUNBVElPTlMpOyQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpOyQoRU5BQkxFX1FV
T1RBKTskKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUyk7JChFTkFCTEVfU0NSSVBURURf
U1BFRUNIKTskKEVOQUJMRV9TSEFSRURfV09SS0VSUyk7JChFTkFCTEVfTUVESUFfQ09OVFJPTFNf
U0NSSVBUKTskKEVOQUJMRV9NRURJQV9TT1VSQ0UpOyQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1Mp
OyQoRU5BQkxFX1NRTF9EQVRBQkFTRSk7JChFTkFCTEVfU1RZTEVfU0NPUEVEKTskKEVOQUJMRV9T
VUJQSVhFTF9MQVlPVVQpOyQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUyk7JChFTkFCTEVf
U1ZHX0ZPTlRTKTskKEVOQUJMRV9WSURFTyk7JChFTkFCTEVfVklERU9fVFJBQ0spOyQoRU5BQkxF
X1ZJRVdfTU9ERV9DU1NfTUVESUEpOyQoRU5BQkxFX1dFQl9BTklNQVRJT05TKTskKEVOQUJMRV9X
RUJfQVVESU8pOyQoRU5BQkxFX1dFQl9TT0NLRVRTKTskKEVOQUJMRV9XRUJfVElNSU5HKTskKEVO
QUJMRV9XRUJHTCk7JChFTkFCTEVfV0VCVlRUX1JFR0lPTlMpOyQoRU5BQkxFX1hIUl9USU1FT1VU
KTskKEVOQUJMRV9YU0xUKTslKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29y
RGVmaW5pdGlvbnM+CisgICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+JChFTkFCTEVfM0Rf
VFJBTlNGT1JNUyk7JChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKTskKEVOQUJMRV9BQ0NF
TEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpOyQoRU5BQkxFX0FUVEFDSE1FTlRfRUxFTUVOVCk7
JChFTkFCTEVfQ0FOVkFTX1BBVEgpOyQoRU5BQkxFX0NBTlZBU19QUk9YWSk7JChFTkFCTEVfQ0hB
Tk5FTF9NRVNTQUdJTkcpOyQoRU5BQkxFX0NTUzNfQ09ORElUSU9OQUxfUlVMRVMpOyQoRU5BQkxF
X0NTU19JTUFHRV9TRVQpOyQoRU5BQkxFX0NTUzNfVEVYVCk7JChFTkFCTEVfQ1NTX0JPWF9ERUNP
UkFUSU9OX0JSRUFLKTskKEVOQUJMRV9DU1NfU0hBREVSUyk7JChFTkFCTEVfQ1NTX0NPTVBPU0lU
SU5HKTskKEVOQUJMRV9DU1NfUkVHSU9OUyk7JChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQp
OyQoRU5BQkxFX0NTU19TSEFQRV9JTlNJREUpOyQoRU5BQkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1B
VElPTlNfVFJBTlNJVElPTlNfVU5QUkVGSVhFRCk7JChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkp
OyQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUik7JChFTkFCTEVfREFUQUdSSUQpOyQoRU5B
QkxFX0RBVEFMSVNUX0VMRU1FTlQpOyQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpOyQoRU5B
QkxFX0RFVklDRV9PUklFTlRBVElPTik7JChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCk7JChFTkFC
TEVfRU5DUllQVEVEX01FRElBKTskKEVOQUJMRV9GRVRDSF9BUEkpOyQoRU5BQkxFX0ZJTEVfU1lT
VEVNKTskKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSk7JChFTkFCTEVfR0FNRVBBRCk7JChFTkFCTEVf
R0VPTE9DQVRJT04pOyQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUyk7JChFTkFCTEVfSUNPTkRBVEFC
QVNFKTskKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKTskKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9S
KTskKEVOQUJMRV9JTlBVVF9TUEVFQ0gpOyQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSk7JChFTkFC
TEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNPTVBMRVRFKTskKEVOQUJMRV9JTlBVVF9UWVBFX0RB
VEVUSU1FTE9DQUwpOyQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpOyQoRU5BQkxFX0lOUFVUX1RZ
UEVfVElNRSk7JChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKTskKEVOQUJMRV9JTlRMKTskKEVOQUJM
RV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUyk7JChFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9N
RURJQSk7JChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMpOyQoRU5BQkxFX0xJTktfUFJFRkVU
Q0gpOyQoRU5BQkxFX0xJTktfUFJFUkVOREVSKTskKEVOQUJMRV9NQVRITUwpOyQoRU5BQkxFX01F
VEVSX0VMRU1FTlQpOyQoRU5BQkxFX01JQ1JPREFUQSk7JChFTkFCTEVfTU9VU0VfQ1VSU09SX1ND
QUxFKTskKEVOQUJMRV9OT1RJRklDQVRJT05TKTskKEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRTKTsk
KEVOQUJMRV9RVU9UQSk7JChFTkFCTEVfTkFWSUdBVE9SX0NPTlRFTlRfVVRJTFMpOyQoRU5BQkxF
X1NDUklQVEVEX1NQRUVDSCk7JChFTkFCTEVfU0hBUkVEX1dPUktFUlMpOyQoRU5BQkxFX01FRElB
X0NPTlRST0xTX1NDUklQVCk7JChFTkFCTEVfTUVESUFfU09VUkNFKTskKEVOQUJMRV9NRURJQV9T
VEFUSVNUSUNTKTskKEVOQUJMRV9TUUxfREFUQUJBU0UpOyQoRU5BQkxFX1NUWUxFX1NDT1BFRCk7
JChFTkFCTEVfU1VCUElYRUxfTEFZT1VUKTskKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1Mp
OyQoRU5BQkxFX1NWR19GT05UUyk7JChFTkFCTEVfVklERU8pOyQoRU5BQkxFX1ZJREVPX1RSQUNL
KTskKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKTskKEVOQUJMRV9XRUJfQU5JTUFUSU9OUyk7
JChFTkFCTEVfV0VCX0FVRElPKTskKEVOQUJMRV9XRUJfU09DS0VUUyk7JChFTkFCTEVfV0VCX1RJ
TUlORyk7JChFTkFCTEVfV0VCR0wpOyQoRU5BQkxFX1dFQlZUVF9SRUdJT05TKTskKEVOQUJMRV9Y
SFJfVElNRU9VVCk7JChFTkFCTEVfWFNMVCk7JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1By
ZXByb2Nlc3NvckRlZmluaXRpb25zPgogICAgIDwvQ2xDb21waWxlPgogICA8L0l0ZW1EZWZpbml0
aW9uR3JvdXA+CiAgIDxJdGVtR3JvdXA+CkBAIC0yNjMsNiArMjY0LDEwIEBACiAgICAgICA8VmFs
dWU+JChFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVMpPC9WYWx1ZT4KICAgICAgIDxF
bnZpcm9ubWVudFZhcmlhYmxlPnRydWU8L0Vudmlyb25tZW50VmFyaWFibGU+CiAgICAgPC9CdWls
ZE1hY3JvPgorICAgIDxCdWlsZE1hY3JvIEluY2x1ZGU9IkVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FU
SU9OUyI+CisgICAgICA8VmFsdWU+JChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMpPC9WYWx1
ZT4KKyAgICAgIDxFbnZpcm9ubWVudFZhcmlhYmxlPnRydWU8L0Vudmlyb25tZW50VmFyaWFibGU+
CisgICAgPC9CdWlsZE1hY3JvPgogICAgIDxCdWlsZE1hY3JvIEluY2x1ZGU9IkVOQUJMRV9MSU5L
X1BSRUZFVENIIj4KICAgICAgIDxWYWx1ZT4kKEVOQUJMRV9MSU5LX1BSRUZFVENIKTwvVmFsdWU+
CiAgICAgICA8RW52aXJvbm1lbnRWYXJpYWJsZT50cnVlPC9FbnZpcm9ubWVudFZhcmlhYmxlPgpk
aWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGY0NDhk
ZTRkMGE5NTgwZjQxMzBiNjAyOWRjZmNkYjc1MDU4OGExZjguLjc3ZDRmMjQzMjhkNzZkOTFmZDVj
YmFkN2U0MzQ1MzhmNTM5ZGYzNTIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxNy0wNS0wNCAgQ29tbWl0IFF1ZXVl
ICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGlu
ZyBvdXQgcjIxNjIwNi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE3MTcxNAorCisgICAgICAgIE11bHRpcGxlIExheW91dFRlc3RzIGNyYXNoaW5nIGlu
IERvY3VtZW50OjpwYWdlKCkgKFJlcXVlc3RlZAorICAgICAgICBieSBhcCBvbiAjd2Via2l0KS4K
KworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIlJlbW92ZSBzdXBwb3J0
IGZvciBsZWdhY3kgTm90aWZpY2F0aW9ucyIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE3MTQ4NworICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC8yMTYyMDYKKwogMjAxNy0wNS0wNCAgTWFyayBMYW0gIDxtYXJrLmxhbUBhcHBs
ZS5jb20+CiAKICAgICAgICAgQVBJIHRlc3QgV1RGLlN0YXRpY1N0cmluZ0ltcGwgY3Jhc2hpbmcg
aW4gVGVzdFdlYktpdEFQSTo6V1RGX1N0YXRpY1N0cmluZ0ltcGxfVGVzdDo6VGVzdEJvZHkoKSAr
IDMxODgKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9EUlREZXNrdG9wTm90
aWZpY2F0aW9uUHJlc2VudGVyLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9EUlREZXNr
dG9wTm90aWZpY2F0aW9uUHJlc2VudGVyLmNwcAppbmRleCAxNjJjYmE0OWJkZjVjYzE1NTZiYjlm
MTIzNzdhMzJhOTMyY2M5MzllLi5kYTM5ZWIxMGU4YjE4ZjE1MTZjZjNjMWM1MzcwYzM3ZmRkZGUy
ODMyIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS93aW4vRFJURGVza3RvcE5vdGlm
aWNhdGlvblByZXNlbnRlci5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0RSVERl
c2t0b3BOb3RpZmljYXRpb25QcmVzZW50ZXIuY3BwCkBAIC0xMjUsNyArMTI1LDcgQEAgSFJFU1VM
VCBEUlREZXNrdG9wTm90aWZpY2F0aW9uUHJlc2VudGVyOjpjaGVja05vdGlmaWNhdGlvblBlcm1p
c3Npb24oX0luXyBCU1RSIC8KIAogICAgICpyZXN1bHQgPSAwOwogCi0jaWYgRU5BQkxFKE5PVElG
SUNBVElPTlMpCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9U
SUZJQ0FUSU9OUykKICAgICBKU1N0cmluZ1JlZiBqc09yaWdpbiA9IEpTU3RyaW5nQ3JlYXRlV2l0
aEJTVFIob3JpZ2luKTsKICAgICBib29sIGFsbG93ZWQgPSA6OmdUZXN0UnVubmVyLT5jaGVja0Rl
c2t0b3BOb3RpZmljYXRpb25QZXJtaXNzaW9uKGpzT3JpZ2luKTsKIApkaWZmIC0tZ2l0IGEvVG9v
bHMvU2NyaXB0cy93ZWJraXRwZXJsL0ZlYXR1cmVMaXN0LnBtIGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRwZXJsL0ZlYXR1cmVMaXN0LnBtCmluZGV4IGQ5NTM0Yjg3YmMzZTcxOWZmNzA3NDcyZmMwOTJj
MzQ3NmM4Yzg0ZjcuLjJjM2FlMTFhNzMwNmMyN2Y1MzZkZTAzYTg0YjljODlhNTc4MmVjZjkgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9GZWF0dXJlTGlzdC5wbQorKysgYi9U
b29scy9TY3JpcHRzL3dlYmtpdHBlcmwvRmVhdHVyZUxpc3QucG0KQEAgLTI4MSw2ICsyODEsOSBA
QCBteSBAZmVhdHVyZXMgPSAoCiAgICAgeyBvcHRpb24gPT4gImxlZ2FjeS1lbmNyeXB0ZWQtbWVk
aWEiLCBkZXNjID0+ICJUb2dnbGUgTGVnYWN5IEVNRSBWMiBzdXBwb3J0IiwKICAgICAgIGRlZmlu
ZSA9PiAiRU5BQkxFX0xFR0FDWV9FTkNSWVBURURfTUVESUEiLCBkZWZhdWx0ID0+IDAsIHZhbHVl
ID0+IFwkbGVnYWN5RW5jcnlwdGVkTWVkaWFTdXBwb3J0IH0sCiAKKyAgICB7IG9wdGlvbiA9PiAi
bGVnYWN5LW5vdGlmaWNhdGlvbnMiLCBkZXNjID0+ICJUb2dnbGUgTGVnYWN5IE5vdGlmaWNhdGlv
bnMgc3VwcG9ydCIsCisgICAgICBkZWZpbmUgPT4gIkVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9O
UyIsIGRlZmF1bHQgPT4gMCwgdmFsdWUgPT4gXCRsZWdhY3lOb3RpZmljYXRpb25zU3VwcG9ydCB9
LAorCiAgICAgeyBvcHRpb24gPT4gImxlZ2FjeS12ZW5kb3ItcHJlZml4ZXMiLCBkZXNjID0+ICJU
b2dnbGUgTGVnYWN5IFZlbmRvciBQcmVmaXggc3VwcG9ydCIsCiAgICAgICBkZWZpbmUgPT4gIkVO
QUJMRV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTIiwgZGVmYXVsdCA9PiAxLCB2YWx1ZSA9PiBcJGxl
Z2FjeVZlbmRvclByZWZpeFN1cHBvcnQgfSwKIApkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktp
dEFQSS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggNGFi
YTAyZDEwYmRkNGE5MDU3OGFlY2E5ODIwNmEyNjYzNDA1M2EzYS4uMGJhNWUxODFmN2IwZTFhZmFj
ZjQ0MjExYTRkMDEzMjBhYTQ5NmZiNiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9D
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZworKysgYi9Ub29scy9UZXN0V2Vi
S2l0QVBJL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC0xMzksNiAr
MTM5LDcgQEAgRU5BQkxFX0tFWUJPQVJEX0tFWV9BVFRSSUJVVEUgPSBFTkFCTEVfS0VZQk9BUkRf
S0VZX0FUVFJJQlVURTsKIEVOQUJMRV9LRVlCT0FSRF9DT0RFX0FUVFJJQlVURSA9IEVOQUJMRV9L
RVlCT0FSRF9DT0RFX0FUVFJJQlVURTsKIEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhF
UyA9IEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUzsKIEVOQUJMRV9MRUdBQ1lfRU5D
UllQVEVEX01FRElBW3Nkaz1tYWNvc3gqXSA9IEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElB
OworRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TW3Nkaz1tYWNvc3gqXSA9IEVOQUJMRV9MRUdB
Q1lfTk9USUZJQ0FUSU9OUzsKIEVOQUJMRV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTID0gRU5BQkxF
X0xFR0FDWV9WRU5ET1JfUFJFRklYRVM7CiBFTkFCTEVfTEVUVEVSUFJFU1Nbc2RrPWlwaG9uZSpd
ID0gRU5BQkxFX0xFVFRFUlBSRVNTOwogRU5BQkxFX0xJTktfUFJFRkVUQ0ggPSA7CkBAIC0yNTQs
NCArMjU1LDQgQEAgRU5BQkxFX1ZBUklBVElPTl9GT05UU19JRl9OT1RfID0gJChFTkFCTEVfVkFS
SUFUSU9OX0ZPTlRTX0lGX05PVF9OTyk7CiBFTkFCTEVfVkFSSUFUSU9OX0ZPTlRTX0lGX05PVF9O
TyA9IEVOQUJMRV9WQVJJQVRJT05fRk9OVFM7CiBFTkFCTEVfVkFSSUFUSU9OX0ZPTlRTX0lGX05P
VF9ZRVMgPSA7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX1RSQU5TRk9STVMpICQo
RU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZM
T1dfU0NST0xMSU5HKSAkKEVOQUJMRV9BUFBMRV9QQVkpICQoRU5BQkxFX0FQUExFX1BBWV9ERUxF
R0FURSkgJChFTkFCTEVfQVRUQUNITUVOVF9FTEVNRU5UKSAkKEVOQUJMRV9BVkZfQ0FQVElPTlMp
ICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5B
QkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NP
TlRFTlRfRklMVEVSSU5HKSAkKEVOQUJMRV9DU1NfQU5JTUFUSU9OU19MRVZFTF8yKSAkKEVOQUJM
RV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19DT01QT1NJVElORykgJChF
TkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJ
T04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykg
JChFTkFCTEVfQ1NTX1NDUk9MTF9TTkFQKSAkKEVOQUJMRV9DU1NfU0VMRUNUT1JTX0xFVkVMNCkg
JChFTkFCTEVfQ1NTX1RSQUlMSU5HX1dPUkQpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVf
Q1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikgJChFTkFC
TEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5B
QkxFX0RBVEFDVUVfVkFMVUUpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RF
VklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9GQVNU
X0pJVF9QRVJNSVNTSU9OUykgJChFTkFCTEVfRkVUQ0hfQVBJKSAkKEVOQUJMRV9GSUxURVJTX0xF
VkVMXzIpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5B
QkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEX0RFUFJFQ0FURUQpICQoRU5BQkxF
X0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQo
RU5BQkxFX0lOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykgJChFTkFCTEVfSU5ERVhFRF9EQVRB
QkFTRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUl9QT1BPVkVSKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVf
REFURVRJTUVfSU5DT01QTEVURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5B
QkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSU5URVJTRUNUSU9OX09CU0VSVkVSKSAkKEVO
QUJMRV9JTlRMKSAkKEVOQUJMRV9JT1NfR0VTVFVSRV9FVkVOVFMpICQoRU5BQkxFX0lPU19UT1VD
SF9FVkVOVFMpICQoRU5BQkxFX0pJVCkgJChFTkFCTEVfS0VZQk9BUkRfS0VZX0FUVFJJQlVURSkg
JChFTkFCTEVfS0VZQk9BUkRfQ09ERV9BVFRSSUJVVEUpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVO
RE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9M
RUdBQ1lfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRVRURVJQUkVTUykgJChFTkFCTEVfTElO
S19QUkVGRVRDSCkgJChFTkFCTEVfTUFDX0dFU1RVUkVfRVZFTlRTKSAkKEVOQUJMRV9NQVRITUwp
ICQoRU5BQkxFX01FRElBX0NBUFRVUkUpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkg
JChFTkFCTEVfTUVESUFfU0VTU0lPTikgJChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9N
RURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRURJQV9TVFJFQU0pICQoRU5BQkxFX01FVEVSX0VM
RU1FTlQpICQoRU5BQkxFX01IVE1MKSAkKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5B
QkxFX05BVklHQVRPUl9DT05URU5UX1VUSUxTKSAkKEVOQUJMRV9OQVZJR0FUT1JfSFdDT05DVVJS
RU5DWSkgJChFTkFCTEVfTk9TTklGRikgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVf
UERGS0lUX1BMVUdJTikgJChFTkFCTEVfUE9JTlRFUl9MT0NLKSAkKEVOQUJMRV9QUk9YSU1JVFlf
RVZFTlRTKSAkKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1QpICQoRU5BQkxFX1FVT1RBKSAkKEVO
QUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVFVRVNUX0FVVE9DT01QTEVURSkgJChF
TkFCTEVfUkVTT0xVVElPTl9NRURJQV9RVUVSWSkgJChFTkFCTEVfUkVTT1VSQ0VfVVNBR0UpICQo
RU5BQkxFX1JVQkJFUl9CQU5ESU5HKSAkKEVOQUJMRV9TRVJWSUNFX0NPTlRST0xTKSAkKEVOQUJM
RV9TUEVFQ0hfU1lOVEhFU0lTKSAkKEVOQUJMRV9TVFJFQU1TX0FQSSkgJChFTkFCTEVfU1VCVExF
X0NSWVBUTykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9URUxFUEhPTkVfTlVNQkVSX0RF
VEVDVElPTikgJChFTkFCTEVfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9UT1VDSF9FVkVOVFMp
ICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElORykgJChFTkFCTEVfVVNFUlNFTEVDVF9BTEwpICQo
RU5BQkxFX1ZBUklBVElPTl9GT05UUykgJChFTkFCTEVfVklERU9fUFJFU0VOVEFUSU9OX01PREUp
ICQoRU5BQkxFX01BQ19WSURFT19UT09MQk9YKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFC
TEVfVklERU8pICQoRU5BQkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQl9BTklN
QVRJT05TKSAkKEVOQUJMRV9XRUJfQVVESU8pICQoRU5BQkxFX1dFQl9SRVBMQVkpICQoRU5BQkxF
X1dFQl9SVEMpICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVO
QUJMRV9XRUJBU1NFTUJMWSkgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxFX1dFQkdMMikgJChFTkFC
TEVfV0VCR1BVKSAkKEVOQUJMRV9XSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpICQoRU5BQkxFX1hT
TFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfVFJBTlNGT1JNUykgJChFTkFCTEVf
QUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JP
TExJTkcpICQoRU5BQkxFX0FQUExFX1BBWSkgJChFTkFCTEVfQVBQTEVfUEFZX0RFTEVHQVRFKSAk
KEVOQUJMRV9BVFRBQ0hNRU5UX0VMRU1FTlQpICQoRU5BQkxFX0FWRl9DQVBUSU9OUykgJChFTkFC
TEVfQ0FDSEVfUEFSVElUSU9OSU5HKSAkKEVOQUJMRV9DQU5WQVNfUEFUSCkgJChFTkFCTEVfQ0FO
VkFTX1BST1hZKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ09OVEVOVF9G
SUxURVJJTkcpICQoRU5BQkxFX0NTU19BTklNQVRJT05TX0xFVkVMXzIpICQoRU5BQkxFX0NTU19C
T1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKSAkKEVOQUJMRV9D
U1NfREVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikgJChF
TkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAkKEVOQUJM
RV9DU1NfU0NST0xMX1NOQVApICQoRU5BQkxFX0NTU19TRUxFQ1RPUlNfTEVWRUw0KSAkKEVOQUJM
RV9DU1NfVFJBSUxJTkdfV09SRCkgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DVVJTT1Jf
VklTSUJJTElUWSkgJChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKSAkKEVOQUJMRV9EQVNI
Qk9BUkRfU1VQUE9SVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREFU
QUNVRV9WQUxVRSkgJChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09S
SUVOVEFUSU9OKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUEpICQoRU5BQkxFX0ZBU1RfSklUX1BF
Uk1JU1NJT05TKSAkKEVOQUJMRV9GRVRDSF9BUEkpICQoRU5BQkxFX0ZJTFRFUlNfTEVWRUxfMikg
JChFTkFCTEVfRk9OVF9MT0FEX0VWRU5UUykgJChFTkFCTEVfRlRMX0pJVCkgJChFTkFCTEVfRlVM
TFNDUkVFTl9BUEkpICQoRU5BQkxFX0dBTUVQQURfREVQUkVDQVRFRCkgJChFTkFCTEVfR0FNRVBB
RCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVf
SU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09M
T1IpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElN
RV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxF
X0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JTlRFUlNFQ1RJT05fT0JTRVJWRVIpICQoRU5BQkxFX0lO
VEwpICQoRU5BQkxFX0lPU19HRVNUVVJFX0VWRU5UUykgJChFTkFCTEVfSU9TX1RPVUNIX0VWRU5U
UykgJChFTkFCTEVfSklUKSAkKEVOQUJMRV9LRVlCT0FSRF9LRVlfQVRUUklCVVRFKSAkKEVOQUJM
RV9LRVlCT0FSRF9DT0RFX0FUVFJJQlVURSkgJChFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJF
RklYRVMpICQoRU5BQkxFX0xFR0FDWV9FTkNSWVBURURfTUVESUEpICQoRU5BQkxFX0xFR0FDWV9O
T1RJRklDQVRJT05TKSAkKEVOQUJMRV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9M
RVRURVJQUkVTUykgJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFDX0dFU1RVUkVf
RVZFTlRTKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NBUFRVUkUpICQoRU5BQkxF
X01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFCTEVfTUVESUFfU0VTU0lPTikgJChFTkFCTEVf
TUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRURJQV9T
VFJFQU0pICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01IVE1MKSAkKEVOQUJMRV9N
T1VTRV9DVVJTT1JfU0NBTEUpICQoRU5BQkxFX05BVklHQVRPUl9DT05URU5UX1VUSUxTKSAkKEVO
QUJMRV9OQVZJR0FUT1JfSFdDT05DVVJSRU5DWSkgJChFTkFCTEVfTk9TTklGRikgJChFTkFCTEVf
Tk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVfUE9JTlRFUl9M
T0NLKSAkKEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRTKSAkKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJ
U1QpICQoRU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9S
RVFVRVNUX0FVVE9DT01QTEVURSkgJChFTkFCTEVfUkVTT0xVVElPTl9NRURJQV9RVUVSWSkgJChF
TkFCTEVfUkVTT1VSQ0VfVVNBR0UpICQoRU5BQkxFX1JVQkJFUl9CQU5ESU5HKSAkKEVOQUJMRV9T
RVJWSUNFX0NPTlRST0xTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAkKEVOQUJMRV9TVFJF
QU1TX0FQSSkgJChFTkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVO
QUJMRV9URUxFUEhPTkVfTlVNQkVSX0RFVEVDVElPTikgJChFTkFCTEVfVEVYVF9BVVRPU0laSU5H
KSAkKEVOQUJMRV9UT1VDSF9FVkVOVFMpICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElORykgJChF
TkFCTEVfVVNFUlNFTEVDVF9BTEwpICQoRU5BQkxFX1ZBUklBVElPTl9GT05UUykgJChFTkFCTEVf
VklERU9fUFJFU0VOVEFUSU9OX01PREUpICQoRU5BQkxFX01BQ19WSURFT19UT09MQk9YKSAkKEVO
QUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJRVdfTU9ERV9DU1Nf
TUVESUEpICQoRU5BQkxFX1dFQl9BTklNQVRJT05TKSAkKEVOQUJMRV9XRUJfQVVESU8pICQoRU5B
QkxFX1dFQl9SRVBMQVkpICQoRU5BQkxFX1dFQl9SVEMpICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAk
KEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJMRV9XRUJBU1NFTUJMWSkgJChFTkFCTEVfV0VCR0wp
ICQoRU5BQkxFX1dFQkdMMikgJChFTkFCTEVfV0VCR1BVKSAkKEVOQUJMRV9XSVJFTEVTU19QTEFZ
QkFDS19UQVJHRVQpICQoRU5BQkxFX1hTTFQpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGRiZTAwNWUwYjA0NDZkMWJiY2Zi
MmY2YTMwOGUzZmJhMDEyZDNkN2IuLmFlZGNjMmRmZjc5NzE2MGVlYzk1NDkwM2IzMjk1NDU4ZmIy
NmFkMTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxNy0wNS0wNCAgQ29tbWl0IFF1ZXVlICA8
Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBv
dXQgcjIxNjIwNi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE3MTcxNAorCisgICAgICAgIE11bHRpcGxlIExheW91dFRlc3RzIGNyYXNoaW5nIGluIERv
Y3VtZW50OjpwYWdlKCkgKFJlcXVlc3RlZAorICAgICAgICBieSBhcCBvbiAjd2Via2l0KS4KKwor
ICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIlJlbW92ZSBzdXBwb3J0IGZv
ciBsZWdhY3kgTm90aWZpY2F0aW9ucyIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE3MTQ4NworICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2No
YW5nZXNldC8yMTYyMDYKKwogMjAxNy0wNS0wNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUu
Y29tPgogCiAgICAgICAgIEVsZW1lbnQuc2xvdCBzaG91bGQgYmUgbWFya2VkIGFzIFtVbnNjb3Bh
YmxlXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3BhZ2UtY2FjaGUtbm90
aWZpY2F0aW9uLW5vbi1zdXNwZW5kYWJsZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5
L3BhZ2UtY2FjaGUtbm90aWZpY2F0aW9uLW5vbi1zdXNwZW5kYWJsZS5odG1sCmluZGV4IDVkN2Y1
Y2ExZTYyZDRmMTQ1NjM4ZTRlMDQyOTdjNGZhZTU1NTYyNGEuLjY4YzJkNTMwMDZkZjE2YWY3NTFi
OGM4NGE4MzcyNzIxNzY4OTZjYTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaGlzdG9y
eS9wYWdlLWNhY2hlLW5vdGlmaWNhdGlvbi1ub24tc3VzcGVuZGFibGUuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2hpc3RvcnkvcGFnZS1jYWNoZS1ub3RpZmljYXRpb24tbm9uLXN1c3BlbmRh
YmxlLmh0bWwKQEAgLTM3LDcgKzM3LDcgQEAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQn
LCBmdW5jdGlvbigpIHsKICAgICB3aW5kb3cuc2Vzc2lvblN0b3JhZ2UucGFnZV9jYWNoZV9ub3Rp
ZmljYXRpb25zX3Rlc3Rfc3RhcnRlZCA9IHRydWU7CiAKICAgICAvLyBUaGlzIG5vdGlmaWNhdGlv
biBpcyBzaG93biBhbmQgc2hvdWxkIG5vdCBiZSBzdXNwZW5kYWJsZS4KLSAgICBub3RpZmljYXRp
b24gPSBuZXcgTm90aWZpY2F0aW9uKCd0aXRsZScsIHsgYm9keTogJ2JvZHknIH0pOworICAgIG5v
dGlmaWNhdGlvbiA9IHdlYmtpdE5vdGlmaWNhdGlvbnMuY3JlYXRlTm90aWZpY2F0aW9uKCcnLCAn
dGl0bGUgMicsICdib2R5Jyk7CiAgICAgbm90aWZpY2F0aW9uLm9uZXJyb3IgPSBmdW5jdGlvbigp
IHsKICAgICAgICAgdGVzdEZhaWxlZCgiQ291bGQgbm90IHNob3cgdGhlIG5vdGlmaWNhdGlvbiIp
OwogICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKQEAgLTQ2LDYgKzQ2LDcgQEAgd2luZG93LmFkZEV2
ZW50TGlzdGVuZXIoJ2xvYWQnLCBmdW5jdGlvbigpIHsKICAgICAgICAgLy8gRm9yY2UgYSBiYWNr
IG5hdmlnYXRpb24gYmFjayB0byB0aGlzIHBhZ2UuCiAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5o
cmVmID0gInJlc291cmNlcy9wYWdlLWNhY2hlLWhlbHBlci5odG1sIjsKICAgICB9OworICAgIG5v
dGlmaWNhdGlvbi5zaG93KCk7CiB9LCBmYWxzZSk7CiAKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3BhZ2UtY2FjaGUtbm90aWZpY2F0aW9uLXN1c3BlbmRh
YmxlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvcGFnZS1jYWNoZS1ub3RpZmljYXRp
b24tc3VzcGVuZGFibGUuaHRtbAppbmRleCAzZjhjNGU1MDIxZjMxMDNhNWFhMTNiZmVkYTYzNDBi
MWVlZWYwYjk3Li5lNjhiOTY4ZGFiYzFhZTc5YzVlYmY0MDgxMTg0M2RhMjIwOTkyYWQxIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvcGFnZS1jYWNoZS1ub3RpZmljYXRpb24t
c3VzcGVuZGFibGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvcGFnZS1jYWNo
ZS1ub3RpZmljYXRpb24tc3VzcGVuZGFibGUuaHRtbApAQCAtMjksMjQgKzI5LDI4IEBAIHdpbmRv
dy5hZGRFdmVudExpc3RlbmVyKCJwYWdlaGlkZSIsIGZ1bmN0aW9uKGV2ZW50KSB7CiB9LCBmYWxz
ZSk7CiAKIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZnVuY3Rpb24oKSB7CisgICAg
Ly8gVGhpcyBub3RpZmljYXRpb24gaXMgaW4gaWRsZSBzdGF0ZSBhbmQgc2hvdWxkIGJlIHN1c3Bl
bmRhYmxlLgorICAgIG5vdGlmaWNhdGlvbjEgPSB3ZWJraXROb3RpZmljYXRpb25zLmNyZWF0ZU5v
dGlmaWNhdGlvbignJywgJ3RpdGxlIDEnLCAnYm9keScpOworCiAgICAgLy8gVGhpcyBub3RpZmlj
YXRpb24gaXMgc2hvd24gYW5kIHNob3VsZCBiZSBzdXNwZW5kYWJsZSBvbmNlIGl0IGlzIGNsb3Nl
ZC4KLSAgICBub3RpZmljYXRpb24gPSBuZXcgTm90aWZpY2F0aW9uKCd0aXRsZScsIHsgYm9keTog
J2JvZHknIH0pOwotICAgIG5vdGlmaWNhdGlvbi5vbmRpc3BsYXkgPSBmdW5jdGlvbigpIHsKKyAg
ICBub3RpZmljYXRpb24yID0gd2Via2l0Tm90aWZpY2F0aW9ucy5jcmVhdGVOb3RpZmljYXRpb24o
JycsICd0aXRsZSAyJywgJ2JvZHknKTsKKyAgICBub3RpZmljYXRpb24yLm9uZGlzcGxheSA9IGZ1
bmN0aW9uKCkgewogICAgICAgICAvLyBDbG9zZSB0aGUgbm90aWZpY2F0aW9uLgogICAgICAgICBz
ZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgbm90aWZpY2F0aW9uLmNsb3NlKCk7
CisgICAgICAgICAgICBub3RpZmljYXRpb24yLmNhbmNlbCgpOwogICAgICAgICB9LCAwKTsKICAg
ICB9OwotICAgIG5vdGlmaWNhdGlvbi5vbmVycm9yID0gZnVuY3Rpb24oKSB7CisgICAgbm90aWZp
Y2F0aW9uMi5vbmVycm9yID0gZnVuY3Rpb24oKSB7CiAgICAgICAgIHRlc3RGYWlsZWQoIkNvdWxk
IG5vdCBkaXNwbGF5IHRoZSBub3RpZmljYXRpb24iKTsKICAgICAgICAgZmluaXNoSlNUZXN0KCk7
CiAgICAgfTsKLSAgICBub3RpZmljYXRpb24ub25jbG9zZSA9IGZ1bmN0aW9uKCkgeworICAgIG5v
dGlmaWNhdGlvbjIub25jbG9zZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICBzZXRUaW1lb3V0KGZ1
bmN0aW9uKCkgewogICAgICAgICAgICAgLy8gRm9yY2UgYSBiYWNrIG5hdmlnYXRpb24gYmFjayB0
byB0aGlzIHBhZ2UuCiAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJyZXNvdXJj
ZXMvcGFnZS1jYWNoZS1oZWxwZXIuaHRtbCI7CiAgICAgICAgIH0sIDApOwogICAgIH07CisgICAg
bm90aWZpY2F0aW9uMi5zaG93KCk7CiB9LCBmYWxzZSk7CiAKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbi1hZnRlci1jbG9z
ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0
aW9uLWFmdGVyLWNsb3NlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42OWNmYzVhOThkYjc0ZmJl
MzJhYzliNjc4YTYxMzRhZjk3MzZkZDU5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbi1hZnRlci1jbG9zZS1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwyIEBACitQQVNTCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90
aWZpY2F0aW9ucy9ub3RpZmljYXRpb24tYWZ0ZXItY2xvc2UuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb24tYWZ0ZXItY2xvc2UuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4zNjdlZjRhNGZiN2Y3ZDFlYTY4MGVlNGY0NzZiMWEyNjYyN2M1N2ViCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbi1hZnRlci1j
bG9zZS5odG1sCkBAIC0wLDAgKzEsNDQgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVh
ZD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgIGZ1bmN0aW9u
IGxvZyhtZXNzYWdlKQorICAgICAgICB7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicmVzdWx0IikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiPGJyPiI7CisgICAgICAgIH0K
KyAgICAgICAgCisgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3RzKCkKKyAgICAgICAgeworICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgICAgICAgICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25l
KCk7CisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRDYW5PcGVuV2luZG93cygpOworICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICB3aW4gPSB3aW5kb3cub3BlbignYWJvdXQ6Ymxhbmsn
KTsKKyAgICAgICAgICAgIGlmICh3aW4ud2Via2l0Tm90aWZpY2F0aW9ucyA9PT0gdW5kZWZpbmVk
KSB7CisgICAgICAgICAgICAgICAgbG9nKCJQQVNTIik7CisgICAgICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgICAgICAgIG5vdGlmaWNhdGlvbkNlbnRlcj13aW4ud2Via2l0Tm90aWZpY2F0aW9u
czsKKyAgICAgICAgICAgICAgICB3aW4uY2xvc2UoKTsKKyAgICAgICAgICAgICAgICB0cnkgeyAK
KyAgICAgICAgICAgICAgICAgICAgbj1ub3RpZmljYXRpb25DZW50ZXIuY3JlYXRlTm90aWZpY2F0
aW9uKCcnKTsgCisgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KKyAgICAgICAgICAgICAg
ICAvLyBKdXN0IG1ha2Ugc3VyZSB3ZSBkb24ndCBjcmFzaC4KKyAgICAgICAgICAgICAgICBsb2co
IlBBU1MiKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgICAgICB9
CisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+
ICAgIAorICAgIAorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorcnVuVGVzdHMoKTsK
Kzwvc2NyaXB0PgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9uLXBlcm1pc3NzaW9uLWRlbGV0YWJsZS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9uLXBl
cm1pc3NzaW9uLWRlbGV0YWJsZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjViZWZjMzNjMjM1
MDdkYTg3ZjNhNGZmZWE5NjVlN2YzN2VmMDc2YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb24tcGVybWlzc3Npb24tZGVsZXRhYmxl
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACitUZXN0cyB0aGF0IE5vdGlmaWNhdGlvbi5w
ZXJtaXNzaW9uIGlzIGRlbGV0YWJsZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisK
K1BBU1MgTm90aWZpY2F0aW9uLnBlcm1pc3Npb24gaXMgImRlZmF1bHQiCitQQVNTIGRlbGV0ZSBO
b3RpZmljYXRpb24ucGVybWlzc2lvbiBpcyB0cnVlCitQQVNTIE5vdGlmaWNhdGlvbi5wZXJtaXNz
aW9uIGlzIHVuZGVmaW5lZC4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMv
bm90aWZpY2F0aW9uLXBlcm1pc3NzaW9uLWRlbGV0YWJsZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbi1wZXJtaXNzc2lvbi1kZWxldGFibGUuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4wMmU1N2YyZWIxM2QyZjA4MDQ0MWYyZDVkNGJjMmIxNzdjZjhkMWYxCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlv
bi1wZXJtaXNzc2lvbi1kZWxldGFibGUuaHRtbApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGJvZHk+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCBO
b3RpZmljYXRpb24ucGVybWlzc2lvbiBpcyBkZWxldGFibGUuIik7CisKK3Nob3VsZEJlRXF1YWxU
b1N0cmluZygiTm90aWZpY2F0aW9uLnBlcm1pc3Npb24iLCAiZGVmYXVsdCIpOworc2hvdWxkQmVU
cnVlKCJkZWxldGUgTm90aWZpY2F0aW9uLnBlcm1pc3Npb24iKTsKK3Nob3VsZEJlVW5kZWZpbmVk
KCJOb3RpZmljYXRpb24ucGVybWlzc2lvbiIpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9u
cy1jYW5jZWwtcmVxdWVzdC1wZXJtaXNzaW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWNhbmNlbC1yZXF1ZXN0LXBlcm1pc3Npb24t
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFiNGQwNTQ5YjdhZDg3N2QzMzdkMGExYWMxNGYyZjdi
ZjdlZmJiYTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlv
bnMvbm90aWZpY2F0aW9ucy1jYW5jZWwtcmVxdWVzdC1wZXJtaXNzaW9uLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDUgQEAKK0RFU0tUT1AgTk9USUZJQ0FUSU9OIFBFUk1JU1NJT04gUkVRVUVTVEVE
OiBmaWxlOi8vCitERVNLVE9QIE5PVElGSUNBVElPTiBQRVJNSVNTSU9OIFJFUVVFU1QgQ0FOQ0VM
TEVEOiBmaWxlOi8vCitSZXF1ZXN0aW5nIGFuZCBjYW5jZWxsaW5nIG5vdGlmaWNhdGlvbiBwZXJt
aXNzaW9uLi4uCisKK1Bhc3MgaWYgbm90aWZpY2F0aW9uIGlzIGNhbmNlbGxlZApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtY2FuY2VsLXJl
cXVlc3QtcGVybWlzc2lvbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25v
dGlmaWNhdGlvbnMtY2FuY2VsLXJlcXVlc3QtcGVybWlzc2lvbi5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFk
ZWU0MjdlMWJjYTMyMjM4N2JiOWM4M2IyM2NkYjYzN2Y3ODQzZWIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1jYW5jZWwtcmVx
dWVzdC1wZXJtaXNzaW9uLmh0bWwKQEAgLTAsMCArMSw0NCBAQAorPGh0bWw+Cis8aGVhZD4KKyAg
ICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisKKyAgICAgICAgLy8gVGltZW91dCBp
cyB0byBlbnN1cmUgdGhhdCB0aGUgaWZyYW1lIHdhcyByZW1vdmVkLgorICAgICAgICBzZXRUaW1l
b3V0KGlzRG9uZSw1MDApOworCisgICAgICAgIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQorICAgICAg
ICB7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJI
VE1MICs9IG1lc3NhZ2UgKyAiPGJyPiI7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGZ1
bmN0aW9uIHJ1blRlc3RzKCkKKyAgICAgICAgeworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKSB7CisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAg
ICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIGlmICghd2luZG93LndlYmtpdE5vdGlmaWNhdGlvbnMpIHsKKyAgICAgICAg
ICAgICAgICBsb2coIkZBSUw6IE5vIHdlYmtpdE5vdGlmaWNhdGlvbnMgaW50ZXJmYWNlISIpOwor
ICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdCIpLmlubmVySFRNTD0iUGFzcyBpZiBub3RpZmljYXRpb24gaXMgY2FuY2Vs
bGVkIjsKKyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9uIGlzRG9uZSgpCisgICAgICAgIHsK
KyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICAgICAgICAgIHRl
c3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICA8
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuVGVzdHMoKTsiPgorICAgIDxwPlJl
cXVlc3RpbmcgYW5kIGNhbmNlbGxpbmcgbm90aWZpY2F0aW9uIHBlcm1pc3Npb24uLi48L3A+Cisg
ICAgCis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0idGVzdCI+Cis8aWZyYW1lIHNy
Yz0icmVzb3VyY2VzL25vdGlmaWNhdGlvbnMtY2FuY2VsLXJlcXVlc3QtcGVybWlzc2lvbi5odG1s
IiB3aWR0aD04MDAgaGVpZ2h0PTgwMD48L2lmcmFtZT4KKzwvZGl2PgorPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlv
bnMtY2hlY2stcGVybWlzc2lvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlm
aWNhdGlvbnMvbm90aWZpY2F0aW9ucy1jaGVjay1wZXJtaXNzaW9uLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi45MDdkYjNmZmRkYjJkNGNmZGNhNjAxY2EyZDJhZmRkOGY4MzJiN2U4Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMt
Y2hlY2stcGVybWlzc2lvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitDaGVja2luZyBw
ZXJtaXNzaW9uLi4uCisKK1BBU1M6IFBlcm1pc3Npb24gbm90IGdyYW50ZWQuCitQQVNTOiBQZXJt
aXNzaW9uIGdyYW50ZWQuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0
aW9ucy9ub3RpZmljYXRpb25zLWNoZWNrLXBlcm1pc3Npb24uaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWNoZWNrLXBlcm1pc3Npb24uaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jODkzODU4ZDhlOTgxNDcyOWFiNmU1ZDNhNzRhMjExNWRkY2IxYWYwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMt
Y2hlY2stcGVybWlzc2lvbi5odG1sCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAg
ICAgIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQorICAgICAgICB7CisgICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiPGJyPiI7
CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3RzKCkKKyAgICAg
ICAgeworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgICAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
IGlmICghd2luZG93LndlYmtpdE5vdGlmaWNhdGlvbnMpIHsKKyAgICAgICAgICAgICAgICBsb2co
IkZBSUw6IE5vIHdlYmtpdE5vdGlmaWNhdGlvbnMgaW50ZXJmYWNlISIpOworICAgICAgICAgICAg
fQorICAgICAgICAgICAgCisgICAgICAgICAgICB2YXIgTiA9IHdpbmRvdy53ZWJraXROb3RpZmlj
YXRpb25zLmNoZWNrUGVybWlzc2lvbigpOworICAgICAgICAgICAgaWYgKE4gIT0gMCkgeworICAg
ICAgICAgICAgICAgIGxvZygiUEFTUzogUGVybWlzc2lvbiBub3QgZ3JhbnRlZC4iKTsKKyAgICAg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgbG9nKCJGQUlMOiBQZXJtaXNzaW9uIHNo
b3VsZG4ndCBiZSBncmFudGVkLiIpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgICAgICAgICB0ZXN0UnVu
bmVyLmdyYW50V2ViTm90aWZpY2F0aW9uUGVybWlzc2lvbigiZmlsZTovLyIpOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBOID0gd2luZG93LndlYmtpdE5vdGlmaWNh
dGlvbnMuY2hlY2tQZXJtaXNzaW9uKCk7CisgICAgICAgICAgICBpZiAoTiA9PSAwKSB7CisgICAg
ICAgICAgICAgICAgbG9nKCJQQVNTOiBQZXJtaXNzaW9uIGdyYW50ZWQuIik7CisgICAgICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgICAgIGxvZygiRkFJTDogUGVybWlzc2lvbiBub3QgZ3Jh
bnRlZC4iKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIDwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHk+Cis8cD5DaGVja2luZyBwZXJtaXNzaW9uLi4uPC9wPgorPGRpdiBpZD0icmVzdWx0
Ij48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK3J1blRlc3RzKCk7Cis8
L3NjcmlwdD4KKworPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtY2xpY2stZXZlbnQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtY2xpY2stZXZlbnQt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZiMjEwODkyNzM2NjlkOTAzMjAzZDFmMzIzOWE3MzE0
YmI2YjA4YzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlv
bnMvbm90aWZpY2F0aW9ucy1jbGljay1ldmVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBA
CitERVNLVE9QIE5PVElGSUNBVElPTjogaWNvbiAsIHRpdGxlIE5ldyBFLW1haWwsIHRleHQgTWVl
dCBtZSB0b25pZ2h0IGF0IDghCitERVNLVE9QIE5PVElGSUNBVElPTiBDTE9TRUQ6IE5ldyBFLW1h
aWwKK1Nob3dpbmcgbm90aWZpY2F0aW9ucy4KKworVG8gZXhlcmNpc2UgbWFudWFsbHksIGdyYW50
IG5vdGlmaWNhdGlvbiBwZXJtaXNzaW9ucyBhbmQgbG9hZCB0aGlzIHBhZ2UsIHRoZW4gY2xpY2sg
b24gdGhlIG5vdGlmaWNhdGlvbi4gWW91IHNob3VsZCBzZWUgYSAiUEFTUyIgbWVzc2FnZS4KKwor
UEFTUzogY2xpY2sgZXZlbnQgZmlyZWQuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
bm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWNsaWNrLWV2ZW50LWZvY3VzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWNsaWNrLWV2
ZW50LWZvY3VzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNTQ3M2E2YWY4NDMxMTQ5OWQ2Mjky
MmQ2ZDEwOGMyMWU1NDM4NjE4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9u
b3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtY2xpY2stZXZlbnQtZm9jdXMtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsOSBAQAorREVTS1RPUCBOT1RJRklDQVRJT046IGljb24gLCB0aXRsZSBOZXcg
RS1tYWlsLCB0ZXh0IE1lZXQgbWUgdG9uaWdodCBhdCA4IQorREVTS1RPUCBOT1RJRklDQVRJT04g
Q0xPU0VEOiBOZXcgRS1tYWlsCitDaGVjayB0aGF0IHdpbmRvdy5mb2N1cygpIGlzIG5vdCByZXN0
cmljdGVkIGR1cmluZyBub3RpZmljYXRpb24gY2xpY2sgZXZlbnRzLgorCitUbyBleGVyY2lzZSBt
YW51YWxseSwgZGlzYWJsZSBwb3AtdXAgYmxvY2tpbmcsIGdyYW50IG5vdGlmaWNhdGlvbiBwZXJt
aXNzaW9ucyBhbmQgbG9hZCB0aGlzIHBhZ2UsIHRoZW4gY2xpY2sgb24gdGhlIG5vdGlmaWNhdGlv
bi4gWW91IHNob3VsZCBzZWUgdHdvICJQQVNTIiBtZXNzYWdlcyBhbmQgdGhpcyB3aW5kb3cgc2hv
dWxkIGJlIGZvY3VzZWQuCisKK1BBU1M6IGNsaWNrIGV2ZW50IGZpcmVkLgorUEFTUzogZm9jdXMg
ZXZlbnQgZmlyZWQuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9u
cy9ub3RpZmljYXRpb25zLWNsaWNrLWV2ZW50LWZvY3VzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1jbGljay1ldmVudC1mb2N1cy5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmJiMzlhMGM0MmEwYTRhMTAxOGMwM2YxNGFiZGQzYTA1MDQwODIwOTIKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1j
bGljay1ldmVudC1mb2N1cy5odG1sCkBAIC0wLDAgKzEsNTEgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAg
ICAgIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQorICAgICAgICB7CisgICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiPGJyPiI7
CisgICAgICAgIH0KKworICAgICAgICBmdW5jdGlvbiBydW5UZXN0cygpCisgICAgICAgIHsKKyAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICAgICAgICAgIHRlc3RS
dW5uZXIuZ3JhbnRXZWJOb3RpZmljYXRpb25QZXJtaXNzaW9uKCJmaWxlOi8vIik7CisgICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgICAgICAgICAgdGVzdFJ1
bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRDYW5P
cGVuV2luZG93cygpOworICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0Q2xvc2VSZW1haW5p
bmdXaW5kb3dzV2hlbkNvbXBsZXRlKCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGlm
ICghd2luZG93LndlYmtpdE5vdGlmaWNhdGlvbnMpIHsKKyAgICAgICAgICAgICAgICBsb2coIkZB
SUw6IE5vIHdlYmtpdE5vdGlmaWNhdGlvbnMgaW50ZXJmYWNlISIpOworICAgICAgICAgICAgfQor
CisgICAgICAgICAgICAvLyBPcGVuIGEgbmV3IHdpbmRvdywgc28gd2UgZG9uJ3QgaGF2ZSB0aGUg
Zm9jdXMuCisgICAgICAgICAgICB2YXIgVyA9IHdpbmRvdy5vcGVuKCJhYm91dDpibGFuayIpOwor
ICAgICAgICAgICAgVy5mb2N1cygpOworCisgICAgICAgICAgICB3aW5kb3cub25mb2N1cyA9IGZ1
bmN0aW9uKCkgeyBsb2coIlBBU1M6IGZvY3VzIGV2ZW50IGZpcmVkLiIpOyB9CisKKyAgICAgICAg
ICAgIHZhciBOID0gd2luZG93LndlYmtpdE5vdGlmaWNhdGlvbnMuY3JlYXRlTm90aWZpY2F0aW9u
KCIiLCAiTmV3IEUtbWFpbCIsICJNZWV0IG1lIHRvbmlnaHQgYXQgOCEiKTsKKyAgICAgICAgICAg
IE4ub25jbGljayA9IGZ1bmN0aW9uKCkgeyBsb2coIlBBU1M6IGNsaWNrIGV2ZW50IGZpcmVkLiIp
OyB3aW5kb3cuZm9jdXMoKTsgTi5jYW5jZWwoKTsgIH0KKyAgICAgICAgICAgIE4uc2hvdygpOwor
CisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgICAgICAgICB0
ZXN0UnVubmVyLnNpbXVsYXRlTGVnYWN5V2ViTm90aWZpY2F0aW9uQ2xpY2soIk5ldyBFLW1haWwi
KTsKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgfQorICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cD5DaGVjayB0
aGF0IHdpbmRvdy5mb2N1cygpIGlzIG5vdCByZXN0cmljdGVkIGR1cmluZyBub3RpZmljYXRpb24g
Y2xpY2sgZXZlbnRzLjwvcD4KKworPHA+VG8gZXhlcmNpc2UgbWFudWFsbHksIGRpc2FibGUgcG9w
LXVwIGJsb2NraW5nLCBncmFudCBub3RpZmljYXRpb24gcGVybWlzc2lvbnMgYW5kIGxvYWQgdGhp
cyBwYWdlLCB0aGVuIGNsaWNrIG9uIHRoZSBub3RpZmljYXRpb24uICBZb3Ugc2hvdWxkIHNlZSB0
d28gIlBBU1MiIG1lc3NhZ2VzIGFuZCB0aGlzIHdpbmRvdyBzaG91bGQgYmUgZm9jdXNlZC48L3A+
Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorCis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlw
dCI+CitydW5UZXN0cygpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1jbGljay1ldmVu
dC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtY2xp
Y2stZXZlbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZDQwMmVjZDUyNGU4NTc4NjhmYjQ3NmUwNTBlN2M4
M2Q0OTRmYWE4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRp
b25zL25vdGlmaWNhdGlvbnMtY2xpY2stZXZlbnQuaHRtbApAQCAtMCwwICsxLDQ0IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiPgorICAgICAgICBmdW5jdGlvbiBsb2cobWVzc2FnZSkKKyAgICAgICAgeworICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIpLmlubmVySFRNTCArPSBtZXNz
YWdlICsgIjxicj4iOworICAgICAgICB9CisgICAgICAgIAorICAgICAgICBmdW5jdGlvbiBydW5U
ZXN0cygpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewor
ICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZ3JhbnRXZWJOb3RpZmljYXRpb25QZXJtaXNzaW9u
KCJmaWxlOi8vIik7CisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Cisg
ICAgICAgICAgICAgICAgaWYgKHRlc3RSdW5uZXIuZHVtcE5vdGlmaWNhdGlvbnMpCisgICAgICAg
ICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcE5vdGlmaWNhdGlvbnMoKTsKKyAgICAgICAgICAg
ICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgICAgIH0KKworICAgICAg
ICAgICAgaWYgKCF3aW5kb3cud2Via2l0Tm90aWZpY2F0aW9ucykgeworICAgICAgICAgICAgICAg
IGxvZygiRkFJTDogTm8gd2Via2l0Tm90aWZpY2F0aW9ucyBpbnRlcmZhY2UhIik7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIHZhciBOID0gd2luZG93LndlYmtpdE5v
dGlmaWNhdGlvbnMuY3JlYXRlTm90aWZpY2F0aW9uKCIiLCAiTmV3IEUtbWFpbCIsICJNZWV0IG1l
IHRvbmlnaHQgYXQgOCEiKTsKKyAgICAgICAgICAgIE4ub25jbGljayA9IGZ1bmN0aW9uKCkgeyBs
b2coIlBBU1M6IGNsaWNrIGV2ZW50IGZpcmVkLiIpOyBOLmNhbmNlbCgpOyAgfQorICAgICAgICAg
ICAgTi5zaG93KCk7CisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAg
ICAgICAgICAgICB0ZXN0UnVubmVyLnNpbXVsYXRlTGVnYWN5V2ViTm90aWZpY2F0aW9uQ2xpY2so
Ik5ldyBFLW1haWwiKTsKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8cD5TaG93aW5nIG5vdGlmaWNhdGlvbnMuPC9wPgorCis8cD5UbyBleGVyY2lzZSBtYW51YWxs
eSwgZ3JhbnQgbm90aWZpY2F0aW9uIHBlcm1pc3Npb25zIGFuZCBsb2FkIHRoaXMgcGFnZSwgdGhl
biBjbGljayBvbiB0aGUgbm90aWZpY2F0aW9uLiAgWW91IHNob3VsZCBzZWUgYSAiUEFTUyIgbWVz
c2FnZS48L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PiAgICAKKyAgICAKKzxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0Ij4KK3J1blRlc3RzKCk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmlj
YXRpb25zLWNvbnN0cnVjdG9yLXJlcXVlc3QtcGVybWlzc2lvbi1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1jb25zdHJ1Y3Rvci1yZXF1
ZXN0LXBlcm1pc3Npb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVkNzYwMTViYTE2NzU2ZjUw
NzBhYTQ0NjAzM2E5YzQ0MzEyYTFiNTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1jb25zdHJ1Y3Rvci1yZXF1ZXN0LXBlcm1p
c3Npb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorREVTS1RPUCBOT1RJRklDQVRJT04g
UEVSTUlTU0lPTiBSRVFVRVNURUQ6IGZpbGU6Ly8KK1JlcXVlc3Rpbmcgbm90aWZpY2F0aW9uIHBl
cm1pc3Npb24uLi4KKworUEFTUzogUGVybWlzc2lvbiBjYWxsYmFjayBpbnZva2VkLgorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1jb25z
dHJ1Y3Rvci1yZXF1ZXN0LXBlcm1pc3Npb24uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZp
Y2F0aW9ucy9ub3RpZmljYXRpb25zLWNvbnN0cnVjdG9yLXJlcXVlc3QtcGVybWlzc2lvbi5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjY1YTZiZjI0OTM3YzEyZjcyYmRlZjY4NWUwZDJhODZhNDEwMGVjOTIKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0
aW9ucy1jb25zdHJ1Y3Rvci1yZXF1ZXN0LXBlcm1pc3Npb24uaHRtbApAQCAtMCwwICsxLDM2IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiPgorICAgICAgICBmdW5jdGlvbiBsb2cobWVzc2FnZSkKKyAgICAgICAgewor
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIpLmlubmVySFRNTCAr
PSBtZXNzYWdlICsgIjxicj4iOworICAgICAgICB9CisgICAgICAgIAorICAgICAgICBmdW5jdGlv
biBydW5UZXN0cygpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikgeworICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAg
ICAgfQorCisgICAgICAgICAgICBpZiAoIXdpbmRvdy5Ob3RpZmljYXRpb24pIHsKKyAgICAgICAg
ICAgICAgICBsb2coIkZBSUw6IE5vIE5vdGlmaWNhdGlvbiBpbnRlcmZhY2UhIik7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIHZhciBOID0gd2luZG93Lk5vdGlmaWNh
dGlvbi5yZXF1ZXN0UGVybWlzc2lvbigKKyAgICAgICAgICAgICAgICBmdW5jdGlvbigpIHsgbG9n
KCJQQVNTOiBQZXJtaXNzaW9uIGNhbGxiYWNrIGludm9rZWQuIik7IH0KKyAgICAgICAgICAgICk7
CisgICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwPlJlcXVl
c3Rpbmcgbm90aWZpY2F0aW9uIHBlcm1pc3Npb24uLi48L3A+CisgICAgCis8ZGl2IGlkPSJyZXN1
bHQiPjwvZGl2PiAgICAKKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK3J1blRlc3Rz
KCk7Cis8L3NjcmlwdD4KKworCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1jb25zdHJ1Y3Rvci13aXRoLXBl
cm1pc3Npb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25v
dGlmaWNhdGlvbnMtY29uc3RydWN0b3Itd2l0aC1wZXJtaXNzaW9uLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44NmFkNGNhN2I1YjVmYTY5MDAxYWNkNDE2YjkxZjU3ZGY4YWMzYzQ5Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMt
Y29uc3RydWN0b3Itd2l0aC1wZXJtaXNzaW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAK
K0RFU0tUT1AgTk9USUZJQ0FUSU9OOiBpY29uICwgdGl0bGUgSGVsbG8gd29ybGQsIHRleHQgCitT
ZW5kaW5nIG5vdGlmaWNhdGlvbnMgd2l0aCBwZXJtaXNzaW9uLi4uCisKK1BBU1M6IHNob3cgZXZl
bnQgZmlyZWQuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9u
b3RpZmljYXRpb25zLWNvbnN0cnVjdG9yLXdpdGgtcGVybWlzc2lvbi5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtY29uc3RydWN0b3Itd2l0aC1wZXJt
aXNzaW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzE3ZDdmZWMwYzdlNzAxZGI4NGFmYTc0YTE5Yzg1NDI5
ZTBjZGFkMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9u
cy9ub3RpZmljYXRpb25zLWNvbnN0cnVjdG9yLXdpdGgtcGVybWlzc2lvbi5odG1sCkBAIC0wLDAg
KzEsMzcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKyAgICA8c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQorICAg
ICAgICB7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5u
ZXJIVE1MICs9IG1lc3NhZ2UgKyAiPGJyPiI7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAg
IGZ1bmN0aW9uIHJ1blRlc3RzKCkKKyAgICAgICAgeworICAgICAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKSB7CisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ncmFudFdlYk5vdGlmaWNh
dGlvblBlcm1pc3Npb24oImZpbGU6Ly8iKTsKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1
bXBBc1RleHQoKTsKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsK
KyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgaWYgKCF3aW5kb3cuTm90aWZpY2F0aW9uKSB7
CisgICAgICAgICAgICAgICAgbG9nKCJGQUlMOiBObyBOb3RpZmljYXRpb24gY29uc3RydWN0b3Ih
Iik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIHZhciBOID0gbmV3
IE5vdGlmaWNhdGlvbigiSGVsbG8gd29ybGQiKTsKKyAgICAgICAgICAgIE4ub25zaG93ID0gZnVu
Y3Rpb24oKSB7IGxvZygiUEFTUzogc2hvdyBldmVudCBmaXJlZC4iKTsgfQorICAgICAgICAgICAg
Ti5vbmVycm9yID0gZnVuY3Rpb24oKSB7IGxvZygiRkFJTDogZXJyb3IgZXZlbnQgZmlyZWQuIik7
IH0KKyAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7IHRlc3RSdW5uZXIubm90aWZ5
RG9uZSgpOyB9LCAxMDApOworICAgICAgICB9CisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxwPlNlbmRpbmcgbm90aWZpY2F0aW9ucyB3aXRoIHBlcm1pc3Npb24uLi48L3A+Cis8ZGl2
IGlkPSJyZXN1bHQiPjwvZGl2PgorCis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+City
dW5UZXN0cygpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1jb25zdHJ1Y3Rvci13aXRo
b3V0LXBlcm1pc3Npb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRp
b25zL25vdGlmaWNhdGlvbnMtY29uc3RydWN0b3Itd2l0aG91dC1wZXJtaXNzaW9uLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi41NDQxZTM2YzMwMDkyMGFhZjE2ZGFlYjNiYWJlZDkwMTliMTMwYmZk
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlm
aWNhdGlvbnMtY29uc3RydWN0b3Itd2l0aG91dC1wZXJtaXNzaW9uLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDQgQEAKK1NlbmRpbmcgbm90aWZpY2F0aW9ucyB3aXRob3V0IHBlcm1pc3Npb24uLi4K
KworUEFTUzogZXJyb3IgZXZlbnQgZmlyZWQuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWNvbnN0cnVjdG9yLXdpdGhvdXQtcGVybWlz
c2lvbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMt
Y29uc3RydWN0b3Itd2l0aG91dC1wZXJtaXNzaW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2JhMzZmM2Q0
N2NhYjU0MWNlNTVlZjZmMjdlMDM0NjJmNTBlMGMwOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWNvbnN0cnVjdG9yLXdpdGhv
dXQtcGVybWlzc2lvbi5odG1sCkBAIC0wLDAgKzEsMzcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0
bWw+Cis8aGVhZD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAg
IGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQorICAgICAgICB7CisgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiPGJyPiI7Cisg
ICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3RzKCkKKyAgICAgICAg
eworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgICAgICAgICAg
Ly8gTk8gUEVSTUlTU0lPTiB0ZXN0UnVubmVyLmdyYW50V2ViTm90aWZpY2F0aW9uUGVybWlzc2lv
bigiZmlsZTovLyIpOworICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwor
ICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICAgICAg
fQorCisgICAgICAgICAgICBpZiAoIXdpbmRvdy5Ob3RpZmljYXRpb24pIHsKKyAgICAgICAgICAg
ICAgICBsb2coIkZBSUw6IE5vIE5vdGlmaWNhdGlvbiBjb25zdHJ1Y3RvciEiKTsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgdmFyIE4gPSBuZXcgTm90aWZpY2F0aW9u
KCJIZWxsbyB3b3JsZCIpOworICAgICAgICAgICAgTi5vbnNob3cgPSBmdW5jdGlvbigpIHsgbG9n
KCJGQUlMOiBzaG93IGV2ZW50IGZpcmVkLiIpOyB9CisgICAgICAgICAgICBOLm9uZXJyb3IgPSBm
dW5jdGlvbigpIHsgbG9nKCJQQVNTOiBlcnJvciBldmVudCBmaXJlZC4iKTsgfQorICAgICAgICAg
ICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7IH0sIDEw
MCk7CisgICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHA+U2VuZGlu
ZyBub3RpZmljYXRpb25zIHdpdGhvdXQgcGVybWlzc2lvbi4uLjwvcD4KKzxkaXYgaWQ9InJlc3Vs
dCI+PC9kaXY+CisKKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK3J1blRlc3RzKCk7
Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWRpc3BsYXktY2xvc2UtZXZlbnRzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWRp
c3BsYXktY2xvc2UtZXZlbnRzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMWY1YzQ3Njg4MmU4
MzZkZDU4NmUyMDZiZTdmNDM3OGZmM2ZjM2I2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtZGlzcGxheS1jbG9zZS1ldmVudHMt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorREVTS1RPUCBOT1RJRklDQVRJT046IGljb24g
LCB0aXRsZSBOZXcgRS1tYWlsLCB0ZXh0IE1lZXQgbWUgdG9uaWdodCBhdCA4IQorREVTS1RPUCBO
T1RJRklDQVRJT04gQ0xPU0VEOiBOZXcgRS1tYWlsCitTZW5kaW5nIG5vdGlmaWNhdGlvbnMgd2l0
aCBwZXJtaXNzaW9uLi4uCisKK1BBU1M6IGRpc3BsYXkgZXZlbnQgaW52b2tlZC4KK1BBU1M6IGNs
b3NlIGV2ZW50IGludm9rZWQuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZp
Y2F0aW9ucy9ub3RpZmljYXRpb25zLWRpc3BsYXktY2xvc2UtZXZlbnRzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1kaXNwbGF5LWNsb3NlLWV2ZW50
cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmY3NDhhNGFkMDJlNzVjYWRhNjE0ZjgzMmI5ZDFhNmFlYzM5MDdj
MDQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90
aWZpY2F0aW9ucy1kaXNwbGF5LWNsb3NlLWV2ZW50cy5odG1sCkBAIC0wLDAgKzEsMzkgQEAKKzwh
RE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2
YXNjcmlwdCI+CisgICAgICAgIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQorICAgICAgICB7CisgICAg
ICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJIVE1MICs9IG1l
c3NhZ2UgKyAiPGJyPiI7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGZ1bmN0aW9uIHJ1
blRlc3RzKCkKKyAgICAgICAgeworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
CisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ncmFudFdlYk5vdGlmaWNhdGlvblBlcm1pc3Np
b24oImZpbGU6Ly8iKTsKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KyAgICAgICAgICAgICAgICBpZiAodGVzdFJ1bm5lci5kdW1wTm90aWZpY2F0aW9ucykKKyAgICAg
ICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wTm90aWZpY2F0aW9ucygpOworICAgICAgICAg
ICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICBpZiAoIXdpbmRvdy53ZWJraXROb3RpZmljYXRpb25zKSB7CisgICAgICAgICAgICAg
ICAgbG9nKCJGQUlMOiBObyB3ZWJraXROb3RpZmljYXRpb25zIGludGVyZmFjZSEiKTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgdmFyIE4gPSB3aW5kb3cud2Via2l0
Tm90aWZpY2F0aW9ucy5jcmVhdGVOb3RpZmljYXRpb24oIiIsICJOZXcgRS1tYWlsIiwgIk1lZXQg
bWUgdG9uaWdodCBhdCA4ISIpOworICAgICAgICAgICAgTi5vbmRpc3BsYXkgPSBmdW5jdGlvbigp
IHsgbG9nKCJQQVNTOiBkaXNwbGF5IGV2ZW50IGludm9rZWQuIik7IE4uY2FuY2VsKCk7IH0KKyAg
ICAgICAgICAgIE4ub25jbG9zZSA9IGZ1bmN0aW9uKCkgeyBsb2coIlBBU1M6IGNsb3NlIGV2ZW50
IGludm9rZWQuIik7IHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOyB9CisgICAgICAgICAgICBOLnNo
b3coKTsKKyAgICAgICAgfQorICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cD5TZW5k
aW5nIG5vdGlmaWNhdGlvbnMgd2l0aCBwZXJtaXNzaW9uLi4uPC9wPgorPGRpdiBpZD0icmVzdWx0
Ij48L2Rpdj4gICAgCisgICAgCis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitydW5U
ZXN0cygpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1kb2N1bWVudC1jbG9zZS1jcmFz
aC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0
aW9ucy1kb2N1bWVudC1jbG9zZS1jcmFzaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjMwN2Fh
MWFkYWViZWI0MWI4YTY4MmQxYzgwNDViZDBlNTQyMTU5MwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWRvY3VtZW50LWNsb3Nl
LWNyYXNoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGlu
ZSAzNjogVW5jYXVnaHQgSW52YWxpZFN0YXRlRXJyb3IgKERPTSBFeGNlcHRpb24gMTEpOiBUaGUg
b2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuDQorUEFTUw0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWRvY3VtZW50LWNsb3NlLWNy
YXNoLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1k
b2N1bWVudC1jbG9zZS1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM3YWMzNjkyMTdmOTVmYzc3OTlk
MGEyYTgwZGI1OWNlYjM2NzVhZjAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1kb2N1bWVudC1jbG9zZS1jcmFzaC5odG1sCkBA
IC0wLDAgKzEsNTAgQEAKKzxodG1sPgorICAgIDxib2R5PgorICAgICAgICA8ZGl2IGlkPSJyZXN1
bHQiPjwvZGl2PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOworICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0Q2FuT3BlbldpbmRvd3MoKTsK
KyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmdyYW50V2ViTm90aWZpY2F0aW9uUGVybWlzc2lv
bigiZmlsZTovLyIpOworICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAoIXdpbmRvdy53ZWJraXROb3RpZmlj
YXRpb25zKSB7CisgICAgICAgICAgICAgICAgbG9nKCJGQUlMOiBObyB3ZWJraXROb3RpZmljYXRp
b25zIGludGVyZmFjZSEiKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgdmFyIHRhcmdl
dCA9IHdpbmRvdy5vcGVuKCJhYm91dDpibGFuayIpOworICAgICAgICAgICAgdmFyIG5vdGlmaWNh
dGlvbiA9IHRhcmdldC53ZWJraXROb3RpZmljYXRpb25zOworICAgICAgICAgICAgdGFyZ2V0Lmxv
Y2F0aW9uLnJlbG9hZCgpOworICAgICAgICAgICAgdmFyIHRpbWVyID0gc2V0SW50ZXJ2YWwoImNy
YXNoKCkiLCA2MCk7CisgICAgICAgICAgICBzZXRUaW1lb3V0KCJmaW5pc2goKSIsIDEwMCk7CisK
KyAgICAgICAgICAgIGZ1bmN0aW9uIGNyYXNoKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICB2YXIgYSA9IFtdOworICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgMHgx
MDA7IGkrKykKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRyeQorICAg
ICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBhLnB1c2gobmV3IFdl
YkdMQnl0ZUFycmF5KCkpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
ICAgIGNhdGNoIChlKSB7fQorICAgICAgICAgICAgICAgICAgICBhLnB1c2goQXJyYXkoaSkuam9p
bigiQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB
QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiKSk7CisgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgIGRlbGV0ZSBhOworICAgICAgICAgICAgICAgIG5vdGlmaWNhdGlvbi5yZXF1ZXN0
UGVybWlzc2lvbigpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiBmaW5p
c2goKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGltZXIp
OworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5l
ckhUTUwgPSAiUEFTUyI7CisgICAgICAgICAgICAgICAgdGFyZ2V0LmNsb3NlKCk7CisgICAgICAg
ICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB0ZXN0
UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+Cisg
ICAgPC9ib2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L25vdGlm
aWNhdGlvbnMvbm90aWZpY2F0aW9ucy1ldmVudC1zdG9wLXByb3BhZ2F0aW9uLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWV2ZW50LXN0
b3AtcHJvcGFnYXRpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQyN2RlODkxNTY3OGQwY2M2
YWU5ZDc0YjZmODA4ZWFmODY1OThjMDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1ldmVudC1zdG9wLXByb3BhZ2F0aW9uLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDYgQEAKK0RFU0tUT1AgTk9USUZJQ0FUSU9OOiBpY29uIGh0
dHA6Ly9sb2NhbGhvc3QvbXlfaWNvbi5wbmcsIHRpdGxlIE5ldyBFLW1haWwsIHRleHQgTWVldCBt
ZSB0b25pZ2h0IGF0IDghCitERVNLVE9QIE5PVElGSUNBVElPTiBDTE9TRUQ6IE5ldyBFLW1haWwK
K1NlbmRpbmcgbm90aWZpY2F0aW9ucyB3aXRoIHBlcm1pc3Npb24uLi4KKworUEFTUzogYWRkRXZl
bnRMaXN0ZW5lcihkaXNwbGF5KSBjYXB0dXJlIGNhbGxiYWNrIGludm9rZWQKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtZXZlbnQtc3Rv
cC1wcm9wYWdhdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlm
aWNhdGlvbnMtZXZlbnQtc3RvcC1wcm9wYWdhdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJkOGQwNDMw
NTkxMWNmNWY2ODE5MzJhNDYyZDA4NjIyYTM2NWI1NTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1ldmVudC1zdG9wLXByb3Bh
Z2F0aW9uLmh0bWwKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxo
ZWFkPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgZnVuY3Rp
b24gbG9nKG1lc3NhZ2UpCisgICAgICAgIHsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZXN1bHQiKS5pbm5lckhUTUwgKz0gbWVzc2FnZSArICI8YnI+IjsKKyAgICAgICAg
fQorICAgICAgICAKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdHMoKQorICAgICAgICB7CisgICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgICAgICAgICB0ZXN0UnVu
bmVyLmdyYW50V2ViTm90aWZpY2F0aW9uUGVybWlzc2lvbigiZmlsZTovLyIpOworICAgICAgICAg
ICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICBpZiAoIXdpbmRvdy53ZWJraXROb3RpZmljYXRpb25zKSB7CisgICAgICAgICAgICAgICAg
bG9nKCJGQUlMOiBObyB3ZWJraXROb3RpZmljYXRpb25zIGludGVyZmFjZSEiKTsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgdmFyIE4gPSB3aW5kb3cud2Via2l0Tm90
aWZpY2F0aW9ucy5jcmVhdGVOb3RpZmljYXRpb24oImh0dHA6Ly9sb2NhbGhvc3QvbXlfaWNvbi5w
bmciLCAiTmV3IEUtbWFpbCIsICJNZWV0IG1lIHRvbmlnaHQgYXQgOCEiKTsKKyAgICAgICAgICAg
IE4uYWRkRXZlbnRMaXN0ZW5lcigiZGlzcGxheSIsIGZ1bmN0aW9uKGUpIHsgbG9nKCJQQVNTOiBh
ZGRFdmVudExpc3RlbmVyKGRpc3BsYXkpIG5vbi1jYXB0dXJlIGNhbGxiYWNrIGludm9rZWQiKTsg
fSk7CisgICAgICAgICAgICBOLm9uZGlzcGxheSA9ICAgICAgICAgICAgICAgICBmdW5jdGlvbihl
KSB7IGxvZygiUEFTUzogb25kaXNwbGF5IGF0dHJpYnV0ZSBldmVudCBjYWxsYmFjayBpbnZva2Vk
LiIpOyB9CisgICAgICAgICAgICBOLmFkZEV2ZW50TGlzdGVuZXIoImRpc3BsYXkiLCBmdW5jdGlv
bihlKSB7IGxvZygiUEFTUzogYWRkRXZlbnRMaXN0ZW5lcihkaXNwbGF5KSBjYXB0dXJlIGNhbGxi
YWNrIGludm9rZWQiKTsgZS5zdG9wUHJvcGFnYXRpb24oKTsgfSwgdHJ1ZSApOworICAgICAgICAg
ICAgTi5zaG93KCk7CisgICAgICAgICAgICBOLmNhbmNlbCgpOworICAgICAgICB9CisgICAgPC9z
Y3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlNlbmRpbmcgbm90aWZpY2F0aW9ucyB3aXRoIHBl
cm1pc3Npb24uLi48L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PiAgICAKKyAgICAKKzxzY3Jp
cHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK3J1blRlc3RzKCk7Cis8L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9u
b3RpZmljYXRpb25zLW11bHRpLWV2ZW50cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0
L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1tdWx0aS1ldmVudHMtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjUyMmQ1ODVkODVmYjUwNjM3OWE5MzdhOWVmYjM2YzhkM2RkNTZhMTQKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9u
cy1tdWx0aS1ldmVudHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK0RFU0tUT1AgTk9U
SUZJQ0FUSU9OOiBpY29uIGh0dHA6Ly9sb2NhbGhvc3QvbXlfaWNvbi5wbmcsIHRpdGxlIE5ldyBF
LW1haWwsIHRleHQgTWVldCBtZSB0b25pZ2h0IGF0IDghCitERVNLVE9QIE5PVElGSUNBVElPTiBD
TE9TRUQ6IE5ldyBFLW1haWwKK1NlbmRpbmcgbm90aWZpY2F0aW9ucyB3aXRoIHBlcm1pc3Npb24u
Li4KKworUEFTUzogYWRkRXZlbnRMaXN0ZW5lcihjbG9zZSkgY2FwdHVyZSBjYWxsYmFjayAjMSBp
bnZva2VkCitQQVNTOiBhZGRFdmVudExpc3RlbmVyKGNsb3NlKSBjYXB0dXJlIGNhbGxiYWNrICMy
IGludm9rZWQKK1BBU1M6IGFkZEV2ZW50TGlzdGVuZXIoY2xvc2UpIGNhbGxiYWNrICMxIGludm9r
ZWQKK1BBU1M6IG9uY2xvc2UgYXR0cmlidXRlIGV2ZW50IGNhbGxiYWNrIGludm9rZWQuCitQQVNT
OiBhZGRFdmVudExpc3RlbmVyKGNsb3NlKSBjYWxsYmFjayAjMyBpbnZva2VkCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLW11bHRpLWV2
ZW50cy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMt
bXVsdGktZXZlbnRzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzI0NDgyOGZmY2ZmNzFhOWUxYzBlNjNkNTFk
OWI5ZTMxZDAwM2ViYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZp
Y2F0aW9ucy9ub3RpZmljYXRpb25zLW11bHRpLWV2ZW50cy5odG1sCkBAIC0wLDAgKzEsNDAgQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQv
amF2YXNjcmlwdCI+CisgICAgICAgIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQorICAgICAgICB7Cisg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJIVE1MICs9
IG1lc3NhZ2UgKyAiPGJyPiI7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGZ1bmN0aW9u
IHJ1blRlc3RzKCkKKyAgICAgICAgeworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7CisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ncmFudFdlYk5vdGlmaWNhdGlvblBlcm1p
c3Npb24oImZpbGU6Ly8iKTsKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgaWYgKCF3aW5kb3cud2Via2l0Tm90aWZp
Y2F0aW9ucykgeworICAgICAgICAgICAgICAgIGxvZygiRkFJTDogTm8gd2Via2l0Tm90aWZpY2F0
aW9ucyBpbnRlcmZhY2UhIik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAg
ICAgIHZhciBOID0gd2luZG93LndlYmtpdE5vdGlmaWNhdGlvbnMuY3JlYXRlTm90aWZpY2F0aW9u
KCJodHRwOi8vbG9jYWxob3N0L215X2ljb24ucG5nIiwgIk5ldyBFLW1haWwiLCAiTWVldCBtZSB0
b25pZ2h0IGF0IDghIik7CisgICAgICAgICAgICBOLmFkZEV2ZW50TGlzdGVuZXIoImNsb3NlIiwg
ZnVuY3Rpb24oKSB7IGxvZygiUEFTUzogYWRkRXZlbnRMaXN0ZW5lcihjbG9zZSkgY2FsbGJhY2sg
IzEgaW52b2tlZCIpOyB9KTsKKyAgICAgICAgICAgIE4ub25jbG9zZSA9ICAgICAgICAgICAgICAg
ICBmdW5jdGlvbigpIHsgbG9nKCJQQVNTOiBvbmNsb3NlIGF0dHJpYnV0ZSBldmVudCBjYWxsYmFj
ayBpbnZva2VkLiIpOyB9CisgICAgICAgICAgICBOLmFkZEV2ZW50TGlzdGVuZXIoImNsb3NlIiwg
ZnVuY3Rpb24oKSB7IGxvZygiUEFTUzogYWRkRXZlbnRMaXN0ZW5lcihjbG9zZSkgY2FwdHVyZSBj
YWxsYmFjayAjMSBpbnZva2VkIik7IH0sIHRydWUgKTsKKyAgICAgICAgICAgIE4uYWRkRXZlbnRM
aXN0ZW5lcigiY2xvc2UiLCBmdW5jdGlvbigpIHsgbG9nKCJQQVNTOiBhZGRFdmVudExpc3RlbmVy
KGNsb3NlKSBjYXB0dXJlIGNhbGxiYWNrICMyIGludm9rZWQiKTsgfSwgdHJ1ZSApOworICAgICAg
ICAgICAgTi5hZGRFdmVudExpc3RlbmVyKCJjbG9zZSIsIGZ1bmN0aW9uKCkgeyBsb2coIlBBU1M6
IGFkZEV2ZW50TGlzdGVuZXIoY2xvc2UpIGNhbGxiYWNrICMzIGludm9rZWQiKTsgfSk7CisgICAg
ICAgICAgICBOLnNob3coKTsKKyAgICAgICAgICAgIE4uY2FuY2VsKCk7CisgICAgICAgIH0KKyAg
ICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHA+U2VuZGluZyBub3RpZmljYXRpb25zIHdp
dGggcGVybWlzc2lvbi4uLjwvcD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+ICAgIAorICAgIAor
PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorcnVuVGVzdHMoKTsKKzwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRp
b25zL25vdGlmaWNhdGlvbnMtbm8taWNvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0
L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1uby1pY29uLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4xY2Y3OGU0Yjk3NTY1NDgzZmU0M2UyODMyOTEwZGEwNDMzYjAwMzVmCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtbm8t
aWNvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACitERVNLVE9QIE5PVElGSUNBVElPTjog
aWNvbiAsIHRpdGxlIE5ldyBFLW1haWwsIHRleHQgTWVldCBtZSB0b25pZ2h0IGF0IDghCitTZW5k
aW5nIG5vdGlmaWNhdGlvbnMgd2l0aCBwZXJtaXNzaW9uLi4uCisKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtbm8taWNvbi5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtbm8taWNvbi5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjVjNzIyZWQ5ZjI5NmU1ZGY3MWFlZGI2NTM1NjlkYzdlMjU2NGFmNWYKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0
aW9ucy1uby1pY29uLmh0bWwKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxoZWFkPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAg
ZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCisgICAgICAgIHsKKyAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lckhUTUwgKz0gbWVzc2FnZSArICI8YnI+IjsKKyAg
ICAgICAgfQorICAgICAgICAKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdHMoKQorICAgICAgICB7
CisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgICAgICAgICB0
ZXN0UnVubmVyLmdyYW50V2ViTm90aWZpY2F0aW9uUGVybWlzc2lvbigiZmlsZTovLyIpOworICAg
ICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAgICAgIGlm
ICh0ZXN0UnVubmVyLmR1bXBOb3RpZmljYXRpb25zKQorICAgICAgICAgICAgICAgICAgICB0ZXN0
UnVubmVyLmR1bXBOb3RpZmljYXRpb25zKCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
IGlmICghd2luZG93LndlYmtpdE5vdGlmaWNhdGlvbnMpIHsKKyAgICAgICAgICAgICAgICBsb2co
IkZBSUw6IE5vIHdlYmtpdE5vdGlmaWNhdGlvbnMgaW50ZXJmYWNlISIpOworICAgICAgICAgICAg
fQorICAgICAgICAgICAgCisgICAgICAgICAgICB2YXIgTSA9IHdpbmRvdy53ZWJraXROb3RpZmlj
YXRpb25zLmNyZWF0ZU5vdGlmaWNhdGlvbigiIiwgIk5ldyBFLW1haWwiLCAiTWVldCBtZSB0b25p
Z2h0IGF0IDghIik7CisgICAgICAgICAgICBNLnNob3coKTsKKyAgICAgICAgfQorICAgIDwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cD5TZW5kaW5nIG5vdGlmaWNhdGlvbnMgd2l0aCBwZXJt
aXNzaW9uLi4uPC9wPgorICAgIAorICAgIAorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgorcnVuVGVzdHMoKTsKKzwvc2NyaXB0PgorCis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25z
L25vdGlmaWNhdGlvbnMtcGVybWlzc2lvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0
L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1wZXJtaXNzaW9uLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5iNWQ4ZmFkMTA0OWJjYWZiNWRmNjhiMDQ4Y2E0M2E0MjdiODEzOTI5Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMt
cGVybWlzc2lvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAorQ2hlY2sgZm9yIGV4aXN0
ZW5jZSBvZiBOb3RpZmljYXRpb24ucGVybWlzc2lvbgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKK1BBU1Mgd2luZG93Lk5vdGlmaWNhdGlvbiBpcyBkZWZpbmVkLgorUEFTUyB3aW5kb3cu
Tm90aWZpY2F0aW9uLnBlcm1pc3Npb24gaXMgZGVmaW5lZC4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1wZXJtaXNzaW9uLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1wZXJtaXNzaW9uLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMGJhMGUwNGQxNDFiYzE3Zjk2NzZmMDMzY2YxNWJiYTQ1MjI4MzM1NwotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25z
LXBlcm1pc3Npb24uaHRtbApAQCAtMCwwICsxLDIxIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorPGhlYWQ+CisJPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8L2hlYWQ+CisKKzxib2R5PgorPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2
PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisKKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0Ij4KK2Rlc2NyaXB0aW9uKCJDaGVjayBmb3IgZXhpc3RlbmNlIG9mIE5vdGlmaWNhdGlvbi5w
ZXJtaXNzaW9uIik7CisKK3Nob3VsZEJlRGVmaW5lZCgid2luZG93Lk5vdGlmaWNhdGlvbiIpOwor
c2hvdWxkQmVEZWZpbmVkKCJ3aW5kb3cuTm90aWZpY2F0aW9uLnBlcm1pc3Npb24iKTsKKwordmFy
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25z
LXJlcGxhY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25v
dGlmaWNhdGlvbnMtcmVwbGFjZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjQ4MGJhM2Y3MWQ1
Zjk5N2IxMjRhNmRkYzJhZWQ1MzljYzk2OGM1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXJlcGxhY2UtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsNyBAQAorREVTS1RPUCBOT1RJRklDQVRJT046IGljb24gLCB0aXRsZSBOZXcg
RS1tYWlsLCB0ZXh0IE1lZXQgbWUgdG9uaWdodCBhdCA4IQorREVTS1RPUCBOT1RJRklDQVRJT046
IGljb24gLCB0aXRsZSBBbGFybSwgdGV4dCBJdCdzIHRpbWUgdG8gd2FrZSB1cCEKK1JFUExBQ0lO
RyBOT1RJRklDQVRJT04gTmV3IEUtbWFpbAorREVTS1RPUCBOT1RJRklDQVRJT046IGljb24gLCB0
aXRsZSBOZXcgcmVwbHksIHRleHQgQ29ycmVjdGlvbiwgODoxNQorU2hvd2luZyBub3RpZmljYXRp
b25zIHdpdGggcmVwbGFjZSBJRC4uLgorCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
bm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXJlcGxhY2UuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXJlcGxhY2UuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5j
YzU2Y2Y2NzIxYTYyNjhiNWFhNTk1Mjg0NGY1M2VhZDViYWYxYjJkCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtcmVwbGFjZS5o
dG1sCkBAIC0wLDAgKzEsNDEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKyAg
ICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgIGZ1bmN0aW9uIGxvZyht
ZXNzYWdlKQorICAgICAgICB7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cmVzdWx0IikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiPGJyPiI7CisgICAgICAgIH0KKyAgICAg
ICAgCisgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3RzKCkKKyAgICAgICAgeworICAgICAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ncmFu
dFdlYk5vdGlmaWNhdGlvblBlcm1pc3Npb24oImZpbGU6Ly8iKTsKKyAgICAgICAgICAgICAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgICAgICAgICBpZiAodGVzdFJ1bm5lci5k
dW1wTm90aWZpY2F0aW9ucykKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wTm90
aWZpY2F0aW9ucygpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAoIXdpbmRvdy53
ZWJraXROb3RpZmljYXRpb25zKSB7CisgICAgICAgICAgICAgICAgbG9nKCJGQUlMOiBObyB3ZWJr
aXROb3RpZmljYXRpb25zIGludGVyZmFjZSEiKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IAorICAgICAgICAgICAgdmFyIE0gPSB3aW5kb3cud2Via2l0Tm90aWZpY2F0aW9ucy5jcmVhdGVO
b3RpZmljYXRpb24oIiIsICJOZXcgRS1tYWlsIiwgIk1lZXQgbWUgdG9uaWdodCBhdCA4ISIpOwor
ICAgICAgICAgICAgTS5yZXBsYWNlSWQgPSAiTmV3TWFpbCI7CisgICAgICAgICAgICBNLnNob3co
KTsKKyAgICAgICAgICAgIHZhciBvdGhlciA9IHdpbmRvdy53ZWJraXROb3RpZmljYXRpb25zLmNy
ZWF0ZU5vdGlmaWNhdGlvbigiIiwgIkFsYXJtIiwgIkl0J3MgdGltZSB0byB3YWtlIHVwISIpOwor
ICAgICAgICAgICAgb3RoZXIuc2hvdygpOworICAgICAgICAgICAgdmFyIE4gPSB3aW5kb3cud2Vi
a2l0Tm90aWZpY2F0aW9ucy5jcmVhdGVOb3RpZmljYXRpb24oIiIsICJOZXcgcmVwbHkiLCAiQ29y
cmVjdGlvbiwgODoxNSIpOworICAgICAgICAgICAgTi5yZXBsYWNlSWQgPSAiTmV3TWFpbCI7Cisg
ICAgICAgICAgICBOLnNob3coKTsgICAgICAgICAgCisgICAgICAgIH0KKyAgICA8L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPHA+U2hvd2luZyBub3RpZmljYXRpb25zIHdpdGggcmVwbGFjZSBJ
RC4uLjwvcD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2
YXNjcmlwdCI+CitydW5UZXN0cygpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1yZXF1
ZXN0LXBlcm1pc3Npb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRp
b25zL25vdGlmaWNhdGlvbnMtcmVxdWVzdC1wZXJtaXNzaW9uLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi41ZDc2MDE1YmExNjc1NmY1MDcwYWE0NDYwMzNhOWM0NDMxMmExYjUxCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtcmVx
dWVzdC1wZXJtaXNzaW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK0RFU0tUT1AgTk9U
SUZJQ0FUSU9OIFBFUk1JU1NJT04gUkVRVUVTVEVEOiBmaWxlOi8vCitSZXF1ZXN0aW5nIG5vdGlm
aWNhdGlvbiBwZXJtaXNzaW9uLi4uCisKK1BBU1M6IFBlcm1pc3Npb24gY2FsbGJhY2sgaW52b2tl
ZC4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNh
dGlvbnMtcmVxdWVzdC1wZXJtaXNzaW9uLW9wdGlvbmFsLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXJlcXVlc3QtcGVybWlzc2lvbi1v
cHRpb25hbC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2I0NmZiNDBiYmYxYTVkMWRmY2ZiNjZi
ZWNmZDVjYmE2NDdmMjI2YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvbm90
aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXJlcXVlc3QtcGVybWlzc2lvbi1vcHRpb25hbC1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw2IEBACitQQVNTIHdpbmRvdy53ZWJraXROb3RpZmljYXRpb25z
IGlzIGRlZmluZWQuCitQQVNTIHdpbmRvdy53ZWJraXROb3RpZmljYXRpb25zLnJlcXVlc3RQZXJt
aXNzaW9uKCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtcmVxdWVzdC1wZXJtaXNzaW9uLW9wdGlvbmFs
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1yZXF1
ZXN0LXBlcm1pc3Npb24tb3B0aW9uYWwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZDdjOGQ4MDEwOGE3OGNl
OWVjMWZlYWFkZTg0MTk0OGY5NzQwMTA3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtcmVxdWVzdC1wZXJtaXNzaW9uLW9wdGlv
bmFsLmh0bWwKQEAgLTAsMCArMSwxMSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitzaG91bGRCZURlZmluZWQoIndpbmRv
dy53ZWJraXROb3RpZmljYXRpb25zIik7CitzaG91bGROb3RUaHJvdygid2luZG93LndlYmtpdE5v
dGlmaWNhdGlvbnMucmVxdWVzdFBlcm1pc3Npb24oKSIpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZp
Y2F0aW9ucy1yZXF1ZXN0LXBlcm1pc3Npb24uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZp
Y2F0aW9ucy9ub3RpZmljYXRpb25zLXJlcXVlc3QtcGVybWlzc2lvbi5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmU5NGNmMDVkMTRmYmIzN2Q3MGQ4YTNiNTE2ZTZiNmUzNTFjZTcxMjkKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1yZXF1ZXN0
LXBlcm1pc3Npb24uaHRtbApAQCAtMCwwICsxLDM2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorPGhlYWQ+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICBm
dW5jdGlvbiBsb2cobWVzc2FnZSkKKyAgICAgICAgeworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlc3VsdCIpLmlubmVySFRNTCArPSBtZXNzYWdlICsgIjxicj4iOworICAg
ICAgICB9CisgICAgICAgIAorICAgICAgICBmdW5jdGlvbiBydW5UZXN0cygpCisgICAgICAgIHsK
KyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICAgICAgICAgIHRl
c3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAo
IXdpbmRvdy53ZWJraXROb3RpZmljYXRpb25zKSB7CisgICAgICAgICAgICAgICAgbG9nKCJGQUlM
OiBObyB3ZWJraXROb3RpZmljYXRpb25zIGludGVyZmFjZSEiKTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIAorICAgICAgICAgICAgdmFyIE4gPSB3aW5kb3cud2Via2l0Tm90aWZpY2F0aW9u
cy5yZXF1ZXN0UGVybWlzc2lvbigKKyAgICAgICAgICAgICAgICBmdW5jdGlvbigpIHsgbG9nKCJQ
QVNTOiBQZXJtaXNzaW9uIGNhbGxiYWNrIGludm9rZWQuIik7IH0KKyAgICAgICAgICAgICk7Cisg
ICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwPlJlcXVlc3Rp
bmcgbm90aWZpY2F0aW9uIHBlcm1pc3Npb24uLi48L3A+CisgICAgCis8ZGl2IGlkPSJyZXN1bHQi
PjwvZGl2PiAgICAKKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK3J1blRlc3RzKCk7
Cis8L3NjcmlwdD4KKworCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1ydGwtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtcnRsLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5mMmIwMWZjMWJhMDUwZWU2MjdmYmMzYzc0NmY5MGIwNjI0NDRhZWU4Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNh
dGlvbnMtcnRsLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKK0RFU0tUT1AgTk9USUZJQ0FU
SU9OOihSVEwpIGljb24gLCB0aXRsZSBOZXcgRS1tYWlsLCB0ZXh0IE1lZXQgbWUgdG9uaWdodCBh
dCA4IQorU2hvd2luZyBhIG5vdGlmaWNhdGlvbiB3aXRoIGRpcmVjdGlvbiAicnRsIi4uLgorCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25z
LXJ0bC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMt
cnRsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYWE2N2RkMWE1ZjYyYjg3YzdlOGFhOWIxYjRmZGI1ZmVlYmZl
ODM1ZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9u
b3RpZmljYXRpb25zLXJ0bC5odG1sCkBAIC0wLDAgKzEsMzkgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAg
ICAgIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQorICAgICAgICB7CisgICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiPGJyPiI7
CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3RzKCkKKyAgICAg
ICAgeworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgICAgICAg
ICAgdGVzdFJ1bm5lci5ncmFudFdlYk5vdGlmaWNhdGlvblBlcm1pc3Npb24oImZpbGU6Ly8iKTsK
KyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgICAgICAg
ICBpZiAodGVzdFJ1bm5lci5kdW1wTm90aWZpY2F0aW9ucykKKyAgICAgICAgICAgICAgICAgICAg
dGVzdFJ1bm5lci5kdW1wTm90aWZpY2F0aW9ucygpOworICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICBpZiAoIXdpbmRvdy53ZWJraXROb3RpZmljYXRpb25zKSB7CisgICAgICAgICAgICAgICAg
bG9nKCJGQUlMOiBObyB3ZWJraXROb3RpZmljYXRpb25zIGludGVyZmFjZSEiKTsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgdmFyIE0gPSB3aW5kb3cud2Via2l0Tm90
aWZpY2F0aW9ucy5jcmVhdGVOb3RpZmljYXRpb24oIiIsICJOZXcgRS1tYWlsIiwgIk1lZXQgbWUg
dG9uaWdodCBhdCA4ISIpOworICAgICAgICAgICAgTS5kaXIgPSAicnRsIjsKKyAgICAgICAgICAg
IE0uc2hvdygpOworICAgICAgICB9CisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxw
PlNob3dpbmcgYSBub3RpZmljYXRpb24gd2l0aCBkaXJlY3Rpb24gInJ0bCIuLi48L3A+CisgICAg
Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorICAgCis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNj
cmlwdCI+CitydW5UZXN0cygpOworPC9zY3JpcHQ+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXNhbmRi
b3gtcGVybWlzc2lvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlv
bnMvbm90aWZpY2F0aW9ucy1zYW5kYm94LXBlcm1pc3Npb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmQ0MWY1NmRmNDMxNGYyNjg1NmMyOTc2ODVmOGRjNTUzMjhmYWJmNTMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1zYW5k
Ym94LXBlcm1pc3Npb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjQgQEAKK05vcm1hbCBpZnJh
bWUuIFNob3VsZCBpbmhlcml0IHBlcm1pc3Npb25zLgorCisKK1NhbmRib3hlZCBpZnJhbWUsIHdp
dGggYWxsb3ctc2FtZS1vcmlnaW4uIFNob3VsZCBpbmhlcml0IHBlcm1pc3Npb25zLgorCisKK1Nh
bmRib3hlZCBpZnJhbWUsIHdpdGhvdXQgYWxsb3ctc2FtZS1vcmlnaW4uIFNob3VsZCBub3QgaW5o
ZXJpdCBwZXJtaXNzaW9ucy4KKworCisKKy0tLS0tLS0tCitGcmFtZTogJzwhLS1mcmFtZVBhdGgg
Ly88IS0tZnJhbWUwLS0+LS0+JworLS0tLS0tLS0KK0FsbG93ZWQKKworLS0tLS0tLS0KK0ZyYW1l
OiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTEtLT4tLT4nCistLS0tLS0tLQorQWxsb3dlZAor
CistLS0tLS0tLQorRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMi0tPi0tPicKKy0t
LS0tLS0tCitEZW5pZWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9u
cy9ub3RpZmljYXRpb25zLXNhbmRib3gtcGVybWlzc2lvbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtc2FuZGJveC1wZXJtaXNzaW9uLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZjI5OGRmZmIzY2YwZjg5MGE5YTM2YTBlYjkyYzI3MzJkN2EyZDk5OQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25z
LXNhbmRib3gtcGVybWlzc2lvbi5odG1sCkBAIC0wLDAgKzEsMjQgQEAKKzwhRE9DVFlQRSBodG1s
PgorPGh0bWw+Cis8aGVhZD4KKyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpIHsKKyAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKKyAgICAgICAgICAgIHRlc3RS
dW5uZXIuZ3JhbnRXZWJOb3RpZmljYXRpb25QZXJtaXNzaW9uKCJmaWxlOi8vIik7CisgICAgICAg
IH0KKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwPk5vcm1hbCBpZnJhbWUu
IFNob3VsZCBpbmhlcml0IHBlcm1pc3Npb25zLjwvcD4KKyAgICA8aWZyYW1lIHNyYz0icmVzb3Vy
Y2VzL25vdGlmaWNhdGlvbnMtaWZyYW1lLmh0bWwiPjwvaWZyYW1lPgorCisgICAgPHA+U2FuZGJv
eGVkIGlmcmFtZSwgd2l0aCBhbGxvdy1zYW1lLW9yaWdpbi4gU2hvdWxkIGluaGVyaXQgcGVybWlz
c2lvbnMuPC9wPgorICAgIDxpZnJhbWUgc2FuZGJveD0iYWxsb3ctc2NyaXB0cyBhbGxvdy1zYW1l
LW9yaWdpbiIKKyAgICAgICAgICAgIHNyYz0icmVzb3VyY2VzL25vdGlmaWNhdGlvbnMtaWZyYW1l
Lmh0bWwiPjwvaWZyYW1lPgorCisgICAgPHA+U2FuZGJveGVkIGlmcmFtZSwgd2l0aG91dCBhbGxv
dy1zYW1lLW9yaWdpbi4gU2hvdWxkIG5vdCBpbmhlcml0IHBlcm1pc3Npb25zLjwvcD4KKyAgICA8
aWZyYW1lIHNhbmRib3g9ImFsbG93LXNjcmlwdHMiCisgICAgICAgICAgICBzcmM9InJlc291cmNl
cy9ub3RpZmljYXRpb25zLWlmcmFtZS5odG1sIj48L2lmcmFtZT4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25z
LXdpbmRvdy1jbG9zZS1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlm
aWNhdGlvbnMvbm90aWZpY2F0aW9ucy13aW5kb3ctY2xvc2UtY3Jhc2gtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmUzN2Q5MzRmOGE4ZGFkN2FlZDYzNjExMzYxMzExZjk0NWEzNGQ0NjIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9u
cy13aW5kb3ctY2xvc2UtY3Jhc2gtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1RoaXMgdGVz
dCBuZWVkcyB0byBydW4gbWFudWFsbHkgYW5kIGNhbm5vdCBydW4gaW5zaWRlIER1bXBSZW5kZXJU
cmVlLiBQYXNzZXMgaWYgaXQgZG9lcyBub3QgY3Jhc2ggb24gcnVubmluZyB0aGUgdGVzdCBhbG9u
Z3dpdGggd2l0aCBhIGNvdXBsZSBvZiBwYWdlIHJlbG9hZHMuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy13aW5kb3ctY2xvc2UtY3Jhc2gu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXdpbmRv
dy1jbG9zZS1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk0NDdmZmU4ZmRlZDk1NzRhZjk1MDhmM2Ez
ZWVmOWEwMzI0ZmFlNTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlm
aWNhdGlvbnMvbm90aWZpY2F0aW9ucy13aW5kb3ctY2xvc2UtY3Jhc2guaHRtbApAQCAtMCwwICsx
LDIzIEBACis8aHRtbD4gDQorICAgIDxoZWFkPiANCisgICAgICAgIDxzY3JpcHQ+IA0KKyAgICAg
ICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQ0KKyAgICAgICAgICAgIHsNCisgICAgICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQ0KKyAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7DQorICAgICAgICAgICAgICAgIGVsc2UNCisgICAgICAgICAgICAgICAg
ew0KKyAgICAgICAgICAgICAgICAgICAgdmFyIHdpbiA9IHdpbmRvdy5vcGVuKCJhYm91dDpibGFu
ayIpOw0KKyAgICAgICAgICAgICAgICAgICAgdmFyIG5vdGlmaWNhdGlvbiA9IHdpbi53ZWJraXRO
b3RpZmljYXRpb25zLmNyZWF0ZU5vdGlmaWNhdGlvbignJyk7DQorICAgICAgICAgICAgICAgICAg
ICBub3RpZmljYXRpb24uc2hvdygpOw0KKyAgICAgICAgICAgICAgICAgICAgd2luLmNsb3NlKCk7
DQorICAgICAgICAgICAgICAgICAgICBub3RpZmljYXRpb24uY2FuY2VsKCk7DQorICAgICAgICAg
ICAgICAgIH0NCisgICAgICAgICAgICB9DQorICAgICAgICAgPC9zY3JpcHQ+IA0KKyAgICA8L2hl
YWQ+IA0KKyAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+IA0KKyAgICAgICAgPHA+VGhpcyB0
ZXN0IG5lZWRzIHRvIHJ1biBtYW51YWxseSBhbmQgY2Fubm90IHJ1biBpbnNpZGUgRHVtcFJlbmRl
clRyZWUuIFBhc3NlcyBpZiBpdCBkb2VzIG5vdCBjcmFzaCBvbiBydW5uaW5nIHRoZSB0ZXN0IGFs
b25nd2l0aCB3aXRoIGEgY291cGxlIG9mIHBhZ2UgcmVsb2Fkcy48L3A+DQorICAgIDwvYm9keT4g
DQorPC9odG1sPg0KKw0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9u
cy9ub3RpZmljYXRpb25zLXdpdGgtcGVybWlzc2lvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy13aXRoLXBlcm1pc3Npb24tZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjBhNGQ4ZDQ4ZDE2MTA5M2Y1Y2ExMDc2ODc1NDg4MjAwNjEwMzY2
NjIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90
aWZpY2F0aW9ucy13aXRoLXBlcm1pc3Npb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAor
REVTS1RPUCBOT1RJRklDQVRJT046IGljb24gaHR0cDovLzAuMC4wLjAvbXlfaWNvbi5wbmcsIHRp
dGxlIE5ldyBFLW1haWwsIHRleHQgTWVldCBtZSB0b25pZ2h0IGF0IDghCitTZW5kaW5nIG5vdGlm
aWNhdGlvbnMgd2l0aCBwZXJtaXNzaW9uLi4uCisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtd2l0aC1wZXJtaXNzaW9uLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy13aXRoLXBlcm1pc3Np
b24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi43MzdlYzU4YTE0N2VmYWUzMTZkYjQ2Yjk1MGI0ODQxZTU4Y2Nj
NjRjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25v
dGlmaWNhdGlvbnMtd2l0aC1wZXJtaXNzaW9uLmh0bWwKQEAgLTAsMCArMSw0MCBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0Ij4KKyAgICAgICAgZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lckhUTUwgKz0gbWVzc2Fn
ZSArICI8YnI+IjsKKyAgICAgICAgfQorICAgICAgICAKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVz
dHMoKQorICAgICAgICB7CisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAg
ICAgICAgICAgICAgICB0ZXN0UnVubmVyLmdyYW50V2ViTm90aWZpY2F0aW9uUGVybWlzc2lvbigi
ZmlsZTovLyIpOworICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAg
ICAgICAgICAgICAgIGlmICh0ZXN0UnVubmVyLmR1bXBOb3RpZmljYXRpb25zKQorICAgICAgICAg
ICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBOb3RpZmljYXRpb25zKCk7CisgICAgICAgICAgICAg
ICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIGlmICghd2luZG93LndlYmtpdE5vdGlmaWNhdGlvbnMpIHsKKyAgICAgICAgICAgICAgICBs
b2coIkZBSUw6IE5vIHdlYmtpdE5vdGlmaWNhdGlvbnMgaW50ZXJmYWNlISIpOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICB2YXIgTSA9IHdpbmRvdy53ZWJraXROb3Rp
ZmljYXRpb25zLmNyZWF0ZU5vdGlmaWNhdGlvbigiaHR0cDovLzAuMC4wLjAvbXlfaWNvbi5wbmci
LCAiTmV3IEUtbWFpbCIsICJNZWV0IG1lIHRvbmlnaHQgYXQgOCEiKTsKKyAgICAgICAgICAgIE0u
b25kaXNwbGF5ID0gZnVuY3Rpb24oKSB7IHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOyB9CisgICAg
ICAgICAgICBNLnNob3coKTsKKyAgICAgICAgfQorICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+Cis8cD5TZW5kaW5nIG5vdGlmaWNhdGlvbnMgd2l0aCBwZXJtaXNzaW9uLi4uPC9wPgorICAg
IAorICAgIAorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorcnVuVGVzdHMoKTsKKzwv
c2NyaXB0PgorCis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtd2l0
aG91dC1wZXJtaXNzaW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0
aW9ucy9ub3RpZmljYXRpb25zLXdpdGhvdXQtcGVybWlzc2lvbi1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNjY4OTY5NWRmNTg3ZWZjNDY5OGU1YTcwZjMyYTNmMjFkNDBjNzlhMQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXdp
dGhvdXQtcGVybWlzc2lvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACitTZW5kaW5nIG5v
dGlmaWNhdGlvbnMgd2l0aG91dCBwZXJtaXNzaW9uLi4uCisKK1BBU1M6IEV4Y2VwdGlvbiB0aHJv
d24uCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmlj
YXRpb25zLXdpdGhvdXQtcGVybWlzc2lvbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmlj
YXRpb25zL25vdGlmaWNhdGlvbnMtd2l0aG91dC1wZXJtaXNzaW9uLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NDBhZTY1YTY2MzU4MTQ2YTgzYTA0YWUxMWQ3ZmFkNGIwZjM5NTc5NgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXdpdGhvdXQt
cGVybWlzc2lvbi5odG1sCkBAIC0wLDAgKzEsMzkgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
Cis8aGVhZD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgIGZ1
bmN0aW9uIGxvZyhtZXNzYWdlKQorICAgICAgICB7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiPGJyPiI7CisgICAg
ICAgIH0KKyAgICAgICAgCisgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3RzKCkKKyAgICAgICAgewor
ICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgICAgICAgICAgLy8g
Tk8gUEVSTUlTU0lPTiB0ZXN0UnVubmVyLmdyYW50V2ViTm90aWZpY2F0aW9uUGVybWlzc2lvbigi
ZmlsZTovLyIpOworICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAoIXdpbmRvdy53ZWJraXROb3RpZmljYXRpb25z
KSB7CisgICAgICAgICAgICAgICAgbG9nKCJGQUlMOiBObyB3ZWJraXROb3RpZmljYXRpb25zIGlu
dGVyZmFjZSEiKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgdHJ5
IHsKKyAgICAgICAgICAgICAgICB2YXIgTiA9IHdpbmRvdy53ZWJraXROb3RpZmljYXRpb25zLmNy
ZWF0ZU5vdGlmaWNhdGlvbigiaHR0cDovLzAuMC4wLjAvbXlfaWNvbi5wbmciLCAiTmV3IEUtbWFp
bCIsICJNZWV0IG1lIHRvbmlnaHQgYXQgOCEiKTsKKyAgICAgICAgICAgICAgICBOLnNob3coKTsK
KyAgICAgICAgICAgICAgICBsb2coIkZBSUw6IFNob3VsZCBoYXZlIHRocm93biBzZWN1cml0eSBl
eGNlcHRpb24uIik7CisgICAgICAgICAgICB9IGNhdGNoIChlKSB7CisgICAgICAgICAgICAgICAg
bG9nKCJQQVNTOiBFeGNlcHRpb24gdGhyb3duLiIpOworICAgICAgICAgICAgfQorICAgICAgICB9
CisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlNlbmRpbmcgbm90aWZpY2F0aW9u
cyB3aXRob3V0IHBlcm1pc3Npb24uLi48L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorCis8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitydW5UZXN0cygpOworPC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlv
bnMvcmVxdWVzdC1ub3RpZmljYXRpb24tcGVybWlzc2lvbi13aGlsZS1yZWxvYWRpbmctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL3JlcXVlc3Qtbm90aWZpY2F0
aW9uLXBlcm1pc3Npb24td2hpbGUtcmVsb2FkaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4y
ZGYzYWEzMTdlMjkyNzhjOGM2ZTMzMjViNjBjNDRmYTc2OTA4NjVlCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL3JlcXVlc3Qtbm90aWZpY2F0aW9uLXBl
cm1pc3Npb24td2hpbGUtcmVsb2FkaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAKK1Ro
aXMgdGVzdHMgdGhhdCBub3RpZmljYXRpb24gcGVybWlzc2lvbiByZXF1ZXN0cyBkdXJpbmcgcGFn
ZSByZWxvYWQgZG8gbm90IGNhdXNlIGEgY3Jhc2guCisKK1BBU1M6IFRlc3QgcGFzc2VkIGlmIHdl
IHNhdyBubyBjcmFzaC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9u
cy9yZXF1ZXN0LW5vdGlmaWNhdGlvbi1wZXJtaXNzaW9uLXdoaWxlLXJlbG9hZGluZy5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL3JlcXVlc3Qtbm90aWZpY2F0aW9uLXBlcm1p
c3Npb24td2hpbGUtcmVsb2FkaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzkzZWI2M2MxYzgyY2I3NWZl
ZTY4NDcyMWQzMmM5M2M5MDAxYTg0OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3Qvbm90aWZpY2F0aW9ucy9yZXF1ZXN0LW5vdGlmaWNhdGlvbi1wZXJtaXNzaW9uLXdoaWxlLXJl
bG9hZGluZy5odG1sCkBAIC0wLDAgKzEsMjcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGJvZHk+Cis8
cD5UaGlzIHRlc3RzIHRoYXQgbm90aWZpY2F0aW9uIHBlcm1pc3Npb24gcmVxdWVzdHMgZHVyaW5n
IHBhZ2UgcmVsb2FkIGRvIG5vdCBjYXVzZSBhIGNyYXNoLjwvcD4KKzxwIGlkPSJtZXNzYWdlIj5G
QUlMOiBUZXN0IGRpZCBub3QgcnVuIHRvIGNvbXBsZXRpb24geWV0LjwvcD4KKzxzY3JpcHQ+CisK
K2lmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwor
ICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfQorCit2YXIgdHJpZXMgPSBsb2NhdGlv
bi5oYXNoLnN1YnN0cmluZygxKSA+Pj4gMDsKK2lmICh0cmllcyA8IDEwKSB7CisgICAgbG9jYXRp
b24uaGFzaCA9ICIjIiArICh0cmllcyArIDEpOworICAgIGxvY2F0aW9uLnJlbG9hZCgpOworCisg
ICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgd2Via2l0Tm90aWZpY2F0aW9ucy5y
ZXF1ZXN0UGVybWlzc2lvbigpOworICAgIH0sIDApOworfSBlbHNlIHsKKyAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgibWVzc2FnZSIpLnRleHRDb250ZW50ID0gIlBBU1M6IFRlc3QgcGFzc2Vk
IGlmIHdlIHNhdyBubyBjcmFzaC4iOworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAg
ICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9CisKKzwvc2NyaXB0PgorPC9ib2R5PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL3Jlc291cmNlcy9ub3RpZmlj
YXRpb25zLWNhbmNlbC1yZXF1ZXN0LXBlcm1pc3Npb24uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
bm90aWZpY2F0aW9ucy9yZXNvdXJjZXMvbm90aWZpY2F0aW9ucy1jYW5jZWwtcmVxdWVzdC1wZXJt
aXNzaW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDM4OTdjOWFiOTQ2YzNhMjZjNTEyMzBkNmM1ZTJiNTUw
ZWMwMTk0MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9u
cy9yZXNvdXJjZXMvbm90aWZpY2F0aW9ucy1jYW5jZWwtcmVxdWVzdC1wZXJtaXNzaW9uLmh0bWwK
QEAgLTAsMCArMSwyOCBAQAorPGh0bWw+Cis8aGVhZD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQv
amF2YXNjcmlwdCI+CisgICAgICAgIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQorICAgICAgICB7Cisg
ICAgICAgICAgICBwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIpLmlubmVy
SFRNTCArPSBtZXNzYWdlICsgIjxicj4iOworICAgICAgICB9CisgICAgICAgIAorICAgICAgICBm
dW5jdGlvbiBydW5UZXN0cygpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikgeworICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAg
ICAgICAgICAgICB0ZXN0UnVubmVyLmlnbm9yZUxlZ2FjeVdlYk5vdGlmaWNhdGlvblBlcm1pc3Np
b25SZXF1ZXN0cygpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICB3aW5kb3cud2Via2l0
Tm90aWZpY2F0aW9ucy5yZXF1ZXN0UGVybWlzc2lvbigKKyAgICAgICAgICAgICAgICBmdW5jdGlv
bigpIHsgbG9nKCJGQUlMOiBQZXJtaXNzaW9uIGNhbGxiYWNrIGludm9rZWQuIik7IH0KKyAgICAg
ICAgICAgICk7CisKKyAgICAgICAgfQorICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25s
b2FkPSJydW5UZXN0cygpOyI+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvcmVzb3VyY2VzL25vdGlmaWNhdGlvbnMtaWZyYW1lLmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvcmVzb3VyY2VzL25vdGlmaWNhdGlv
bnMtaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzE5NjljMTliOTUxYjc1MDA2ZWE4ZGE1Y2YyZTFl
NTQzOGUwNDdmMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0
aW9ucy9yZXNvdXJjZXMvbm90aWZpY2F0aW9ucy1pZnJhbWUuaHRtbApAQCAtMCwwICsxLDEzIEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxlPk5vdGlmaWNhdGlv
bnM6IElmcmFtZSB0ZXN0LjwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8cCBpZD0iaGFz
UGVybWlzc2lvbiI+PC9wPgorICAgIDxzY3JpcHQ+CisgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJoYXNQZXJtaXNzaW9uIikuaW5uZXJUZXh0ID0KKyAgICAgICAgICAgICF3ZWJraXRO
b3RpZmljYXRpb25zLmNoZWNrUGVybWlzc2lvbigpID8gIkFsbG93ZWQiIDogIkRlbmllZCI7Cisg
ICAgPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5L2RvdWJsZS1zaG93LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvZG91YmxlLXNob3ct
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY5ZDE5Mzg3ZDQxM2QyZGQxYWViMmUyMDk4NTkyM2Fl
NjNhM2U0YzgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL25vdGlm
aWNhdGlvbnMvbGVnYWN5L2RvdWJsZS1zaG93LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBA
CitTZW5kaW5nIGRvdWJsZS1zaG93IG5vdGlmaWNhdGlvbi4uLgorCitPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCisKKworUEFTUyB3aW5kb3cud2Via2l0Tm90aWZpY2F0aW9ucyBpcyBkZWZpbmVk
LgorUEFTUyBvbmRpc3BsYXkgZXZlbnQgaGFuZGxlciBjYWxsZWQKK1BBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5L2RvdWJsZS1zaG93Lmh0bWwgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5L2RvdWJsZS1zaG93Lmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZmVjZThlYjNjM2MyYjg4NjE3MGM0OWM2MmY0NzYxYWZlODgxYmE5NgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdh
Y3kvZG91YmxlLXNob3cuaHRtbApAQCAtMCwwICsxLDI0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIvcmVzb3VyY2VzL25vdGlmaWNhdGlvbnMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHAg
aWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlw
dCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZGVzY3JpcHRpb24oIlNlbmRpbmcgZG91YmxlLXNo
b3cgbm90aWZpY2F0aW9uLi4uIik7CisKK2lmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgIHRl
c3RSdW5uZXIuZ3JhbnRXZWJOb3RpZmljYXRpb25QZXJtaXNzaW9uKHRlc3RVUkwpOworICAgIHRl
c3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfQorCitzaG91bGRCZURlZmluZWQoIndpbmRvdy53
ZWJraXROb3RpZmljYXRpb25zIik7CisKK3ZhciBOID0gd2luZG93LndlYmtpdE5vdGlmaWNhdGlv
bnMuY3JlYXRlTm90aWZpY2F0aW9uKCJodHRwOi8vMC4wLjAuMC9teV9pY29uLnBuZyIsICJOZXcg
RS1tYWlsIiwgIk1lZXQgbWUgdG9uaWdodCBhdCA4ISIpOworTi5vbmRpc3BsYXkgPSBmdW5jdGlv
bigpIHsKKyAgICB0ZXN0UGFzc2VkKCJvbmRpc3BsYXkgZXZlbnQgaGFuZGxlciBjYWxsZWQiKTsK
KyAgICB0ZXN0Q29tcGxldGVkKCk7Cit9OworTi5zaG93KCk7CitOLnNob3coKTsKKzwvc2NyaXB0
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2Fj
eS9ldmVudHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9ub3RpZmljYXRp
b25zL2xlZ2FjeS9ldmVudHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVlNDE5MjE4MWU2OGY3
ZTJmNDA3MGRhMzU1MThmMDhlODQ1ZWE0OTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5L2V2ZW50cy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxNCBAQAorVGhpcyB0ZXN0IGxvb2tzIGZvciB0aGUgZGlzcGF0Y2ggb2YgdGhlIGV2
ZW50IGhhbmRsZXJzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworR3JhbnRpbmcg
cGVybWlzc2lvbiB0byBodHRwOi8vMTI3LjAuMC4xOjgwMDAKK1BBU1Mgd2Via2l0Tm90aWZpY2F0
aW9ucy5jaGVja1Blcm1pc3Npb24oKSBpcyAwCitQQVNTIG9uZGlzcGxheSBldmVudCBoYW5kbGVy
IHdhcyBjYWxsZWQKK1BBU1Mgb25jbGljayBldmVudCBoYW5kbGVyIHdhcyBjYWxsZWQKK1BBU1Mg
b25jbG9zZSBldmVudCBoYW5kbGVyIHdhcyBjYWxsZWQKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5L2V2ZW50cy5odG1sIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2FjeS9ldmVudHMuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNTAx
NTJjMzBkOTU3NTI0MDc5MWM4NjBlYjE3YjIyZmZiODRiOTU0Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2FjeS9ldmVudHMuaHRtbApA
QCAtMCwwICsxLDM3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL25vdGlm
aWNhdGlvbnMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisJdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisKK2Rlc2NyaXB0aW9uKCJUaGlzIHRl
c3QgbG9va3MgZm9yIHRoZSBkaXNwYXRjaCBvZiB0aGUgZXZlbnQgaGFuZGxlcnMuIik7CisKK2lm
ICh3aW5kb3cudGVzdFJ1bm5lcikgeworCWRlYnVnKCJHcmFudGluZyBwZXJtaXNzaW9uIHRvICIg
KyB0ZXN0VVJMKTsKKwl0ZXN0UnVubmVyLmdyYW50V2ViTm90aWZpY2F0aW9uUGVybWlzc2lvbih0
ZXN0VVJMKTsKK30KKworc2hvdWxkQmUoIndlYmtpdE5vdGlmaWNhdGlvbnMuY2hlY2tQZXJtaXNz
aW9uKCkiLCAiMCIpOworCit2YXIgbiA9IHdlYmtpdE5vdGlmaWNhdGlvbnMuY3JlYXRlTm90aWZp
Y2F0aW9uKCIiLCAidGl0bGUiLCAiYm9keSIpOworbi5vbmRpc3BsYXkgPSBmdW5jdGlvbigpIHsK
Kwl0ZXN0UGFzc2VkKCJvbmRpc3BsYXkgZXZlbnQgaGFuZGxlciB3YXMgY2FsbGVkIik7CisJdGVz
dFJ1bm5lci5zaW11bGF0ZVdlYk5vdGlmaWNhdGlvbkNsaWNrKHRoaXMpOworfTsKK24ub25jbGlj
ayA9IGZ1bmN0aW9uKCkgeworCXRlc3RQYXNzZWQoIm9uY2xpY2sgZXZlbnQgaGFuZGxlciB3YXMg
Y2FsbGVkIik7CisJdGhpcy5jYW5jZWwoKTsKK307CituLm9uY2xvc2UgPSBmdW5jdGlvbigpIHsK
Kwl0ZXN0UGFzc2VkKCJvbmNsb3NlIGV2ZW50IGhhbmRsZXIgd2FzIGNhbGxlZCIpOworCXRlc3RD
b21wbGV0ZWQoKTsKK307CituLm9uZXJyb3IgPSBmdW5jdGlvbigpIHsKKwl0ZXN0RmFpbGVkKCJv
bmVycm9yIGV2ZW50IGhhbmRsZXIgc2hvdWxkIG5vdCBiZSBjYWxsZWQiKTsKKwl0ZXN0Q29tcGxl
dGVkKCk7Cit9Oworbi5zaG93KCk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvbm90aWZpY2F0aW9uLXJlcXVlc3QtcGVy
bWlzc2lvbi10aGVuLW5hdmlnYXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvbm90aWZpY2F0aW9uLXJlcXVlc3QtcGVybWlzc2lvbi10
aGVuLW5hdmlnYXRlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNDYwNTY2ODAxN2RmNWVjNmIw
OGNlYjk0OWZhOTNhYWI1ZmZhNzYwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2FjeS9ub3RpZmljYXRpb24tcmVxdWVzdC1wZXJtaXNz
aW9uLXRoZW4tbmF2aWdhdGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKK21haW4gZnJh
bWUgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCitUZXN0cyB0aGF0IHdlIGFyZSBub3QgY3Jh
c2hpbmcgd2hlbiBhIHBlcm1pc3Npb24gcmVxdWVzdCBpcyBhbnN3ZXJlZCBhZnRlciBuYXZpZ2F0
aW5nCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIFRoaXMgdGVzdCBkaWQg
bm90IGNyYXNoCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExF
VEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9ub3RpZmljYXRpb25zL2xl
Z2FjeS9ub3RpZmljYXRpb24tcmVxdWVzdC1wZXJtaXNzaW9uLXRoZW4tbmF2aWdhdGUuaHRtbCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvbm90aWZpY2F0aW9u
LXJlcXVlc3QtcGVybWlzc2lvbi10aGVuLW5hdmlnYXRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODMxNjYx
OWU4YzE1NTAyMDM2YWEwODI5NDQ5MjJmNzZmOTMzZTE2ZgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvbm90aWZpY2F0aW9uLXJl
cXVlc3QtcGVybWlzc2lvbi10aGVuLW5hdmlnYXRlLmh0bWwKQEAgLTAsMCArMSwzMCBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvbm90aWZpY2F0
aW9ucy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1blRl
c3QoKSI+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgd2UgYXJlIG5vdCBjcmFz
aGluZyB3aGVuIGEgcGVybWlzc2lvbiByZXF1ZXN0IGlzIGFuc3dlcmVkIGFmdGVyIG5hdmlnYXRp
bmciKTsKK2pzVGVzdElzQXN5bmMgPSB0cnVlOworCitpZiAod2luZG93LnRlc3RSdW5uZXIpCisg
IHRlc3RSdW5uZXIuc2V0Q2FuT3BlbldpbmRvd3MoKTsKKword2luZG93LmFkZEV2ZW50TGlzdGVu
ZXIoJ21lc3NhZ2UnLCBmdW5jdGlvbihldmVudCkKK3sKKyAgdGVzdFBhc3NlZCgiVGhpcyB0ZXN0
IGRpZCBub3QgY3Jhc2giKTsKKyAgdGFyZ2V0LmNsb3NlKCk7CisgIGZpbmlzaEpTVGVzdCgpOwor
fSk7CisKK2Z1bmN0aW9uIHJ1blRlc3QoKQoreworICB0YXJnZXQgPSB3aW5kb3cub3BlbigncmVz
b3VyY2VzL3JlcXVlc3QtcGVybWlzc2lvbi10aGVuLW5hdmlnYXRlLmh0bWwnKTsKK30KKworPC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9u
b3RpZmljYXRpb25zL2xlZ2FjeS9yZXF1ZXN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvcmVxdWVzdC1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uODEyMGE4NmZjYjU5MTRmMzEwMzFjZGI0M2E1NmM1N2UxNzI4NjY1ZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvcmVx
dWVzdC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNCBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGF0
IGEgcmVxdWVzdCBmb3IgcGVybWlzc2lvbiBpcyBtYWRlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUmVxdWVzdGluZyBwZXJtaXNzaW9uIHdpdGggZGVmYXVsdCBwZXJtaXNzaW9u
CitQQVNTIHdpbmRvdy53ZWJraXROb3RpZmljYXRpb25zLmNoZWNrUGVybWlzc2lvbigpIGlzIDEK
K1BBU1Mgd2luZG93LndlYmtpdE5vdGlmaWNhdGlvbnMuY2hlY2tQZXJtaXNzaW9uKCkgaXMgMAor
UmVxdWVzdGluZyBwZXJtaXNzaW9uIHdpdGggbm9uLWRlZmF1bHQgcGVybWlzc2lvbgorUEFTUyB3
aW5kb3cud2Via2l0Tm90aWZpY2F0aW9ucy5jaGVja1Blcm1pc3Npb24oKSBpcyAyCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2FjeS9yZXF1ZXN0LW5vLWNh
bGxiYWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbm90aWZpY2F0aW9u
cy9sZWdhY3kvcmVxdWVzdC1uby1jYWxsYmFjay1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTEy
ZWJjNGIxYzdjNDVlYzQ1MmM2MGUyMGU1MWQ2NGU1NjBhM2EyNgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvcmVxdWVzdC1uby1j
YWxsYmFjay1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0
aGF0IHJlcXVlc3RpbmcgcGVybWlzc2lvbiB3aXRob3V0IGEgY2FsbGJhY2sgd29ya3MuIFRoaXMg
c3VwcG9ydHMgbGVnYWN5IEFQSS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1Jl
cXVlc3RpbmcgcGVybWlzc2lvbiB3aXRoIGRlZmF1bHQgcGVybWlzc2lvbgorUEFTUyB3aW5kb3cu
d2Via2l0Tm90aWZpY2F0aW9ucy5jaGVja1Blcm1pc3Npb24oKSBpcyAxCitQQVNTIHdlYmtpdE5v
dGlmaWNhdGlvbnMucmVxdWVzdFBlcm1pc3Npb24oKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1JlcXVlc3RpbmcgcGVybWlzc2lvbiB3aXRoIG5vbi1kZWZhdWx0IHBlcm1pc3Npb24KK1BBU1Mg
d2luZG93LndlYmtpdE5vdGlmaWNhdGlvbnMuY2hlY2tQZXJtaXNzaW9uKCkgaXMgMgorUEFTUyB3
ZWJraXROb3RpZmljYXRpb25zLnJlcXVlc3RQZXJtaXNzaW9uKCkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2Fj
eS9yZXF1ZXN0LW5vLWNhbGxiYWNrLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL25vdGlm
aWNhdGlvbnMvbGVnYWN5L3JlcXVlc3Qtbm8tY2FsbGJhY2suaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kYWU2
YTg5OTNkZDMyMTI3MTViZDcyOWY4ZTA4ZWE3ZWFiZDhjM2FhCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2FjeS9yZXF1ZXN0LW5vLWNh
bGxiYWNrLmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy9ub3RpZmljYXRpb25zLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxwIGlkPSJkZXNj
cmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0PgorZGVzY3Jp
cHRpb24oIlRoaXMgdGVzdCBjaGVja3MgdGhhdCByZXF1ZXN0aW5nIHBlcm1pc3Npb24gd2l0aG91
dCBhIGNhbGxiYWNrIHdvcmtzLiBUaGlzIHN1cHBvcnRzIGxlZ2FjeSBBUEkuIik7CisKK2Z1bmN0
aW9uIHN0ZXAxKCkgeworICAgIGRlYnVnKCJSZXF1ZXN0aW5nIHBlcm1pc3Npb24gd2l0aCBkZWZh
dWx0IHBlcm1pc3Npb24iKTsKKyAgICBzaG91bGRCZSgid2luZG93LndlYmtpdE5vdGlmaWNhdGlv
bnMuY2hlY2tQZXJtaXNzaW9uKCkiLCAiMSIpOworICAgIHNob3VsZE5vdFRocm93KCJ3ZWJraXRO
b3RpZmljYXRpb25zLnJlcXVlc3RQZXJtaXNzaW9uKCkiKTsKKyAgICBzZXRUaW1lb3V0KHN0ZXAy
LCAwKTsKK30KKworZnVuY3Rpb24gc3RlcDIoKSB7CisgICAgdGVzdFJ1bm5lci5kZW55V2ViTm90
aWZpY2F0aW9uUGVybWlzc2lvbih0ZXN0VVJMKTsKKyAgICBkZWJ1ZygiUmVxdWVzdGluZyBwZXJt
aXNzaW9uIHdpdGggbm9uLWRlZmF1bHQgcGVybWlzc2lvbiIpOworICAgIHNob3VsZEJlKCJ3aW5k
b3cud2Via2l0Tm90aWZpY2F0aW9ucy5jaGVja1Blcm1pc3Npb24oKSIsICIyIik7CisgICAgc2hv
dWxkTm90VGhyb3coIndlYmtpdE5vdGlmaWNhdGlvbnMucmVxdWVzdFBlcm1pc3Npb24oKSIpOwor
ICAgIHRlc3RDb21wbGV0ZWQoKTsKK30KKworaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAg
dGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgc3RlcDEoKTsKK30KKzwvc2NyaXB0Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2FjeS9y
ZXF1ZXN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5
L3JlcXVlc3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZGJmNzg1NDIzNjNkZDM4NjFlNmU5MDczZTY0Nzlm
MGEwY2E0OGQ3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9ub3Rp
ZmljYXRpb25zL2xlZ2FjeS9yZXF1ZXN0Lmh0bWwKQEAgLTAsMCArMSwzMSBAQAorPCFET0NUWVBF
IGh0bWw+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy9ub3RpZmljYXRpb25zLXRlc3QtcHJlLmpzIj48L3Nj
cmlwdD4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBjaGVja3MgdGhhdCBhIHJlcXVlc3Qg
Zm9yIHBlcm1pc3Npb24gaXMgbWFkZS4iKTsKKworZnVuY3Rpb24gc3RlcDEoKSB7CisgICAgZGVi
dWcoIlJlcXVlc3RpbmcgcGVybWlzc2lvbiB3aXRoIGRlZmF1bHQgcGVybWlzc2lvbiIpOworICAg
IHNob3VsZEJlKCJ3aW5kb3cud2Via2l0Tm90aWZpY2F0aW9ucy5jaGVja1Blcm1pc3Npb24oKSIs
ICIxIik7CisgICAgd2Via2l0Tm90aWZpY2F0aW9ucy5yZXF1ZXN0UGVybWlzc2lvbihmdW5jdGlv
bigpIHsKKyAgICAgICAgc2hvdWxkQmUoIndpbmRvdy53ZWJraXROb3RpZmljYXRpb25zLmNoZWNr
UGVybWlzc2lvbigpIiwgIjAiKTsKKyAgICAgICAgc2V0VGltZW91dChzdGVwMiwgMCk7CisgICAg
fSk7Cit9CisKK2Z1bmN0aW9uIHN0ZXAyKCkgeworICAgIHRlc3RSdW5uZXIuZGVueVdlYk5vdGlm
aWNhdGlvblBlcm1pc3Npb24odGVzdFVSTCk7CisgICAgZGVidWcoIlJlcXVlc3RpbmcgcGVybWlz
c2lvbiB3aXRoIG5vbi1kZWZhdWx0IHBlcm1pc3Npb24iKTsKKyAgICB3ZWJraXROb3RpZmljYXRp
b25zLnJlcXVlc3RQZXJtaXNzaW9uKGZ1bmN0aW9uKCkgeworICAgICAgICBzaG91bGRCZSgid2lu
ZG93LndlYmtpdE5vdGlmaWNhdGlvbnMuY2hlY2tQZXJtaXNzaW9uKCkiLCAiMiIpOworICAgICAg
ICB0ZXN0Q29tcGxldGVkKCk7CisgICAgfSk7Cit9CisKK2lmICh3aW5kb3cudGVzdFJ1bm5lcikg
eworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgIHN0ZXAxKCk7Cit9Cis8L3Nj
cmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9s
ZWdhY3kvcmVzb3VyY2VzL25vdGlmeS1vcGVuZXItZG9uZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2FjeS9yZXNvdXJjZXMvbm90aWZ5LW9wZW5lci1kb25l
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNjMyMThkZDNkYjFkNzU5MjY0ZTQwYzFlN2FjZWE3ZjQxNjJmZDlk
ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbm90aWZpY2F0aW9u
cy9sZWdhY3kvcmVzb3VyY2VzL25vdGlmeS1vcGVuZXItZG9uZS5odG1sCkBAIC0wLDAgKzEsNCBA
QAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0Pgorb3BlbmVyLnBvc3RNZXNzYWdlKCJET05FIiwg
JyonKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9ub3Rp
ZmljYXRpb25zL2xlZ2FjeS9yZXNvdXJjZXMvcmVxdWVzdC1wZXJtaXNzaW9uLXRoZW4tbmF2aWdh
dGUuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvcmVz
b3VyY2VzL3JlcXVlc3QtcGVybWlzc2lvbi10aGVuLW5hdmlnYXRlLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ZmQ1NjE0MmQ0ZGIyMzZjOTU4Y2RiMzhmNjFmY2RjYTIyOWIxNTViNwotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvcmVzb3VyY2Vz
L3JlcXVlc3QtcGVybWlzc2lvbi10aGVuLW5hdmlnYXRlLmh0bWwKQEAgLTAsMCArMSwxMCBAQAor
PCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0PgorZnVuY3Rpb24gcmVxdWVzdFBlcm1pc3Npb24oKQor
eworICB3aW5kb3cud2Via2l0Tm90aWZpY2F0aW9ucy5yZXF1ZXN0UGVybWlzc2lvbihmdW5jdGlv
bigpIHsgfSk7Cit9CisKK3dpbmRvdy5vbnVubG9hZCA9IHJlcXVlc3RQZXJtaXNzaW9uOword2lu
ZG93LmxvY2F0aW9uID0gIm5vdGlmeS1vcGVuZXItZG9uZS5odG1sIgorPC9zY3JpcHQ+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5L3Nob3ct
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2Fj
eS9zaG93LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNzczNzQ3YjZiNTM1MTUyYzk4NGRhNTA4
NmQ1ZThlOGVlNjhmNGJlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9ub3RpZmljYXRpb25zL2xlZ2FjeS9zaG93LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIwIEBA
CitUaGlzIHRlc3QgbG9va3MgZm9yIHRoZSBkaXNwYXRjaCBvZiB0aGUgb25zaG93IGV2ZW50IGhh
bmRsZXIuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHdpbmRvdy53ZWJr
aXROb3RpZmljYXRpb25zLmNoZWNrUGVybWlzc2lvbigpIGlzIDEKK1BBU1Mgd2luZG93LndlYmtp
dE5vdGlmaWNhdGlvbnMuY3JlYXRlTm90aWZpY2F0aW9uKCcnLCAndGl0bGUgMScsICdib2R5Jyk7
IHRocmV3IGV4Y2VwdGlvbiBTZWN1cml0eUVycm9yIChET00gRXhjZXB0aW9uIDE4KTogVGhlIG9w
ZXJhdGlvbiBpcyBpbnNlY3VyZS4uCitHcmFudGluZyBwZXJtaXNzaW9uIHRvIGh0dHA6Ly8xMjcu
MC4wLjE6ODAwMAorUEFTUyB3aW5kb3cud2Via2l0Tm90aWZpY2F0aW9ucy5jaGVja1Blcm1pc3Np
b24oKSBpcyAwCitQQVNTIG9uZGlzcGxheSBldmVudCBoYW5kbGVyIHdhcyBjYWxsZWQKK1BBU1Mg
dGhpcy5vbmRpc3BsYXkgaXMgdGhpcy5vbnNob3cKK0RlbnlpbmcgcGVybWlzc2lvbiB0byBodHRw
Oi8vMTI3LjAuMC4xOjgwMDAKK1BBU1Mgd2luZG93LndlYmtpdE5vdGlmaWNhdGlvbnMuY2hlY2tQ
ZXJtaXNzaW9uKCkgaXMgMgorUEFTUyB3aW5kb3cud2Via2l0Tm90aWZpY2F0aW9ucy5jcmVhdGVO
b3RpZmljYXRpb24oJycsICd0aXRsZSAzJywgJ2JvZHknKTsgdGhyZXcgZXhjZXB0aW9uIFNlY3Vy
aXR5RXJyb3IgKERPTSBFeGNlcHRpb24gMTgpOiBUaGUgb3BlcmF0aW9uIGlzIGluc2VjdXJlLi4K
K1Jlc2V0dGluZyBhbGwgcGVybWlzc2lvbnMKK1BBU1Mgd2luZG93LndlYmtpdE5vdGlmaWNhdGlv
bnMuY2hlY2tQZXJtaXNzaW9uKCkgaXMgMQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
bm90aWZpY2F0aW9ucy9sZWdhY3kvc2hvdy5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9u
b3RpZmljYXRpb25zL2xlZ2FjeS9zaG93Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTI5OWY4YWFhNWFiMDc1
ZmZiNmQ5YWFjZjU4MWE5YTA1ZjMyYWIzOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvc2hvdy5odG1sCkBAIC0wLDAgKzEsNTMg
QEAKKzwhRE9DVFlQRSBodG1sPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvbm90aWZpY2F0aW9ucy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNv
bnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikKKwl0ZXN0UnVu
bmVyLndhaXRVbnRpbERvbmUoKTsKKworZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBsb29rcyBmb3Ig
dGhlIGRpc3BhdGNoIG9mIHRoZSBvbnNob3cgZXZlbnQgaGFuZGxlci4iKTsKKwordmFyIG4gPSBu
dWxsOworZnVuY3Rpb24gcGFydDEoKSB7CisJc2hvdWxkQmUoIndpbmRvdy53ZWJraXROb3RpZmlj
YXRpb25zLmNoZWNrUGVybWlzc2lvbigpIiwgIjEiKTsKKwlzaG91bGRUaHJvdygid2luZG93Lndl
YmtpdE5vdGlmaWNhdGlvbnMuY3JlYXRlTm90aWZpY2F0aW9uKCcnLCAndGl0bGUgMScsICdib2R5
Jyk7Iik7CisJc2V0VGltZW91dChwYXJ0MiwgMCk7Cit9CisKK2Z1bmN0aW9uIHBhcnQyKCkgewor
CWRlYnVnKCJHcmFudGluZyBwZXJtaXNzaW9uIHRvICIgKyB0ZXN0VVJMKTsKKwl0ZXN0UnVubmVy
LmdyYW50V2ViTm90aWZpY2F0aW9uUGVybWlzc2lvbih0ZXN0VVJMKTsKKwlzaG91bGRCZSgid2lu
ZG93LndlYmtpdE5vdGlmaWNhdGlvbnMuY2hlY2tQZXJtaXNzaW9uKCkiLCAiMCIpOworCisJbiA9
IHdpbmRvdy53ZWJraXROb3RpZmljYXRpb25zLmNyZWF0ZU5vdGlmaWNhdGlvbigiIiwgInRpdGxl
IDIiLCAiYm9keSIpOworCW4ub25kaXNwbGF5ID0gZnVuY3Rpb24oKSB7CisJCXRlc3RQYXNzZWQo
Im9uZGlzcGxheSBldmVudCBoYW5kbGVyIHdhcyBjYWxsZWQiKTsKKwkJc2hvdWxkQmUoInRoaXMu
b25kaXNwbGF5IiwgInRoaXMub25zaG93Iik7CisJCXNldFRpbWVvdXQocGFydDMsIDApOworCX07
CisJbi5vbmVycm9yID0gZnVuY3Rpb24oKSB7CisJCXRlc3RGYWlsZWQoIm9uZXJyb3IgZXZlbnQg
aGFuZGxlciBzaG91bGQgbm90IGJlIGNhbGxlZCIpOworCQlzZXRUaW1lb3V0KHBhcnQzLCAwKTsK
Kwl9OworCW4uc2hvdygpOworfQorCitmdW5jdGlvbiBwYXJ0MygpIHsKKwlkZWJ1ZygiRGVueWlu
ZyBwZXJtaXNzaW9uIHRvICIgKyB0ZXN0VVJMKTsKKwl0ZXN0UnVubmVyLmRlbnlXZWJOb3RpZmlj
YXRpb25QZXJtaXNzaW9uKHRlc3RVUkwpOworCXNob3VsZEJlKCJ3aW5kb3cud2Via2l0Tm90aWZp
Y2F0aW9ucy5jaGVja1Blcm1pc3Npb24oKSIsICIyIik7CisJc2hvdWxkVGhyb3coIndpbmRvdy53
ZWJraXROb3RpZmljYXRpb25zLmNyZWF0ZU5vdGlmaWNhdGlvbignJywgJ3RpdGxlIDMnLCAnYm9k
eScpOyIpOworCXNldFRpbWVvdXQocGFydDQsIDApOworfQorCitmdW5jdGlvbiBwYXJ0NCgpIHsK
KwlkZWJ1ZygiUmVzZXR0aW5nIGFsbCBwZXJtaXNzaW9ucyIpOworCXRlc3RSdW5uZXIucmVtb3Zl
QWxsV2ViTm90aWZpY2F0aW9uUGVybWlzc2lvbnMoKTsKKwlzaG91bGRCZSgid2luZG93LndlYmtp
dE5vdGlmaWNhdGlvbnMuY2hlY2tQZXJtaXNzaW9uKCkiLCAiMSIpOworCXRlc3RDb21wbGV0ZWQo
KTsKK30KKworcGFydDEoKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2FjeS93aW5kb3ctc2hvdy1vbi1jbGljay1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5L3dpbmRv
dy1zaG93LW9uLWNsaWNrLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41OWFiOGFlNmE4ZDNlZjk0
NTFmMWFhOTViZTg5Y2NiYmNlYTExMzVkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9ub3RpZmljYXRpb25zL2xlZ2FjeS93aW5kb3ctc2hvdy1vbi1jbGljay1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGEgc2NyaXB0
IGNhbiBvcGVuIHdpbmRvd3Mgd2hlbiB0aGUgdXNlciBjbGlja3Mgb24gYSBuYXRpdmUgbm90aWZp
Y2F0aW9uLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB3ZWJraXROb3Rp
ZmljYXRpb25zLmNoZWNrUGVybWlzc2lvbigpIGlzIDAKK1BBU1MgY2xpY2tpbmcgb24gbm90aWZp
Y2F0aW9uIHN1Y2Nlc3NmdWxseSBvcGVuZWQgYSB3aW5kb3cKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5L3dpbmRvdy1zaG93LW9uLWNsaWNrLmh0bWwg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5L3dpbmRvdy1zaG93
LW9uLWNsaWNrLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2Q5MDNmNjZmNTJiZWNkMzIyNWVjOTMxODRkMTIw
MDk3ZWU5ODhlOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbm90
aWZpY2F0aW9ucy9sZWdhY3kvd2luZG93LXNob3ctb24tY2xpY2suaHRtbApAQCAtMCwwICsxLDMw
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL25vdGlmaWNhdGlvbnMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0
ZXN0UnVubmVyLmdyYW50V2ViTm90aWZpY2F0aW9uUGVybWlzc2lvbih0ZXN0VVJMKTsKKyAgICB0
ZXN0UnVubmVyLnNldENhbk9wZW5XaW5kb3dzKHRydWUpOworICAgIHRlc3RSdW5uZXIud2FpdFVu
dGlsRG9uZSgpOworfQorCitkZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGEgc2Ny
aXB0IGNhbiBvcGVuIHdpbmRvd3Mgd2hlbiB0aGUgdXNlciBjbGlja3Mgb24gYSBuYXRpdmUgbm90
aWZpY2F0aW9uLiIpOworCitzaG91bGRCZSgid2Via2l0Tm90aWZpY2F0aW9ucy5jaGVja1Blcm1p
c3Npb24oKSIsICIwIik7Cit2YXIgbiA9IHdlYmtpdE5vdGlmaWNhdGlvbnMuY3JlYXRlTm90aWZp
Y2F0aW9uKCIiLCAiIiwgIiIpOworbi5vbmRpc3BsYXkgPSBmdW5jdGlvbigpIHsKKyAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIuc2ltdWxhdGVXZWJOb3RpZmlj
YXRpb25DbGljayh0aGlzKTsKK307CituLm9uY2xpY2sgPSBmdW5jdGlvbigpIHsKKyAgICB3aW5k
b3cub3BlbignL25vdGlmaWNhdGlvbnMvcmVzb3VyY2VzL3dpbmRvdy1zaG93LW9uLWNsaWNrLmh0
bWwnKTsKK307CituLnNob3coKTsKKworZnVuY3Rpb24gb25XaW5kb3dPcGVuKCkgeworICAgIHRl
c3RQYXNzZWQoJ2NsaWNraW5nIG9uIG5vdGlmaWNhdGlvbiBzdWNjZXNzZnVsbHkgb3BlbmVkIGEg
d2luZG93Jyk7CisgICAgdGVzdENvbXBsZXRlZCgpOworfQorPC9zY3JpcHQ+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDEwM2Q4YzAyZjYwNGQyZjU5MDNl
NjAzOTZiNjhlYTY5NjgxMjA4YmIuLmE1N2Q0MjdhOTRkYzgwNTU5NDNkYmEwNmJjYjZhZGE4MmE5
ZTMzNDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRp
b25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCkBAIC0x
NjIsOSArMTYyLDE5IEBAIHdlYmtpdC5vcmcvYi85ODkyNyBmYXN0L2RvbS9EZXZpY2VNb3Rpb24g
WyBTa2lwIF0KIHdlYmtpdC5vcmcvYi85ODkyNyBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbiBb
IFNraXAgXQogCiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MTY5
NyBTa2lwIGZpbGU6Ly8gYmFzZWQgbm90aWZpY2F0aW9ucyB0ZXN0cworZmFzdC9ub3RpZmljYXRp
b25zCiBmYXN0L2hpc3RvcnkvcGFnZS1jYWNoZS1ub3RpZmljYXRpb24tbm9uLXN1c3BlbmRhYmxl
Lmh0bWwKIGZhc3QvaGlzdG9yeS9wYWdlLWNhY2hlLW5vdGlmaWNhdGlvbi1zdXNwZW5kYWJsZS5o
dG1sCiAKKyMgd2UgZG8gbm90IGVuYWJsZSBsZWdhY3kgbm90aWZpY2F0aW9ucworaHR0cC90ZXN0
cy9ub3RpZmljYXRpb25zL2xlZ2FjeS93aW5kb3ctc2hvdy1vbi1jbGljay5odG1sCitodHRwL3Rl
c3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5L3JlcXVlc3QuaHRtbAoraHR0cC90ZXN0cy9ub3RpZmlj
YXRpb25zL2xlZ2FjeS9yZXF1ZXN0LW5vLWNhbGxiYWNrLmh0bWwKK2h0dHAvdGVzdHMvbm90aWZp
Y2F0aW9ucy9sZWdhY3kvZXZlbnRzLmh0bWwKK2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdh
Y3kvc2hvdy5odG1sCitodHRwL3Rlc3RzL25vdGlmaWNhdGlvbnMvbGVnYWN5L2RvdWJsZS1zaG93
Lmh0bWwKK2h0dHAvdGVzdHMvbm90aWZpY2F0aW9ucy9sZWdhY3kvbm90aWZpY2F0aW9uLXJlcXVl
c3QtcGVybWlzc2lvbi10aGVuLW5hdmlnYXRlLmh0bWwKKwogIyBEYXRhbGlzdCBpcyBub3QgeWV0
IGVuYWJsZWQuCiB3ZWJraXQub3JnL2IvOTg5MzQgZmFzdC9mb3Jtcy9kYXRhbGlzdCBbIFNraXAg
XQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9u
cyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDMyOWU3
NmY2YWVmMTkwNDgyNjQ1ZGNlY2U2YTg4ZjZhZTc4ZDM2ODYuLmM0MjViZjQxYzEyMzhiYjY3MWZi
M2I0MDQxM2JhMTQ1ZTlmMDQ5OWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lv
cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhw
ZWN0YXRpb25zCkBAIC00OCw2ICs0OCw3IEBAIGZhc3QvZXZlbnRzL2NvbnN0cnVjdG9ycy9kZXZp
Y2UtcHJveGltaXR5LWV2ZW50LWNvbnN0cnVjdG9yLmh0bWwKIHByaW50aW5nCiAKICMgV2ViIE5v
dGlmaWNhdGlvbnMgYXJlIG5vdCBzdXBwb3J0ZWQgb24gaU9TLgorZmFzdC9ub3RpZmljYXRpb25z
CiBodHRwL3Rlc3RzL25vdGlmaWNhdGlvbnMKIGZhc3QvaGlzdG9yeS9wYWdlLWNhY2hlLW5vdGlm
aWNhdGlvbi1ub24tc3VzcGVuZGFibGUuaHRtbAogZmFzdC9oaXN0b3J5L3BhZ2UtY2FjaGUtbm90
aWZpY2F0aW9uLXN1c3BlbmRhYmxlLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RF
eHBlY3RhdGlvbnMKaW5kZXggNTJhNmYwZDZhOTQ4MTcwMDFkNmNiNTEwNGMzY2IyNDM3MDBmMGZj
Ni4uMGRjOTY0YmI4NGM1NDg2ZDkxZTBhOTMyMzY5ODFmODQ2NjJlZDNjNyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTQ3LDYgKzQ3LDkgQEAgZmFzdC9l
dmVudHMvYXR0ZW1wdC1zY3JvbGwtd2l0aC1uby1zY3JvbGxiYXJzLmh0bWwgWyBGYWlsdXJlIF0K
ICMgUGl4ZWwgdGVzdCBkb2Vzbid0IHJlcGFpbnQgZW50aXJlIHZpZXcgc28gcmVzdWx0IGlzIGNv
cnJ1cHRlZCBieSBwcmV2aW91cyB0ZXN0CiB3ZWJraXQub3JnL2IvMjE5MTYgdGFibGVzL21vemls
bGFfZXhwZWN0ZWRfZmFpbHVyZXMvYnVncy9idWcxNzg4NTUueG1sIFsgUGFzcyBJbWFnZU9ubHlG
YWlsdXJlIEZhaWx1cmUgXQogCisjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD04MTY5NyBTa2lwIGZpbGU6Ly8gYmFzZWQgbm90aWZpY2F0aW9ucyB0ZXN0cworZmFzdC9u
b3RpZmljYXRpb25zCisKICMgVGhpcyBwb3J0IGRvZXNuJ3Qgc3VwcG9ydCBkZXRlY3Rpbmcgc2xv
dyB1bmxvYWQgaGFuZGxlcnMuCiBmYXN0L2RvbS9XaW5kb3cvc2xvdy11bmxvYWQtaGFuZGxlci5o
dG1sCiBmYXN0L2RvbS9XaW5kb3cvc2xvdy11bmxvYWQtaGFuZGxlci1vbmx5LWZyYW1lLWlzLXN0
b3BwZWQuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBl
Y3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRl
eCA5YzBlZTE4MjlkYTIyMzFmNjQ5ZGVjMTlkYTg5ZDRiMTA1YTI1YTZhLi44ZGUzZTQyNTg5MmM2
MWNkY2ZhNWYxMWRjZjMzOTNiOTdkMmNlOTZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4v
VGVzdEV4cGVjdGF0aW9ucwpAQCAtMTQ0LDYgKzE0NCw3IEBAIGZhc3QvZXZlbnRzL3BvcHVwLWJs
b2NraW5nLWNsaWNrLWluLWlmcmFtZS5odG1sIFsgU2tpcCBdCiBmYXN0L2RvbS9HZW9sb2NhdGlv
bi8gWyBTa2lwIF0KIAogIyBUT0RPIFRoaXMgcG9ydCBkb2Vzbid0IHN1cHBvcnQgTm90aWZpY2F0
aW9ucy4KK2Zhc3Qvbm90aWZpY2F0aW9ucy8gWyBTa2lwIF0KIGh0dHAvdGVzdHMvbm90aWZpY2F0
aW9ucy8gWyBTa2lwIF0KIGZhc3QvaGlzdG9yeS9wYWdlLWNhY2hlLW5vdGlmaWNhdGlvbi1ub24t
c3VzcGVuZGFibGUuaHRtbCBbIFNraXAgXQogZmFzdC9oaXN0b3J5L3BhZ2UtY2FjaGUtbm90aWZp
Y2F0aW9uLXN1c3BlbmRhYmxlLmh0bWwgWyBTa2lwIF0KZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBi
L0NoYW5nZUxvZwppbmRleCBlYWVmYjljYzAwMzJkYzVkNmNhMDNlM2IyNWEwNTgxMDM2YzQxYWIz
Li40MTJlZjY5MjkxOTQxZTdkMThkYmVmYjc0NzFkMzEyMjA1ZjFkNWI0IDEwMDY0NAotLS0gYS9D
aGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTctMDUtMDQgIENv
bW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3
ZWQsIHJvbGxpbmcgb3V0IHIyMTYyMDYuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNzE3MTQKKworICAgICAgICBNdWx0aXBsZSBMYXlvdXRUZXN0cyBj
cmFzaGluZyBpbiBEb2N1bWVudDo6cGFnZSgpIChSZXF1ZXN0ZWQKKyAgICAgICAgYnkgYXAgb24g
I3dlYmtpdCkuCisKKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJSZW1v
dmUgc3VwcG9ydCBmb3IgbGVnYWN5IE5vdGlmaWNhdGlvbnMiCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzE0ODcKKyAgICAgICAgaHR0cDovL3RyYWMu
d2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjE2MjA2CisKIDIwMTctMDUtMDQgIERvbiBPbG1zdGVhZCAg
PGRvbi5vbG1zdGVhZEBhbS5zb255LmNvbT4KIAogICAgICAgICBbV2luXSBSZW1vdmUgcmVkdW5k
YW50IG1hY3JvcyB0aGF0IGFyZSBzZXQgaW4gdGhlIENNYWtlIGNvbmZpZwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>