<?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>155083</bug_id>
          
          <creation_ts>2016-03-05 20:15:23 -0800</creation_ts>
          <short_desc>REGRESSION(r197626): Broke multiple tests (Requested by ap on #webkit).</short_desc>
          <delta_ts>2016-03-06 09:42:10 -0800</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>INVALID</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>155079</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>enrica</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1171367</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-05 20:15:23 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/197626 broke the build:
Broke multiple tests (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>1171369</commentid>
    <comment_count>1</comment_count>
      <attachid>273121</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-05 20:15:54 -0800</bug_when>
    <thetext>Created attachment 273121
ROLLOUT of r197626

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>1171424</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2016-03-06 09:42:00 -0800</bug_when>
    <thetext>There were follow-up fixes. We still have regressions, but a new rollout will be needed if it gets to that.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273121</attachid>
            <date>2016-03-05 20:15:54 -0800</date>
            <delta_ts>2016-03-06 09:42:10 -0800</delta_ts>
            <desc>ROLLOUT of r197626</desc>
            <filename>bug-155083-20160305201540.patch</filename>
            <type>text/plain</type>
            <size>84228</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NjI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWI4ZjUzMDA3Mjc1NmZi
YmYxMTI0OTEwODBjOWZlZjE2OTZjN2Y3Ny4uOGY1Y2U3Yzg3ZDJlNjJhM2EwNmEyOGNhMTk4OGJl
NmNlYTY2MDY4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE2LTAzLTA1ICBDb21t
aXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2Vk
LCByb2xsaW5nIG91dCByMTk3NjI2LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTU1MDgzCisKKyAgICAgICAgQnJva2UgbXVsdGlwbGUgdGVzdHMgKFJl
cXVlc3RlZCBieSBhcCBvbiAjd2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6
CisKKyAgICAgICAgIkFkZCBzdXBwb3J0IGZvciBwcm9jZXNzaW5nIHRoZSBhdXRvZmlsbCBmaWVs
ZCBuYW1lIG91dCBvZgorICAgICAgICBmb3JtIGNvbnRyb2wgZWxlbWVudHMgdWx0aW1hdGVseSB0
byBhaWQgaW5wdXQgbWV0aG9kcyIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE1NTA3OQorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5n
ZXNldC8xOTc2MjYKKwogMjAxNi0wMy0wNSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29t
PgogCiAgICAgICAgIENvbnNvbGlkYXRlIFJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcyBhbmQgUnVu
dGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNjc0ZDZhYTM2ZjA5YTE1YmY2
MzBiZWVkMzVlOWU1NjIzZDBiMGUwNS4uZGRmNzllZjE0YTg2NThhM2MxM2Y3MzczYzc5MzQxYTU2
N2Y4NTc4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE2LTAzLTA1ICBDb21taXQg
UXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCBy
b2xsaW5nIG91dCByMTk3NjI2LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTU1MDgzCisKKyAgICAgICAgQnJva2UgbXVsdGlwbGUgdGVzdHMgKFJlcXVl
c3RlZCBieSBhcCBvbiAjd2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisK
KyAgICAgICAgIkFkZCBzdXBwb3J0IGZvciBwcm9jZXNzaW5nIHRoZSBhdXRvZmlsbCBmaWVsZCBu
YW1lIG91dCBvZgorICAgICAgICBmb3JtIGNvbnRyb2wgZWxlbWVudHMgdWx0aW1hdGVseSB0byBh
aWQgaW5wdXQgbWV0aG9kcyIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE1NTA3OQorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNl
dC8xOTc2MjYKKwogMjAxNi0wMy0wNSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgog
CiAgICAgICAgIENvbnNvbGlkYXRlIFJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcyBhbmQgUnVudGlt
ZUFwcGxpY2F0aW9uQ2hlY2tzSU9TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxp
c3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDRmZWJjNDk5Zjkz
M2IxMDVlOWMwNjNkMTJmNWNiZTY1ZWU4Njg1MjcuLmE3YTgwMWYxYjA2NGVlOTYzNTNjMWMyNmFj
OTQ1OWI0MzIyMjM0ODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0xNjEyLDcgKzE2MTIsNiBA
QCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgaGlzdG9yeS9QYWdlQ2FjaGUuY3BwCiAKICAgICBo
dG1sL0F0dHJpYnV0ZURPTVRva2VuTGlzdC5jcHAKLSAgICBodG1sL0F1dG9maWxsLmNwcAogICAg
IGh0bWwvQmFzZUJ1dHRvbklucHV0VHlwZS5jcHAKICAgICBodG1sL0Jhc2VDaGVja2FibGVJbnB1
dFR5cGUuY3BwCiAgICAgaHRtbC9CYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZS5j
cHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agppbmRleCAzZjk3MmI4NGE4YTdmZGU3OWE0OWZjZmQ5NGI3MTczMmUwYzk5NTMxLi5lZGIyNGYx
ZmI3MzM4NzJmZGMyZWRmMTJkODllZjc4N2YyMGVkM2YxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yNzE5LDggKzI3MTksNiBA
QAogCQk3QUY5QjIwRTE4Q0ZCNUY0MDBDNjRCRUYgLyogSlNWVFRSZWdpb25MaXN0LmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBRjlCMjBBMThDRkI1
RjMwMEM2NEJFRiAvKiBKU1ZUVFJlZ2lvbkxpc3QuY3BwICovOyB9OwogCQk3QUY5QjIwRjE4Q0ZC
NUY0MDBDNjRCRUYgLyogSlNWVFRSZWdpb25MaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUY5QjIwQjE4Q0ZCNUYzMDBDNjRCRUYgLyogSlNWVFRS
ZWdpb25MaXN0LmggKi87IH07CiAJCTdCRTc0MjczODFGQTkwNkZCQjRGMEYyQyAvKiBKU1NWR0dy
YXBoaWNzRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOTUwQzRDMDJCRUQ4OTM2RjgxOEUyRjk5IC8qIEpTU1ZHR3JhcGhpY3NFbGVtZW50Lmgg
Ki87IH07Ci0JCTdDMTg0M0ZEMUM4QjcyODMwMDJFQjk3MyAvKiBBdXRvZmlsbC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzE4NDNGQjFDOEI3Mjgz
MDAyRUI5NzMgLyogQXV0b2ZpbGwuY3BwICovOyB9OwotCQk3QzE4NDNGRTFDOEI3MjgzMDAyRUI5
NzMgLyogQXV0b2ZpbGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDdDMTg0M0ZDMUM4QjcyODMwMDJFQjk3MyAvKiBBdXRvZmlsbC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTdDMUU5NzI3MUE5Rjk4MzQw
MDdCRjBGQiAvKiBBdXRvRmlsbEJ1dHRvbkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0MxRTk3MjUxQTlGOTgzNDAwN0JGMEZCIC8qIEF1
dG9GaWxsQnV0dG9uRWxlbWVudC5jcHAgKi87IH07CiAJCTdDMUU5NzI4MUE5Rjk4MzQwMDdCRjBG
QiAvKiBBdXRvRmlsbEJ1dHRvbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDdDMUU5NzI2MUE5Rjk4MzQwMDdCRjBGQiAvKiBBdXRvRmlsbEJ1
dHRvbkVsZW1lbnQuaCAqLzsgfTsKIAkJN0MyQkREM0QxN0M3Rjk4QzAwMzhGRjE1IC8qIEpTRE9N
R2xvYmFsT2JqZWN0VGFzay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QzJCREQzQjE3QzdGOThCMDAzOEZGMTUgLyogSlNET01HbG9iYWxPYmplY3RU
YXNrLmNwcCAqLzsgfTsKQEAgLTEwMzQzLDggKzEwMzQxLDYgQEAKIAkJN0FGOUIyMEExOENGQjVG
MzAwQzY0QkVGIC8qIEpTVlRUUmVnaW9uTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU1ZUVFJlZ2lvbkxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk3QUY5QjIwQjE4Q0ZCNUYzMDBDNjRCRUYgLyogSlNWVFRSZWdpb25MaXN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVlRUUmVnaW9uTGlzdC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk3QzA0MDYxMjFDNjZFRTlDMDBBRjA3MTEgLyogTlNTY3Jv
bGxlckltcFNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOU1Njcm9sbGVy
SW1wU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdDMTg0M0ZCMUM4QjcyODMw
MDJFQjk3MyAvKiBBdXRvZmlsbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBBdXRvZmlsbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdDMTg0M0ZD
MUM4QjcyODMwMDJFQjk3MyAvKiBBdXRvZmlsbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBBdXRvZmlsbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QzFFOTcy
NTFBOUY5ODM0MDA3QkYwRkIgLyogQXV0b0ZpbGxCdXR0b25FbGVtZW50LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1dG9GaWxsQnV0dG9uRWxlbWVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdDMUU5NzI2MUE5Rjk4MzQwMDdCRjBGQiAvKiBB
dXRvRmlsbEJ1dHRvbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QXV0b0ZpbGxCdXR0b25FbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdD
MkJERDNCMTdDN0Y5OEIwMDM4RkYxNSAvKiBKU0RPTUdsb2JhbE9iamVjdFRhc2suY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01HbG9iYWxPYmplY3RUYXNrLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5MDM1LDggKzE5MDMxLDYgQEAKIAkJ
CQlCMUFENEU3NzEzQTEyQTcyMDA4NDZCMjcgLyogdHJhY2sgKi8sCiAJCQkJQTVGNkUxNkMxMzJF
RDQ2RTAwOEVEQUUzIC8qIEF1dG9jYXBpdGFsaXplLmNwcCAqLywKIAkJCQlBNTAxOTIwQzEzMkVC
RjJFMDA4QkZFNTUgLyogQXV0b2NhcGl0YWxpemUuaCAqLywKLQkJCQk3QzE4NDNGQjFDOEI3Mjgz
MDAyRUI5NzMgLyogQXV0b2ZpbGwuY3BwICovLAotCQkJCTdDMTg0M0ZDMUM4QjcyODMwMDJFQjk3
MyAvKiBBdXRvZmlsbC5oICovLAogCQkJCTM3OUU2MUM1MTI2Q0E1QzMwMEI2M0U4RCAvKiBCYXNl
QnV0dG9uSW5wdXRUeXBlLmNwcCAqLywKIAkJCQkzNzlFNjFDNjEyNkNBNUMzMDBCNjNFOEQgLyog
QmFzZUJ1dHRvbklucHV0VHlwZS5oICovLAogCQkJCTM3OUU2MUM3MTI2Q0E1QzMwMEI2M0U4RCAv
KiBCYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmNwcCAqLywKQEAgLTI2Nzc2LDcgKzI2NzcwLDYgQEAK
IAkJCQlCNTlERDY5RDExOTAyQTQyMDA3RTk2ODQgLyogSlNTUUxUcmFuc2FjdGlvbkNhbGxiYWNr
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCNTlERDZBMTExOTAyQTUyMDA3RTk2ODQgLyogSlNTUUxU
cmFuc2FjdGlvbkVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCTUxRTBCQUVCMERB
NTVENEEwMEE5RTQxNyAvKiBKU1N0b3JhZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJN0Mx
ODQzRkUxQzhCNzI4MzAwMkVCOTczIC8qIEF1dG9maWxsLmggaW4gSGVhZGVycyAqLywKIAkJCQk4
OUY2MENEQTE1ODA5RDc2MDA3NUUxNTcgLyogSlNTdG9yYWdlSW5mby5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEZGNTAyNkExMDJCQTk0MzAwNjZGMzlBIC8qIEpTU3R5bGVNZWRpYS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQkNFMDEzOUIwQzBCRUYxODAwNDM4NjBBIC8qIEpTU3R5bGVTaGVldC5oIGlu
IEhlYWRlcnMgKi8sCkBAIC0zMTE1OSw3ICszMTE1Miw2IEBACiAJCQkJOTMzMDlFMDQwOTlFNjQ5
MjAwNTZFNTgxIC8qIFJlbW92ZU5vZGVDb21tYW5kLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTkz
MzA5RTA2MDk5RTY0OTIwMDU2RTU4MSAvKiBSZW1vdmVOb2RlUHJlc2VydmluZ0NoaWxkcmVuQ29t
bWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3Q0Q0OTRDQzFBODZFQjFEMDAwQTg3RUMgLyog
UmVuZGVyQXR0YWNobWVudC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk3QzE4NDNGRDFDOEI3Mjgz
MDAyRUI5NzMgLyogQXV0b2ZpbGwuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNFQTQ4NUYwOTdE
OTMwMjAwOTRDOUU0IC8qIFJlbmRlckJsb2NrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDMTBE
NzY3MTdEOEVFNkUwMDVFMjYyNiAvKiBSZW5kZXJCbG9ja0Zsb3cuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJQkNFQTQ4NTIwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJsb2NrTGluZUxheW91dC5j
cHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQXV0b2Zp
bGwuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9BdXRvZmlsbC5jcHAKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGFiMDdmZTY5Zjc3MTcxZGFiNjllMTNhNDZiYzFkYzBhYWU1ODI5YTcu
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9BdXRvZmlsbC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwzMTYgKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJBdXRvZmlsbC5oIgot
Ci0jaW5jbHVkZSAiSFRNTEZvcm1Db250cm9sRWxlbWVudC5oIgotI2luY2x1ZGUgIkhUTUxGb3Jt
RWxlbWVudC5oIgotI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgotI2luY2x1ZGUgPHd0Zi9IYXNoTWFw
Lmg+Ci0jaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQv
QXRvbWljU3RyaW5nLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nSGFzaC5oPgot
Ci1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWVudW0gY2xhc3MgQXV0b2ZpbGxDYXRlZ29yeSB7Ci0g
ICAgT2ZmLAotICAgIEF1dG9tYXRpYywKLSAgICBOb3JtYWwsCi0gICAgQ29udGFjdCwKLX07Ci0K
LXN0cnVjdCBBdXRvZmlsbEluZm8gewotICAgIEF1dG9maWxsRmllbGROYW1lIGZpZWxkTmFtZTsK
LSAgICBBdXRvZmlsbENhdGVnb3J5IGNhdGVnb3J5OwotfTsKLQotc3RhdGljIEhhc2hNYXA8QXRv
bWljU3RyaW5nLCBBdXRvZmlsbEluZm8+JiBmaWVsZE5hbWVNYXAoKQotewotICAgIHN0YXRpYyBO
ZXZlckRlc3Ryb3llZDxIYXNoTWFwPEF0b21pY1N0cmluZywgQXV0b2ZpbGxJbmZvPj4gbWFwOwot
ICAgIGlmIChtYXAuZ2V0KCkuaXNFbXB0eSgpKSB7Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRv
bWljU3RyaW5nKCJvbiIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRv
ZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpOb25lLCBBdXRvZmlsbENhdGVnb3J5OjpPZmYg
fSk7Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJvZmYiLCBBdG9taWNTdHJp
bmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxkTmFt
ZTo6Tm9uZSwgIEF1dG9maWxsQ2F0ZWdvcnk6OkF1dG9tYXRpYyB9KTsKLSAgICAgICAgbWFwLmdl
dCgpLmFkZChBdG9taWNTdHJpbmcoIm5hbWUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21M
aXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6TmFtZSwgQXV0b2ZpbGxD
YXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygi
aG9ub3JpZmljLXByZWZpeCIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBB
dXRvZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpIb25vcmlmaWNQcmVmaXgsIEF1dG9maWxs
Q2F0ZWdvcnk6Ok5vcm1hbCB9KTsKLSAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmco
ImdpdmVuLW5hbWUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2Zp
bGxJbmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6R2l2ZW5OYW1lLCBBdXRvZmlsbENhdGVnb3J5OjpO
b3JtYWwgfSk7Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJhZGRpdGlvbmFs
LW5hbWUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZv
eyBBdXRvZmlsbEZpZWxkTmFtZTo6QWRkaXRpb25hbE5hbWUsIEF1dG9maWxsQ2F0ZWdvcnk6Ok5v
cm1hbCB9KTsKLSAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoImZhbWlseS1uYW1l
IiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsSW5mb3sgQXV0
b2ZpbGxGaWVsZE5hbWU6OkZhbWlseU5hbWUsIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCB9KTsK
LSAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoImhvbm9yaWZpYy1zdWZmaXgiLCBB
dG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmls
bEZpZWxkTmFtZTo6SG9ub3JpZmljU3VmZml4LCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwgfSk7
Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJuaWNrbmFtZSIsIEF0b21pY1N0
cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbEluZm97IEF1dG9maWxsRmllbGRO
YW1lOjpOaWNrbmFtZSwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAgICBtYXAu
Z2V0KCkuYWRkKEF0b21pY1N0cmluZygidXNlcm5hbWUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVj
dEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6VXNlcm5hbWUs
IEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCB9KTsKLSAgICAgICAgbWFwLmdldCgpLmFkZChBdG9t
aWNTdHJpbmcoIm5ldy1wYXNzd29yZCIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVy
YWwpLCBBdXRvZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpOZXdQYXNzd29yZCwgQXV0b2Zp
bGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmlu
ZygiY3VycmVudC1wYXNzd29yZCIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwp
LCBBdXRvZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpDdXJyZW50UGFzc3dvcmQsIEF1dG9m
aWxsQ2F0ZWdvcnk6Ok5vcm1hbCB9KTsKLSAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJp
bmcoIm9yZ2FuaXphdGlvbi10aXRsZSIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVy
YWwpLCBBdXRvZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpPcmdhbml6YXRpb25UaXRsZSwg
QXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21p
Y1N0cmluZygib3JnYW5pemF0aW9uIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJh
bCksIEF1dG9maWxsSW5mb3sgQXV0b2ZpbGxGaWVsZE5hbWU6Ok9yZ2FuaXphdGlvbiwgQXV0b2Zp
bGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmlu
Zygic3RyZWV0LWFkZHJlc3MiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwg
QXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6U3RyZWV0QWRkcmVzcywgQXV0b2ZpbGxD
YXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygi
YWRkcmVzcy1saW5lMSIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRv
ZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpBZGRyZXNzTGluZTEsIEF1dG9maWxsQ2F0ZWdv
cnk6Ok5vcm1hbCB9KTsKLSAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoImFkZHJl
c3MtbGluZTIiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJ
bmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6QWRkcmVzc0xpbmUyLCBBdXRvZmlsbENhdGVnb3J5OjpO
b3JtYWwgfSk7Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJhZGRyZXNzLWxp
bmUzIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsSW5mb3sg
QXV0b2ZpbGxGaWVsZE5hbWU6OkFkZHJlc3NMaW5lMywgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFs
IH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiYWRkcmVzcy1sZXZlbDQi
LCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRv
ZmlsbEZpZWxkTmFtZTo6QWRkcmVzc0xldmVsNCwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsIH0p
OwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiYWRkcmVzcy1sZXZlbDMiLCBB
dG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmls
bEZpZWxkTmFtZTo6QWRkcmVzc0xldmVsMywgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwot
ICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiYWRkcmVzcy1sZXZlbDIiLCBBdG9t
aWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZp
ZWxkTmFtZTo6QWRkcmVzc0xldmVsMiwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwotICAg
ICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiYWRkcmVzcy1sZXZlbDEiLCBBdG9taWNT
dHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxk
TmFtZTo6QWRkcmVzc0xldmVsMSwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAg
ICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY291bnRyeSIsIEF0b21pY1N0cmluZzo6Q29u
c3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpDb3Vu
dHJ5LCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwgfSk7Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQo
QXRvbWljU3RyaW5nKCJjb3VudHJ5LW5hbWUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21M
aXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6Q291bnRyeU5hbWUsIEF1
dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCB9KTsKLSAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNT
dHJpbmcoInBvc3RhbC1jb2RlIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCks
IEF1dG9maWxsSW5mb3sgQXV0b2ZpbGxGaWVsZE5hbWU6OlBvc3RhbENvZGUsIEF1dG9maWxsQ2F0
ZWdvcnk6Ok5vcm1hbCB9KTsKLSAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoImNj
LW5hbWUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZv
eyBBdXRvZmlsbEZpZWxkTmFtZTo6Q2NOYW1lLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwgfSk7
Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJjYy1naXZlbi1uYW1lIiwgQXRv
bWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsSW5mb3sgQXV0b2ZpbGxG
aWVsZE5hbWU6OkNjR2l2ZW5OYW1lLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwgfSk7Ci0gICAg
ICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJjYy1hZGRpdGlvbmFsLW5hbWUiLCBBdG9t
aWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZp
ZWxkTmFtZTo6Q2NBZGRpdGlvbmFsTmFtZSwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwot
ICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY2MtZmFtaWx5LW5hbWUiLCBBdG9t
aWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZp
ZWxkTmFtZTo6Q2NGYW1pbHlOYW1lLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwgfSk7Ci0gICAg
ICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJjYy1udW1iZXIiLCBBdG9taWNTdHJpbmc6
OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6
Q2NOdW1iZXIsIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCB9KTsKLSAgICAgICAgbWFwLmdldCgp
LmFkZChBdG9taWNTdHJpbmcoImNjLWV4cCIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxp
dGVyYWwpLCBBdXRvZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpDY0V4cCwgQXV0b2ZpbGxD
YXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygi
Y2MtZXhwLW1vbnRoIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9m
aWxsSW5mb3sgQXV0b2ZpbGxGaWVsZE5hbWU6OkNjRXhwTW9udGgsIEF1dG9maWxsQ2F0ZWdvcnk6
Ok5vcm1hbCB9KTsKLSAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoImNjLWV4cC15
ZWFyIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsSW5mb3sg
QXV0b2ZpbGxGaWVsZE5hbWU6OkNjRXhwWWVhciwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsIH0p
OwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY2MtY3NjIiwgQXRvbWljU3Ry
aW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsSW5mb3sgQXV0b2ZpbGxGaWVsZE5h
bWU6OkNjQ3NjLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwgfSk7Ci0gICAgICAgIG1hcC5nZXQo
KS5hZGQoQXRvbWljU3RyaW5nKCJjYy10eXBlIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9t
TGl0ZXJhbCksIEF1dG9maWxsSW5mb3sgQXV0b2ZpbGxGaWVsZE5hbWU6OkNjVHlwZSwgQXV0b2Zp
bGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmlu
ZygidHJhbnNhY3Rpb24tY3VycmVuY3kiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRl
cmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6VHJhbnNhY3Rpb25DdXJyZW5j
eSwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0
b21pY1N0cmluZygidHJhbnNhY3Rpb24tYW1vdW50IiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RG
cm9tTGl0ZXJhbCksIEF1dG9maWxsSW5mb3sgQXV0b2ZpbGxGaWVsZE5hbWU6OlRyYW5zYWN0aW9u
QW1vdW50LCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwgfSk7Ci0gICAgICAgIG1hcC5nZXQoKS5h
ZGQoQXRvbWljU3RyaW5nKCJsYW5ndWFnZSIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxp
dGVyYWwpLCBBdXRvZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpMYW5ndWFnZSwgQXV0b2Zp
bGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmlu
ZygiYmRheSIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbElu
Zm97IEF1dG9maWxsRmllbGROYW1lOjpCZGF5LCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwgfSk7
Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJiZGF5LWRheSIsIEF0b21pY1N0
cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbEluZm97IEF1dG9maWxsRmllbGRO
YW1lOjpCZGF5RGF5LCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwgfSk7Ci0gICAgICAgIG1hcC5n
ZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJiZGF5LW1vbnRoIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1
Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsSW5mb3sgQXV0b2ZpbGxGaWVsZE5hbWU6OkJkYXlNb250
aCwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsIH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0
b21pY1N0cmluZygiYmRheS15ZWFyIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJh
bCksIEF1dG9maWxsSW5mb3sgQXV0b2ZpbGxGaWVsZE5hbWU6OkJkYXlZZWFyLCBBdXRvZmlsbENh
dGVnb3J5OjpOb3JtYWwgfSk7Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJz
ZXgiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBB
dXRvZmlsbEZpZWxkTmFtZTo6U2V4LCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwgfSk7Ci0gICAg
ICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJ1cmwiLCBBdG9taWNTdHJpbmc6OkNvbnN0
cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6VVJMLCBB
dXRvZmlsbENhdGVnb3J5OjpOb3JtYWwgfSk7Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWlj
U3RyaW5nKCJwaG90byIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRv
ZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpQaG90bywgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9y
bWFsIH0pOwotCi0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJ0ZWwiLCBBdG9t
aWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZp
ZWxkTmFtZTo6VGVsLCBBdXRvZmlsbENhdGVnb3J5OjpDb250YWN0IH0pOwotICAgICAgICBtYXAu
Z2V0KCkuYWRkKEF0b21pY1N0cmluZygidGVsLWNvdW50cnktY29kZSIsIEF0b21pY1N0cmluZzo6
Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpU
ZWxDb3VudHJ5Q29kZSwgQXV0b2ZpbGxDYXRlZ29yeTo6Q29udGFjdCB9KTsKLSAgICAgICAgbWFw
LmdldCgpLmFkZChBdG9taWNTdHJpbmcoInRlbC1uYXRpb25hbCIsIEF0b21pY1N0cmluZzo6Q29u
c3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpUZWxO
YXRpb25hbCwgQXV0b2ZpbGxDYXRlZ29yeTo6Q29udGFjdCB9KTsKLSAgICAgICAgbWFwLmdldCgp
LmFkZChBdG9taWNTdHJpbmcoInRlbC1hcmVhLWNvZGUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVj
dEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6VGVsQXJlYUNv
ZGUsIEF1dG9maWxsQ2F0ZWdvcnk6OkNvbnRhY3QgfSk7Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQo
QXRvbWljU3RyaW5nKCJ0ZWwtbG9jYWwiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRl
cmFsKSwgQXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6VGVsTG9jYWwsIEF1dG9maWxs
Q2F0ZWdvcnk6OkNvbnRhY3QgfSk7Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5n
KCJ0ZWwtbG9jYWwtcHJlZml4IiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCks
IEF1dG9maWxsSW5mb3sgQXV0b2ZpbGxGaWVsZE5hbWU6OlRlbExvY2FsUHJlZml4LCBBdXRvZmls
bENhdGVnb3J5OjpDb250YWN0IH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmlu
ZygidGVsLWxvY2FsLXN1ZmZpeCIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwp
LCBBdXRvZmlsbEluZm97IEF1dG9maWxsRmllbGROYW1lOjpUZWxMb2NhbFN1ZmZpeCwgQXV0b2Zp
bGxDYXRlZ29yeTo6Q29udGFjdCB9KTsKLSAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJp
bmcoInRlbC1leHRlbnNpb24iLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwg
QXV0b2ZpbGxJbmZveyBBdXRvZmlsbEZpZWxkTmFtZTo6VGVsRXh0ZW5zaW9uLCBBdXRvZmlsbENh
dGVnb3J5OjpDb250YWN0IH0pOwotICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygi
ZW1haWwiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxJbmZv
eyBBdXRvZmlsbEZpZWxkTmFtZTo6RW1haWwsIEF1dG9maWxsQ2F0ZWdvcnk6OkNvbnRhY3QgfSk7
Ci0gICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJpbXBwIiwgQXRvbWljU3RyaW5n
OjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsSW5mb3sgQXV0b2ZpbGxGaWVsZE5hbWU6
OkltcHAsIEF1dG9maWxsQ2F0ZWdvcnk6OkNvbnRhY3QgfSk7Ci0gICAgfQotCi0gICAgcmV0dXJu
IG1hcDsKLX0KLQotQXV0b2ZpbGxGaWVsZE5hbWUgdG9BdXRvZmlsbEZpZWxkTmFtZShjb25zdCBB
dG9taWNTdHJpbmcmIHZhbHVlKQotewotICAgIGF1dG8gbWFwID0gZmllbGROYW1lTWFwKCk7Ci0g
ICAgYXV0byBpdCA9IG1hcC5maW5kKHZhbHVlKTsKLSAgICBpZiAoaXQgPT0gbWFwLmVuZCgpKQot
ICAgICAgICByZXR1cm4gQXV0b2ZpbGxGaWVsZE5hbWU6Ok5vbmU7Ci0gICAgcmV0dXJuIGl0LT52
YWx1ZS5maWVsZE5hbWU7Ci19Ci0KLXN0YXRpYyBpbmxpbmUgYm9vbCBpc0NvbnRhY3RUb2tlbihj
b25zdCBBdG9taWNTdHJpbmcmIHRva2VuKQotewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxB
dG9taWNTdHJpbmc+IGhvbWUoImhvbWUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRl
cmFsKTsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5nPiB3b3JrKCJ3b3Jr
IiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7Ci0gICAgc3RhdGljIE5ldmVy
RGVzdHJveWVkPEF0b21pY1N0cmluZz4gbW9iaWxlKCJtb2JpbGUiLCBBdG9taWNTdHJpbmc6OkNv
bnN0cnVjdEZyb21MaXRlcmFsKTsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3Ry
aW5nPiBmYXgoImZheCIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOwotICAg
IHN0YXRpYyBOZXZlckRlc3Ryb3llZDxBdG9taWNTdHJpbmc+IHBhZ2VyKCJwYWdlciIsIEF0b21p
Y1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOwotCi0gICAgcmV0dXJuIHRva2VuID09IGhv
bWUgfHwgdG9rZW4gPT0gd29yayB8fCB0b2tlbiA9PSBtb2JpbGUgfHwgdG9rZW4gPT0gZmF4IHx8
IHRva2VuID09IHBhZ2VyOwotfQotCi1zdGF0aWMgdW5zaWduZWQgbWF4VG9rZW5zRm9yQXV0b2Zp
bGxGaWVsZENhdGVnb3J5KEF1dG9maWxsQ2F0ZWdvcnkgY2F0ZWdvcnkpCi17Ci0gICAgc3dpdGNo
IChjYXRlZ29yeSkgewotICAgIGNhc2UgQXV0b2ZpbGxDYXRlZ29yeTo6QXV0b21hdGljOgotICAg
IGNhc2UgQXV0b2ZpbGxDYXRlZ29yeTo6T2ZmOgotICAgICAgICByZXR1cm4gMTsKLQotICAgIGNh
c2UgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsOgotICAgICAgICByZXR1cm4gMzsKLQotICAgIGNh
c2UgQXV0b2ZpbGxDYXRlZ29yeTo6Q29udGFjdDoKLSAgICAgICAgcmV0dXJuIDQ7Ci0gICAgfQot
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiAwOwotfQotCi0vLyBodHRwczov
L2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9mb3Jtcy5odG1sI3Byb2Nlc3NpbmctbW9k
ZWwtMwotQXV0b2ZpbGxEYXRhIEF1dG9maWxsRGF0YTo6Y3JlYXRlRnJvbUhUTUxGb3JtQ29udHJv
bEVsZW1lbnQoY29uc3QgSFRNTEZvcm1Db250cm9sRWxlbWVudCYgZWxlbWVudCkKLXsKLSAgICBz
dGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5nPiBvbigib24iLCBBdG9taWNTdHJpbmc6
OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWlj
U3RyaW5nPiBvZmYoIm9mZiIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOwot
Ci0gICAgLy8gTGFiZWw6IERlZmF1bHQKLSAgICAvLyAyNi4gTGV0IHRoZSBlbGVtZW50J3MgSURM
LWV4cG9zZWQgYXV0b2ZpbGwgdmFsdWUgYmUgdGhlIGVtcHR5IHN0cmluZywgYW5kIGl0cyBhdXRv
ZmlsbCBoaW50IHNldCBhbmQgYXV0b2ZpbGwgc2NvcGUgYmUgZW1wdHkuCi0gICAgLy8gMjcuIElm
IHRoZSBlbGVtZW50J3MgYXV0b2NvbXBsZXRlIGF0dHJpYnV0ZSBpcyB3ZWFyaW5nIHRoZSBhdXRv
ZmlsbCBhbmNob3IgbWFudGxlLCB0aGVuIGxldCB0aGUgZWxlbWVudCdzIGF1dG9maWxsIGZpZWxk
IG5hbWUgYmUgdGhlIGVtcHR5IHN0cmluZyBhbmQgYWJvcnQgdGhlc2Ugc3RlcHMuCi0gICAgLy8g
MjguIExldCBmb3JtIGJlIHRoZSBlbGVtZW50J3MgZm9ybSBvd25lciwgaWYgYW55LCBvciBudWxs
IG90aGVyd2lzZS4KLSAgICAvLyAyOS4gSWYgZm9ybSBpcyBub3QgbnVsbCBhbmQgZm9ybSdzIGF1
dG9jb21wbGV0ZSBhdHRyaWJ1dGUgaXMgaW4gdGhlIG9mZiBzdGF0ZSwgdGhlbiBsZXQgdGhlIGVs
ZW1lbnQncyBhdXRvZmlsbCBmaWVsZCBuYW1lIGJlICJvZmYiLiBPdGhlcndpc2UsIGxldCB0aGUg
ZWxlbWVudCdzIGF1dG9maWxsIGZpZWxkIG5hbWUgYmUgIm9uIi4KLSAgICBhdXRvIGRlZmF1bHRM
YWJlbCA9IFsmXSAoKSAtPiBBdXRvZmlsbERhdGEgewotICAgICAgICBpZiAoZWxlbWVudC5hdXRv
ZmlsbE1hbnRsZSgpID09IEF1dG9maWxsTWFudGxlOjpBbmNob3IpCi0gICAgICAgICAgICByZXR1
cm4geyBlbXB0eVN0cmluZygpLCBlbXB0eVN0cmluZygpIH07Ci0gICAgICAgIAotICAgICAgICBh
dXRvIGZvcm0gPSBlbGVtZW50LmZvcm0oKTsKLSAgICAgICAgaWYgKGZvcm0gJiYgZm9ybS0+YXV0
b2NvbXBsZXRlKCkgPT0gb2ZmKQotICAgICAgICAgICAgcmV0dXJuIHsgb2ZmLCBlbXB0eVN0cmlu
ZygpIH07Ci0gICAgICAgIHJldHVybiB7IG9uLCBlbXB0eVN0cmluZygpIH07Ci0gICAgfTsKLQot
Ci0gICAgY29uc3QgQXRvbWljU3RyaW5nJiBhdHRyaWJ1dGVWYWx1ZSA9IGVsZW1lbnQuZmFzdEdl
dEF0dHJpYnV0ZShIVE1MTmFtZXM6OmF1dG9jb21wbGV0ZUF0dHIpOwotCi0gICAgLy8gMS4gSWYg
dGhlIGVsZW1lbnQgaGFzIG5vIGF1dG9jb21wbGV0ZSBhdHRyaWJ1dGUsIHRoZW4ganVtcCB0byB0
aGUgc3RlcCBsYWJlbGVkIGRlZmF1bHQuCi0gICAgaWYgKGF0dHJpYnV0ZVZhbHVlID09IG51bGxB
dG9tKQotICAgICAgICByZXR1cm4gZGVmYXVsdExhYmVsKCk7Ci0KLSAgICAvLyAyLiBMZXQgdG9r
ZW5zIGJlIHRoZSByZXN1bHQgb2Ygc3BsaXR0aW5nIHRoZSBhdHRyaWJ1dGUncyB2YWx1ZSBvbiBz
cGFjZXMuCi0gICAgU3BhY2VTcGxpdFN0cmluZyB0b2tlbnMoYXR0cmlidXRlVmFsdWUsIHRydWUp
OwotCi0gICAgLy8gMy4gSWYgdG9rZW5zIGlzIGVtcHR5LCB0aGVuIGp1bXAgdG8gdGhlIHN0ZXAg
bGFiZWxlZCBkZWZhdWx0LgotICAgIGlmICh0b2tlbnMuaXNFbXB0eSgpKQotICAgICAgICByZXR1
cm4gZGVmYXVsdExhYmVsKCk7Ci0gICAgCi0gICAgLy8gNC4gTGV0IGluZGV4IGJlIHRoZSBpbmRl
eCBvZiB0aGUgbGFzdCB0b2tlbiBpbiB0b2tlbnMKLSAgICB1bnNpZ25lZCBpbmRleCA9IHRva2Vu
cy5zaXplKCkgLSAxOwotCi0gICAgLy8gNS4gSWYgdGhlIGluZGV4dGggdG9rZW4gaW4gdG9rZW5z
IGlzIG5vdCBhbiBBU0NJSSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvciBvbmUgb2YgdGhlCi0g
ICAgLy8gdG9rZW5zIGdpdmVuIGluIHRoZSBmaXJzdCBjb2x1bW4gb2YgdGhlIGZvbGxvd2luZyB0
YWJsZSwgb3IgaWYgdGhlIG51bWJlciBvZiB0b2tlbnMgaW4KLSAgICAvLyB0b2tlbnMgaXMgZ3Jl
YXRlciB0aGFuIHRoZSBtYXhpbXVtIG51bWJlciBnaXZlbiBpbiB0aGUgY2VsbCBpbiB0aGUgc2Vj
b25kIGNvbHVtbiBvZiB0aGF0Ci0gICAgLy8gdG9rZW4ncyByb3csIHRoZW4ganVtcCB0byB0aGUg
c3RlcCBsYWJlbGVkIGRlZmF1bHQuIE90aGVyd2lzZSwgbGV0IGZpZWxkIGJlIHRoZSBzdHJpbmcg
Z2l2ZW4KLSAgICAvLyBpbiB0aGUgY2VsbCBvZiB0aGUgZmlyc3QgY29sdW1uIG9mIHRoZSBtYXRj
aGluZyByb3csIGFuZCBsZXQgY2F0ZWdvcnkgYmUgdGhlIHZhbHVlIG9mIHRoZQotICAgIC8vIGNl
bGwgaW4gdGhlIHRoaXJkIGNvbHVtbiBvZiB0aGF0IHNhbWUgcm93LgotICAgIGF1dG8mIG1hcCA9
IGZpZWxkTmFtZU1hcCgpOwotCi0gICAgYXV0byBpdCA9IG1hcC5maW5kKHRva2Vuc1tpbmRleF0p
OwotICAgIGlmIChpdCA9PSBtYXAuZW5kKCkpCi0gICAgICAgIHJldHVybiBkZWZhdWx0TGFiZWwo
KTsKLSAgICAKLSAgICBhdXRvIGNhdGVnb3J5ID0gaXQtPnZhbHVlLmNhdGVnb3J5OwotCi0gICAg
aWYgKHRva2Vucy5zaXplKCkgPiBtYXhUb2tlbnNGb3JBdXRvZmlsbEZpZWxkQ2F0ZWdvcnkoY2F0
ZWdvcnkpKQotICAgICAgICByZXR1cm4gZGVmYXVsdExhYmVsKCk7Ci0KLSAgICBjb25zdCBhdXRv
JiBmaWVsZCA9IHRva2Vuc1tpbmRleF07Ci0KLSAgICAvLyA2LiBJZiBjYXRlZ29yeSBpcyBPZmYg
b3IgQXV0b21hdGljIGJ1dCB0aGUgZWxlbWVudCdzIGF1dG9jb21wbGV0ZSBhdHRyaWJ1dGUgaXMg
d2VhcmluZyB0aGUKLSAgICAvLyBhdXRvZmlsbCBhbmNob3IgbWFudGxlLCB0aGVuIGp1bXAgdG8g
dGhlIHN0ZXAgbGFiZWxlZCBkZWZhdWx0LgotICAgIGF1dG8gbWFudGxlID0gZWxlbWVudC5hdXRv
ZmlsbE1hbnRsZSgpOwotICAgIGlmICgoY2F0ZWdvcnkgPT0gQXV0b2ZpbGxDYXRlZ29yeTo6T2Zm
IHx8IGNhdGVnb3J5ID09IEF1dG9maWxsQ2F0ZWdvcnk6OkF1dG9tYXRpYykgJiYgbWFudGxlID09
IEF1dG9maWxsTWFudGxlOjpBbmNob3IpCi0gICAgICAgIHJldHVybiBkZWZhdWx0TGFiZWwoKTsK
LQotICAgIC8vIDcuIElmIGNhdGVnb3J5IGlzIE9mZiwgbGV0IHRoZSBlbGVtZW50J3MgYXV0b2Zp
bGwgZmllbGQgbmFtZSBiZSB0aGUgc3RyaW5nICJvZmYiLCBsZXQgaXRzCi0gICAgLy8gYXV0b2Zp
bGwgaGludCBzZXQgYmUgZW1wdHksIGFuZCBsZXQgaXRzIElETC1leHBvc2VkIGF1dG9maWxsIHZh
bHVlIGJlIHRoZSBzdHJpbmcgIm9mZiIuCi0gICAgLy8gVGhlbiwgYWJvcnQgdGhlc2Ugc3RlcHMu
Ci0gICAgaWYgKGNhdGVnb3J5ID09IEF1dG9maWxsQ2F0ZWdvcnk6Ok9mZikKLSAgICAgICAgcmV0
dXJuIHsgb2ZmLCBvZmYuZ2V0KCkuc3RyaW5nKCkgfTsKLQotICAgIC8vIDguIElmIGNhdGVnb3J5
IGlzIEF1dG9tYXRpYywgbGV0IHRoZSBlbGVtZW50J3MgYXV0b2ZpbGwgZmllbGQgbmFtZSBiZSB0
aGUgc3RyaW5nICJvbiIsCi0gICAgLy8gbGV0IGl0cyBhdXRvZmlsbCBoaW50IHNldCBiZSBlbXB0
eSwgYW5kIGxldCBpdHMgSURMLWV4cG9zZWQgYXV0b2ZpbGwgdmFsdWUgYmUgdGhlIHN0cmluZwot
ICAgIC8vICJvbiIuIFRoZW4sIGFib3J0IHRoZXNlIHN0ZXBzLgotICAgIGlmIChjYXRlZ29yeSA9
PSBBdXRvZmlsbENhdGVnb3J5OjpPZmYpCi0gICAgICAgIHJldHVybiB7IG9uLCBvbi5nZXQoKS5z
dHJpbmcoKSB9OwotCi0gICAgLy8gOS4gTGV0IHNjb3BlIHRva2VucyBiZSBhbiBlbXB0eSBsaXN0
LgotICAgIC8vIDEwLiBMZXQgaGludCB0b2tlbnMgYmUgYW4gZW1wdHkgc2V0LgotCi0gICAgLy8g
Tk9URTogV2UgYXJlIGlnbm9yaW5nIHRoZXNlIHN0ZXBzIGFzIHdlIGRvbid0IGN1cnJlbnRseSBt
YWtlIHVzZSBvZiBzY29wZSB0b2tlbnMgb3IgaGludCB0b2tlbnMgYW55d2hlcmUuCi0KLSAgICAv
LyAxMS4gTGV0IElETCB2YWx1ZSBoYXZlIHRoZSBzYW1lIHZhbHVlIGFzIGZpZWxkLgotICAgIFN0
cmluZyBpZGxWYWx1ZSA9IGZpZWxkOwotCi0gICAgLy8gMTIsIElmIHRoZSBpbmRleHRoIHRva2Vu
IGluIHRva2VucyBpcyB0aGUgZmlyc3QgZW50cnksIHRoZW4gc2tpcCB0byB0aGUgc3RlcCBsYWJl
bGVkIGRvbmUuCi0gICAgaWYgKGluZGV4ID09IDApCi0gICAgICAgIHJldHVybiB7IGZpZWxkLCBp
ZGxWYWx1ZSB9OwotCi0gICAgLy8gMTMuIERlY3JlbWVudCBpbmRleCBieSBvbmUKLSAgICBpbmRl
eC0tOwotCi0gICAgLy8gMTQuIElmIGNhdGVnb3J5IGlzIENvbnRhY3QgYW5kIHRoZSBpbmRleHRo
IHRva2VuIGluIHRva2VucyBpcyBhbiBBU0NJSSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoCi0gICAg
Ly8gZm9yIG9uZSBvZiB0aGUgc3RyaW5ncyBpbiB0aGUgZm9sbG93aW5nIGxpc3QsIHRoZW4gcnVu
IHRoZSBzdWJzdGVwcyB0aGF0IGZvbGxvdzoKLSAgICBjb25zdCBhdXRvJiBjb250YWN0VG9rZW4g
PSB0b2tlbnNbaW5kZXhdOwotICAgIGlmIChjYXRlZ29yeSA9PSBBdXRvZmlsbENhdGVnb3J5OjpD
b250YWN0ICYmIGlzQ29udGFjdFRva2VuKGNvbnRhY3RUb2tlbikpIHsKLSAgICAgICAgLy8gMS4g
TGV0IGNvbnRhY3QgYmUgdGhlIG1hdGNoaW5nIHN0cmluZyBmcm9tIHRoZSBsaXN0IGFib3ZlLgot
ICAgICAgICBjb25zdCBhdXRvJiBjb250YWN0ID0gY29udGFjdFRva2VuOwotCi0gICAgICAgIC8v
IDIuIEluc2VydCBjb250YWN0IGF0IHRoZSBzdGFydCBvZiBzY29wZSB0b2tlbnMuCi0gICAgICAg
IC8vIDMuIEFkZCBjb250YWN0IHRvIGhpbnQgdG9rZW5zLgotCi0gICAgICAgIC8vIE5PVEU6IFdl
IGFyZSBpZ25vcmluZyB0aGVzZSBzdGVwcyBhcyB3ZSBkb24ndCBjdXJyZW50bHkgbWFrZSB1c2Ug
b2Ygc2NvcGUgdG9rZW5zIG9yIGhpbnQgdG9rZW5zIGFueXdoZXJlLgotCi0gICAgICAgIC8vIDQu
IExldCBJREwgdmFsdWUgYmUgdGhlIGNvbmNhdGVuYXRpb24gb2YgY29udGFjdCwgYSBVKzAwMjAg
U1BBQ0UgY2hhcmFjdGVyLCBhbmQgdGhlIHByZXZpb3VzCi0gICAgICAgIC8vIHZhbHVlIG9mIElE
TCB2YWx1ZSAod2hpY2ggYXQgdGhpcyBwb2ludCB3aWxsIGFsd2F5cyBiZSBmaWVsZCkuCi0gICAg
ICAgIGlkbFZhbHVlID0gV1RGOjptYWtlU3RyaW5nKGNvbnRhY3QsICIgIiwgaWRsVmFsdWUpOwot
Ci0gICAgICAgIC8vIDUuIElmIHRoZSBpbmRleHRoIGVudHJ5IGluIHRva2VucyBpcyB0aGUgZmly
c3QgZW50cnksIHRoZW4gc2tpcCB0byB0aGUgc3RlcCBsYWJlbGVkIGRvbmUuCi0gICAgICAgIGlm
IChpbmRleCA9PSAwKQotICAgICAgICAgICAgcmV0dXJuIHsgZmllbGQsIGlkbFZhbHVlIH07Ci0K
LSAgICAgICAgLy8gNi4gRGVjcmVtZW50IGluZGV4IGJ5IG9uZS4KLSAgICAgICAgaW5kZXgtLTsK
LSAgICB9Ci0KLSAgICAvLyAxNS4gSWYgdGhlIGluZGV4dGggdG9rZW4gaW4gdG9rZW5zIGlzIGFu
IEFTQ0lJIGNhc2UtaW5zZW5zaXRpdmUgbWF0Y2ggZm9yIG9uZSBvZiB0aGUgc3RyaW5ncwotICAg
IC8vIGluIHRoZSBmb2xsb3dpbmcgbGlzdCwgdGhlbiBydW4gdGhlIHN1YnN0ZXBzIHRoYXQgZm9s
bG93OgotICAgIGNvbnN0IGF1dG8mIG1vZGVUb2tlbiA9IHRva2Vuc1tpbmRleF07Ci0gICAgaWYg
KGVxdWFsSWdub3JpbmdBU0NJSUNhc2UobW9kZVRva2VuLCAic2hpcHBpbmciKSB8fCBlcXVhbEln
bm9yaW5nQVNDSUlDYXNlKG1vZGVUb2tlbiwgImJpbGxpbmciKSkgewotICAgICAgICAvLyAxLiBM
ZXQgbW9kZSBiZSB0aGUgbWF0Y2hpbmcgc3RyaW5nIGZyb20gdGhlIGxpc3QgYWJvdmUuCi0gICAg
ICAgIGNvbnN0IGF1dG8mIG1vZGUgPSBtb2RlVG9rZW47Ci0KLSAgICAgICAgLy8gMi4gSW5zZXJ0
IG1vZGUgYXQgdGhlIHN0YXJ0IG9mIHNjb3BlIHRva2Vucy4KLSAgICAgICAgLy8gMy4gQWRkIG1v
ZGUgdG8gaGludCB0b2tlbnMuCi0KLSAgICAgICAgLy8gTk9URTogV2UgYXJlIGlnbm9yaW5nIHRo
ZXNlIHN0ZXBzIGFzIHdlIGRvbid0IGN1cnJlbnRseSBtYWtlIHVzZSBvZiBzY29wZSB0b2tlbnMg
b3IgaGludCB0b2tlbnMgYW55d2hlcmUuCi0KLSAgICAgICAgLy8gNC4gTGV0IElETCB2YWx1ZSBi
ZSB0aGUgY29uY2F0ZW5hdGlvbiBvZiBtb2RlLCBhIFUrMDAyMCBTUEFDRSBjaGFyYWN0ZXIsIGFu
ZCB0aGUgcHJldmlvdXMKLSAgICAgICAgLy8gdmFsdWUgb2YgSURMIHZhbHVlICh3aGljaCBhdCB0
aGlzIHBvaW50IHdpbGwgZWl0aGVyIGJlIGZpZWxkIG9yIHRoZSBjb25jYXRlbmF0aW9uIG9mIGNv
bnRhY3QsCi0gICAgICAgIC8vIGEgc3BhY2UsIGFuZCBmaWVsZCkuCi0gICAgICAgIGlkbFZhbHVl
ID0gV1RGOjptYWtlU3RyaW5nKG1vZGUsICIgIiwgaWRsVmFsdWUpOwotCi0gICAgICAgIC8vIDUu
IElmIHRoZSBpbmRleHRoIGVudHJ5IGluIHRva2VucyBpcyB0aGUgZmlyc3QgZW50cnksIHRoZW4g
c2tpcCB0byB0aGUgc3RlcCBsYWJlbGVkIGRvbmUuCi0gICAgICAgIGlmIChpbmRleCA9PSAwKQot
ICAgICAgICAgICAgcmV0dXJuIHsgZmllbGQsIGlkbFZhbHVlIH07Ci0KLSAgICAgICAgLy8gNi4g
RGVjcmVtZW50IGluZGV4IGJ5IG9uZS4KLSAgICAgICAgaW5kZXgtLTsKLSAgICB9Ci0KLSAgICAv
LyAxNi4gSWYgdGhlIGluZGV4dGggZW50cnkgaW4gdG9rZW5zIGlzIG5vdCB0aGUgZmlyc3QgZW50
cnksIHRoZW4ganVtcCB0byB0aGUgc3RlcCBsYWJlbGVkIGRlZmF1bHQuCi0gICAgaWYgKGluZGV4
ICE9IDApCi0gICAgICAgIHJldHVybiBkZWZhdWx0TGFiZWwoKTsKLQotICAgIC8vIDE3LiBJZiB0
aGUgZmlyc3QgZWlnaHQgY2hhcmFjdGVycyBvZiB0aGUgaW5kZXh0aCB0b2tlbiBpbiB0b2tlbnMg
YXJlIG5vdCBhbiBBU0NJSSBjYXNlLWluc2Vuc2l0aXZlCi0gICAgLy8gbWF0Y2ggZm9yIHRoZSBz
dHJpbmcgInNlY3Rpb24tIiwgdGhlbiBqdW1wIHRvIHRoZSBzdGVwIGxhYmVsZWQgZGVmYXVsdC4K
LSAgICBjb25zdCBhdXRvJiBzZWN0aW9uVG9rZW4gPSB0b2tlbnNbaW5kZXhdOwotICAgIGlmICgh
c2VjdGlvblRva2VuLnN0YXJ0c1dpdGhJZ25vcmluZ0FTQ0lJQ2FzZSgic2VjdGlvbi0iKSkKLSAg
ICAgICAgcmV0dXJuIGRlZmF1bHRMYWJlbCgpOwotCi0gICAgLy8gMTguIExldCBzZWN0aW9uIGJl
IHRoZSBpbmRleHRoIHRva2VuIGluIHRva2VucywgY29udmVydGVkIHRvIEFTQ0lJIGxvd2VyY2Fz
ZS4KLSAgICBjb25zdCBhdXRvJiBzZWN0aW9uID0gc2VjdGlvblRva2VuOwotCi0gICAgLy8gMTku
IEluc2VydCBzZWN0aW9uIGF0IHRoZSBzdGFydCBvZiBzY29wZSB0b2tlbnMuCi0KLSAgICAvLyBO
T1RFOiBXZSBhcmUgaWdub3JpbmcgdGhpcyBzdGVwIGFzIHdlIGRvbid0IGN1cnJlbnRseSBtYWtl
IHVzZSBvZiBzY29wZSB0b2tlbnMgb3IgaGludCB0b2tlbnMgYW55d2hlcmUuCi0KLSAgICAvLyAy
MC4gTGV0IElETCB2YWx1ZSBiZSB0aGUgY29uY2F0ZW5hdGlvbiBvZiBzZWN0aW9uLCBhIFUrMDAy
MCBTUEFDRSBjaGFyYWN0ZXIsIGFuZCB0aGUgcHJldmlvdXMKLSAgICAvLyB2YWx1ZSBvZiBJREwg
dmFsdWUuCi0gICAgaWRsVmFsdWUgPSBXVEY6Om1ha2VTdHJpbmcoc2VjdGlvbiwgIiAiLCBpZGxW
YWx1ZSk7Ci0KLSAgICByZXR1cm4geyBmaWVsZCwgaWRsVmFsdWUgfTsKLX0KLQotfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9BdXRvZmlsbC5o
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9BdXRvZmlsbC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBiYWE4NDBmNDJmZTgxMjZmMTIwYWNjM2ExZDJmOWY2ZjU2MWMxOWUyLi4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvQXV0b2ZpbGwuaAorKysgL2Rldi9udWxsCkBAIC0xLDExOCArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0g
KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2lmbmRlZiBBdXRvZmlsbF9oCi0jZGVmaW5lIEF1dG9maWxsX2gKLQotI2luY2x1ZGUgPHd0
Zi90ZXh0L0F0b21pY1N0cmluZy5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgot
Ci1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWVudW0gY2xhc3MgQXV0b2ZpbGxNYW50bGUgewotICAg
IEV4cGVjdGF0aW9uLAotICAgIEFuY2hvcgotfTsKLQotZW51bSBjbGFzcyBBdXRvZmlsbEZpZWxk
TmFtZSB7Ci0gICAgTm9uZSwKLSAgICBOYW1lLAotICAgIEhvbm9yaWZpY1ByZWZpeCwKLSAgICBH
aXZlbk5hbWUsCi0gICAgQWRkaXRpb25hbE5hbWUsCi0gICAgRmFtaWx5TmFtZSwKLSAgICBIb25v
cmlmaWNTdWZmaXgsCi0gICAgTmlja25hbWUsCi0gICAgVXNlcm5hbWUsCi0gICAgTmV3UGFzc3dv
cmQsCi0gICAgQ3VycmVudFBhc3N3b3JkLAotICAgIE9yZ2FuaXphdGlvblRpdGxlLAotICAgIE9y
Z2FuaXphdGlvbiwKLSAgICBTdHJlZXRBZGRyZXNzLAotICAgIEFkZHJlc3NMaW5lMSwKLSAgICBB
ZGRyZXNzTGluZTIsCi0gICAgQWRkcmVzc0xpbmUzLAotICAgIEFkZHJlc3NMZXZlbDQsCi0gICAg
QWRkcmVzc0xldmVsMywKLSAgICBBZGRyZXNzTGV2ZWwyLAotICAgIEFkZHJlc3NMZXZlbDEsCi0g
ICAgQ291bnRyeSwKLSAgICBDb3VudHJ5TmFtZSwKLSAgICBQb3N0YWxDb2RlLAotICAgIENjTmFt
ZSwKLSAgICBDY0dpdmVuTmFtZSwKLSAgICBDY0FkZGl0aW9uYWxOYW1lLAotICAgIENjRmFtaWx5
TmFtZSwKLSAgICBDY051bWJlciwKLSAgICBDY0V4cCwKLSAgICBDY0V4cE1vbnRoLAotICAgIENj
RXhwWWVhciwKLSAgICBDY0NzYywKLSAgICBDY1R5cGUsCi0gICAgVHJhbnNhY3Rpb25DdXJyZW5j
eSwKLSAgICBUcmFuc2FjdGlvbkFtb3VudCwKLSAgICBMYW5ndWFnZSwKLSAgICBCZGF5LAotICAg
IEJkYXlEYXksCi0gICAgQmRheU1vbnRoLAotICAgIEJkYXlZZWFyLAotICAgIFNleCwKLSAgICBV
UkwsCi0gICAgUGhvdG8sCi0gICAgVGVsLAotICAgIFRlbENvdW50cnlDb2RlLAotICAgIFRlbE5h
dGlvbmFsLAotICAgIFRlbEFyZWFDb2RlLAotICAgIFRlbExvY2FsLAotICAgIFRlbExvY2FsUHJl
Zml4LAotICAgIFRlbExvY2FsU3VmZml4LAotICAgIFRlbEV4dGVuc2lvbiwKLSAgICBFbWFpbCwK
LSAgICBJbXBwCi19OwotCi1XRUJDT1JFX0VYUE9SVCBBdXRvZmlsbEZpZWxkTmFtZSB0b0F1dG9m
aWxsRmllbGROYW1lKGNvbnN0IEF0b21pY1N0cmluZyYpOwotCi1jbGFzcyBIVE1MRm9ybUNvbnRy
b2xFbGVtZW50OwotCi1jbGFzcyBBdXRvZmlsbERhdGEgewotcHVibGljOgotICAgIHN0YXRpYyBB
dXRvZmlsbERhdGEgY3JlYXRlRnJvbUhUTUxGb3JtQ29udHJvbEVsZW1lbnQoY29uc3QgSFRNTEZv
cm1Db250cm9sRWxlbWVudCYpOwotCi0gICAgQXV0b2ZpbGxEYXRhKGNvbnN0IEF0b21pY1N0cmlu
ZyYgZmllbGROYW1lLCBjb25zdCBTdHJpbmcmIGlkbEV4cG9zZWRWYWx1ZSkKLSAgICAgICAgOiBm
aWVsZE5hbWUoZmllbGROYW1lKQotICAgICAgICAsIGlkbEV4cG9zZWRWYWx1ZShpZGxFeHBvc2Vk
VmFsdWUpCi0gICAgewotICAgIH0KLQotICAgIC8vIFdlIGNvdWxkIGFkZCBzdXBwb3J0IGZvciBo
aW50IHRva2VucyBhbmQgc2NvcGUgdG9rZW5zIGlmIHRob3NlIGV2ZXIgYmVjYW1lIHVzZWZ1bCB0
byBhbnlvbmUuCi0KLSAgICBBdG9taWNTdHJpbmcgZmllbGROYW1lOwotICAgIFN0cmluZyBpZGxF
eHBvc2VkVmFsdWU7Ci19OwotCi19IC8vIG5hbWVzcGFjZQotCi0jZW5kaWYgLy8gQXV0b2ZpbGxf
aApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKaW5k
ZXggYzYyYTgwY2UxYmFmOGFhZGM0N2I3NDE3N2JhMTRhYThhZWY0NzFhNS4uYjI0ZmMxMjg1YThh
MmYxMzdlY2U0ZWZmMjA0MjE3ZTYzM2U2MGJkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCkBAIC0yNSw3ICsyNSw2IEBACiAjaW5jbHVkZSAi
Y29uZmlnLmgiCiAjaW5jbHVkZSAiSFRNTEZvcm1Db250cm9sRWxlbWVudC5oIgogCi0jaW5jbHVk
ZSAiQXV0b2ZpbGwuaCIKICNpbmNsdWRlICJDb250cm9sU3RhdGVzLmgiCiAjaW5jbHVkZSAiRWxl
bWVudEFuY2VzdG9ySXRlcmF0b3IuaCIKICNpbmNsdWRlICJFdmVudC5oIgpAQCAtNjEyLDI4ICs2
MTEsMTY3IEBAIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQqIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6
OmVuY2xvc2luZ0Zvcm1Db250cm9sRWxlbWVudChOb2RlCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9
CiAKLVN0cmluZyBIVE1MRm9ybUNvbnRyb2xFbGVtZW50OjphdXRvY29tcGxldGUoKSBjb25zdAot
ewotICAgIHJldHVybiBhdXRvZmlsbERhdGEoKS5pZGxFeHBvc2VkVmFsdWU7CitzdGF0aWMgaW5s
aW5lIGJvb2wgaXNDb250YWN0VG9rZW4oY29uc3QgQXRvbWljU3RyaW5nJiB0b2tlbikKK3sKKyAg
ICByZXR1cm4gdG9rZW4gPT0gImhvbWUiIHx8IHRva2VuID09ICJ3b3JrIiB8fCB0b2tlbiA9PSAi
bW9iaWxlIiB8fCB0b2tlbiA9PSAiZmF4IiB8fCB0b2tlbiA9PSAicGFnZXIiOworfQorCitlbnVt
IGNsYXNzIEF1dG9maWxsQ2F0ZWdvcnkgeworICAgIEludmFsaWQsCisgICAgT2ZmLAorICAgIEF1
dG9tYXRpYywKKyAgICBOb3JtYWwsCisgICAgQ29udGFjdCwKK307CisKK3N0YXRpYyBpbmxpbmUg
QXV0b2ZpbGxDYXRlZ29yeSBjYXRlZ29yeUZvckF1dG9maWxsRmllbGRUb2tlbihjb25zdCBBdG9t
aWNTdHJpbmcmIHRva2VuKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxIYXNoTWFwPEF0
b21pY1N0cmluZywgQXV0b2ZpbGxDYXRlZ29yeT4+IG1hcDsKKyAgICBpZiAobWFwLmdldCgpLmlz
RW1wdHkoKSkgeworICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygib2ZmIiwgQXRv
bWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok9mZik7
CisgICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJvbiIsIEF0b21pY1N0cmluZzo6
Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpBdXRvbWF0aWMpOworCisg
ICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJuYW1lIiwgQXRvbWljU3RyaW5nOjpD
b25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCk7CisgICAgICAg
IG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJob25vcmlmaWMtcHJlZml4IiwgQXRvbWljU3Ry
aW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCk7Cisg
ICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJnaXZlbi1uYW1lIiwgQXRvbWljU3Ry
aW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCk7Cisg
ICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJhZGRpdGlvbmFsLW5hbWUiLCBBdG9t
aWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFs
KTsKKyAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoImZhbWlseS1uYW1lIiwgQXRv
bWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1h
bCk7CisgICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJob25vcmlmaWMtc3VmZml4
IiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6
Ok5vcm1hbCk7CisgICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJuaWNrbmFtZSIs
IEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpO
b3JtYWwpOworICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygidXNlcm5hbWUiLCBB
dG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9y
bWFsKTsKKyAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoIm5ldy1wYXNzd29yZCIs
IEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpO
b3JtYWwpOworICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY3VycmVudC1wYXNz
d29yZCIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVn
b3J5OjpOb3JtYWwpOworICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygib3JnYW5p
emF0aW9uLXRpdGxlIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9m
aWxsQ2F0ZWdvcnk6Ok5vcm1hbCk7CisgICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5n
KCJvcmdhbml6YXRpb24iLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0
b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsKTsKKyAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJp
bmcoInN0cmVldC1hZGRyZXNzIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCks
IEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCk7CisgICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWlj
U3RyaW5nKCJhZGRyZXNzLWxpbmUxIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJh
bCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCk7CisgICAgICAgIG1hcC5nZXQoKS5hZGQoQXRv
bWljU3RyaW5nKCJhZGRyZXNzLWxpbmUyIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0
ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCk7CisgICAgICAgIG1hcC5nZXQoKS5hZGQo
QXRvbWljU3RyaW5nKCJhZGRyZXNzLWxpbmUzIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9t
TGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCk7CisgICAgICAgIG1hcC5nZXQoKS5h
ZGQoQXRvbWljU3RyaW5nKCJhZGRyZXNzLWxldmVsNCIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0
RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwpOworICAgICAgICBtYXAuZ2V0
KCkuYWRkKEF0b21pY1N0cmluZygiYWRkcmVzcy1sZXZlbDMiLCBBdG9taWNTdHJpbmc6OkNvbnN0
cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFsKTsKKyAgICAgICAgbWFw
LmdldCgpLmFkZChBdG9taWNTdHJpbmcoImFkZHJlc3MtbGV2ZWwyIiwgQXRvbWljU3RyaW5nOjpD
b25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCk7CisgICAgICAg
IG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJhZGRyZXNzLWxldmVsMSIsIEF0b21pY1N0cmlu
Zzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwpOworICAg
ICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY291bnRyeSIsIEF0b21pY1N0cmluZzo6
Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwpOworICAgICAg
ICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY291bnRyeS1uYW1lIiwgQXRvbWljU3RyaW5n
OjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCk7CisgICAg
ICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJwb3N0YWwtY29kZSIsIEF0b21pY1N0cmlu
Zzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwpOworICAg
ICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY2MtbmFtZSIsIEF0b21pY1N0cmluZzo6
Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwpOworICAgICAg
ICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY2MtZ2l2ZW4tbmFtZSIsIEF0b21pY1N0cmlu
Zzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwpOworICAg
ICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY2MtYWRkaXRpb25hbC1uYW1lIiwgQXRv
bWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1h
bCk7CisgICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJjYy1mYW1pbHktbmFtZSIs
IEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpO
b3JtYWwpOworICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY2MtbnVtYmVyIiwg
QXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5v
cm1hbCk7CisgICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJjYy1leHAiLCBBdG9t
aWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9ybWFs
KTsKKyAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoImNjLWV4cC1tb250aCIsIEF0
b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpOb3Jt
YWwpOworICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY2MtZXhwLXllYXIiLCBB
dG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9y
bWFsKTsKKyAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoImNjLWNzYyIsIEF0b21p
Y1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwp
OworICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiY2MtdHlwZSIsIEF0b21pY1N0
cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwpOwor
ICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygidHJhbnNhY3Rpb24tY3VycmVuY3ki
LCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxDYXRlZ29yeTo6
Tm9ybWFsKTsKKyAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoInRyYW5zYWN0aW9u
LWFtb3VudCIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENh
dGVnb3J5OjpOb3JtYWwpOworICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygibGFu
Z3VhZ2UiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxDYXRl
Z29yeTo6Tm9ybWFsKTsKKyAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoImJkYXki
LCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxDYXRlZ29yeTo6
Tm9ybWFsKTsKKyAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoImJkYXktZGF5Iiwg
QXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5v
cm1hbCk7CisgICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJiZGF5LW1vbnRoIiwg
QXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5v
cm1hbCk7CisgICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJiZGF5LXllYXIiLCBB
dG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxDYXRlZ29yeTo6Tm9y
bWFsKTsKKyAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoInNleCIsIEF0b21pY1N0
cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwpOwor
ICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygidXJsIiwgQXRvbWljU3RyaW5nOjpD
b25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6Ok5vcm1hbCk7CisgICAgICAg
IG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJwaG90byIsIEF0b21pY1N0cmluZzo6Q29uc3Ry
dWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpOb3JtYWwpOworCisgICAgICAgIG1h
cC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJ0ZWwiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZy
b21MaXRlcmFsKSwgQXV0b2ZpbGxDYXRlZ29yeTo6Q29udGFjdCk7CisgICAgICAgIG1hcC5nZXQo
KS5hZGQoQXRvbWljU3RyaW5nKCJ0ZWwtY291bnRyeS1jb2RlIiwgQXRvbWljU3RyaW5nOjpDb25z
dHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6OkNvbnRhY3QpOworICAgICAgICBt
YXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygidGVsLW5hdGlvbmFsIiwgQXRvbWljU3RyaW5nOjpD
b25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6OkNvbnRhY3QpOworICAgICAg
ICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygidGVsLWFyZWEtY29kZSIsIEF0b21pY1N0cmlu
Zzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpDb250YWN0KTsKKyAg
ICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoInRlbC1sb2NhbCIsIEF0b21pY1N0cmlu
Zzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpDb250YWN0KTsKKyAg
ICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoInRlbC1sb2NhbC1wcmVmaXgiLCBBdG9t
aWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSwgQXV0b2ZpbGxDYXRlZ29yeTo6Q29udGFj
dCk7CisgICAgICAgIG1hcC5nZXQoKS5hZGQoQXRvbWljU3RyaW5nKCJ0ZWwtbG9jYWwtc3VmZml4
IiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6
OkNvbnRhY3QpOworICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygidGVsLWV4dGVu
c2lvbiIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVn
b3J5OjpDb250YWN0KTsKKyAgICAgICAgbWFwLmdldCgpLmFkZChBdG9taWNTdHJpbmcoImVtYWls
IiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCksIEF1dG9maWxsQ2F0ZWdvcnk6
OkNvbnRhY3QpOworICAgICAgICBtYXAuZ2V0KCkuYWRkKEF0b21pY1N0cmluZygiaW1wcCIsIEF0
b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpLCBBdXRvZmlsbENhdGVnb3J5OjpDb250
YWN0KTsKKyAgICB9CisKKyAgICByZXR1cm4gbWFwLmdldCgpLmdldCh0b2tlbik7CiB9CiAKLXZv
aWQgSFRNTEZvcm1Db250cm9sRWxlbWVudDo6c2V0QXV0b2NvbXBsZXRlKGNvbnN0IFN0cmluZyYg
dmFsdWUpCitzdGF0aWMgaW5saW5lIHVuc2lnbmVkIG1heFRva2Vuc0ZvckF1dG9maWxsRmllbGRD
YXRlZ29yeShBdXRvZmlsbENhdGVnb3J5IGNhdGVnb3J5KQogewotICAgIHNldEF0dHJpYnV0ZShh
dXRvY29tcGxldGVBdHRyLCB2YWx1ZSk7CisgICAgc3dpdGNoIChjYXRlZ29yeSkgeworICAgIGNh
c2UgQXV0b2ZpbGxDYXRlZ29yeTo6SW52YWxpZDoKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBj
YXNlIEF1dG9maWxsQ2F0ZWdvcnk6OkF1dG9tYXRpYzoKKyAgICBjYXNlIEF1dG9maWxsQ2F0ZWdv
cnk6Ok9mZjoKKyAgICAgICAgcmV0dXJuIDE7CisKKyAgICBjYXNlIEF1dG9maWxsQ2F0ZWdvcnk6
Ok5vcm1hbDoKKyAgICAgICAgcmV0dXJuIDM7CisKKyAgICBjYXNlIEF1dG9maWxsQ2F0ZWdvcnk6
OkNvbnRhY3Q6CisgICAgICAgIHJldHVybiA0OworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNI
RUQoKTsKKyAgICByZXR1cm4gMDsKIH0KIAotQXV0b2ZpbGxNYW50bGUgSFRNTEZvcm1Db250cm9s
RWxlbWVudDo6YXV0b2ZpbGxNYW50bGUoKSBjb25zdAorLy8gaHR0cHM6Ly9odG1sLnNwZWMud2hh
dHdnLm9yZy9tdWx0aXBhZ2UvZm9ybXMuaHRtbCNwcm9jZXNzaW5nLW1vZGVsLTMKK1N0cmluZyBI
VE1MRm9ybUNvbnRyb2xFbGVtZW50OjphdXRvY29tcGxldGUoKSBjb25zdAogewotICAgIHJldHVy
biBpczxIVE1MSW5wdXRFbGVtZW50PigqdGhpcykgJiYgZG93bmNhc3Q8SFRNTElucHV0RWxlbWVu
dD4odGhpcyktPmlzSW5wdXRUeXBlSGlkZGVuKCkgPyBBdXRvZmlsbE1hbnRsZTo6QW5jaG9yIDog
QXV0b2ZpbGxNYW50bGU6OkV4cGVjdGF0aW9uOworICAgIGJvb2wgd2VhcmluZ0F1dG9maWxsQW5j
aG9yTWFudGxlID0gaXM8SFRNTElucHV0RWxlbWVudD4oKnRoaXMpICYmIGRvd25jYXN0PEhUTUxJ
bnB1dEVsZW1lbnQ+KHRoaXMpLT5pc0lucHV0VHlwZUhpZGRlbigpOworCisgICAgY29uc3QgQXRv
bWljU3RyaW5nJiBhdHRyaWJ1dGVWYWx1ZSA9IGZhc3RHZXRBdHRyaWJ1dGUoYXV0b2NvbXBsZXRl
QXR0cik7CisgICAgU3BhY2VTcGxpdFN0cmluZyB0b2tlbnMoYXR0cmlidXRlVmFsdWUsIHRydWUp
OworICAgIGlmICh0b2tlbnMuaXNFbXB0eSgpKSB7CisgICAgICAgIGlmICh3ZWFyaW5nQXV0b2Zp
bGxBbmNob3JNYW50bGUpCisgICAgICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgICAgIHJl
dHVybiBmb3JtKCkgPyBmb3JtKCktPmF1dG9jb21wbGV0ZSgpIDogQVNDSUlMaXRlcmFsKCJvbiIp
OworICAgIH0KKworICAgIHNpemVfdCBjdXJyZW50VG9rZW5JbmRleCA9IHRva2Vucy5zaXplKCkg
LSAxOworICAgIGNvbnN0IGF1dG8mIGZpZWxkVG9rZW4gPSB0b2tlbnNbY3VycmVudFRva2VuSW5k
ZXhdOworICAgIGF1dG8gY2F0ZWdvcnkgPSBjYXRlZ29yeUZvckF1dG9maWxsRmllbGRUb2tlbihm
aWVsZFRva2VuKTsKKyAgICBpZiAoY2F0ZWdvcnkgPT0gQXV0b2ZpbGxDYXRlZ29yeTo6SW52YWxp
ZCkKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisgICAgaWYgKHRva2Vucy5zaXplKCkgPiBt
YXhUb2tlbnNGb3JBdXRvZmlsbEZpZWxkQ2F0ZWdvcnkoY2F0ZWdvcnkpKQorICAgICAgICByZXR1
cm4gU3RyaW5nKCk7CisKKyAgICBpZiAoKGNhdGVnb3J5ID09IEF1dG9maWxsQ2F0ZWdvcnk6Ok9m
ZiB8fCBjYXRlZ29yeSA9PSBBdXRvZmlsbENhdGVnb3J5OjpBdXRvbWF0aWMpICYmIHdlYXJpbmdB
dXRvZmlsbEFuY2hvck1hbnRsZSkKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisgICAgaWYg
KGNhdGVnb3J5ID09IEF1dG9maWxsQ2F0ZWdvcnk6Ok9mZikKKyAgICAgICAgcmV0dXJuIEFTQ0lJ
TGl0ZXJhbCgib2ZmIik7CisKKyAgICBpZiAoY2F0ZWdvcnkgPT0gQXV0b2ZpbGxDYXRlZ29yeTo6
QXV0b21hdGljKQorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJvbiIpOworCisgICAgU3Ry
aW5nIHJlc3VsdCA9IGZpZWxkVG9rZW47CisgICAgaWYgKCFjdXJyZW50VG9rZW5JbmRleC0tKQor
ICAgICAgICByZXR1cm4gcmVzdWx0OworCisgICAgY29uc3QgYXV0byYgY29udGFjdFRva2VuID0g
dG9rZW5zW2N1cnJlbnRUb2tlbkluZGV4XTsKKyAgICBpZiAoY2F0ZWdvcnkgPT0gQXV0b2ZpbGxD
YXRlZ29yeTo6Q29udGFjdCAmJiBpc0NvbnRhY3RUb2tlbihjb250YWN0VG9rZW4pKSB7CisgICAg
ICAgIHJlc3VsdCA9IGNvbnRhY3RUb2tlbiArICIgIiArIHJlc3VsdDsKKyAgICAgICAgaWYgKCFj
dXJyZW50VG9rZW5JbmRleC0tKQorICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICB9CisK
KyAgICBjb25zdCBhdXRvJiBtb2RlVG9rZW4gPSB0b2tlbnNbY3VycmVudFRva2VuSW5kZXhdOwor
ICAgIGlmIChtb2RlVG9rZW4gPT0gInNoaXBwaW5nIiB8fCBtb2RlVG9rZW4gPT0gImJpbGxpbmci
KSB7CisgICAgICAgIHJlc3VsdCA9IG1vZGVUb2tlbiArICIgIiArIHJlc3VsdDsKKyAgICAgICAg
aWYgKCFjdXJyZW50VG9rZW5JbmRleC0tKQorICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAg
ICB9CisKKyAgICBpZiAoY3VycmVudFRva2VuSW5kZXgpCisgICAgICAgIHJldHVybiBTdHJpbmco
KTsKKworICAgIGNvbnN0IGF1dG8mIHNlY3Rpb25Ub2tlbiA9IHRva2Vuc1tjdXJyZW50VG9rZW5J
bmRleF07CisgICAgaWYgKCFzZWN0aW9uVG9rZW4uc3RhcnRzV2l0aCgic2VjdGlvbi0iKSkKKyAg
ICAgICAgcmV0dXJuIFN0cmluZygpOworCisgICAgcmV0dXJuIHNlY3Rpb25Ub2tlbiArICIgIiAr
IHJlc3VsdDsKIH0KIAotQXV0b2ZpbGxEYXRhIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OmF1dG9m
aWxsRGF0YSgpIGNvbnN0Cit2b2lkIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OnNldEF1dG9jb21w
bGV0ZShjb25zdCBTdHJpbmcmIHZhbHVlKQogewotICAgIC8vIEZJWE1FOiBXZSBjb3VsZCBjYWNo
ZSB0aGUgQXV0b2ZpbGxEYXRhIGlmIHdlIHdlIGhhZCBhbiBlZmZpY2llbnQgd2F5IHRvIGludmFs
aWRhdGUgdGhlIGNhY2hlIHdoZW4KLSAgICAvLyB0aGUgYXV0b2ZpbGwgbWFudGxlIGNoYW5nZWQg
KGR1ZSB0byBhIHR5cGUgY2hhbmdlIG9uIGFuIDxpbnB1dD4gZWxlbWVudCkgb3IgdGhlIGVsZW1l
bnQncyBmb3JtCi0gICAgLy8gb3duZXIncyBhdXRvY29tcGxldGUgYXR0cmlidXRlIGNoYW5nZWQg
b3IgdGhlIGZvcm0gb3duZXIgaXRzZWxmIGNoYW5nZWQuCi0KLSAgICByZXR1cm4gQXV0b2ZpbGxE
YXRhOjpjcmVhdGVGcm9tSFRNTEZvcm1Db250cm9sRWxlbWVudCgqdGhpcyk7CisgICAgc2V0QXR0
cmlidXRlKGF1dG9jb21wbGV0ZUF0dHIsIHZhbHVlKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Y29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuaAppbmRl
eCBkNTNlOTdmMzUwM2E0YTA2MDUyOGYxZmMwNWU0YjIwNTU3YTY3NDZlLi4xZmQ5NjRhNWI5MjNk
NzYwM2QyMWIyN2NhNzlkODliZWI1MjE3MGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxGb3JtQ29udHJvbEVsZW1lbnQuaApAQCAtMjQsNyArMjQsNiBAQAogI2lmbmRlZiBIVE1MRm9y
bUNvbnRyb2xFbGVtZW50X2gKICNkZWZpbmUgSFRNTEZvcm1Db250cm9sRWxlbWVudF9oCiAKLSNp
bmNsdWRlICJBdXRvZmlsbC5oIgogI2luY2x1ZGUgIkZvcm1Bc3NvY2lhdGVkRWxlbWVudC5oIgog
I2luY2x1ZGUgIkxhYmVsYWJsZUVsZW1lbnQuaCIKIApAQCAtMTIxLDEwICsxMjAsNiBAQCBwdWJs
aWM6CiAgICAgU3RyaW5nIGF1dG9jb21wbGV0ZSgpIGNvbnN0OwogICAgIHZvaWQgc2V0QXV0b2Nv
bXBsZXRlKGNvbnN0IFN0cmluZyYpOwogCi0gICAgQXV0b2ZpbGxNYW50bGUgYXV0b2ZpbGxNYW50
bGUoKSBjb25zdDsKLQotICAgIFdFQkNPUkVfRVhQT1JUIEF1dG9maWxsRGF0YSBhdXRvZmlsbERh
dGEoKSBjb25zdDsKLQogICAgIHVzaW5nIE5vZGU6OnJlZjsKICAgICB1c2luZyBOb2RlOjpkZXJl
ZjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCmluZGV4IDBhNDZlYjc4
NjMzN2FhNjEwOTE0ODljYWVjMGE2YTYxODE4ODc5MTkuLjZhZmEwNDMzM2M2NmRkYzY1NmUxMWE4
MzdiMGE3NzQ5MjZlNTMwNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZv
cm1FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5j
cHAKQEAgLTg2NSwxMCArODY1LDEwIEBAIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpzZXRBdXRvY29t
cGxldGUoY29uc3QgQXRvbWljU3RyaW5nJiB2YWx1ZSkKICAgICBzZXRBdHRyaWJ1dGVXaXRob3V0
U3luY2hyb25pemF0aW9uKGF1dG9jb21wbGV0ZUF0dHIsIHZhbHVlKTsKIH0KIAotY29uc3QgQXRv
bWljU3RyaW5nJiBIVE1MRm9ybUVsZW1lbnQ6OmF1dG9jb21wbGV0ZSgpIGNvbnN0Citjb25zdCBT
dHJpbmcmIEhUTUxGb3JtRWxlbWVudDo6YXV0b2NvbXBsZXRlKCkgY29uc3QKIHsKLSAgICBzdGF0
aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5nPiBvbigib24iLCBBdG9taWNTdHJpbmc6OkNv
bnN0cnVjdEZyb21MaXRlcmFsKTsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3Ry
aW5nPiBvZmYoIm9mZiIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOworICAg
IHN0YXRpYyBOZXZlckRlc3Ryb3llZDxjb25zdCBTdHJpbmc+IG9uKCJvbiIsIFN0cmluZzo6Q29u
c3RydWN0RnJvbUxpdGVyYWwpOworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxjb25zdCBTdHJp
bmc+IG9mZigib2ZmIiwgU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CiAKICAgICByZXR1
cm4gZXF1YWxJZ25vcmluZ0FTQ0lJQ2FzZShmYXN0R2V0QXR0cmlidXRlKGF1dG9jb21wbGV0ZUF0
dHIpLCAib2ZmIikgPyBvZmYgOiBvbjsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTEZvcm1FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVu
dC5oCmluZGV4IDI3NWVlMzYyNTgwZTY0NzMyYTM1N2QxNDA2YTk2NTdhYzc3ODkzNjIuLjQ4MDEw
ZDA2MWNmOWU2YzVlNWU4NTNhMjRjODBlMjdmYWUxOTBlYWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MRm9ybUVsZW1lbnQuaApAQCAtNjcsNyArNjcsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBzaG91
bGRBdXRvY29tcGxldGUoKSBjb25zdDsKIAogICAgIHZvaWQgc2V0QXV0b2NvbXBsZXRlKGNvbnN0
IEF0b21pY1N0cmluZyYpOwotICAgIGNvbnN0IEF0b21pY1N0cmluZyYgYXV0b2NvbXBsZXRlKCkg
Y29uc3Q7CisgICAgY29uc3QgU3RyaW5nJiBhdXRvY29tcGxldGUoKSBjb25zdDsKIAogI2lmIEVO
QUJMRShJT1NfQVVUT0NPUlJFQ1RfQU5EX0FVVE9DQVBJVEFMSVpFKQogICAgIFdFQkNPUkVfRVhQ
T1JUIGJvb2wgYXV0b2NvcnJlY3QoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmNwcAppbmRleCAxZjBlYjhlOWZiZTJkM2ZhOTgyNTVmYmMxYjU5M2QzY2NhMTdlYmExLi4zMWEw
ZTcyZTk1N2M5ZWM3ZWY4MjRiMTEzNDNhMDhmMzdmMjZlMmI3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuY3BwCkBAIC0zMSw3ICszMSw2IEBACiAjaW5jbHVkZSAiQWN0aXZlRE9NQ2Fs
bGJhY2tNaWNyb3Rhc2suaCIKICNpbmNsdWRlICJBbmltYXRpb25Db250cm9sbGVyLmgiCiAjaW5j
bHVkZSAiQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaCIKLSNpbmNsdWRlICJBdXRvZmlsbC5oIgog
I2luY2x1ZGUgIkJhY2tGb3J3YXJkQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkJpdG1hcEltYWdl
LmgiCiAjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKQEAgLTEzNzAsMjEgKzEzNjksNiBAQCB2b2lk
IEludGVybmFsczo6c2Nyb2xsRWxlbWVudFRvUmVjdChFbGVtZW50KiBlbGVtZW50LCBsb25nIHgs
IGxvbmcgeSwgbG9uZyB3LCBsbwogICAgIGZyYW1lVmlldy0+c2Nyb2xsRWxlbWVudFRvUmVjdCgq
ZWxlbWVudCwgSW50UmVjdCh4LCB5LCB3LCBoKSk7CiB9CiAKLVN0cmluZyBJbnRlcm5hbHM6OmF1
dG9maWxsRmllbGROYW1lKEVsZW1lbnQqIGVsZW1lbnQsIEV4Y2VwdGlvbkNvZGUmIGVjKQotewot
ICAgIGlmICghZWxlbWVudCkgewotICAgICAgICBlYyA9IElOVkFMSURfQUNDRVNTX0VSUjsKLSAg
ICAgICAgcmV0dXJuIHsgfTsKLSAgICB9Ci0KLSAgICBpZiAoIWlzPEhUTUxGb3JtQ29udHJvbEVs
ZW1lbnQ+KCplbGVtZW50KSkgewotICAgICAgICBlYyA9IElOVkFMSURfTk9ERV9UWVBFX0VSUjsK
LSAgICAgICAgcmV0dXJuIHsgfTsKLSAgICB9Ci0KLSAgICByZXR1cm4gZG93bmNhc3Q8SFRNTEZv
cm1Db250cm9sRWxlbWVudD4oKmVsZW1lbnQpLmF1dG9maWxsRGF0YSgpLmZpZWxkTmFtZTsKLX0K
LQogdm9pZCBJbnRlcm5hbHM6OnBhaW50Q29udHJvbFRpbnRzKEV4Y2VwdGlvbkNvZGUmIGVjKQog
ewogICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGNvbnRleHREb2N1bWVudCgpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggNDZhZWVkZWI0YjgxODZiZDQ5MjUxNjExZjM2ZjdkNzRh
MWNhNDg4MC4uNjdhMDE5M2NkMjg3OTI3ZmYxODc5OGY1NTRmNjRmM2NmNzczYThmZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC0xODMsOCArMTgzLDYgQEAgcHVibGljOgogICAg
IHZvaWQgc2V0U2hvd0F1dG9GaWxsQnV0dG9uKEVsZW1lbnQqLCBjb25zdCBTdHJpbmcmIGF1dG9G
aWxsQnV0dG9uVHlwZSwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2Nyb2xsRWxlbWVudFRv
UmVjdChFbGVtZW50KiwgbG9uZyB4LCBsb25nIHksIGxvbmcgdywgbG9uZyBoLCBFeGNlcHRpb25D
b2RlJik7CiAKLSAgICBTdHJpbmcgYXV0b2ZpbGxGaWVsZE5hbWUoRWxlbWVudCosIEV4Y2VwdGlv
bkNvZGUmKTsKLQogICAgIHZvaWQgcGFpbnRDb250cm9sVGludHMoRXhjZXB0aW9uQ29kZSYpOwog
CiAgICAgUmVmUHRyPFJhbmdlPiByYW5nZUZyb21Mb2NhdGlvbkFuZExlbmd0aChFbGVtZW50KiBz
Y29wZSwgaW50IHJhbmdlTG9jYXRpb24sIGludCByYW5nZUxlbmd0aCwgRXhjZXB0aW9uQ29kZSYp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IDc2NjE4MjQ1MDM3MDgwOGFi
YjJiMWRmZTU0MGQyMTUyMzYwZDkxNmIuLjgwNDNkNjc1MjIwYTk2OTEzOWNhODU4OWRmMDFkZWVl
NDMxMzQ4OTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTE2Miw4ICsx
NjIsNiBAQCBlbnVtIEF1dG9GaWxsQnV0dG9uVHlwZSB7CiAgICAgW1JhaXNlc0V4Y2VwdGlvbl0g
dm9pZCBzZXRTaG93QXV0b0ZpbGxCdXR0b24oRWxlbWVudCBpbnB1dEVsZW1lbnQsIEF1dG9GaWxs
QnV0dG9uVHlwZSBhdXRvRmlsbEJ1dHRvblR5cGUpOwogICAgIFtSYWlzZXNFeGNlcHRpb25dIHVu
c2lnbmVkIGxvbmcgY291bnRNYXRjaGVzRm9yVGV4dChET01TdHJpbmcgdGV4dCwgdW5zaWduZWQg
bG9uZyBmaW5kT3B0aW9ucywgRE9NU3RyaW5nIG1hcmtNYXRjaGVzKTsKIAotICAgIFtSYWlzZXNF
eGNlcHRpb25dIERPTVN0cmluZyBhdXRvZmlsbEZpZWxkTmFtZShFbGVtZW50IGZvcm1Db250cm9s
RWxlbWVudCk7Ci0KICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHBhaW50Q29udHJvbFRpbnRz
KCk7CiAKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNjcm9sbEVsZW1lbnRUb1JlY3QoRWxl
bWVudCBlbGVtZW50LCBsb25nIHgsIGxvbmcgeSwgbG9uZyB3LCBsb25nIGgpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Fzc2lzdGVkTm9kZUluZm9ybWF0aW9uLmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1NoYXJlZC9Bc3Npc3RlZE5vZGVJbmZvcm1hdGlvbi5jcHAKaW5kZXggMGRk
MGYzZjkyN2I0ZDIxOWIyNjFkMTk2MzQ2NjBhZmU1ZjQ5MTAwMS4uMjAxZGQyMTM4YTgyNWFiYjc0
NGUyMDQyMzJkNTJjMzdjMzFjYjg0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L0Fzc2lzdGVkTm9kZUluZm9ybWF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
QXNzaXN0ZWROb2RlSW5mb3JtYXRpb24uY3BwCkBAIC03MSw4ICs3MSw4IEBAIHZvaWQgQXNzaXN0
ZWROb2RlSW5mb3JtYXRpb246OmVuY29kZShJUEM6OkFyZ3VtZW50RW5jb2RlciYgZW5jb2Rlcikg
Y29uc3QKICAgICBlbmNvZGVyIDw8IGhhc05leHROb2RlOwogICAgIGVuY29kZXIgPDwgaGFzUHJl
dmlvdXNOb2RlOwogICAgIGVuY29kZXIgPDwgaXNBdXRvY29ycmVjdDsKLSAgICBlbmNvZGVyLmVu
Y29kZUVudW0oYXV0b2NhcGl0YWxpemVUeXBlKTsKLSAgICBlbmNvZGVyLmVuY29kZUVudW0oZWxl
bWVudFR5cGUpOworICAgIGVuY29kZXIgPDwgKHVpbnQzMl90KWF1dG9jYXBpdGFsaXplVHlwZTsK
KyAgICBlbmNvZGVyIDw8ICh1aW50MzJfdCllbGVtZW50VHlwZTsKICAgICBlbmNvZGVyIDw8IGZv
cm1BY3Rpb247CiAgICAgZW5jb2RlciA8PCBzZWxlY3RPcHRpb25zOwogICAgIGVuY29kZXIgPDwg
c2VsZWN0ZWRJbmRleDsKQEAgLTgzLDcgKzgzLDYgQEAgdm9pZCBBc3Npc3RlZE5vZGVJbmZvcm1h
dGlvbjo6ZW5jb2RlKElQQzo6QXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVu
Y29kZXIgPDwgdmFsdWU7CiAgICAgZW5jb2RlciA8PCB2YWx1ZUFzTnVtYmVyOwogICAgIGVuY29k
ZXIgPDwgdGl0bGU7Ci0gICAgZW5jb2Rlci5lbmNvZGVFbnVtKGF1dG9maWxsRmllbGROYW1lKTsK
IH0KIAogYm9vbCBBc3Npc3RlZE5vZGVJbmZvcm1hdGlvbjo6ZGVjb2RlKElQQzo6QXJndW1lbnRE
ZWNvZGVyJiBkZWNvZGVyLCBBc3Npc3RlZE5vZGVJbmZvcm1hdGlvbiYgcmVzdWx0KQpAQCAtMTEy
LDEwICsxMTEsMTAgQEAgYm9vbCBBc3Npc3RlZE5vZGVJbmZvcm1hdGlvbjo6ZGVjb2RlKElQQzo6
QXJndW1lbnREZWNvZGVyJiBkZWNvZGVyLCBBc3Npc3RlZE5vZGUKICAgICBpZiAoIWRlY29kZXIu
ZGVjb2RlKHJlc3VsdC5pc0F1dG9jb3JyZWN0KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0g
ICAgaWYgKCFkZWNvZGVyLmRlY29kZUVudW0ocmVzdWx0LmF1dG9jYXBpdGFsaXplVHlwZSkpCisg
ICAgaWYgKCFkZWNvZGVyLmRlY29kZSgodWludDMyX3QmKXJlc3VsdC5hdXRvY2FwaXRhbGl6ZVR5
cGUpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51
bShyZXN1bHQuZWxlbWVudFR5cGUpKQorICAgIGlmICghZGVjb2Rlci5kZWNvZGUoKHVpbnQzMl90
JilyZXN1bHQuZWxlbWVudFR5cGUpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBpZiAo
IWRlY29kZXIuZGVjb2RlKHJlc3VsdC5mb3JtQWN0aW9uKSkKQEAgLTE0OCw5ICsxNDcsNiBAQCBi
b29sIEFzc2lzdGVkTm9kZUluZm9ybWF0aW9uOjpkZWNvZGUoSVBDOjpBcmd1bWVudERlY29kZXIm
IGRlY29kZXIsIEFzc2lzdGVkTm9kZQogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LnRp
dGxlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgaWYgKCFkZWNvZGVyLmRlY29kZUVu
dW0ocmVzdWx0LmF1dG9maWxsRmllbGROYW1lKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9Bc3Npc3RlZE5vZGVJbmZvcm1hdGlvbi5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0Fz
c2lzdGVkTm9kZUluZm9ybWF0aW9uLmgKaW5kZXggMzlhMDA1ZTMzMDZmM2FkYzhlOTllZTU4OWZi
N2NlYmE0YWE4ZDM4Ny4uMzEwYzljMmUxMGE4N2M4OTNiMjUyNWJmZmYwNzJkMzMwNmNhNWYzNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Fzc2lzdGVkTm9kZUluZm9ybWF0aW9u
LmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0Fzc2lzdGVkTm9kZUluZm9ybWF0aW9uLmgK
QEAgLTI3LDcgKzI3LDYgQEAKICNkZWZpbmUgQXNzaXN0ZWROb2RlSW5mb3JtYXRpb25faAogCiAj
aW5jbHVkZSAiQXJndW1lbnRDb2RlcnMuaCIKLSNpbmNsdWRlIDxXZWJDb3JlL0F1dG9maWxsLmg+
CiAjaW5jbHVkZSA8V2ViQ29yZS9JbnRSZWN0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9XZWJBdXRv
Y2FwaXRhbGl6ZS5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtMTMxLDcg
KzEzMCw2IEBAIHN0cnVjdCBBc3Npc3RlZE5vZGVJbmZvcm1hdGlvbiB7CiAgICAgU3RyaW5nIHZh
bHVlOwogICAgIGRvdWJsZSB2YWx1ZUFzTnVtYmVyOwogICAgIFN0cmluZyB0aXRsZTsKLSAgICBX
ZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZSBhdXRvZmlsbEZpZWxkTmFtZSB7IFdlYkNvcmU6OkF1
dG9maWxsRmllbGROYW1lOjpOb25lIH07CiAKICAgICB2b2lkIGVuY29kZShJUEM6OkFyZ3VtZW50
RW5jb2RlciYpIGNvbnN0OwogICAgIHN0YXRpYyBib29sIGRlY29kZShJUEM6OkFyZ3VtZW50RGVj
b2RlciYsIEFzc2lzdGVkTm9kZUluZm9ybWF0aW9uJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IGY0
NmM0ZDMzZDczM2M5OTI2OTc2NzJmNzUxMmZkNTNiZDBkNjFlMjAuLmNlZjY1NDQ5NjY0Y2U5ZWJh
ZGIxYTAyZjRlMGE2YzRlNWQ4MDllN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCkBAIC0yODIyLDEwNiAr
MjgyMiw2IEBAIHN0YXRpYyBVSVRleHRBdXRvY2FwaXRhbGl6YXRpb25UeXBlIHRvVUlUZXh0QXV0
b2NhcGl0YWxpemUoV2ViQXV0b2NhcGl0YWxpemVUeXBlCiAgICAgICAgICBbX3RyYWl0cyBzZXRL
ZXlib2FyZFR5cGU6VUlLZXlib2FyZFR5cGVEZWZhdWx0XTsKICAgICB9CiAKLSNpZiBfX0lQSE9O
RV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDAwMDAKLSAgICBzd2l0Y2ggKF9hc3Npc3Rl
ZE5vZGVJbmZvcm1hdGlvbi5hdXRvZmlsbEZpZWxkTmFtZSkgewotICAgIGNhc2UgV2ViQ29yZTo6
QXV0b2ZpbGxGaWVsZE5hbWU6Ok5hbWU6Ci0gICAgICAgIFtfdHJhaXRzIHNldFRleHRDb250ZW50
VHlwZTpVSVRleHRDb250ZW50VHlwZU5hbWVdOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdl
YkNvcmU6OkF1dG9maWxsRmllbGROYW1lOjpIb25vcmlmaWNQcmVmaXg6Ci0gICAgICAgIFtfdHJh
aXRzIHNldFRleHRDb250ZW50VHlwZTpVSVRleHRDb250ZW50VHlwZU5hbWVQcmVmaXhdOwotICAg
ICAgICBicmVhazsKLSAgICBjYXNlIFdlYkNvcmU6OkF1dG9maWxsRmllbGROYW1lOjpHaXZlbk5h
bWU6Ci0gICAgICAgIFtfdHJhaXRzIHNldFRleHRDb250ZW50VHlwZTpVSVRleHRDb250ZW50VHlw
ZU1pZGRsZU5hbWVdOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdlYkNvcmU6OkF1dG9maWxs
RmllbGROYW1lOjpBZGRpdGlvbmFsTmFtZToKLSAgICAgICAgW190cmFpdHMgc2V0VGV4dENvbnRl
bnRUeXBlOlVJVGV4dENvbnRlbnRUeXBlTWlkZGxlTmFtZV07Ci0gICAgICAgIGJyZWFrOwotICAg
IGNhc2UgV2ViQ29yZTo6QXV0b2ZpbGxGaWVsZE5hbWU6OkZhbWlseU5hbWU6Ci0gICAgICAgIFtf
dHJhaXRzIHNldFRleHRDb250ZW50VHlwZTpVSVRleHRDb250ZW50VHlwZUZhbWlseU5hbWVdOwot
ICAgICAgICBicmVhazsKLSAgICBjYXNlIFdlYkNvcmU6OkF1dG9maWxsRmllbGROYW1lOjpIb25v
cmlmaWNTdWZmaXg6Ci0gICAgICAgIFtfdHJhaXRzIHNldFRleHRDb250ZW50VHlwZTpVSVRleHRD
b250ZW50VHlwZU5hbWVTdWZmaXhdOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdlYkNvcmU6
OkF1dG9maWxsRmllbGROYW1lOjpOaWNrbmFtZToKLSAgICAgICAgW190cmFpdHMgc2V0VGV4dENv
bnRlbnRUeXBlOlVJVGV4dENvbnRlbnRUeXBlTmlja25hbWVdOwotICAgICAgICBicmVhazsKLSAg
ICBjYXNlIFdlYkNvcmU6OkF1dG9maWxsRmllbGROYW1lOjpPcmdhbml6YXRpb25UaXRsZToKLSAg
ICAgICAgW190cmFpdHMgc2V0VGV4dENvbnRlbnRUeXBlOlVJVGV4dENvbnRlbnRUeXBlSm9iVGl0
bGVdOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdlYkNvcmU6OkF1dG9maWxsRmllbGROYW1l
OjpPcmdhbml6YXRpb246Ci0gICAgICAgIFtfdHJhaXRzIHNldFRleHRDb250ZW50VHlwZTpVSVRl
eHRDb250ZW50VHlwZU9yZ2FuaXphdGlvbk5hbWVdOwotICAgICAgICBicmVhazsKLSAgICBjYXNl
IFdlYkNvcmU6OkF1dG9maWxsRmllbGROYW1lOjpTdHJlZXRBZGRyZXNzOgotICAgICAgICBbX3Ry
YWl0cyBzZXRUZXh0Q29udGVudFR5cGU6VUlUZXh0Q29udGVudFR5cGVGdWxsU3RyZWV0QWRkcmVz
c107Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgV2ViQ29yZTo6QXV0b2ZpbGxGaWVsZE5hbWU6
OkFkZHJlc3NMaW5lMToKLSAgICAgICAgW190cmFpdHMgc2V0VGV4dENvbnRlbnRUeXBlOlVJVGV4
dENvbnRlbnRUeXBlU3RyZWV0QWRkcmVzc0xpbmUxXTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2Fz
ZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6QWRkcmVzc0xpbmUyOgotICAgICAgICBbX3Ry
YWl0cyBzZXRUZXh0Q29udGVudFR5cGU6VUlUZXh0Q29udGVudFR5cGVTdHJlZXRBZGRyZXNzTGlu
ZTJdOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdlYkNvcmU6OkF1dG9maWxsRmllbGROYW1l
OjpBZGRyZXNzTGV2ZWwzOgotICAgICAgICBbX3RyYWl0cyBzZXRUZXh0Q29udGVudFR5cGU6VUlU
ZXh0Q29udGVudFR5cGVTdWJsb2NhbGl0eV07Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgV2Vi
Q29yZTo6QXV0b2ZpbGxGaWVsZE5hbWU6OkFkZHJlc3NMZXZlbDI6Ci0gICAgICAgIFtfdHJhaXRz
IHNldFRleHRDb250ZW50VHlwZTpVSVRleHRDb250ZW50VHlwZUFkZHJlc3NDaXR5XTsKLSAgICAg
ICAgYnJlYWs7Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6QWRkcmVzc0xl
dmVsMToKLSAgICAgICAgW190cmFpdHMgc2V0VGV4dENvbnRlbnRUeXBlOlVJVGV4dENvbnRlbnRU
eXBlQWRkcmVzc1N0YXRlXTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRv
ZmlsbEZpZWxkTmFtZTo6Q291bnRyeU5hbWU6Ci0gICAgICAgIFtfdHJhaXRzIHNldFRleHRDb250
ZW50VHlwZTpVSVRleHRDb250ZW50VHlwZUNvdW50cnlOYW1lXTsKLSAgICAgICAgYnJlYWs7Ci0g
ICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6UG9zdGFsQ29kZToKLSAgICAgICAg
W190cmFpdHMgc2V0VGV4dENvbnRlbnRUeXBlOlVJVGV4dENvbnRlbnRUeXBlUG9zdGFsQ29kZV07
Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgV2ViQ29yZTo6QXV0b2ZpbGxGaWVsZE5hbWU6OlRl
bDoKLSAgICAgICAgW190cmFpdHMgc2V0VGV4dENvbnRlbnRUeXBlOlVJVGV4dENvbnRlbnRUeXBl
VGVsZXBob25lTnVtYmVyXTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRv
ZmlsbEZpZWxkTmFtZTo6RW1haWw6Ci0gICAgICAgIFtfdHJhaXRzIHNldFRleHRDb250ZW50VHlw
ZTpVSVRleHRDb250ZW50VHlwZUVtYWlsQWRkcmVzc107Ci0gICAgICAgIGJyZWFrOwotICAgIGNh
c2UgV2ViQ29yZTo6QXV0b2ZpbGxGaWVsZE5hbWU6OlVSTDoKLSAgICAgICAgW190cmFpdHMgc2V0
VGV4dENvbnRlbnRUeXBlOlVJVGV4dENvbnRlbnRUeXBlVVJMXTsKLSAgICAgICAgYnJlYWs7Ci0g
ICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6Tm9uZToKLSAgICBjYXNlIFdlYkNv
cmU6OkF1dG9maWxsRmllbGROYW1lOjpVc2VybmFtZToKLSAgICBjYXNlIFdlYkNvcmU6OkF1dG9m
aWxsRmllbGROYW1lOjpOZXdQYXNzd29yZDoKLSAgICBjYXNlIFdlYkNvcmU6OkF1dG9maWxsRmll
bGROYW1lOjpDdXJyZW50UGFzc3dvcmQ6Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxk
TmFtZTo6QWRkcmVzc0xpbmUzOgotICAgIGNhc2UgV2ViQ29yZTo6QXV0b2ZpbGxGaWVsZE5hbWU6
OkFkZHJlc3NMZXZlbDQ6Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6Q291
bnRyeToKLSAgICBjYXNlIFdlYkNvcmU6OkF1dG9maWxsRmllbGROYW1lOjpDY05hbWU6Ci0gICAg
Y2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6Q2NHaXZlbk5hbWU6Ci0gICAgY2FzZSBX
ZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6Q2NBZGRpdGlvbmFsTmFtZToKLSAgICBjYXNlIFdl
YkNvcmU6OkF1dG9maWxsRmllbGROYW1lOjpDY0ZhbWlseU5hbWU6Ci0gICAgY2FzZSBXZWJDb3Jl
OjpBdXRvZmlsbEZpZWxkTmFtZTo6Q2NOdW1iZXI6Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRvZmls
bEZpZWxkTmFtZTo6Q2NFeHA6Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6
Q2NFeHBNb250aDoKLSAgICBjYXNlIFdlYkNvcmU6OkF1dG9maWxsRmllbGROYW1lOjpDY0V4cFll
YXI6Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6Q2NDc2M6Ci0gICAgY2Fz
ZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6Q2NUeXBlOgotICAgIGNhc2UgV2ViQ29yZTo6
QXV0b2ZpbGxGaWVsZE5hbWU6OlRyYW5zYWN0aW9uQ3VycmVuY3k6Ci0gICAgY2FzZSBXZWJDb3Jl
OjpBdXRvZmlsbEZpZWxkTmFtZTo6VHJhbnNhY3Rpb25BbW91bnQ6Ci0gICAgY2FzZSBXZWJDb3Jl
OjpBdXRvZmlsbEZpZWxkTmFtZTo6TGFuZ3VhZ2U6Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRvZmls
bEZpZWxkTmFtZTo6QmRheToKLSAgICBjYXNlIFdlYkNvcmU6OkF1dG9maWxsRmllbGROYW1lOjpC
ZGF5RGF5OgotICAgIGNhc2UgV2ViQ29yZTo6QXV0b2ZpbGxGaWVsZE5hbWU6OkJkYXlNb250aDoK
LSAgICBjYXNlIFdlYkNvcmU6OkF1dG9maWxsRmllbGROYW1lOjpCZGF5WWVhcjoKLSAgICBjYXNl
IFdlYkNvcmU6OkF1dG9maWxsRmllbGROYW1lOjpTZXg6Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRv
ZmlsbEZpZWxkTmFtZTo6UGhvdG86Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFt
ZTo6VGVsQ291bnRyeUNvZGU6Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6
VGVsTmF0aW9uYWw6Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6VGVsQXJl
YUNvZGU6Ci0gICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6VGVsTG9jYWw6Ci0g
ICAgY2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6VGVsTG9jYWxQcmVmaXg6Ci0gICAg
Y2FzZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6VGVsTG9jYWxTdWZmaXg6Ci0gICAgY2Fz
ZSBXZWJDb3JlOjpBdXRvZmlsbEZpZWxkTmFtZTo6VGVsRXh0ZW5zaW9uOgotICAgIGNhc2UgV2Vi
Q29yZTo6QXV0b2ZpbGxGaWVsZE5hbWU6OkltcHA6Ci0gICAgICAgIGJyZWFrOwotICAgIH07Ci0j
ZW5kaWYKLQogICAgIHJldHVybiBfdHJhaXRzLmdldCgpOwogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0gYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KaW5kZXggNzJhZjRl
NjJjMDIyZWNhNzI3MWU2YzE2YWIyMGE2ZDEwMjZkOTg5Ni4uNTU3Y2ZlYTJlNTVlMmE3NDA2OGY5
MTVmNzY1MzY1Y2E1Mzk0Y2I2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbQpAQCAtNDksNyArNDksNiBAQAogI2ltcG9ydCAi
V2ViUGFnZVByb3h5TWVzc2FnZXMuaCIKICNpbXBvcnQgIldlYlByb2Nlc3MuaCIKICNpbXBvcnQg
PENvcmVUZXh0L0NURm9udC5oPgotI2ltcG9ydCA8V2ViQ29yZS9BdXRvZmlsbC5oPgogI2ltcG9y
dCA8V2ViQ29yZS9DaHJvbWUuaD4KICNpbXBvcnQgPFdlYkNvcmUvRGF0YURldGVjdGlvbi5oPgog
I2ltcG9ydCA8V2ViQ29yZS9EaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oPgpAQCAtMjQyNiw3ICsy
NDI1LDYgQEAgdm9pZCBXZWJQYWdlOjpnZXRBc3Npc3RlZE5vZGVJbmZvcm1hdGlvbihBc3Npc3Rl
ZE5vZGVJbmZvcm1hdGlvbiYgaW5mb3JtYXRpb24pCiAgICAgICAgIGluZm9ybWF0aW9uLmVsZW1l
bnRUeXBlID0gSW5wdXRUeXBlOjpUZXh0QXJlYTsKICAgICAgICAgaW5mb3JtYXRpb24uaXNSZWFk
T25seSA9IGVsZW1lbnQuaXNSZWFkT25seSgpOwogICAgICAgICBpbmZvcm1hdGlvbi52YWx1ZSA9
IGVsZW1lbnQudmFsdWUoKTsKLSAgICAgICAgaW5mb3JtYXRpb24uYXV0b2ZpbGxGaWVsZE5hbWUg
PSBXZWJDb3JlOjp0b0F1dG9maWxsRmllbGROYW1lKGVsZW1lbnQuYXV0b2ZpbGxEYXRhKCkuZmll
bGROYW1lKTsKICAgICB9IGVsc2UgaWYgKGlzPEhUTUxJbnB1dEVsZW1lbnQ+KCptX2Fzc2lzdGVk
Tm9kZSkpIHsKICAgICAgICAgSFRNTElucHV0RWxlbWVudCYgZWxlbWVudCA9IGRvd25jYXN0PEhU
TUxJbnB1dEVsZW1lbnQ+KCptX2Fzc2lzdGVkTm9kZSk7CiAgICAgICAgIEhUTUxGb3JtRWxlbWVu
dCogZm9ybSA9IGVsZW1lbnQuZm9ybSgpOwpAQCAtMjQ3NCw3ICsyNDcyLDYgQEAgdm9pZCBXZWJQ
YWdlOjpnZXRBc3Npc3RlZE5vZGVJbmZvcm1hdGlvbihBc3Npc3RlZE5vZGVJbmZvcm1hdGlvbiYg
aW5mb3JtYXRpb24pCiAgICAgICAgIGluZm9ybWF0aW9uLnZhbHVlID0gZWxlbWVudC52YWx1ZSgp
OwogICAgICAgICBpbmZvcm1hdGlvbi52YWx1ZUFzTnVtYmVyID0gZWxlbWVudC52YWx1ZUFzTnVt
YmVyKCk7CiAgICAgICAgIGluZm9ybWF0aW9uLnRpdGxlID0gZWxlbWVudC50aXRsZSgpOwotICAg
ICAgICBpbmZvcm1hdGlvbi5hdXRvZmlsbEZpZWxkTmFtZSA9IFdlYkNvcmU6OnRvQXV0b2ZpbGxG
aWVsZE5hbWUoZWxlbWVudC5hdXRvZmlsbERhdGEoKS5maWVsZE5hbWUpOwogICAgIH0gZWxzZSBp
ZiAobV9hc3Npc3RlZE5vZGUtPmhhc0VkaXRhYmxlU3R5bGUoKSkgewogICAgICAgICBpbmZvcm1h
dGlvbi5lbGVtZW50VHlwZSA9IElucHV0VHlwZTo6Q29udGVudEVkaXRhYmxlOwogICAgICAgICBp
bmZvcm1hdGlvbi5pc0F1dG9jb3JyZWN0ID0gdHJ1ZTsgICAvLyBGSVhNRTogU2hvdWxkIHdlIGxv
b2sgYXQgdGhlIGF0dHJpYnV0ZT8KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjYWU0MTllMjQxZTE0NzkxMjgwYTc5NDFkZDZk
OWI1MDNlM2JiMTU3Li4xZjJiMjI4YTY0YzM5Y2ZkZTcxOGJlZGQ3NDkwZjMyMGNkOGE4NzRmIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTYtMDMtMDUgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1x
dWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxOTc2
MjYuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTUw
ODMKKworICAgICAgICBCcm9rZSBtdWx0aXBsZSB0ZXN0cyAoUmVxdWVzdGVkIGJ5IGFwIG9uICN3
ZWJraXQpLgorCisgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKworICAgICAgICAiQWRkIHN1
cHBvcnQgZm9yIHByb2Nlc3NpbmcgdGhlIGF1dG9maWxsIGZpZWxkIG5hbWUgb3V0IG9mCisgICAg
ICAgIGZvcm0gY29udHJvbCBlbGVtZW50cyB1bHRpbWF0ZWx5IHRvIGFpZCBpbnB1dCBtZXRob2Rz
IgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU1MDc5
CisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE5NzYyNgorCiAyMDE2
LTAzLTA1ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSB0
YWJsZSBjb2xsYXBzZWQgYm9yZGVycyBzdWJwaXhlbCBhd2FyZS4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvZm9ybXMvYXV0b2NvbXBsZXRlLXRva2Vucy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L2Zvcm1zL2F1dG9jb21wbGV0ZS10b2tlbnMtZXhwZWN0ZWQudHh0CmluZGV4
IDZjMWI1ODU5YTJkMzE5MDVjMjBhMmRkMzBiMjAyZmRkZGJmMjVhYjkuLmFjM2NjMmE0NGQzNzE2
ZWNiMjI0ZGZlMTU4ZWI3ZjQ2ZWUzZTBjZDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
Zm9ybXMvYXV0b2NvbXBsZXRlLXRva2Vucy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9mb3Jtcy9hdXRvY29tcGxldGUtdG9rZW5zLWV4cGVjdGVkLnR4dApAQCAtNSwzOTUgKzUs
MjAyIEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFCiAKIFZhbGlkIGtleXdvcmRzOgogUEFTUyBp
bnB1dC5hdXRvY29tcGxldGUgaXMgIm5hbWUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2Zp
bGxGaWVsZE5hbWUoaW5wdXQpIGlzICJuYW1lIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMg
Imhvbm9yaWZpYy1wcmVmaXgiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5h
bWUoaW5wdXQpIGlzICJob25vcmlmaWMtcHJlZml4IgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUg
aXMgImdpdmVuLW5hbWUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUo
aW5wdXQpIGlzICJnaXZlbi1uYW1lIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgImFkZGl0
aW9uYWwtbmFtZSIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1
dCkgaXMgImFkZGl0aW9uYWwtbmFtZSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJmYW1p
bHktbmFtZSIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkg
aXMgImZhbWlseS1uYW1lIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgImhvbm9yaWZpYy1z
dWZmaXgiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlz
ICJob25vcmlmaWMtc3VmZml4IgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgIm5pY2tuYW1l
IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAibmlj
a25hbWUiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAib3JnYW5pemF0aW9uLXRpdGxlIgot
UEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAib3JnYW5p
emF0aW9uLXRpdGxlIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInVzZXJuYW1lIgotUEFT
UyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAidXNlcm5hbWUi
CiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAibmV3LXBhc3N3b3JkIgotUEFTUyB3aW5kb3cu
aW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAibmV3LXBhc3N3b3JkIgogUEFT
UyBpbnB1dC5hdXRvY29tcGxldGUgaXMgImN1cnJlbnQtcGFzc3dvcmQiCi1QQVNTIHdpbmRvdy5p
bnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJjdXJyZW50LXBhc3N3b3JkIgog
UEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgIm9yZ2FuaXphdGlvbiIKLVBBU1Mgd2luZG93Lmlu
dGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgIm9yZ2FuaXphdGlvbiIKIFBBU1Mg
aW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzdHJlZXQtYWRkcmVzcyIKLVBBU1Mgd2luZG93LmludGVy
bmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInN0cmVldC1hZGRyZXNzIgogUEFTUyBp
bnB1dC5hdXRvY29tcGxldGUgaXMgImFkZHJlc3MtbGluZTEiCi1QQVNTIHdpbmRvdy5pbnRlcm5h
bHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJhZGRyZXNzLWxpbmUxIgogUEFTUyBpbnB1
dC5hdXRvY29tcGxldGUgaXMgImFkZHJlc3MtbGluZTIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMu
YXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJhZGRyZXNzLWxpbmUyIgogUEFTUyBpbnB1dC5h
dXRvY29tcGxldGUgaXMgImFkZHJlc3MtbGluZTMiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0
b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJhZGRyZXNzLWxpbmUzIgogUEFTUyBpbnB1dC5hdXRv
Y29tcGxldGUgaXMgImFkZHJlc3MtbGV2ZWw0IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9m
aWxsRmllbGROYW1lKGlucHV0KSBpcyAiYWRkcmVzcy1sZXZlbDQiCiBQQVNTIGlucHV0LmF1dG9j
b21wbGV0ZSBpcyAiYWRkcmVzcy1sZXZlbDMiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2Zp
bGxGaWVsZE5hbWUoaW5wdXQpIGlzICJhZGRyZXNzLWxldmVsMyIKIFBBU1MgaW5wdXQuYXV0b2Nv
bXBsZXRlIGlzICJhZGRyZXNzLWxldmVsMiIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmls
bEZpZWxkTmFtZShpbnB1dCkgaXMgImFkZHJlc3MtbGV2ZWwyIgogUEFTUyBpbnB1dC5hdXRvY29t
cGxldGUgaXMgImFkZHJlc3MtbGV2ZWwxIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxs
RmllbGROYW1lKGlucHV0KSBpcyAiYWRkcmVzcy1sZXZlbDEiCiBQQVNTIGlucHV0LmF1dG9jb21w
bGV0ZSBpcyAiY291bnRyeSIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFt
ZShpbnB1dCkgaXMgImNvdW50cnkiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiY291bnRy
eS1uYW1lIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBp
cyAiY291bnRyeS1uYW1lIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInBvc3RhbC1jb2Rl
IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAicG9z
dGFsLWNvZGUiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiY2MtbmFtZSIKLVBBU1Mgd2lu
ZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImNjLW5hbWUiCiBQQVNT
IGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiY2MtZ2l2ZW4tbmFtZSIKLVBBU1Mgd2luZG93LmludGVy
bmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImNjLWdpdmVuLW5hbWUiCiBQQVNTIGlu
cHV0LmF1dG9jb21wbGV0ZSBpcyAiY2MtYWRkaXRpb25hbC1uYW1lIgotUEFTUyB3aW5kb3cuaW50
ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAiY2MtYWRkaXRpb25hbC1uYW1lIgog
UEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgImNjLWZhbWlseS1uYW1lIgotUEFTUyB3aW5kb3cu
aW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAiY2MtZmFtaWx5LW5hbWUiCiBQ
QVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiY2MtbnVtYmVyIgotUEFTUyB3aW5kb3cuaW50ZXJu
YWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAiY2MtbnVtYmVyIgogUEFTUyBpbnB1dC5h
dXRvY29tcGxldGUgaXMgImNjLWV4cCIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZp
ZWxkTmFtZShpbnB1dCkgaXMgImNjLWV4cCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJj
Yy1leHAtbW9udGgiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5w
dXQpIGlzICJjYy1leHAtbW9udGgiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiY2MtZXhw
LXllYXIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlz
ICJjYy1leHAteWVhciIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJjYy1jc2MiCi1QQVNT
IHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJjYy1jc2MiCiBQ
QVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiY2MtdHlwZSIKLVBBU1Mgd2luZG93LmludGVybmFs
cy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImNjLXR5cGUiCiBQQVNTIGlucHV0LmF1dG9j
b21wbGV0ZSBpcyAidHJhbnNhY3Rpb24tY3VycmVuY3kiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMu
YXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0cmFuc2FjdGlvbi1jdXJyZW5jeSIKIFBBU1Mg
aW5wdXQuYXV0b2NvbXBsZXRlIGlzICJ0cmFuc2FjdGlvbi1hbW91bnQiCi1QQVNTIHdpbmRvdy5p
bnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0cmFuc2FjdGlvbi1hbW91bnQi
CiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAibGFuZ3VhZ2UiCi1QQVNTIHdpbmRvdy5pbnRl
cm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJsYW5ndWFnZSIKIFBBU1MgaW5wdXQu
YXV0b2NvbXBsZXRlIGlzICJiZGF5IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmll
bGROYW1lKGlucHV0KSBpcyAiYmRheSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJiZGF5
LWRheSIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMg
ImJkYXktZGF5IgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgImJkYXktbW9udGgiCi1QQVNT
IHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJiZGF5LW1vbnRo
IgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgImJkYXkteWVhciIKLVBBU1Mgd2luZG93Lmlu
dGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImJkYXkteWVhciIKIFBBU1MgaW5w
dXQuYXV0b2NvbXBsZXRlIGlzICJzZXgiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxG
aWVsZE5hbWUoaW5wdXQpIGlzICJzZXgiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAidXJs
IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAidXJs
IgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInBob3RvIgotUEFTUyB3aW5kb3cuaW50ZXJu
YWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAicGhvdG8iCiBQQVNTIGlucHV0LmF1dG9j
b21wbGV0ZSBpcyAidGVsIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1l
KGlucHV0KSBpcyAidGVsIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInRlbC1jb3VudHJ5
LWNvZGUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlz
ICJ0ZWwtY291bnRyeS1jb2RlIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInRlbC1uYXRp
b25hbCIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMg
InRlbC1uYXRpb25hbCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJ0ZWwtYXJlYS1jb2Rl
IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAidGVs
LWFyZWEtY29kZSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJ0ZWwtbG9jYWwiCi1QQVNT
IHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtbG9jYWwi
CiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAidGVsLWxvY2FsLXByZWZpeCIKLVBBU1Mgd2lu
ZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRlbC1sb2NhbC1wcmVm
aXgiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAidGVsLWxvY2FsLXN1ZmZpeCIKLVBBU1Mg
d2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRlbC1sb2NhbC1z
dWZmaXgiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAidGVsLWV4dGVuc2lvbiIKLVBBU1Mg
d2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRlbC1leHRlbnNp
b24iCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiZW1haWwiCi1QQVNTIHdpbmRvdy5pbnRl
cm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJlbWFpbCIKIFBBU1MgaW5wdXQuYXV0
b2NvbXBsZXRlIGlzICJpbXBwIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGRO
YW1lKGlucHV0KSBpcyAiaW1wcCIKIAogQ29udGFjdCBzY29wZToKIFBBU1MgaW5wdXQuYXV0b2Nv
bXBsZXRlIGlzICJob21lIHRlbCIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxk
TmFtZShpbnB1dCkgaXMgInRlbCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJob21lIHRl
bC1jb3VudHJ5LWNvZGUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUo
aW5wdXQpIGlzICJ0ZWwtY291bnRyeS1jb2RlIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMg
ImhvbWUgdGVsLW5hdGlvbmFsIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGRO
YW1lKGlucHV0KSBpcyAidGVsLW5hdGlvbmFsIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMg
ImhvbWUgdGVsLWFyZWEtY29kZSIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxk
TmFtZShpbnB1dCkgaXMgInRlbC1hcmVhLWNvZGUiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBp
cyAiaG9tZSB0ZWwtbG9jYWwiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5h
bWUoaW5wdXQpIGlzICJ0ZWwtbG9jYWwiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiaG9t
ZSB0ZWwtbG9jYWwtcHJlZml4IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGRO
YW1lKGlucHV0KSBpcyAidGVsLWxvY2FsLXByZWZpeCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRl
IGlzICJob21lIHRlbC1sb2NhbC1zdWZmaXgiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2Zp
bGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtbG9jYWwtc3VmZml4IgogUEFTUyBpbnB1dC5hdXRv
Y29tcGxldGUgaXMgImhvbWUgdGVsLWV4dGVuc2lvbiIKLVBBU1Mgd2luZG93LmludGVybmFscy5h
dXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRlbC1leHRlbnNpb24iCiBQQVNTIGlucHV0LmF1
dG9jb21wbGV0ZSBpcyAiaG9tZSBlbWFpbCIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmls
bEZpZWxkTmFtZShpbnB1dCkgaXMgImVtYWlsIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMg
ImhvbWUgaW1wcCIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1
dCkgaXMgImltcHAiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAid29yayB0ZWwiCi1QQVNT
IHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwiCiBQQVNT
IGlucHV0LmF1dG9jb21wbGV0ZSBpcyAid29yayB0ZWwtY291bnRyeS1jb2RlIgotUEFTUyB3aW5k
b3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAidGVsLWNvdW50cnktY29k
ZSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJ3b3JrIHRlbC1uYXRpb25hbCIKLVBBU1Mg
d2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRlbC1uYXRpb25h
bCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJ3b3JrIHRlbC1hcmVhLWNvZGUiCi1QQVNT
IHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtYXJlYS1j
b2RlIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgIndvcmsgdGVsLWxvY2FsIgotUEFTUyB3
aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAidGVsLWxvY2FsIgog
UEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgIndvcmsgdGVsLWxvY2FsLXByZWZpeCIKLVBBU1Mg
d2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRlbC1sb2NhbC1w
cmVmaXgiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAid29yayB0ZWwtbG9jYWwtc3VmZml4
IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAidGVs
LWxvY2FsLXN1ZmZpeCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJ3b3JrIHRlbC1leHRl
bnNpb24iCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlz
ICJ0ZWwtZXh0ZW5zaW9uIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgIndvcmsgZW1haWwi
Ci1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJlbWFp
bCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJ3b3JrIGltcHAiCi1QQVNTIHdpbmRvdy5p
bnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJpbXBwIgogUEFTUyBpbnB1dC5h
dXRvY29tcGxldGUgaXMgIm1vYmlsZSB0ZWwiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2Zp
bGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAi
bW9iaWxlIHRlbC1jb3VudHJ5LWNvZGUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxG
aWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtY291bnRyeS1jb2RlIgogUEFTUyBpbnB1dC5hdXRvY29t
cGxldGUgaXMgIm1vYmlsZSB0ZWwtbmF0aW9uYWwiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0
b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtbmF0aW9uYWwiCiBQQVNTIGlucHV0LmF1dG9j
b21wbGV0ZSBpcyAibW9iaWxlIHRlbC1hcmVhLWNvZGUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMu
YXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtYXJlYS1jb2RlIgogUEFTUyBpbnB1dC5h
dXRvY29tcGxldGUgaXMgIm1vYmlsZSB0ZWwtbG9jYWwiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMu
YXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtbG9jYWwiCiBQQVNTIGlucHV0LmF1dG9j
b21wbGV0ZSBpcyAibW9iaWxlIHRlbC1sb2NhbC1wcmVmaXgiCi1QQVNTIHdpbmRvdy5pbnRlcm5h
bHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtbG9jYWwtcHJlZml4IgogUEFTUyBp
bnB1dC5hdXRvY29tcGxldGUgaXMgIm1vYmlsZSB0ZWwtbG9jYWwtc3VmZml4IgotUEFTUyB3aW5k
b3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAidGVsLWxvY2FsLXN1ZmZp
eCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJtb2JpbGUgdGVsLWV4dGVuc2lvbiIKLVBB
U1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRlbC1leHRl
bnNpb24iCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAibW9iaWxlIGVtYWlsIgotUEFTUyB3
aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAiZW1haWwiCiBQQVNT
IGlucHV0LmF1dG9jb21wbGV0ZSBpcyAibW9iaWxlIGltcHAiCi1QQVNTIHdpbmRvdy5pbnRlcm5h
bHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJpbXBwIgogUEFTUyBpbnB1dC5hdXRvY29t
cGxldGUgaXMgImZheCB0ZWwiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5h
bWUoaW5wdXQpIGlzICJ0ZWwiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiZmF4IHRlbC1j
b3VudHJ5LWNvZGUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5w
dXQpIGlzICJ0ZWwtY291bnRyeS1jb2RlIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgImZh
eCB0ZWwtbmF0aW9uYWwiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUo
aW5wdXQpIGlzICJ0ZWwtbmF0aW9uYWwiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiZmF4
IHRlbC1hcmVhLWNvZGUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUo
aW5wdXQpIGlzICJ0ZWwtYXJlYS1jb2RlIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgImZh
eCB0ZWwtbG9jYWwiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5w
dXQpIGlzICJ0ZWwtbG9jYWwiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiZmF4IHRlbC1s
b2NhbC1wcmVmaXgiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5w
dXQpIGlzICJ0ZWwtbG9jYWwtcHJlZml4IgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgImZh
eCB0ZWwtbG9jYWwtc3VmZml4IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGRO
YW1lKGlucHV0KSBpcyAidGVsLWxvY2FsLXN1ZmZpeCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRl
IGlzICJmYXggdGVsLWV4dGVuc2lvbiIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZp
ZWxkTmFtZShpbnB1dCkgaXMgInRlbC1leHRlbnNpb24iCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0
ZSBpcyAiZmF4IGVtYWlsIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1l
KGlucHV0KSBpcyAiZW1haWwiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiZmF4IGltcHAi
Ci1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJpbXBw
IgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInBhZ2VyIHRlbCIKLVBBU1Mgd2luZG93Lmlu
dGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRlbCIKIFBBU1MgaW5wdXQuYXV0
b2NvbXBsZXRlIGlzICJwYWdlciB0ZWwtY291bnRyeS1jb2RlIgotUEFTUyB3aW5kb3cuaW50ZXJu
YWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAidGVsLWNvdW50cnktY29kZSIKIFBBU1Mg
aW5wdXQuYXV0b2NvbXBsZXRlIGlzICJwYWdlciB0ZWwtbmF0aW9uYWwiCi1QQVNTIHdpbmRvdy5p
bnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtbmF0aW9uYWwiCiBQQVNT
IGlucHV0LmF1dG9jb21wbGV0ZSBpcyAicGFnZXIgdGVsLWFyZWEtY29kZSIKLVBBU1Mgd2luZG93
LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRlbC1hcmVhLWNvZGUiCiBQ
QVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAicGFnZXIgdGVsLWxvY2FsIgotUEFTUyB3aW5kb3cu
aW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAidGVsLWxvY2FsIgogUEFTUyBp
bnB1dC5hdXRvY29tcGxldGUgaXMgInBhZ2VyIHRlbC1sb2NhbC1wcmVmaXgiCi1QQVNTIHdpbmRv
dy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtbG9jYWwtcHJlZml4
IgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInBhZ2VyIHRlbC1sb2NhbC1zdWZmaXgiCi1Q
QVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtbG9j
YWwtc3VmZml4IgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInBhZ2VyIHRlbC1leHRlbnNp
b24iCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0
ZWwtZXh0ZW5zaW9uIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInBhZ2VyIGVtYWlsIgot
UEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAiZW1haWwi
CiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAicGFnZXIgaW1wcCIKLVBBU1Mgd2luZG93Lmlu
dGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImltcHAiCiAKIE1vZGU6CiBQQVNT
IGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2hpcHBpbmcgc3RyZWV0LWFkZHJlc3MiCi1QQVNTIHdp
bmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJzdHJlZXQtYWRkcmVz
cyIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzaGlwcGluZyBhZGRyZXNzLWxpbmUxIgot
UEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAiYWRkcmVz
cy1saW5lMSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzaGlwcGluZyBhZGRyZXNzLWxp
bmUyIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAi
YWRkcmVzcy1saW5lMiIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzaGlwcGluZyBhZGRy
ZXNzLWxpbmUzIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0
KSBpcyAiYWRkcmVzcy1saW5lMyIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzaGlwcGlu
ZyBhZGRyZXNzLWxldmVsNCIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFt
ZShpbnB1dCkgaXMgImFkZHJlc3MtbGV2ZWw0IgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMg
InNoaXBwaW5nIGFkZHJlc3MtbGV2ZWwzIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxs
RmllbGROYW1lKGlucHV0KSBpcyAiYWRkcmVzcy1sZXZlbDMiCiBQQVNTIGlucHV0LmF1dG9jb21w
bGV0ZSBpcyAic2hpcHBpbmcgYWRkcmVzcy1sZXZlbDIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMu
YXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJhZGRyZXNzLWxldmVsMiIKIFBBU1MgaW5wdXQu
YXV0b2NvbXBsZXRlIGlzICJzaGlwcGluZyBhZGRyZXNzLWxldmVsMSIKLVBBU1Mgd2luZG93Lmlu
dGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImFkZHJlc3MtbGV2ZWwxIgogUEFT
UyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInNoaXBwaW5nIGNvdW50cnkiCi1QQVNTIHdpbmRvdy5p
bnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJjb3VudHJ5IgogUEFTUyBpbnB1
dC5hdXRvY29tcGxldGUgaXMgInNoaXBwaW5nIGNvdW50cnktbmFtZSIKLVBBU1Mgd2luZG93Lmlu
dGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImNvdW50cnktbmFtZSIKIFBBU1Mg
aW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzaGlwcGluZyBwb3N0YWwtY29kZSIKLVBBU1Mgd2luZG93
LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInBvc3RhbC1jb2RlIgogUEFT
UyBpbnB1dC5hdXRvY29tcGxldGUgaXMgImJpbGxpbmcgc3RyZWV0LWFkZHJlc3MiCi1QQVNTIHdp
bmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJzdHJlZXQtYWRkcmVz
cyIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJiaWxsaW5nIGFkZHJlc3MtbGluZTEiCi1Q
QVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJhZGRyZXNz
LWxpbmUxIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgImJpbGxpbmcgYWRkcmVzcy1saW5l
MiIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImFk
ZHJlc3MtbGluZTIiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiYmlsbGluZyBhZGRyZXNz
LWxpbmUzIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBp
cyAiYWRkcmVzcy1saW5lMyIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJiaWxsaW5nIGFk
ZHJlc3MtbGV2ZWw0IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlu
cHV0KSBpcyAiYWRkcmVzcy1sZXZlbDQiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAiYmls
bGluZyBhZGRyZXNzLWxldmVsMyIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxk
TmFtZShpbnB1dCkgaXMgImFkZHJlc3MtbGV2ZWwzIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUg
aXMgImJpbGxpbmcgYWRkcmVzcy1sZXZlbDIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2Zp
bGxGaWVsZE5hbWUoaW5wdXQpIGlzICJhZGRyZXNzLWxldmVsMiIKIFBBU1MgaW5wdXQuYXV0b2Nv
bXBsZXRlIGlzICJiaWxsaW5nIGFkZHJlc3MtbGV2ZWwxIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxz
LmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAiYWRkcmVzcy1sZXZlbDEiCiBQQVNTIGlucHV0
LmF1dG9jb21wbGV0ZSBpcyAiYmlsbGluZyBjb3VudHJ5IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxz
LmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAiY291bnRyeSIKIFBBU1MgaW5wdXQuYXV0b2Nv
bXBsZXRlIGlzICJiaWxsaW5nIGNvdW50cnktbmFtZSIKLVBBU1Mgd2luZG93LmludGVybmFscy5h
dXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImNvdW50cnktbmFtZSIKIFBBU1MgaW5wdXQuYXV0
b2NvbXBsZXRlIGlzICJiaWxsaW5nIHBvc3RhbC1jb2RlIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxz
LmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAicG9zdGFsLWNvZGUiCiAKIFNlY3Rpb246CiBQ
QVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgbmFtZSIKLVBBU1Mgd2lu
ZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgIm5hbWUiCiBQQVNTIGlu
cHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgaG9ub3JpZmljLXByZWZpeCIKLVBB
U1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImhvbm9yaWZp
Yy1wcmVmaXgiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgZ2l2
ZW4tbmFtZSIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkg
aXMgImdpdmVuLW5hbWUiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJl
bnQgYWRkaXRpb25hbC1uYW1lIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGRO
YW1lKGlucHV0KSBpcyAiYWRkaXRpb25hbC1uYW1lIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUg
aXMgInNlY3Rpb24tcGFyZW50IGZhbWlseS1uYW1lIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1
dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAiZmFtaWx5LW5hbWUiCiBQQVNTIGlucHV0LmF1dG9j
b21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgaG9ub3JpZmljLXN1ZmZpeCIKLVBBU1Mgd2luZG93
LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImhvbm9yaWZpYy1zdWZmaXgi
CiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgbmlja25hbWUiCi1Q
QVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJuaWNrbmFt
ZSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBhcmVudCBvcmdhbml6YXRp
b24tdGl0bGUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQp
IGlzICJvcmdhbml6YXRpb24tdGl0bGUiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2Vj
dGlvbi1wYXJlbnQgdXNlcm5hbWUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVs
ZE5hbWUoaW5wdXQpIGlzICJ1c2VybmFtZSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJz
ZWN0aW9uLXBhcmVudCBuZXctcGFzc3dvcmQiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2Zp
bGxGaWVsZE5hbWUoaW5wdXQpIGlzICJuZXctcGFzc3dvcmQiCiBQQVNTIGlucHV0LmF1dG9jb21w
bGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgY3VycmVudC1wYXNzd29yZCIKLVBBU1Mgd2luZG93Lmlu
dGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImN1cnJlbnQtcGFzc3dvcmQiCiBQ
QVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgb3JnYW5pemF0aW9uIgot
UEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAib3JnYW5p
emF0aW9uIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInNlY3Rpb24tcGFyZW50IHN0cmVl
dC1hZGRyZXNzIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0
KSBpcyAic3RyZWV0LWFkZHJlc3MiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlv
bi1wYXJlbnQgYWRkcmVzcy1saW5lMSIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZp
ZWxkTmFtZShpbnB1dCkgaXMgImFkZHJlc3MtbGluZTEiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0
ZSBpcyAic2VjdGlvbi1wYXJlbnQgYWRkcmVzcy1saW5lMiIKLVBBU1Mgd2luZG93LmludGVybmFs
cy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImFkZHJlc3MtbGluZTIiCiBQQVNTIGlucHV0
LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgYWRkcmVzcy1saW5lMyIKLVBBU1Mgd2lu
ZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgImFkZHJlc3MtbGluZTMi
CiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgYWRkcmVzcy1sZXZl
bDQiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJh
ZGRyZXNzLWxldmVsNCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBhcmVu
dCBhZGRyZXNzLWxldmVsMyIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFt
ZShpbnB1dCkgaXMgImFkZHJlc3MtbGV2ZWwzIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMg
InNlY3Rpb24tcGFyZW50IGFkZHJlc3MtbGV2ZWwyIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1
dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAiYWRkcmVzcy1sZXZlbDIiCiBQQVNTIGlucHV0LmF1
dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgYWRkcmVzcy1sZXZlbDEiCi1QQVNTIHdpbmRv
dy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJhZGRyZXNzLWxldmVsMSIK
IFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBhcmVudCBjb3VudHJ5IgotUEFT
UyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAiY291bnRyeSIK
IFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBhcmVudCBjb3VudHJ5LW5hbWUi
Ci1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJjb3Vu
dHJ5LW5hbWUiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgcG9z
dGFsLWNvZGUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQp
IGlzICJwb3N0YWwtY29kZSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBh
cmVudCBjYy1uYW1lIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlu
cHV0KSBpcyAiY2MtbmFtZSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBh
cmVudCBjYy1naXZlbi1uYW1lIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGRO
YW1lKGlucHV0KSBpcyAiY2MtZ2l2ZW4tbmFtZSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlz
ICJzZWN0aW9uLXBhcmVudCBjYy1hZGRpdGlvbmFsLW5hbWUiCi1QQVNTIHdpbmRvdy5pbnRlcm5h
bHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJjYy1hZGRpdGlvbmFsLW5hbWUiCiBQQVNT
IGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgY2MtZmFtaWx5LW5hbWUiCi1Q
QVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJjYy1mYW1p
bHktbmFtZSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBhcmVudCBjYy1u
dW1iZXIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlz
ICJjYy1udW1iZXIiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQg
Y2MtZXhwIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBp
cyAiY2MtZXhwIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInNlY3Rpb24tcGFyZW50IGNj
LWV4cC1tb250aCIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1
dCkgaXMgImNjLWV4cC1tb250aCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9u
LXBhcmVudCBjYy1leHAteWVhciIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxk
TmFtZShpbnB1dCkgaXMgImNjLWV4cC15ZWFyIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMg
InNlY3Rpb24tcGFyZW50IGNjLWNzYyIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZp
ZWxkTmFtZShpbnB1dCkgaXMgImNjLWNzYyIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJz
ZWN0aW9uLXBhcmVudCBjYy10eXBlIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmll
bGROYW1lKGlucHV0KSBpcyAiY2MtdHlwZSIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJz
ZWN0aW9uLXBhcmVudCB0cmFuc2FjdGlvbi1jdXJyZW5jeSIKLVBBU1Mgd2luZG93LmludGVybmFs
cy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRyYW5zYWN0aW9uLWN1cnJlbmN5IgogUEFT
UyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInNlY3Rpb24tcGFyZW50IHRyYW5zYWN0aW9uLWFtb3Vu
dCIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRy
YW5zYWN0aW9uLWFtb3VudCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBh
cmVudCBsYW5ndWFnZSIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShp
bnB1dCkgaXMgImxhbmd1YWdlIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInNlY3Rpb24t
cGFyZW50IGJkYXkiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5w
dXQpIGlzICJiZGF5IgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInNlY3Rpb24tcGFyZW50
IGJkYXktZGF5IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0
KSBpcyAiYmRheS1kYXkiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJl
bnQgYmRheS1tb250aCIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShp
bnB1dCkgaXMgImJkYXktbW9udGgiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlv
bi1wYXJlbnQgYmRheS15ZWFyIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGRO
YW1lKGlucHV0KSBpcyAiYmRheS15ZWFyIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInNl
Y3Rpb24tcGFyZW50IHNleCIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFt
ZShpbnB1dCkgaXMgInNleCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBh
cmVudCB1cmwiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQp
IGlzICJ1cmwiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgcGhv
dG8iCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJw
aG90byIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBhcmVudCB0ZWwiCi1Q
QVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwiCiBQ
QVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJlbnQgdGVsLWNvdW50cnktY29k
ZSIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRl
bC1jb3VudHJ5LWNvZGUiCiBQQVNTIGlucHV0LmF1dG9jb21wbGV0ZSBpcyAic2VjdGlvbi1wYXJl
bnQgdGVsLW5hdGlvbmFsIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1l
KGlucHV0KSBpcyAidGVsLW5hdGlvbmFsIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMgInNl
Y3Rpb24tcGFyZW50IHRlbC1hcmVhLWNvZGUiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2Zp
bGxGaWVsZE5hbWUoaW5wdXQpIGlzICJ0ZWwtYXJlYS1jb2RlIgogUEFTUyBpbnB1dC5hdXRvY29t
cGxldGUgaXMgInNlY3Rpb24tcGFyZW50IHRlbC1sb2NhbCIKLVBBU1Mgd2luZG93LmludGVybmFs
cy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCkgaXMgInRlbC1sb2NhbCIKIFBBU1MgaW5wdXQuYXV0
b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBhcmVudCB0ZWwtbG9jYWwtcHJlZml4IgotUEFTUyB3aW5k
b3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBpcyAidGVsLWxvY2FsLXByZWZp
eCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9uLXBhcmVudCB0ZWwtbG9jYWwt
c3VmZml4IgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KSBp
cyAidGVsLWxvY2FsLXN1ZmZpeCIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICJzZWN0aW9u
LXBhcmVudCB0ZWwtZXh0ZW5zaW9uIgotUEFTUyB3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmll
bGROYW1lKGlucHV0KSBpcyAidGVsLWV4dGVuc2lvbiIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRl
IGlzICJzZWN0aW9uLXBhcmVudCBlbWFpbCIKLVBBU1Mgd2luZG93LmludGVybmFscy5hdXRvZmls
bEZpZWxkTmFtZShpbnB1dCkgaXMgImVtYWlsIgogUEFTUyBpbnB1dC5hdXRvY29tcGxldGUgaXMg
InNlY3Rpb24tcGFyZW50IGltcHAiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVs
ZE5hbWUoaW5wdXQpIGlzICJpbXBwIgogCiBJbnZhbGlkIGNvbWJpbmF0aW9uczoKIFBBU1MgaW5w
dXQuYXV0b2NvbXBsZXRlIGlzICIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVs
ZE5hbWUoaW5wdXQpIGlzICJvbiIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICIiCi1QQVNT
IHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJvbiIKIFBBU1Mg
aW5wdXQuYXV0b2NvbXBsZXRlIGlzICIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxG
aWVsZE5hbWUoaW5wdXQpIGlzICJvbiIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICIiCi1Q
QVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJvbiIKIFBB
U1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2Zp
bGxGaWVsZE5hbWUoaW5wdXQpIGlzICJvbiIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICIi
Ci1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJvbiIK
IFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0
b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJvbiIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlz
ICIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJv
biIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMu
YXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJvbiIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRl
IGlzICIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlz
ICJvbiIKIFBBU1MgaW5wdXQuYXV0b2NvbXBsZXRlIGlzICIiCi1QQVNTIHdpbmRvdy5pbnRlcm5h
bHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpIGlzICJvbiIKLVBBU1MgaW5wdXRJbkF1dG9jb21w
bGV0ZU9mZkZvcm0uYXV0b2NvbXBsZXRlIGlzICIiCi1QQVNTIHdpbmRvdy5pbnRlcm5hbHMuYXV0
b2ZpbGxGaWVsZE5hbWUoaW5wdXRJbkF1dG9jb21wbGV0ZU9mZkZvcm0pIGlzICJvZmYiCi1QQVNT
IGlucHV0SW5BdXRvY29tcGxldGVPZmZGb3JtLmF1dG9jb21wbGV0ZSBpcyAiIgotUEFTUyB3aW5k
b3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0SW5BdXRvY29tcGxldGVPZmZGb3Jt
KSBpcyAib24iCiAKIE5vbi1hdXRvY29tcGxldGVhYmxlIGNvbnRyb2xzOgogUEFTUyBidXR0b24u
YXV0b2NvbXBsZXRlIGlzICJpbnZhbGlkIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9m
b3Jtcy9hdXRvY29tcGxldGUtdG9rZW5zLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2F1
dG9jb21wbGV0ZS10b2tlbnMuaHRtbAppbmRleCA3ZTI0ZmQ5NDY0MzYzMTQ5NDRiNzg2NmFmZjY5
ZWY1YzA2MmU1OThjLi45YjZjZjkzZTA2NDAxMTRlMjZlYjVkODI0MmE4YjE5ZDkwNmU1MmI3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2F1dG9jb21wbGV0ZS10b2tlbnMuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2F1dG9jb21wbGV0ZS10b2tlbnMuaHRtbApA
QCAtMjQsOCArMjQsNiBAQAogICAgICAgICAgICAga2V5d29yZHMuZm9yRWFjaChrZXl3b3JkID0+
IHsKICAgICAgICAgICAgICAgICBpbnB1dC5hdXRvY29tcGxldGUgPSBrZXl3b3JkOwogICAgICAg
ICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygnaW5wdXQuYXV0b2NvbXBsZXRlJywga2V5
d29yZCk7Ci0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgICAg
ICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygnd2luZG93LmludGVybmFscy5hdXRvZmls
bEZpZWxkTmFtZShpbnB1dCknLCBrZXl3b3JkKTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAg
ICAgICBkZWJ1ZygnJyk7CkBAIC0zNiw4ICszNCw2IEBACiAgICAgICAgICAgICAgICAgY29udGFj
dFRva2Vucy5mb3JFYWNoKGNvbnRhY3RUb2tlbiA9PiB7CiAgICAgICAgICAgICAgICAgICAgIGlu
cHV0LmF1dG9jb21wbGV0ZSA9IHNjb3BlVG9rZW4gKyAiICIgKyBjb250YWN0VG9rZW47CiAgICAg
ICAgICAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygnaW5wdXQuYXV0b2NvbXBsZXRl
Jywgc2NvcGVUb2tlbiArICIgIiArIGNvbnRhY3RUb2tlbik7Ci0gICAgICAgICAgICAgICAgICAg
IGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICAgICAgICAgICAgICAgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCd3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KScs
IGNvbnRhY3RUb2tlbik7CiAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgIH0pOwogCkBA
IC00OSw4ICs0NSw2IEBACiAgICAgICAgICAgICAgICAgYWRkcmVzc1Rva2Vucy5mb3JFYWNoKGFk
ZHJlc3NUb2tlbiA9PiB7CiAgICAgICAgICAgICAgICAgICAgIGlucHV0LmF1dG9jb21wbGV0ZSA9
IG1vZGVUb2tlbiArICIgIiArIGFkZHJlc3NUb2tlbjsKICAgICAgICAgICAgICAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCdpbnB1dC5hdXRvY29tcGxldGUnLCBtb2RlVG9rZW4gKyAiICIg
KyBhZGRyZXNzVG9rZW4pOwotICAgICAgICAgICAgICAgICAgICBpZiAod2luZG93LmludGVybmFs
cykKLSAgICAgICAgICAgICAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygnd2luZG93
LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCknLCBhZGRyZXNzVG9rZW4pOwogICAg
ICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICB9KTsKIApAQCAtNjAsOCArNTQsNiBAQAogICAg
ICAgICAgICAgICAgIHZhciB2YWx1ZSA9ICJzZWN0aW9uLXBhcmVudCAiICsga2V5d29yZDsKICAg
ICAgICAgICAgICAgICBpbnB1dC5hdXRvY29tcGxldGUgPSB2YWx1ZTsKICAgICAgICAgICAgICAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ2lucHV0LmF1dG9jb21wbGV0ZScsIHZhbHVlKTsKLSAg
ICAgICAgICAgICAgICBpZiAod2luZG93LmludGVybmFscykKLSAgICAgICAgICAgICAgICAgICAg
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1l
KGlucHV0KScsIGtleXdvcmQpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgICAgIGRlYnVn
KCcnKTsKQEAgLTY5LDcxICs2MSwzNiBAQAogICAgICAgICAgICAgYXV0b2NvbXBsZXRlYWJsZUNv
bnRyb2xzLmZvckVhY2goY29udHJvbCA9PiB7CiAgICAgICAgICAgICAgICAgIGNvbnRyb2wuYXV0
b2NvbXBsZXRlID0gJ2ludmFsaWQnOwogICAgICAgICAgICAgICAgICBzaG91bGRCZUVtcHR5U3Ry
aW5nKCdpbnB1dC5hdXRvY29tcGxldGUnKTsKLSAgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5p
bnRlcm5hbHMpCi0gICAgICAgICAgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3dp
bmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpJywgIm9uIik7CiAgICAgICAg
ICAgICB9KTsKICAgICAgICAgICAgIC8vIFR3byBub3JtYWwgdG9rZW5zCiAgICAgICAgICAgICBp
bnB1dC5hdXRvY29tcGxldGUgPSAibmFtZSBuYW1lIjsKICAgICAgICAgICAgIHNob3VsZEJlRW1w
dHlTdHJpbmcoJ2lucHV0LmF1dG9jb21wbGV0ZScpOwotICAgICAgICAgICAgaWYgKHdpbmRvdy5p
bnRlcm5hbHMpCi0gICAgICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd3aW5kb3cu
aW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KScsICJvbiIpOwogCiAgICAgICAgICAg
ICBpbnB1dC5hdXRvY29tcGxldGUgPSAibmFtZSBiZGF5IjsKICAgICAgICAgICAgIHNob3VsZEJl
RW1wdHlTdHJpbmcoJ2lucHV0LmF1dG9jb21wbGV0ZScpOwotICAgICAgICAgICAgaWYgKHdpbmRv
dy5pbnRlcm5hbHMpCi0gICAgICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd3aW5k
b3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KScsICJvbiIpOwogCiAgICAgICAg
ICAgICAvLyBDb250YWN0IHNjb3BlIHRva2VuICsgbm9uLWNvbnRhY3QgdG9rZW4uCiAgICAgICAg
ICAgICBpbnB1dC5hdXRvY29tcGxldGUgPSAicGFnZXIgYmRheSI7CiAgICAgICAgICAgICBzaG91
bGRCZUVtcHR5U3RyaW5nKCdpbnB1dC5hdXRvY29tcGxldGUnKTsKLSAgICAgICAgICAgIGlmICh3
aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygn
d2luZG93LmludGVybmFscy5hdXRvZmlsbEZpZWxkTmFtZShpbnB1dCknLCAib24iKTsKIAogICAg
ICAgICAgICAgLy8gVHdvIGNvbnRhY3Qgc2NvcGUgdG9rZW5zLgogICAgICAgICAgICAgaW5wdXQu
YXV0b2NvbXBsZXRlID0gImhvbWUgd29yayB0ZWwiOwogICAgICAgICAgICAgc2hvdWxkQmVFbXB0
eVN0cmluZygnaW5wdXQuYXV0b2NvbXBsZXRlJyk7Ci0gICAgICAgICAgICBpZiAod2luZG93Lmlu
dGVybmFscykKLSAgICAgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3dpbmRvdy5p
bnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpJywgIm9uIik7CiAKICAgICAgICAgICAg
IC8vIFR3byBtb2RlIHRva2Vucy4KICAgICAgICAgICAgIGlucHV0LmF1dG9jb21wbGV0ZSA9ICJz
aGlwcGluZyBiaWxsaW5nIHRlbCI7CiAgICAgICAgICAgICBzaG91bGRCZUVtcHR5U3RyaW5nKCdp
bnB1dC5hdXRvY29tcGxldGUnKTsKLSAgICAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQot
ICAgICAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygnd2luZG93LmludGVybmFscy5h
dXRvZmlsbEZpZWxkTmFtZShpbnB1dCknLCAib24iKTsKIAogICAgICAgICAgICAgLy8gVHdvIHNl
Y3Rpb24gdG9rZW5zLgogICAgICAgICAgICAgaW5wdXQuYXV0b2NvbXBsZXRlID0gInNlY3Rpb24t
YSBzZWN0aW9uLWIgdGVsIjsKICAgICAgICAgICAgIHNob3VsZEJlRW1wdHlTdHJpbmcoJ2lucHV0
LmF1dG9jb21wbGV0ZScpOwotICAgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAg
ICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd3aW5kb3cuaW50ZXJuYWxzLmF1dG9m
aWxsRmllbGROYW1lKGlucHV0KScsICJvbiIpOwogCiAgICAgICAgICAgICAvLyBBbnl0aGluZyAr
IG9uL29mZi4KICAgICAgICAgICAgIGlucHV0LmF1dG9jb21wbGV0ZSA9ICJ0ZWwgb24iOwogICAg
ICAgICAgICAgc2hvdWxkQmVFbXB0eVN0cmluZygnaW5wdXQuYXV0b2NvbXBsZXRlJyk7Ci0gICAg
ICAgICAgICBpZiAod2luZG93LmludGVybmFscykKLSAgICAgICAgICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoJ3dpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXQpJywg
Im9uIik7CiAKICAgICAgICAgICAgIGlucHV0LmF1dG9jb21wbGV0ZSA9ICJ0ZWwgb2ZmIjsKICAg
ICAgICAgICAgIHNob3VsZEJlRW1wdHlTdHJpbmcoJ2lucHV0LmF1dG9jb21wbGV0ZScpOwotICAg
ICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgICAgICAgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCd3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlucHV0KScs
ICJvbiIpOwotCi0gICAgICAgICAgICAvLyBUZXN0IGR5bmFtaWNhbGx5IGNoYW5naW5nIHRoZSBm
b3JtIG93bmVyJ3MgYXV0b2NvbXBsZXRlIGF0dHJpYnV0ZQotICAgICAgICAgICAgLy8gdG8gZW5z
dXJlIHRoZSBmaWVsZCBuYW1lIGNvcnJlY3RseSByZWZsZWN0cyBpdC4KLSAgICAgICAgICAgIHZh
ciBmb3JtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZm9ybSIpOwotICAgICAgICAgICAgdmFy
IGlucHV0SW5BdXRvY29tcGxldGVPZmZGb3JtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5w
dXQiKTsKLSAgICAgICAgICAgIGZvcm0uYXBwZW5kQ2hpbGQoaW5wdXRJbkF1dG9jb21wbGV0ZU9m
ZkZvcm0pOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChmb3JtKTsKLSAg
ICAgICAgICAgIGZvcm0uYXV0b2NvbXBsZXRlID0gIm9mZiI7Ci0gICAgICAgICAgICBpbnB1dElu
QXV0b2NvbXBsZXRlT2ZmRm9ybS5hdXRvY29tcGxldGUgPSAiIjsKLSAgICAgICAgICAgIHNob3Vs
ZEJlRW1wdHlTdHJpbmcoJ2lucHV0SW5BdXRvY29tcGxldGVPZmZGb3JtLmF1dG9jb21wbGV0ZScp
OwotICAgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgICAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCd3aW5kb3cuaW50ZXJuYWxzLmF1dG9maWxsRmllbGROYW1lKGlu
cHV0SW5BdXRvY29tcGxldGVPZmZGb3JtKScsICJvZmYiKTsKLQotICAgICAgICAgICAgZm9ybS5h
dXRvY29tcGxldGUgPSAib24iOwotICAgICAgICAgICAgc2hvdWxkQmVFbXB0eVN0cmluZygnaW5w
dXRJbkF1dG9jb21wbGV0ZU9mZkZvcm0uYXV0b2NvbXBsZXRlJyk7Ci0gICAgICAgICAgICBpZiAo
d2luZG93LmludGVybmFscykKLSAgICAgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
J3dpbmRvdy5pbnRlcm5hbHMuYXV0b2ZpbGxGaWVsZE5hbWUoaW5wdXRJbkF1dG9jb21wbGV0ZU9m
ZkZvcm0pJywgIm9uIik7CiAKICAgICAgICAgICAgIGRlYnVnKCcnKTsKICAgICAgICAgICAgIGRl
YnVnKCdOb24tYXV0b2NvbXBsZXRlYWJsZSBjb250cm9sczonKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>