<?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>177933</bug_id>
          
          <creation_ts>2017-10-05 05:43:52 -0700</creation_ts>
          <short_desc>Make the names of the options consistent</short_desc>
          <delta_ts>2017-10-09 09:50:31 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Robin Morisset">rmorisset</reporter>
          <assigned_to name="Robin Morisset">rmorisset</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1356992</commentid>
    <comment_count>0</comment_count>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2017-10-05 05:43:52 -0700</bug_when>
    <thetext>Currently, some options to JSC use the ByteCode spelling, while others use the Bytecode spelling.
I will make all of them take the Bytecode spelling, and keep some alias with the old spelling for backwards compatibility.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1357010</commentid>
    <comment_count>1</comment_count>
      <attachid>322833</attachid>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2017-10-05 06:41:20 -0700</bug_when>
    <thetext>Created attachment 322833
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1357037</commentid>
    <comment_count>2</comment_count>
      <attachid>322833</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-10-05 09:06:43 -0700</bug_when>
    <thetext>Comment on attachment 322833
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=322833&amp;action=review

r=me with comments and when you fix the build

&gt; Source/JavaScriptCore/ChangeLog:3
&gt; +        Rename verboseDFGByteCodeParsing in verboseDFGBytecodeParsing

This should be the bugzilla bug name

The prepare ChangeLog script takes a “-b” option that’ll fill this out for you

&gt; Source/WebCore/ChangeLog:3
&gt; +        Fix typos in comments

This should be the bugzilla name</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1357101</commentid>
    <comment_count>3</comment_count>
      <attachid>322861</attachid>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2017-10-05 11:07:26 -0700</bug_when>
    <thetext>Created attachment 322861
Fixed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1358154</commentid>
    <comment_count>4</comment_count>
      <attachid>322861</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-10-08 17:47:56 -0700</bug_when>
    <thetext>Comment on attachment 322861
Fixed

r=me still
FYI for future patches, you don&apos;t need to ask for a review again if I r+ before with some comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1358246</commentid>
    <comment_count>5</comment_count>
      <attachid>322861</attachid>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2017-10-09 09:21:58 -0700</bug_when>
    <thetext>Comment on attachment 322861
Fixed

Putting it in the co;;it queue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1358252</commentid>
    <comment_count>6</comment_count>
      <attachid>322861</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-09 09:49:18 -0700</bug_when>
    <thetext>Comment on attachment 322861
Fixed

Clearing flags on attachment: 322861

Committed r223047: &lt;http://trac.webkit.org/changeset/223047&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1358253</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-09 09:49:19 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1358255</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-10-09 09:50:31 -0700</bug_when>
    <thetext>&lt;rdar://problem/34887358&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>322833</attachid>
            <date>2017-10-05 06:41:20 -0700</date>
            <delta_ts>2017-10-05 11:07:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-177933-20171005154118.patch</filename>
            <type>text/plain</type>
            <size>52022</size>
            <attacher name="Robin Morisset">rmorisset</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIyOTA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
YzRlNGM5ZDEyODI1OTNlN2FhZGZmNDMwNDEwZTZiOWE3NTc2ZGU1Li4wYWQ1NWRlZGQzODNmZTZl
MmFiZmVlYWU0ZDYwMDNhMDdmN2Y4NTE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMSBAQAorMjAxNy0xMC0wNSAgUm9iaW4gTW9yaXNzZXQgIDxybW9yaXNzZXRAYXBwbGUu
Y29tPgorCisgICAgICAgIFJlbmFtZSB2ZXJib3NlREZHQnl0ZUNvZGVQYXJzaW5nIGluIHZlcmJv
c2VERkdCeXRlY29kZVBhcnNpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3NzkzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEkgYWRkZWQgYW4gYWxpYXMgc28gdGhlIG9sZCBzcGVsbGluZyBzdGlsbCB3
b3Jrcy4KKyAgICAgICAgSSBhbHNvIGZpeGVkIGEgYnVuY2ggb2YgdHlwb3MgaW4gY29tbWVudHMg
YWxsIGFyb3VuZCB0aGUgY29kZWJhc2UuCisKKyAgICAgICAgKiBiMy9CM0xvd2VyVG9BaXIuY3Bw
OgorICAgICAgICAqIGRmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHA6CisgICAgICAgIChKU0M6OkRG
Rzo6Qnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2spOgorICAgICAgICAqIGRmZy9ERkdJbnRlZ2Vy
UmFuZ2VPcHRpbWl6YXRpb25QaGFzZS5jcHA6CisgICAgICAgICogZGZnL0RGR09wZXJhdGlvbnMu
aDoKKyAgICAgICAgKiBkZmcvREZHU1NBQ29udmVyc2lvblBoYXNlLmg6CisgICAgICAgICogZGZn
L0RGR1NwZWN1bGF0aXZlSklULmg6CisgICAgICAgICogZnRsL0ZUTExvd2VyREZHVG9CMy5jcHA6
CisgICAgICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvQjM6Omxvd2VyKToKKyAgICAgICAg
KiBmdGwvRlRMT1NSRW50cnkuY3BwOgorICAgICAgICAoSlNDOjpGVEw6OnByZXBhcmVPU1JFbnRy
eSk6CisgICAgICAgICogaml0L0NhbGxGcmFtZVNodWZmbGVyLmNwcDoKKyAgICAgICAgKEpTQzo6
Q2FsbEZyYW1lU2h1ZmZsZXI6OnByZXBhcmVGb3JUYWlsQ2FsbCk6CisgICAgICAgICogcGFyc2Vy
L05vZGVzLmg6CisgICAgICAgICogcGFyc2VyL1BhcnNlci5jcHA6CisgICAgICAgIChKU0M6OlBh
cnNlcjxMZXhlclR5cGU+OjpwYXJzZUV4cG9ydERlY2xhcmF0aW9uKToKKyAgICAgICAgKiBydW50
aW1lL09wdGlvbnMuaDoKKwogMjAxNy0xMC0wNSAgU2FhbSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxl
LmNvbT4KIAogICAgICAgICBNYWtlIHN1cmUgYWxsIHByb3RvdHlwZXMgdW5kZXIgcG9seSBwcm90
byBnZXQgYWRkZWQgaW50byB0aGUgVk0ncyBwcm90b3R5cGUgbWFwCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjkz
ODIyMzA3YzA4MTkzODNhYjVjNDliNDQxNTFlNWFkODFkNWFmMy4uNjQwY2M2NmY5Mjk3OWRiZTA2
NDc4OWJjNzQwMjU1YWZiMmM5YzBiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYwIEBACisyMDE3
LTEwLTA1ICBSb2JpbiBNb3Jpc3NldCAgPHJtb3Jpc3NldEBhcHBsZS5jb20+CisKKyAgICAgICAg
Rml4IHR5cG9zIGluIGNvbW1lbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNzc5MzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBObyBmdW5jdGlvbmFsIGNoYW5nZSwganVzdCBmaXhpbmcgY29tbWVudHMu
CisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc291cmNlL01lZGlhU291cmNlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhU291cmNlOjpidWZmZXJlZCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpNZWRpYVNvdXJjZTo6bW9uaXRvclNvdXJjZUJ1ZmZlcnMpOgorICAgICAgICAqIE1vZHVs
ZXMvd2ViYXVkaW8vQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkF1ZGlvQnVmZmVyU291cmNlTm9kZTo6cHJvY2Vzcyk6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy9nZW5lcmF0ZS1iaW5kaW5ncy5wbDoKKyAgICAgICAgKiBjc3MvU3R5bGVSZXNvbHZlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVyOjphZGp1c3RSZW5kZXJTdHlsZSk6
CisgICAgICAgICogZWRpdGluZy9CcmVha0Jsb2NrcXVvdGVDb21tYW5kLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkJyZWFrQmxvY2txdW90ZUNvbW1hbmQ6OmRvQXBwbHkpOgorICAgICAgICAqIGVk
aXRpbmcvUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVw
bGFjZVNlbGVjdGlvbkNvbW1hbmQ6OmRvQXBwbHkpOgorICAgICAgICAqIGVkaXRpbmcvVmlzaWJs
ZVNlbGVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWaXNpYmxlU2VsZWN0aW9uOjpzZXRT
dGFydEFuZEVuZEZyb21CYXNlQW5kRXh0ZW50UmVzcGVjdGluZ0dyYW51bGFyaXR5KToKKyAgICAg
ICAgKiBlZGl0aW5nL1Zpc2libGVVbml0cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjbG9zZXN0
V29yZEJvdW5kYXJ5Rm9yUG9zaXRpb24pOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0F0b21pY0hU
TUxUb2tlbi5oOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQYXJzZXI6OmVuZCk6CisgICAgICAgICog
aW5zcGVjdG9yL0luc3BlY3Rvck92ZXJsYXlQYWdlLmpzOgorICAgICAgICAocmVzZXQpOgorICAg
ICAgICAqIHBhZ2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlZpZXdwb3J0Q29uZmlndXJhdGlvbjo6bGF5b3V0V2lkdGggY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6Vmlld3BvcnRDb25maWd1cmF0aW9uOjpsYXlvdXRIZWlnaHQgY29uc3QpOgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9seWdvbi5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9JbmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkluYmFuZFRleHRUcmFja1ByaXZhdGVBVkY6OnByb2Nlc3NDdWVBdHRy
aWJ1dGVzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJh
dGlvbi5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRl
eHQzRE9wZW5HTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRDo6dGV4
SW1hZ2UyRCk6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1dpZGdldE1hYy5tbToKKyAgICAgICAg
KFdlYkNvcmU6OnNhZmVSZW1vdmVGcm9tU3VwZXJ2aWV3KToKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyQmxvY2tGbG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6
Y29sbGFwc2VNYXJnaW5zV2l0aENoaWxkSW5mbyk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRl
ckJsb2NrRmxvdy5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCb3guY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyQm94Ojpjb21wdXRlUG9zaXRpb25lZExvZ2ljYWxXaWR0aFJlcGxh
Y2VkIGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlck9iamVjdDo6cHJvcGFnYXRlUmVwYWludFRvUGFyZW50V2l0aE91
dGxpbmVBdXRvSWZOZWVkZWQgY29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVt
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZTo6ZGlzYWJsZWRUZXh0Q29sb3Ig
Y29uc3QpOgorICAgICAgICAqIHN0eWxlL0NsYXNzQ2hhbmdlSW52YWxpZGF0aW9uLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlOjpjb21wdXRlQ2xhc3NDaGFuZ2UpOgorICAgICAgICAqIHN0
eWxlL1N0eWxlU2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlNjb3BlOjpkaWRD
aGFuZ2VTdHlsZVNoZWV0RW52aXJvbm1lbnQpOgorICAgICAgICAqIHN2Zy9TVkdBbHRHbHlwaERl
ZkVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHQWx0R2x5cGhEZWZFbGVtZW50Ojpo
YXNWYWxpZEdseXBoRWxlbWVudHMgY29uc3QpOgorCiAyMDE3LTEwLTA1ICBGdWppaSBIaXJvbm9y
aSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29tPgogCiAgICAgICAgIFtXaW5DYWlyb10gRml4IGJ1
aWxkIGFmdGVyIEJ1ZyAxNjc5NTYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZjA4NzljNTFiYTFkMzg3NWI2MTAyNmQy
ZTRkOTcyYTM2NGVhZWVmMy4uMjFhMWRmNTllYTg5ZjgwZDk0YmE5ZmFkN2Q4NzU2ZTE1M2FmOTUx
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxNy0xMC0wNSAgUm9iaW4gTW9yaXNzZXQg
IDxybW9yaXNzZXRAYXBwbGUuY29tPgorCisgICAgICAgIEZpeCB0eXBvcyBpbiBjb21tZW50cy4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NzkzMwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTmV0d29y
a1Byb2Nlc3MvY2FwdHVyZS9qc29uLmhwcDoKKyAgICAgICAgKiBQbGF0Zm9ybS9JUEMvQ29ubmVj
dGlvbi5jcHA6CisgICAgICAgIChJUEM6OkNvbm5lY3Rpb246OmNvbm5lY3Rpb25EaWRDbG9zZSk6
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW06CisgICAgICAgICgt
W1dLV2ViVmlldyBfa2V5Ym9hcmRXaWxsSGlkZTpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpydW5Nb2RhbCk6
CisgICAgICAgICogVUlQcm9jZXNzL21hYy9XZWJJbnNwZWN0b3JQcm94eU1hYy5tbToKKyAgICAg
ICAgKFdlYktpdDo6V2ViSW5zcGVjdG9yUHJveHk6Omluc3BlY3RlZFZpZXdGcmFtZURpZENoYW5n
ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzZWxlY3RXaXRoR2VzdHVyZSk6CisKIDIwMTctMTAtMDUg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIE1ha2UgTGliV2Vi
UlRDUHJvdmlkZXIgcG9ydCBhZ25vc3RpYwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4
IDkzZmM1NGM3NjdkMDI1MGJkNjIxNDYxMDAxNDVkNTVmODJjNTAzYzEuLmZkOGExZmFhZDllZjBk
NTkwOTA2NTRlN2Y4NjA3ZGVjODQ4NDUxNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxNSBAQAorMjAxNy0xMC0wNSAgUm9iaW4gTW9yaXNzZXQgIDxybW9yaXNzZXRA
YXBwbGUuY29tPgorCisgICAgICAgIEZpeCB0eXBvcyBpbiBjb21tZW50cworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc3OTMzCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYkZyYW1lLmg6
CisgICAgICAgICogV2ViVmlldy9XZWJIVE1MVmlldy5tbToKKyAgICAgICAgKC1bV2ViSFRNTFZp
ZXcgc2V0TWFya2VkVGV4dDpzZWxlY3RlZFJhbmdlOl0pOgorICAgICAgICAqIFdlYlZpZXcvV2Vi
Vmlldy5oOgorCiAyMDE3LTEwLTA1ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4K
IAogICAgICAgICBNYWtlIExpYldlYlJUQ1Byb3ZpZGVyIHBvcnQgYWdub3N0aWMKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0xvd2VyVG9BaXIuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2IzL0IzTG93ZXJUb0Fpci5jcHAKaW5kZXggNzY0ZGI0Y2JkODY4ZGQ4NTBi
ZDhhM2FiZDE0ODJhZmE0MjM4NDJkOS4uZDM5YmE3Yjc3OTYwODBhOTZlYjZiZjI4NTY4M2EzZDE5
ZDIzYjk2YiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzTG93ZXJUb0Fp
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzTG93ZXJUb0Fpci5jcHAKQEAg
LTc2Miw3ICs3NjIsNyBAQCBwcml2YXRlOgogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAg
ICAgICAgLy8gVGhlIHVzZSBjb3VudCBtaWdodCBiZSAxIGlmIHRoZSB2YXJpYWJsZSBpcyBsaXZl
IGFyb3VuZCBhIGxvb3AuIFdlIGNhbiBndWFyYW50ZWUgdGhhdCB3ZQotICAgICAgICAvLyBwaWNr
IHRoZSB0aGUgdmFyaWFibGUgdGhhdCBpcyBsZWFzdCBsaWtlbHkgdG8gc3VmZmVyIHRoaXMgcHJv
YmxlbSBpZiB3ZSBwaWNrIHRoZSBvbmUgdGhhdAorICAgICAgICAvLyBwaWNrIHRoZSB2YXJpYWJs
ZSB0aGF0IGlzIGxlYXN0IGxpa2VseSB0byBzdWZmZXIgdGhpcyBwcm9ibGVtIGlmIHdlIHBpY2sg
dGhlIG9uZSB0aGF0CiAgICAgICAgIC8vIGlzIGNsb3Nlc3QgdG8gdXMgaW4gYW4gaWRvbSB3YWxr
LiBCeSBjb252ZW50aW9uLCB3ZSBzbGlnaHRseSBiaWFzIHRoaXMgaW4gZmF2b3Igb2YKICAgICAg
ICAgLy8gcmV0dXJuaW5nIHRydWUuCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdCeXRlQ29kZVBhcnNlci5jcHAKaW5kZXggNzVjMWU1OWE5OGRjMjVhZWJiMDBlNmRhNGI2M2Zi
ZWViNWYxMzc5NS4uZThmZGNkZjNiM2FiOGY3MDA3YjIwY2Q3ZmE3ODg0YjkzYTYzNjhhMCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAKQEAg
LTYwNDQsOSArNjA0NCw5IEBAIGJvb2wgQnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2sodW5zaWdu
ZWQgbGltaXQpCiAgICAgICAgICAgICAgICAgb3AgPSBOZXdGdW5jdGlvbjsKICAgICAgICAgICAg
IH0KICAgICAgICAgICAgIHNldChWaXJ0dWFsUmVnaXN0ZXIoY3VycmVudEluc3RydWN0aW9uWzFd
LnUub3BlcmFuZCksIGFkZFRvR3JhcGgob3AsIE9wSW5mbyhmcm96ZW4pLCBnZXQoVmlydHVhbFJl
Z2lzdGVyKGN1cnJlbnRJbnN0cnVjdGlvblsyXS51Lm9wZXJhbmQpKSkpOwotICAgICAgICAgICAg
c3RhdGljX2Fzc2VydChPUENPREVfTEVOR1RIKG9wX25ld19mdW5jKSA9PSBPUENPREVfTEVOR1RI
KG9wX25ld19nZW5lcmF0b3JfZnVuYyksICJUaGUgbGVuZ3RoIG9mIG9wX25ld19mdW5jIHNob3Vs
ZCBlcWF1YWwgdG8gb25lIG9mIG9wX25ld19nZW5lcmF0b3JfZnVuYyIpOwotICAgICAgICAgICAg
c3RhdGljX2Fzc2VydChPUENPREVfTEVOR1RIKG9wX25ld19mdW5jKSA9PSBPUENPREVfTEVOR1RI
KG9wX25ld19hc3luY19mdW5jKSwgIlRoZSBsZW5ndGggb2Ygb3BfbmV3X2Z1bmMgc2hvdWxkIGVx
YXVhbCB0byBvbmUgb2Ygb3BfbmV3X2FzeW5jX2Z1bmMiKTsKLSAgICAgICAgICAgIHN0YXRpY19h
c3NlcnQoT1BDT0RFX0xFTkdUSChvcF9uZXdfZnVuYykgPT0gT1BDT0RFX0xFTkdUSChvcF9uZXdf
YXN5bmNfZ2VuZXJhdG9yX2Z1bmMpLCAiVGhlIGxlbmd0aCBvZiBvcF9uZXdfZnVuYyBzaG91bGQg
ZXFhdWFsIHRvIG9uZSBvZiBvcF9uZXdfYXN5bmNfZ2VuZXJhdG9yX2Z1bmMiKTsKKyAgICAgICAg
ICAgIHN0YXRpY19hc3NlcnQoT1BDT0RFX0xFTkdUSChvcF9uZXdfZnVuYykgPT0gT1BDT0RFX0xF
TkdUSChvcF9uZXdfZ2VuZXJhdG9yX2Z1bmMpLCAiVGhlIGxlbmd0aCBvZiBvcF9uZXdfZnVuYyBz
aG91bGQgYmUgZXF1YWwgdG8gb25lIG9mIG9wX25ld19nZW5lcmF0b3JfZnVuYyIpOworICAgICAg
ICAgICAgc3RhdGljX2Fzc2VydChPUENPREVfTEVOR1RIKG9wX25ld19mdW5jKSA9PSBPUENPREVf
TEVOR1RIKG9wX25ld19hc3luY19mdW5jKSwgIlRoZSBsZW5ndGggb2Ygb3BfbmV3X2Z1bmMgc2hv
dWxkIGJlIGVxdWFsIHRvIG9uZSBvZiBvcF9uZXdfYXN5bmNfZnVuYyIpOworICAgICAgICAgICAg
c3RhdGljX2Fzc2VydChPUENPREVfTEVOR1RIKG9wX25ld19mdW5jKSA9PSBPUENPREVfTEVOR1RI
KG9wX25ld19hc3luY19nZW5lcmF0b3JfZnVuYyksICJUaGUgbGVuZ3RoIG9mIG9wX25ld19mdW5j
IHNob3VsZCBiZSBlcXVhbCB0byBvbmUgb2Ygb3BfbmV3X2FzeW5jX2dlbmVyYXRvcl9mdW5jIik7
CiAgICAgICAgICAgICBORVhUX09QQ09ERShvcF9uZXdfZnVuYyk7CiAgICAgICAgIH0KIApAQCAt
NjA3Miw5ICs2MDcyLDkgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6cGFyc2VCbG9jayh1bnNpZ25l
ZCBsaW1pdCkKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHNldChWaXJ0dWFsUmVnaXN0ZXIo
Y3VycmVudEluc3RydWN0aW9uWzFdLnUub3BlcmFuZCksIGFkZFRvR3JhcGgob3AsIE9wSW5mbyhm
cm96ZW4pLCBnZXQoVmlydHVhbFJlZ2lzdGVyKGN1cnJlbnRJbnN0cnVjdGlvblsyXS51Lm9wZXJh
bmQpKSkpOwogICAgIAotICAgICAgICAgICAgc3RhdGljX2Fzc2VydChPUENPREVfTEVOR1RIKG9w
X25ld19mdW5jX2V4cCkgPT0gT1BDT0RFX0xFTkdUSChvcF9uZXdfZ2VuZXJhdG9yX2Z1bmNfZXhw
KSwgIlRoZSBsZW5ndGggb2Ygb3BfbmV3X2Z1bmNfZXhwIHNob3VsZCBlcWF1YWwgdG8gb25lIG9m
IG9wX25ld19nZW5lcmF0b3JfZnVuY19leHAiKTsKLSAgICAgICAgICAgIHN0YXRpY19hc3NlcnQo
T1BDT0RFX0xFTkdUSChvcF9uZXdfZnVuY19leHApID09IE9QQ09ERV9MRU5HVEgob3BfbmV3X2Fz
eW5jX2Z1bmNfZXhwKSwgIlRoZSBsZW5ndGggb2Ygb3BfbmV3X2Z1bmNfZXhwIHNob3VsZCBlcWF1
YWwgdG8gb25lIG9mIG9wX25ld19hc3luY19mdW5jX2V4cCIpOwotICAgICAgICAgICAgc3RhdGlj
X2Fzc2VydChPUENPREVfTEVOR1RIKG9wX25ld19mdW5jX2V4cCkgPT0gT1BDT0RFX0xFTkdUSChv
cF9uZXdfYXN5bmNfZ2VuZXJhdG9yX2Z1bmNfZXhwKSwgIlRoZSBsZW5ndGggb2Ygb3BfbmV3X2Z1
bmNfZXhwIHNob3VsZCBlcWF1YWwgdG8gb25lIG9mIG9wX25ld19hc3luY19mdW5jX2V4cCIpOwor
ICAgICAgICAgICAgc3RhdGljX2Fzc2VydChPUENPREVfTEVOR1RIKG9wX25ld19mdW5jX2V4cCkg
PT0gT1BDT0RFX0xFTkdUSChvcF9uZXdfZ2VuZXJhdG9yX2Z1bmNfZXhwKSwgIlRoZSBsZW5ndGgg
b2Ygb3BfbmV3X2Z1bmNfZXhwIHNob3VsZCBiZSBlcXVhbCB0byBvbmUgb2Ygb3BfbmV3X2dlbmVy
YXRvcl9mdW5jX2V4cCIpOworICAgICAgICAgICAgc3RhdGljX2Fzc2VydChPUENPREVfTEVOR1RI
KG9wX25ld19mdW5jX2V4cCkgPT0gT1BDT0RFX0xFTkdUSChvcF9uZXdfYXN5bmNfZnVuY19leHAp
LCAiVGhlIGxlbmd0aCBvZiBvcF9uZXdfZnVuY19leHAgc2hvdWxkIGJlIGVxdWFsIHRvIG9uZSBv
ZiBvcF9uZXdfYXN5bmNfZnVuY19leHAiKTsKKyAgICAgICAgICAgIHN0YXRpY19hc3NlcnQoT1BD
T0RFX0xFTkdUSChvcF9uZXdfZnVuY19leHApID09IE9QQ09ERV9MRU5HVEgob3BfbmV3X2FzeW5j
X2dlbmVyYXRvcl9mdW5jX2V4cCksICJUaGUgbGVuZ3RoIG9mIG9wX25ld19mdW5jX2V4cCBzaG91
bGQgYmUgZXF1YWwgdG8gb25lIG9mIG9wX25ld19hc3luY19mdW5jX2V4cCIpOwogICAgICAgICAg
ICAgTkVYVF9PUENPREUob3BfbmV3X2Z1bmNfZXhwKTsKICAgICAgICAgfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0ludGVnZXJSYW5nZU9wdGltaXphdGlvblBo
YXNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSW50ZWdlclJhbmdlT3B0aW1p
emF0aW9uUGhhc2UuY3BwCmluZGV4IDRhMzgzMWViMTYwZGM0OTc2NGU4NzM5MGU4OGFmNWFhOTVl
ODZlODkuLjNkYmUxNzFlOGU0ZGRlODYzNzY4MTJhY2VhZmNlNzc5MjNiMmNmMmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSW50ZWdlclJhbmdlT3B0aW1pemF0aW9u
UGhhc2UuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSW50ZWdlclJhbmdl
T3B0aW1pemF0aW9uUGhhc2UuY3BwCkBAIC03OTksNyArNzk5LDcgQEAgcHJpdmF0ZToKICAgICAg
ICAgLy8gYWxsIHBvc3NpYmxlIGluZXF1YWxpdGllcyBiZXR3ZWVuIHZhcmlhYmxlcyBhbmQgY29u
c3RhbnRzLCBidXQgd2UgZm9jdXMgbWFpbmx5IG9uIGNoZWFwCiAgICAgICAgIC8vIGNhc2VzIGZv
ciBub3cuCiAKLSAgICAgICAgLy8gSGVyZSBhcmUgc29tZSBvZiB0aGUgdGhlIGFycmFuZ2VtZW50
cyB3ZSBjYW4gbWVyZ2UgdXNlZnVsbHkgYXNzdW1pbmcgQGMgPCBAZDoKKyAgICAgICAgLy8gSGVy
ZSBhcmUgc29tZSBvZiB0aGUgYXJyYW5nZW1lbnRzIHdlIGNhbiBtZXJnZSB1c2VmdWxseSBhc3N1
bWluZyBAYyA8IEBkOgogICAgICAgICAvLwogICAgICAgICAvLyAgICAgQHggPT0gQGMgfHwgQHgg
PT0gQGQgICA9PiAgIEB4ID49IGMgJiYgQHggPD0gQGQKICAgICAgICAgLy8gICAgIEB4ID49IEBj
IHx8IEB4IDw9IEBkICAgPT4gICBUT1AKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHT3BlcmF0aW9ucy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVy
YXRpb25zLmgKaW5kZXggZTBkYTgwODhlZDRjNTcyNTg5NDA5MzYyNTBjNDhmZjNmMmE0OWNhOC4u
YjE2NWE5YmM2MGE2ODNmNDU1ZTYwZTdmZmZiMjgzNmJiOTExMGUwZCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmgKQEAgLTQwLDcgKzQwLDcgQEAgZXh0ZXJuICJD
IiB7CiBKU0NlbGwqIEpJVF9PUEVSQVRJT04gb3BlcmF0aW9uU3RyaW5nRnJvbUNoYXJDb2RlKEV4
ZWNTdGF0ZSosIGludDMyX3QpICBXVEZfSU5URVJOQUw7IAogRW5jb2RlZEpTVmFsdWUgSklUX09Q
RVJBVElPTiBvcGVyYXRpb25TdHJpbmdGcm9tQ2hhckNvZGVVbnR5cGVkKEV4ZWNTdGF0ZSosIEVu
Y29kZWRKU1ZhbHVlKSAgV1RGX0lOVEVSTkFMOwogCi0vLyBUaGVzZSByb3V0aW5lcyBhcmUgcHJv
dmlkZSBjYWxsYmFja3Mgb3V0IHRvIEMrKyBpbXBsZW1lbnRhdGlvbnMgb2Ygb3BlcmF0aW9ucyB0
b28gY29tcGxleCB0byBKSVQuCisvLyBUaGVzZSByb3V0aW5lcyBwcm92aWRlIGNhbGxiYWNrcyBv
dXQgdG8gQysrIGltcGxlbWVudGF0aW9ucyBvZiBvcGVyYXRpb25zIHRvbyBjb21wbGV4IHRvIEpJ
VC4KIEpTQ2VsbCogSklUX09QRVJBVElPTiBvcGVyYXRpb25PYmplY3RDb25zdHJ1Y3RvcihFeGVj
U3RhdGUqLCBKU0dsb2JhbE9iamVjdCosIEVuY29kZWRKU1ZhbHVlIGVuY29kZWRUYXJnZXQpIFdU
Rl9JTlRFUk5BTDsKIEpTQ2VsbCogSklUX09QRVJBVElPTiBvcGVyYXRpb25DcmVhdGVUaGlzKEV4
ZWNTdGF0ZSosIEpTT2JqZWN0KiBjb25zdHJ1Y3RvciwgaW50MzJfdCBpbmxpbmVDYXBhY2l0eSkg
V1RGX0lOVEVSTkFMOwogRW5jb2RlZEpTVmFsdWUgSklUX09QRVJBVElPTiBvcGVyYXRpb25Ub1Ro
aXMoRXhlY1N0YXRlKiwgRW5jb2RlZEpTVmFsdWUgZW5jb2RlZE9wMSkgV1RGX0lOVEVSTkFMOwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTU0FDb252ZXJzaW9uUGhh
c2UuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU1NBQ29udmVyc2lvblBoYXNlLmgK
aW5kZXggMDM3NjY4OTZmZDQ5MTYzZWJjODNiMWZiZjllZjIxYTY4NzAwOGU4MC4uYjg3NWI2ZDgz
MDM0NGFiNWEwZTM1ZWQ4YTY0ODZiM2NmNjEzZTliMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdTU0FDb252ZXJzaW9uUGhhc2UuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvZGZnL0RGR1NTQUNvbnZlcnNpb25QaGFzZS5oCkBAIC0zMyw3ICszMyw3IEBAIGNs
YXNzIEdyYXBoOwogCiAvLyBDb252ZXJ0IFRocmVhZGVkQ1BTIGZvcm0gaW50byBTU0EgZm9ybS4g
VGhpcyByZXN1bHRzIGluIGEgZm9ybSB0aGF0IGhhczoKIC8vCi0vLyAtIE1pbmltYWwgUGhpJ3Mu
IFdlIHVzZSB0aGUgdGhlIEN5dHJvbiBldCBhbCAoVE9QTEFTJzkxKSBhbGdvcml0aG0gZm9yCisv
LyAtIE1pbmltYWwgUGhpJ3MuIFdlIHVzZSB0aGUgQ3l0cm9uIGV0IGFsIChUT1BMQVMnOTEpIGFs
Z29yaXRobSBmb3IKIC8vICAgUGhpIGluc2VydGlvbi4gTW9zdCBvZiB0aGUgYWxnb3JpdGhtIGlz
IGltcGxlbWVudGVkIGluIFNTQUNhbGN1bGF0b3IKIC8vICAgYW5kIERvbWluYXRvcnMuCiAvLwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5oCmluZGV4IDMx
NjViZDBhYjk3OThjMDk4YTUwZWZkY2RkZjU0YjlhYjEyOGE2ZGIuLjI1ODIyYWU0OTI1ODJlYmVm
OTJkYjFkOTI4MWFiYzA5MjA0MWE4NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1NwZWN1bGF0aXZlSklULmgKQEAgLTc3OCw3ICs3NzgsNyBAQCBwdWJsaWM6CiAgICAgLy8g
YSBjaGlsZCwgYW5kIGFzIHN1Y2ggd2lsbCB1c2UgdGhlIHNhbWUgR2VuZXJhdGlvSW5mbykuCiAg
ICAgdm9pZCB1c2VDaGlsZHJlbihOb2RlKik7CiAKLSAgICAvLyBUaGVzZSBtZXRob2QgY2FsbGVk
IHRvIGluaXRpYWxpemUgdGhlIHRoZSBHZW5lcmF0aW9uSW5mbworICAgIC8vIFRoZXNlIG1ldGhv
ZCBjYWxsZWQgdG8gaW5pdGlhbGl6ZSB0aGUgR2VuZXJhdGlvbkluZm8KICAgICAvLyB0byBkZXNj
cmliZSB0aGUgcmVzdWx0IG9mIGFuIG9wZXJhdGlvbi4KICAgICB2b2lkIGludDMyUmVzdWx0KEdQ
UlJlZyByZWcsIE5vZGUqIG5vZGUsIERhdGFGb3JtYXQgZm9ybWF0ID0gRGF0YUZvcm1hdEludDMy
LCBVc2VDaGlsZHJlbk1vZGUgbW9kZSA9IENhbGxVc2VDaGlsZHJlbikKICAgICB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExvd2VyREZHVG9CMy5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExvd2VyREZHVG9CMy5jcHAKaW5kZXggYmU1ODc5MmMz
ZjgwMGFjM2FmOGUxYTcwYjZlNzQ0ZGQ5OGZhZDI2Ni4uZjVhMzk3ZDg0ZWE4MjNmYmVkYjQxNjcw
OTNiZmEyMDc1ODZiMzllNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9G
VExMb3dlckRGR1RvQjMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93
ZXJERkdUb0IzLmNwcApAQCAtMzUzLDcgKzM1Myw3IEBAIHB1YmxpYzoKIAogICAgICAgICAvLyBN
YWtlIHN1cmUgZXZlcnl0aGluZyBpcyBkZWNvcmF0ZWQuIFRoaXMgZG9lcyBhIGJ1bmNoIG9mIGRl
ZmVycmVkIGRlY29yYXRpbmcuIFRoaXMgaGFzCiAgICAgICAgIC8vIHRvIGhhcHBlbiBsYXN0IGJl
Y2F1c2Ugb3VyIGFic3RyYWN0IGhlYXBzIGFyZSBnZW5lcmF0ZWQgbGF6aWx5LiBUaGV5IGhhdmUg
dG8gYmUKLSAgICAgICAgLy8gZ2VuZXJhdGVkIGxhemlseSBiZWNhdXNlIHdlIGhhdmUgYW4gaW5m
aW5pdGVuIG51bWJlciBvZiBudW1iZXJlZCwgaW5kZXhlZCwgYW5kCisgICAgICAgIC8vIGdlbmVy
YXRlZCBsYXppbHkgYmVjYXVzZSB3ZSBoYXZlIGFuIGluZmluaXRlIG51bWJlciBvZiBudW1iZXJl
ZCwgaW5kZXhlZCwgYW5kCiAgICAgICAgIC8vIGFic29sdXRlIGhlYXBzLiBXZSBvbmx5IGJlY29t
ZSBhd2FyZSBvZiB0aGUgb25lcyB3ZSBhY3R1YWxseSBtZW50aW9uIHdoaWxlIGxvd2VyaW5nLgog
ICAgICAgICBtX2hlYXBzLmNvbXB1dGVSYW5nZXNBbmREZWNvcmF0ZUluc3RydWN0aW9ucygpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9TUkVudHJ5LmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMT1NSRW50cnkuY3BwCmluZGV4IGIzMmE1MzYz
NzY3NTQxN2Y2M2I5NTYxYTZjZDZlZWMyMjM1ZmNjOTYuLjcyZjAzYzg1OGU4OThiYWZlYmJmMzVk
YzY1MTVmNDUxMDVmOWI3NWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwv
RlRMT1NSRW50cnkuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMT1NSRW50
cnkuY3BwCkBAIC03Niw3ICs3Niw3IEBAIHZvaWQqIHByZXBhcmVPU1JFbnRyeSgKICAgICAgICAg
SlNWYWx1ZSByZWNvbnN0cnVjdGVkVmFsdWUgPSB2YWx1ZXMuYXJndW1lbnQoYXJndW1lbnQpOwog
ICAgICAgICBpZiAodmFsdWVPblN0YWNrID09IHJlY29uc3RydWN0ZWRWYWx1ZSB8fCAhYXJndW1l
bnQpCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgZGF0YUxvZygiTWlzbWF0Y2ggYmV0
d2VlbiByZWNvbnN0cnVjdGVkIHZhbHVlcyBhbmQgdGhlIHRoZSB2YWx1ZSBvbiB0aGUgc3RhY2sg
Zm9yIGFyZ3VtZW50IGFyZyIsIGFyZ3VtZW50LCAiIGZvciAiLCAqZW50cnlDb2RlQmxvY2ssICIg
YXQgYmMjIiwgYnl0ZWNvZGVJbmRleCwgIjpcbiIpOworICAgICAgICBkYXRhTG9nKCJNaXNtYXRj
aCBiZXR3ZWVuIHJlY29uc3RydWN0ZWQgdmFsdWVzIGFuZCB0aGUgdmFsdWUgb24gdGhlIHN0YWNr
IGZvciBhcmd1bWVudCBhcmciLCBhcmd1bWVudCwgIiBmb3IgIiwgKmVudHJ5Q29kZUJsb2NrLCAi
IGF0IGJjIyIsIGJ5dGVjb2RlSW5kZXgsICI6XG4iKTsKICAgICAgICAgZGF0YUxvZygiICAgIFZh
bHVlIG9uIHN0YWNrOiAiLCB2YWx1ZU9uU3RhY2ssICJcbiIpOwogICAgICAgICBkYXRhTG9nKCIg
ICAgUmVjb25zdHJ1Y3RlZCB2YWx1ZTogIiwgcmVjb25zdHJ1Y3RlZFZhbHVlLCAiXG4iKTsKICAg
ICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qaXQvQ2FsbEZyYW1lU2h1ZmZsZXIuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9DYWxsRnJhbWVTaHVmZmxlci5jcHAKaW5kZXggZmZiYzdlNmIwMjRhMzVjNWFl
MDM2NTJlODFjY2JlZmExMmVlNzhiYy4uYzg5NGE1NWI0MDI3YmQxOWMwMmY4NDYxYWE1NmMyZWEy
NTA5NTQ4OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9DYWxsRnJhbWVT
aHVmZmxlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9DYWxsRnJhbWVTaHVm
Zmxlci5jcHAKQEAgLTM4NCw3ICszODQsNyBAQCB2b2lkIENhbGxGcmFtZVNodWZmbGVyOjpwcmVw
YXJlRm9yVGFpbENhbGwoKQogICAgIC8vIG1hbnVhbGx5CiAgICAgbV9uZXdGcmFtZU9mZnNldCA9
IDA7CiAjZWxpZiBDUFUoQVJNKSB8fCBDUFUoTUlQUykKLSAgICAvLyBXZSBsb2FkIHRoZSB0aGUg
ZnJhbWUgcG9pbnRlciBhbmQgbGluayByZWdpc3RlcgorICAgIC8vIFdlIGxvYWQgdGhlIGZyYW1l
IHBvaW50ZXIgYW5kIGxpbmsgcmVnaXN0ZXIKICAgICAvLyBtYW51YWxseS4gV2UgY291bGQgYXNr
IHRoZSBhbGdvcml0aG0gdG8gbG9hZCB0aGVtIGZvciB1cywKICAgICAvLyBhbmQgaXQgd291bGQg
YWxsb3cgdXMgdG8gdXNlIHRoZSBsaW5rIHJlZ2lzdGVyIGFzIGFuIGV4dHJhCiAgICAgLy8gdGVt
cG9yYXJ5IC0gYnV0IGl0J2QgbWVhbiB0aGF0IHRoZSBmcmFtZSBwb2ludGVyIGNhbiBhbHNvCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmgKaW5kZXggZDZmZWMzMDJmYmMzYTMzN2JlMzQ0
ODYxMTEwZjRkNzJjYmE1NDBlOC4uMTk2YTdiYTU0YjRkOTMxYmVkNmMzYmIwZjM2YWVlMTJkNTEy
ZmI2NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTm9kZXMuaApAQCAtMTAyLDcgKzEwMiw3
IEBAIG5hbWVzcGFjZSBKU0MgewogCiAgICAgY2xhc3MgUGFyc2VyQXJlbmFGcmVlYWJsZSB7CiAg
ICAgcHVibGljOgotICAgICAgICAvLyBQYXJzZXJBcmVuYUZyZWVhYmxlIG9iamVjdHMgYXJlIGFy
ZSBmcmVlZCB3aGVuIHRoZSBhcmVuYSBpcyBkZWxldGVkLgorICAgICAgICAvLyBQYXJzZXJBcmVu
YUZyZWVhYmxlIG9iamVjdHMgYXJlIGZyZWVkIHdoZW4gdGhlIGFyZW5hIGlzIGRlbGV0ZWQuCiAg
ICAgICAgIC8vIERlc3RydWN0b3JzIGFyZSBub3QgY2FsbGVkLiBDbGllbnRzIG11c3Qgbm90IGNh
bGwgZGVsZXRlIG9uIHN1Y2ggb2JqZWN0cy4KICAgICAgICAgdm9pZCogb3BlcmF0b3IgbmV3KHNp
emVfdCwgUGFyc2VyQXJlbmEmKTsKICAgICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Q
YXJzZXIuY3BwCmluZGV4IDdjZDhkYWNjMWFhODljZjdmZmMxMGQ5N2FkMGIxNjgxNzUyMDBhNDAu
LjY4OTVmOGFhMWI0ZTBjODIxMjFlMmM5Y2ZlMjNlODZkZGJmNDc2M2IgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKQEAgLTM0NzAsNyArMzQ3MCw3IEBAIHRlbXBsYXRl
IDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVudCBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFy
c2VFeHBvcnREZWNsYXJhCiAgICAgICAgICAgICBzZW1hbnRpY0ZhaWxJZlRydWUoaGFzS2V5d29y
ZEZvckxvY2FsQmluZGluZ3MsICJDYW5ub3QgdXNlIGtleXdvcmQgYXMgZXhwb3J0ZWQgdmFyaWFi
bGUgbmFtZSIpOwogICAgICAgICAgICAgLy8gU2luY2UgdGhpcyBleHBvcnQgZGVjbGFyYXRpb24g
ZG9lcyBub3QgaGF2ZSBtb2R1bGUgc3BlY2lmaWVyIHBhcnQsIGl0IGV4cG9ydHMgdGhlIGxvY2Fs
IGJpbmRpbmdzLgogICAgICAgICAgICAgLy8gV2hpbGUgdGhlIGV4cG9ydCBkZWNsYXJhdGlvbiB3
aXRoIG1vZHVsZSBzcGVjaWZpZXIgZG9lcyBub3QgaGF2ZSBhbnkgZWZmZWN0IG9uIHRoZSBjdXJy
ZW50IG1vZHVsZSdzIHNjb3BlLAotICAgICAgICAgICAgLy8gdGhlIGV4cG9ydCBuYW1lZCBkZWNs
YXJhdGlvbiB3aXRob3V0IG1vZHVsZSBzcGVjaWZpZXIgcmVmZXJlbmNlcyB0aGUgdGhlIGxvY2Fs
IGJpbmRpbmcgbmFtZXMuCisgICAgICAgICAgICAvLyB0aGUgZXhwb3J0IG5hbWVkIGRlY2xhcmF0
aW9uIHdpdGhvdXQgbW9kdWxlIHNwZWNpZmllciByZWZlcmVuY2VzIHRoZSBsb2NhbCBiaW5kaW5n
IG5hbWVzLgogICAgICAgICAgICAgLy8gRm9yIGV4YW1wbGUsCiAgICAgICAgICAgICAvLyAgIGV4
cG9ydCB7IEEsIEIsIEMgYXMgRCB9IGZyb20gIm1vZCIKICAgICAgICAgICAgIC8vIGRvZXMgbm90
IGhhdmUgZWZmZWN0IG9uIHRoZSBjdXJyZW50IG1vZHVsZSdzIHNjb3BlLiBCdXQsCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zLmggYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zLmgKaW5kZXggNDVhMTBhODIyYjg1MzFhMzZkY2Q0
YzI0Nzg2NzgzZmQ2ODI4MGU0ZS4uMjBmNzQ1ZDMzMGQ2NmIwODJjZDczYWJiM2Q3MjBkZDA5OGI1
NDljNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9ucy5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnMuaApAQCAtMTY3LDcg
KzE2Nyw3IEBAIHR5cGVkZWYgY29uc3QgY2hhciogb3B0aW9uU3RyaW5nOwogICAgIHYoYm9vbCwg
ZHVtcERGR0ZUTEdyYXBoQXRFYWNoUGhhc2UsIGZhbHNlLCBOb3JtYWwsICJkdW1wcyB0aGUgREZH
IGdyYXBoIGF0IGVhY2ggcGhhc2Ugb2YgREZHIGNvbXBpbGF0aW9uIHdoZW4gY29tcGlsaW5nIEZU
TCBjb2RlIikgXAogICAgIHYoYm9vbCwgZHVtcEIzR3JhcGhBdEVhY2hQaGFzZSwgZmFsc2UsIE5v
cm1hbCwgImR1bXBzIHRoZSBCMyBncmFwaCBhdCBlYWNoIHBoYXNlIG9mIGNvbXBpbGF0aW9uIikg
XAogICAgIHYoYm9vbCwgZHVtcEFpckdyYXBoQXRFYWNoUGhhc2UsIGZhbHNlLCBOb3JtYWwsICJk
dW1wcyB0aGUgQWlyIGdyYXBoIGF0IGVhY2ggcGhhc2Ugb2YgY29tcGlsYXRpb24iKSBcCi0gICAg
dihib29sLCB2ZXJib3NlREZHQnl0ZUNvZGVQYXJzaW5nLCBmYWxzZSwgTm9ybWFsLCBudWxscHRy
KSBcCisgICAgdihib29sLCB2ZXJib3NlREZHQnl0ZWNvZGVQYXJzaW5nLCBmYWxzZSwgTm9ybWFs
LCBudWxscHRyKSBcCiAgICAgdihib29sLCBzYWZlcG9pbnRCZWZvcmVFYWNoUGhhc2UsIHRydWUs
IE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoYm9vbCwgdmVyYm9zZUNvbXBpbGF0aW9uLCBmYWxz
ZSwgTm9ybWFsLCBudWxscHRyKSBcCiAgICAgdihib29sLCB2ZXJib3NlRlRMQ29tcGlsYXRpb24s
IGZhbHNlLCBOb3JtYWwsIG51bGxwdHIpIFwKQEAgLTUxMyw2ICs1MTMsNyBAQCBlbnVtIE9wdGlv
bkVxdWl2YWxlbmNlIHsKICAgICB2KGVuYWJsZURvbGxhclZNLCB1c2VEb2xsYXJWTSwgU2FtZU9w
dGlvbikgXAogICAgIHYoZW5hYmxlV2ViQXNzZW1ibHksIHVzZVdlYkFzc2VtYmx5LCBTYW1lT3B0
aW9uKSBcCiAgICAgdihlbmFibGVBc3luY0l0ZXJhdG9yLCB1c2VBc3luY0l0ZXJhdG9yLCBTYW1l
T3B0aW9uKSBcCisgICAgdih2ZXJib3NlREZHQnl0ZUNvZGVQYXJzaW5nLCB2ZXJib3NlREZHQnl0
ZWNvZGVQYXJzaW5nLCBTYW1lT3B0aW9uKSBcCiAKIAogY2xhc3MgT3B0aW9ucyB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL01lZGlhU291cmNlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvTWVkaWFTb3VyY2UuY3BwCmluZGV4
IGMyY2VmYzY5YjA4YWU4MGNhNGI1NzNjOWY5ZjNlMTVkZDI5NTEzMzYuLmNiYWUwODk1MTZmNTg3
YWI2ZWU3MTQ0NmJhYzM4MGFlMDhlZjMzY2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzb3VyY2UvTWVkaWFTb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzb3VyY2UvTWVkaWFTb3VyY2UuY3BwCkBAIC0xOTUsNyArMTk1LDcgQEAgc3Rk
Ojp1bmlxdWVfcHRyPFBsYXRmb3JtVGltZVJhbmdlcz4gTWVkaWFTb3VyY2U6OmJ1ZmZlcmVkKCkg
Y29uc3QKICAgICAgICAgaWYgKGVuZGVkICYmIHNvdXJjZVJhbmdlcy5sZW5ndGgoKSkKICAgICAg
ICAgICAgIHNvdXJjZVJhbmdlcy5hZGQoc291cmNlUmFuZ2VzLnN0YXJ0KHNvdXJjZVJhbmdlcy5s
ZW5ndGgoKSAtIDEpLCBoaWdoZXN0RW5kVGltZSk7CiAKLSAgICAgICAgLy8gNS4zIExldCBuZXcg
aW50ZXJzZWN0aW9uIHJhbmdlcyBlcXVhbCB0aGUgdGhlIGludGVyc2VjdGlvbiBiZXR3ZWVuIHRo
ZSBpbnRlcnNlY3Rpb24gcmFuZ2VzIGFuZCB0aGUgc291cmNlIHJhbmdlcy4KKyAgICAgICAgLy8g
NS4zIExldCBuZXcgaW50ZXJzZWN0aW9uIHJhbmdlcyBlcXVhbCB0aGUgaW50ZXJzZWN0aW9uIGJl
dHdlZW4gdGhlIGludGVyc2VjdGlvbiByYW5nZXMgYW5kIHRoZSBzb3VyY2UgcmFuZ2VzLgogICAg
ICAgICAvLyA1LjQgUmVwbGFjZSB0aGUgcmFuZ2VzIGluIGludGVyc2VjdGlvbiByYW5nZXMgd2l0
aCB0aGUgbmV3IGludGVyc2VjdGlvbiByYW5nZXMuCiAgICAgICAgIG1fYnVmZmVyZWQtPmludGVy
c2VjdFdpdGgoc291cmNlUmFuZ2VzKTsKICAgICB9CkBAIC0zOTQsNyArMzk0LDcgQEAgdm9pZCBN
ZWRpYVNvdXJjZTo6bW9uaXRvclNvdXJjZUJ1ZmZlcnMoKQogICAgICAgICByZXR1cm47CiAgICAg
fQogCi0gICAgLy8g4oazIElmIHRoZSB0aGUgSFRNTE1lZGlhRWxlbWVudC5yZWFkeVN0YXRlIGF0
dHJpYnV0ZSBlcXVhbHMgSEFWRV9OT1RISU5HOgorICAgIC8vIOKGsyBJZiB0aGUgSFRNTE1lZGlh
RWxlbWVudC5yZWFkeVN0YXRlIGF0dHJpYnV0ZSBlcXVhbHMgSEFWRV9OT1RISU5HOgogICAgIGlm
IChtZWRpYUVsZW1lbnQoKS0+cmVhZHlTdGF0ZSgpID09IEhUTUxNZWRpYUVsZW1lbnQ6OkhBVkVf
Tk9USElORykgewogICAgICAgICAvLyAxLiBBYm9ydCB0aGVzZSBzdGVwcy4KICAgICAgICAgcmV0
dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb0J1
ZmZlclNvdXJjZU5vZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRp
b0J1ZmZlclNvdXJjZU5vZGUuY3BwCmluZGV4IDFmYTNkMTg3OGJlYTk3ZTVlYjRmMjJiZDUxZTRi
M2M3OTRiMjNhYzUuLmM3MWYzOTI5MzQ4MWVjZWU4ZDU1ZWI3NmM0YzNiNTVmNDA4ZjJmMWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9CdWZmZXJTb3Vy
Y2VOb2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQnVm
ZmVyU291cmNlTm9kZS5jcHAKQEAgLTEwNSw3ICsxMDUsNyBAQCB2b2lkIEF1ZGlvQnVmZmVyU291
cmNlTm9kZTo6cHJvY2VzcyhzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKQogCiAgICAgLy8gQWZ0ZXIg
Y2FsbGluZyBzZXRCdWZmZXIoKSB3aXRoIGEgYnVmZmVyIGhhdmluZyBhIGRpZmZlcmVudCBudW1i
ZXIgb2YgY2hhbm5lbHMsIHRoZXJlIGNhbiBpbiByYXJlIGNhc2VzIGJlIGEgc2xpZ2h0IGRlbGF5
CiAgICAgLy8gYmVmb3JlIHRoZSBvdXRwdXQgYnVzIGlzIHVwZGF0ZWQgdG8gdGhlIG5ldyBudW1i
ZXIgb2YgY2hhbm5lbHMgYmVjYXVzZSBvZiB1c2Ugb2YgdHJ5TG9ja3MoKSBpbiB0aGUgY29udGV4
dCdzIHVwZGF0aW5nIHN5c3RlbS4KLSAgICAvLyBJbiB0aGlzIGNhc2UsIGlmIHRoZSB0aGUgYnVm
ZmVyIGhhcyBqdXN0IGJlZW4gY2hhbmdlZCBhbmQgd2UncmUgbm90IHF1aXRlIHJlYWR5IHlldCwg
dGhlbiBqdXN0IG91dHB1dCBzaWxlbmNlLgorICAgIC8vIEluIHRoaXMgY2FzZSwgaWYgdGhlIGJ1
ZmZlciBoYXMganVzdCBiZWVuIGNoYW5nZWQgYW5kIHdlJ3JlIG5vdCBxdWl0ZSByZWFkeSB5ZXQs
IHRoZW4ganVzdCBvdXRwdXQgc2lsZW5jZS4KICAgICBpZiAobnVtYmVyT2ZDaGFubmVscygpICE9
IGJ1ZmZlcigpLT5udW1iZXJPZkNoYW5uZWxzKCkpIHsKICAgICAgICAgb3V0cHV0QnVzLnplcm8o
KTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9nZW5lcmF0ZS1iaW5kaW5ncy5wbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvZ2VuZXJhdGUtYmluZGluZ3MucGwKaW5kZXggOGVmOGU2ZmNhYThmMDY5YmM2ODI1OTVm
MzgxYWYwZTRhMTY1NWM1ZC4uMjMwNDNmZGFmYTRhMzg1NDM4MzIyZTZhYjdhNWZhMjA1YzQ4NTVi
MSAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9nZW5lcmF0ZS1i
aW5kaW5ncy5wbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRl
LWJpbmRpbmdzLnBsCkBAIC0yMDcsNyArMjA3LDcgQEAgZm9yZWFjaCBteSAkaWRsRmlsZSAoQHN1
cHBsZW1lbnRlZElkbEZpbGVzKSB7CiAgICAgICAgICAgICAgICAgcHVzaChAeyR0YXJnZXREYXRh
Tm9kZS0+Y29uc3RhbnRzfSwgJGNvbnN0YW50KTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBl
bHNlIHsKLSAgICAgICAgICAgIGRpZSAiJGlkbEZpbGUgaXMgbm90IGEgc3VwcGxlbWVudGFsIGRl
cGVuZGVuY3kgb2YgJHRhcmdldElkbEZpbGUuIFRoZXJlIG1heWJlIGEgYnVnIGluIHRoZSB0aGUg
c3VwcGxlbWVudGFsIGRlcGVuZGVuY3kgZ2VuZXJhdG9yIChwcmVwcm9jZXNzLWlkbHMucGwpLlxu
IjsKKyAgICAgICAgICAgIGRpZSAiJGlkbEZpbGUgaXMgbm90IGEgc3VwcGxlbWVudGFsIGRlcGVu
ZGVuY3kgb2YgJHRhcmdldElkbEZpbGUuIFRoZXJlIG1heWJlIGEgYnVnIGluIHRoZSBzdXBwbGVt
ZW50YWwgZGVwZW5kZW5jeSBnZW5lcmF0b3IgKHByZXByb2Nlc3MtaWRscy5wbCkuXG4iOwogICAg
ICAgICB9CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVz
b2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCmluZGV4IDU5
OTAwMjBjMGEzZDkwNTQ2M2ZiNzUwNGVkZGMxMDI1MTQ0MDQyODMuLjQ0ZTMzNDU0ZDBmNTVlYjk1
NGUxZjI3YzQ4NTYzMDYwZTE3N2ZjNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZVJlc29sdmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5j
cHAKQEAgLTEwNDgsNyArMTA0OCw3IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6YWRqdXN0UmVuZGVy
U3R5bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBSZW5kZXJTdHlsZSYgcGFyCiAgICAgfQog
CiAgICAgLy8gSWYgdGhlIGluaGVyaXRlZCB2YWx1ZSBvZiBqdXN0aWZ5LWl0ZW1zIGluY2x1ZGVz
IHRoZSAnbGVnYWN5JyBrZXl3b3JkLAotICAgIC8vICdhdXRvJyBjb21wdXRlcyB0byB0aGUgdGhl
IGluaGVyaXRlZCB2YWx1ZS4gT3RoZXJ3aXNlLCAnYXV0bycgY29tcHV0ZXMgdG8KKyAgICAvLyAn
YXV0bycgY29tcHV0ZXMgdG8gdGhlIGluaGVyaXRlZCB2YWx1ZS4gT3RoZXJ3aXNlLCAnYXV0bycg
Y29tcHV0ZXMgdG8KICAgICAvLyAnbm9ybWFsJy4KICAgICBpZiAoc3R5bGUuanVzdGlmeUl0ZW1z
KCkucG9zaXRpb24oKSA9PSBJdGVtUG9zaXRpb25BdXRvKSB7CiAgICAgICAgIGlmIChwYXJlbnRC
b3hTdHlsZS0+anVzdGlmeUl0ZW1zKCkucG9zaXRpb25UeXBlKCkgPT0gTGVnYWN5UG9zaXRpb24p
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0JyZWFrQmxvY2txdW90ZUNvbW1h
bmQuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9CcmVha0Jsb2NrcXVvdGVDb21tYW5kLmNw
cAppbmRleCA1ODIxYjA4MmQ5NjhmYmM4NDVhOTUyYTM3YWQ0YmI3Yzg5OTIyZmU5Li5hY2JiNWQ2
YWI0NmUwZGEzNjZlMWQwYWU2NWI2NTRjM2Y4ZTdiYzJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL0JyZWFrQmxvY2txdW90ZUNvbW1hbmQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvQnJlYWtCbG9ja3F1b3RlQ29tbWFuZC5jcHAKQEAgLTc1LDcgKzc1LDcgQEAg
dm9pZCBCcmVha0Jsb2NrcXVvdGVDb21tYW5kOjpkb0FwcGx5KCkKICAgICBib29sIGlzTGFzdFZp
c1Bvc0luTm9kZSA9IGlzTGFzdFZpc2libGVQb3NpdGlvbkluTm9kZSh2aXNpYmxlUG9zLCB0b3BC
bG9ja3F1b3RlKTsKIAogICAgIC8vIElmIHRoZSBwb3NpdGlvbiBpcyBhdCB0aGUgYmVnaW5uaW5n
IG9mIHRoZSB0b3AgcXVvdGVkIGNvbnRlbnQsIHdlIGRvbid0IG5lZWQgdG8gYnJlYWsgdGhlIHF1
b3RlLgotICAgIC8vIEluc3RlYWQsIGluc2VydCB0aGUgYnJlYWsgYmVmb3JlIHRoZSBibG9ja3F1
b3RlLCB1bmxlc3MgdGhlIHBvc2l0aW9uIGlzIGFzIHRoZSBlbmQgb2YgdGhlIHRoZSBxdW90ZWQg
Y29udGVudC4KKyAgICAvLyBJbnN0ZWFkLCBpbnNlcnQgdGhlIGJyZWFrIGJlZm9yZSB0aGUgYmxv
Y2txdW90ZSwgdW5sZXNzIHRoZSBwb3NpdGlvbiBpcyBhcyB0aGUgZW5kIG9mIHRoZSBxdW90ZWQg
Y29udGVudC4KICAgICBpZiAoaXNGaXJzdFZpc2libGVQb3NpdGlvbkluTm9kZSh2aXNpYmxlUG9z
LCB0b3BCbG9ja3F1b3RlKSAmJiAhaXNMYXN0VmlzUG9zSW5Ob2RlKSB7CiAgICAgICAgIGluc2Vy
dE5vZGVCZWZvcmUoYnJlYWtOb2RlLmNvcHlSZWYoKSwgKnRvcEJsb2NrcXVvdGUpOwogICAgICAg
ICBzZXRFbmRpbmdTZWxlY3Rpb24oVmlzaWJsZVNlbGVjdGlvbihwb3NpdGlvbkJlZm9yZU5vZGUo
YnJlYWtOb2RlLnB0cigpKSwgRE9XTlNUUkVBTSwgZW5kaW5nU2VsZWN0aW9uKCkuaXNEaXJlY3Rp
b25hbCgpKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1JlcGxhY2VTZWxl
Y3Rpb25Db21tYW5kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvUmVwbGFjZVNlbGVjdGlv
bkNvbW1hbmQuY3BwCmluZGV4IGIyYTk5MDUxODIyYjlkYjJiNmU5YTVkN2E5ZjYwMmVkNzBhNTVk
OTAuLmM0MjdmMTI0YWVkYTVhNTI3OGEzMzNkOWZhOTY3NWY4NTIxODI3OTYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuY3BwCkBAIC0x
MTkyLDcgKzExOTIsNyBAQCB2b2lkIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kOjpkb0FwcGx5KCkK
ICAgICAgICAgaWYgKG1fc2hvdWxkTWVyZ2VFbmQgJiYgZGVzdGluYXRpb25Ob2RlICE9IGVuY2xv
c2luZ0lubGluZShkZXN0aW5hdGlvbk5vZGUpICYmIGVuY2xvc2luZ0lubGluZShkZXN0aW5hdGlv
bk5vZGUpLT5uZXh0U2libGluZygpKQogICAgICAgICAgICAgaW5zZXJ0Tm9kZUJlZm9yZShIVE1M
QlJFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQoKSksICpyZWZOb2RlKTsKICAgICAgICAgCi0gICAg
ICAgIC8vIE1lcmdpbmcgdGhlIHRoZSBmaXJzdCBwYXJhZ3JhcGggb2YgaW5zZXJ0ZWQgY29udGVu
dCB3aXRoIHRoZSBjb250ZW50IHRoYXQgY2FtZQorICAgICAgICAvLyBNZXJnaW5nIHRoZSBmaXJz
dCBwYXJhZ3JhcGggb2YgaW5zZXJ0ZWQgY29udGVudCB3aXRoIHRoZSBjb250ZW50IHRoYXQgY2Ft
ZQogICAgICAgICAvLyBiZWZvcmUgdGhlIHNlbGVjdGlvbiB0aGF0IHdhcyBwYXN0ZWQgaW50byB3
b3VsZCBhbHNvIG1vdmUgY29udGVudCBhZnRlciAKICAgICAgICAgLy8gdGhlIHNlbGVjdGlvbiB0
aGF0IHdhcyBwYXN0ZWQgaW50byBpZjogb25seSBvbmUgcGFyYWdyYXBoIHdhcyBiZWluZyBwYXN0
ZWQsIAogICAgICAgICAvLyBhbmQgaXQgd2FzIG5vdCB3cmFwcGVkIGluIGEgYmxvY2ssIHRoZSBz
ZWxlY3Rpb24gdGhhdCB3YXMgcGFzdGVkIGludG8gZW5kZWQgCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL1Zpc2libGVTZWxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9WaXNpYmxlU2VsZWN0aW9uLmNwcAppbmRleCAyNTgxNzg1ODEyZjg0NGZhOWNjODg3Zjk5
NDA1YTBkNDE4ZDhlMDFmLi4xODY1MGFiMzg5Y2RhZWZiY2NkNGZiMzdjZjMyMjA0MGFmMDgwN2Yy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1Zpc2libGVTZWxlY3Rpb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVmlzaWJsZVNlbGVjdGlvbi5jcHAKQEAgLTI4
Niw3ICsyODYsNyBAQCB2b2lkIFZpc2libGVTZWxlY3Rpb246OnNldFN0YXJ0QW5kRW5kRnJvbUJh
c2VBbmRFeHRlbnRSZXNwZWN0aW5nR3JhbnVsYXJpdHkoVGV4dAogICAgICAgICAgICAgLy8gR2Vu
ZXJhbCBjYXNlOiBTZWxlY3QgdGhlIHdvcmQgdGhlIGNhcmV0IGlzIHBvc2l0aW9uZWQgaW5zaWRl
IG9mLCBvciBhdCB0aGUgc3RhcnQgb2YgKFJpZ2h0V29yZElmT25Cb3VuZGFyeSkuCiAgICAgICAg
ICAgICAvLyBFZGdlIGNhc2U6IElmIHRoZSBjYXJldCBpcyBhZnRlciB0aGUgbGFzdCB3b3JkIGlu
IGEgc29mdC13cmFwcGVkIGxpbmUgb3IgdGhlIGxhc3Qgd29yZCBpbgogICAgICAgICAgICAgLy8g
dGhlIGRvY3VtZW50LCBzZWxlY3QgdGhhdCBsYXN0IHdvcmQgKExlZnRXb3JkSWZPbkJvdW5kYXJ5
KS4KLSAgICAgICAgICAgIC8vIEVkZ2UgY2FzZTogSWYgdGhlIGNhcmV0IGlzIGFmdGVyIHRoZSBs
YXN0IHdvcmQgaW4gYSBwYXJhZ3JhcGgsIHNlbGVjdCBmcm9tIHRoZSB0aGUgZW5kIG9mIHRoZQor
ICAgICAgICAgICAgLy8gRWRnZSBjYXNlOiBJZiB0aGUgY2FyZXQgaXMgYWZ0ZXIgdGhlIGxhc3Qg
d29yZCBpbiBhIHBhcmFncmFwaCwgc2VsZWN0IGZyb20gdGhlIGVuZCBvZiB0aGUKICAgICAgICAg
ICAgIC8vIGxhc3Qgd29yZCB0byB0aGUgbGluZSBicmVhayAoYWxzbyBSaWdodFdvcmRJZk9uQm91
bmRhcnkpOwogICAgICAgICAgICAgVmlzaWJsZVBvc2l0aW9uIHN0YXJ0ID0gVmlzaWJsZVBvc2l0
aW9uKG1fc3RhcnQsIG1fYWZmaW5pdHkpOwogICAgICAgICAgICAgVmlzaWJsZVBvc2l0aW9uIG9y
aWdpbmFsRW5kKG1fZW5kLCBtX2FmZmluaXR5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvVmlzaWJsZVVuaXRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVmlzaWJs
ZVVuaXRzLmNwcAppbmRleCAxNmU5NmFiMTk2OGYxNDY0ZjQ1NWVmMGVjMGM2MzI3NWZhMGYxNmMz
Li42YWJjZDRmOTRjZTViYWE5YmJiMjZmNDM1YzgzYTRmNDJiZGI3NDdjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL1Zpc2libGVVbml0cy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9WaXNpYmxlVW5pdHMuY3BwCkBAIC0xOTcxLDcgKzE5NzEsNyBAQCBWaXNpYmxl
UG9zaXRpb24gY2xvc2VzdFdvcmRCb3VuZGFyeUZvclBvc2l0aW9uKGNvbnN0IFZpc2libGVQb3Np
dGlvbiYgcG9zaXRpb24pCiB7CiAgICAgVmlzaWJsZVBvc2l0aW9uIHJlc3VsdDsKIAotICAgIC8v
IG1vdmUgdGhlIHRoZSBwb3NpdGlvbiBhdCB0aGUgZW5kIG9mIHRoZSB3b3JkCisgICAgLy8gbW92
ZSB0aGUgcG9zaXRpb24gYXQgdGhlIGVuZCBvZiB0aGUgd29yZAogICAgIGlmIChhdEJvdW5kYXJ5
T2ZHcmFudWxhcml0eShwb3NpdGlvbiwgTGluZUdyYW51bGFyaXR5LCBEaXJlY3Rpb25Gb3J3YXJk
KSkgewogICAgICAgICAvLyBEb24ndCBjcm9zcyBsaW5lIGJvdW5kYXJpZXMuCiAgICAgICAgIHJl
c3VsdCA9IHBvc2l0aW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIv
QXRvbWljSFRNTFRva2VuLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9BdG9taWNIVE1M
VG9rZW4uaAppbmRleCBkMWYzMDlmZjEyNWNkNDhiMWVlOTQwZGZhNzMyNzU0YTViNmFhZjg4Li5h
MDcwY2U0N2YzYmZiZDk3ZTU5ZjM0ZmQzNDU0NGFhZTg5OGM2YWJiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3BhcnNlci9BdG9taWNIVE1MVG9rZW4uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3BhcnNlci9BdG9taWNIVE1MVG9rZW4uaApAQCAtNzgsNyArNzgsNyBAQCBwcml2
YXRlOgogCiAgICAgU3RyaW5nIG1fZGF0YTsgLy8gQ29tbWVudAogCi0gICAgLy8gV2UgZG9uJ3Qg
d2FudCB0byBjb3B5IHRoZSB0aGUgY2hhcmFjdGVycyBvdXQgb2YgdGhlIEhUTUxUb2tlbiwgc28g
d2Uga2VlcCBhIHBvaW50ZXIgdG8gaXRzIGJ1ZmZlciBpbnN0ZWFkLgorICAgIC8vIFdlIGRvbid0
IHdhbnQgdG8gY29weSB0aGUgY2hhcmFjdGVycyBvdXQgb2YgdGhlIEhUTUxUb2tlbiwgc28gd2Ug
a2VlcCBhIHBvaW50ZXIgdG8gaXRzIGJ1ZmZlciBpbnN0ZWFkLgogICAgIC8vIFRoaXMgYnVmZmVy
IGlzIG93bmVkIGJ5IHRoZSBIVE1MVG9rZW4gYW5kIGNhdXNlcyBhIGxpZmV0aW1lIGRlcGVuZGVu
Y2UgYmV0d2VlbiB0aGVzZSBvYmplY3RzLgogICAgIC8vIEZJWE1FOiBBZGQgYSBtZWNoYW5pc20g
Zm9yICJpbnRlcm5hbGl6aW5nIiB0aGUgY2hhcmFjdGVycyB3aGVuIHRoZSBIVE1MVG9rZW4gaXMg
ZGVzdHJveWVkLgogICAgIGNvbnN0IFVDaGFyKiBtX2V4dGVybmFsQ2hhcmFjdGVyczsgLy8gQ2hh
cmFjdGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MRG9jdW1l
bnRQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTERvY3VtZW50UGFy
c2VyLmNwcAppbmRleCBkMzhkZDkzYThmNmUyNzhkODQwNmEzYjI5YmRmODBkYWNlNzVjYzViLi5k
Y2Y0OWU5MDMxY2YzN2RlYjM5MWI4NWU2ZDFiYTk3NmJmZDZhYTE2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MRG9jdW1lbnRQYXJzZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5jcHAKQEAgLTQwMiw3ICs0
MDIsNyBAQCB2b2lkIEhUTUxEb2N1bWVudFBhcnNlcjo6ZW5kKCkKICAgICBBU1NFUlQoIWlzRGV0
YWNoZWQoKSk7CiAgICAgQVNTRVJUKCFpc1NjaGVkdWxlZEZvclJlc3VtZSgpKTsKIAotICAgIC8v
IEluZm9ybXMgdGhlIHRoZSByZXN0IG9mIFdlYkNvcmUgdGhhdCBwYXJzaW5nIGlzIHJlYWxseSBm
aW5pc2hlZCAoYW5kIGRlbGV0ZXMgdGhpcykuCisgICAgLy8gSW5mb3JtcyB0aGUgcmVzdCBvZiBX
ZWJDb3JlIHRoYXQgcGFyc2luZyBpcyByZWFsbHkgZmluaXNoZWQgKGFuZCBkZWxldGVzIHRoaXMp
LgogICAgIG1fdHJlZUJ1aWxkZXItPmZpbmlzaGVkKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JPdmVybGF5UGFnZS5qcyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JPdmVybGF5UGFnZS5qcwppbmRleCBmYTcxOTg5NjhkOTQ2
ZDdjMDVhMjI5MTk4MjFiOWVhYzEzZDEyOGNlLi4zMzZhNTkwYjM0MTQxZDc5OTk2M2YyMjk3ZGRk
ZWU2ZDE0M2JiZTAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yT3ZlcmxheVBhZ2UuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ck92ZXJsYXlQYWdlLmpzCkBAIC0xNzIsNyArMTcyLDcgQEAgZnVuY3Rpb24gcmVzZXQocmVzZXRE
YXRhKQogICAgIGNhbnZhcy5zdHlsZS5oZWlnaHQgPSB2aWV3cG9ydFNpemUuaGVpZ2h0ICsgInB4
IjsKICAgICBjb250ZXh0LnNjYWxlKGRldmljZVNjYWxlRmFjdG9yLCBkZXZpY2VTY2FsZUZhY3Rv
cik7CiAKLSAgICAvLyBXZSBhdm9pZCBnZXR0aW5nIHRoZSB0aGUgY29udGV4dCBmb3IgdGhlIHBh
aW50IHJlY3RzIGNhbnZhcyB1bnRpbCB3ZSBuZWVkIHRvIHBhaW50LCB0byBhdm9pZCBiYWNraW5n
IHN0b3JlIGFsbG9jYXRpb24uCisgICAgLy8gV2UgYXZvaWQgZ2V0dGluZyB0aGUgY29udGV4dCBm
b3IgdGhlIHBhaW50IHJlY3RzIGNhbnZhcyB1bnRpbCB3ZSBuZWVkIHRvIHBhaW50LCB0byBhdm9p
ZCBiYWNraW5nIHN0b3JlIGFsbG9jYXRpb24uCiAgICAgcGFpbnRSZWN0c0NhbnZhcy53aWR0aCA9
IGRldmljZVNjYWxlRmFjdG9yICogdmlld3BvcnRTaXplLndpZHRoOwogICAgIHBhaW50UmVjdHND
YW52YXMuaGVpZ2h0ID0gZGV2aWNlU2NhbGVGYWN0b3IgKiB2aWV3cG9ydFNpemUuaGVpZ2h0Owog
ICAgIHBhaW50UmVjdHNDYW52YXMuc3R5bGUud2lkdGggPSB2aWV3cG9ydFNpemUud2lkdGggKyAi
cHgiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRp
b24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uY3BwCmlu
ZGV4IGUwOTYyYzBkNDVkNmRmNWE5MjcxZmRmNDRlOTc1ZTI4OTRhNDY0ZjEuLmFhMTY0ODNmYzcw
YWIwOTAzYzBiNDAzZmI5MDFhNzViNzMyNGE2YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1ZpZXdwb3J0Q29uZmlndXJhdGlvbi5jcHAKQEAgLTM2MCw3ICszNjAsNyBAQCBpbnQgVmlld3Bv
cnRDb25maWd1cmF0aW9uOjpsYXlvdXRXaWR0aCgpIGNvbnN0CiAgICAgICAgICAgICBkb3VibGUg
bWF4aW11bVNjYWxlID0gdGhpcy0+bWF4aW11bVNjYWxlKCk7CiAgICAgICAgICAgICBkb3VibGUg
bWF4aW11bUNvbnRlbnRXaWR0aEluVmlld3BvcnRDb29yZGluYXRlID0gbWF4aW11bVNjYWxlICog
bV9jb25maWd1cmF0aW9uLndpZHRoOwogICAgICAgICAgICAgaWYgKG1heGltdW1Db250ZW50V2lk
dGhJblZpZXdwb3J0Q29vcmRpbmF0ZSA8IG1pbmltdW1MYXlvdXRTaXplLndpZHRoKCkpIHsKLSAg
ICAgICAgICAgICAgICAvLyBUaGUgY29udGVudCB6b29tZWQgdG8gbWF4U2NhbGUgZG9lcyBub3Qg
Zml0IHRoZSB0aGUgdmlldy4gUmV0dXJuIHRoZSBtaW5pbXVtIHdpZHRoCisgICAgICAgICAgICAg
ICAgLy8gVGhlIGNvbnRlbnQgem9vbWVkIHRvIG1heFNjYWxlIGRvZXMgbm90IGZpdCB0aGUgdmll
dy4gUmV0dXJuIHRoZSBtaW5pbXVtIHdpZHRoCiAgICAgICAgICAgICAgICAgLy8gc2F0aXNmeWlu
ZyB0aGUgY29uc3RyYWludCBtYXhpbXVtU2NhbGUuCiAgICAgICAgICAgICAgICAgcmV0dXJuIHN0
ZDo6cm91bmQobWluaW11bUxheW91dFNpemUud2lkdGgoKSAvIG1heGltdW1TY2FsZSk7CiAgICAg
ICAgICAgICB9CkBAIC0zOTYsNyArMzk2LDcgQEAgaW50IFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6
bGF5b3V0SGVpZ2h0KCkgY29uc3QKICAgICAgICAgICAgIGRvdWJsZSBtYXhpbXVtU2NhbGUgPSB0
aGlzLT5tYXhpbXVtU2NhbGUoKTsKICAgICAgICAgICAgIGRvdWJsZSBtYXhpbXVtQ29udGVudEhl
aWdodEluVmlld3BvcnRDb29yZGluYXRlID0gbWF4aW11bVNjYWxlICogbV9jb25maWd1cmF0aW9u
LmhlaWdodDsKICAgICAgICAgICAgIGlmIChtYXhpbXVtQ29udGVudEhlaWdodEluVmlld3BvcnRD
b29yZGluYXRlIDwgbWluaW11bUxheW91dFNpemUuaGVpZ2h0KCkpIHsKLSAgICAgICAgICAgICAg
ICAvLyBUaGUgY29udGVudCB6b29tZWQgdG8gbWF4U2NhbGUgZG9lcyBub3QgZml0IHRoZSB0aGUg
dmlldy4gUmV0dXJuIHRoZSBtaW5pbXVtIGhlaWdodCB0aGF0CisgICAgICAgICAgICAgICAgLy8g
VGhlIGNvbnRlbnQgem9vbWVkIHRvIG1heFNjYWxlIGRvZXMgbm90IGZpdCB0aGUgdmlldy4gUmV0
dXJuIHRoZSBtaW5pbXVtIGhlaWdodCB0aGF0CiAgICAgICAgICAgICAgICAgLy8gc2F0aXNmeSB0
aGUgY29uc3RyYWludCBtYXhpbXVtU2NhbGUuCiAgICAgICAgICAgICAgICAgcmV0dXJuIHN0ZDo6
cm91bmQobWluaW11bUxheW91dFNpemUuaGVpZ2h0KCkgLyBtYXhpbXVtU2NhbGUpOwogICAgICAg
ICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxv
YXRQb2x5Z29uLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFBvbHln
b24uaAppbmRleCBmNDdjOWFlNzc3YTFiZDgwMTkyMGZmYmI4OWY5OWU0OGI0ZDdhZWU5Li5hYmE0
YmQ5ZWVmYTdlODU1N2I5OWVmMTg3MGQyYWY0ZjFkZGRjYzMzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFBvbHlnb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFBvbHlnb24uaApAQCAtMTI0LDcgKzEyNCw3IEBA
IHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICAvLyBFZGdlIHZlcnRleCBpbmRleDEgaXMgbGVzcyB0
aGFuIGluZGV4MiwgZXhjZXB0IHRoZSBsYXN0IGVkZ2UsIHdoZXJlIGluZGV4MiBpcyAwLiBXaGVu
IGEgcG9seWdvbiBlZGdlCi0gICAgLy8gaXMgZGVmaW5lZCBieSAzIG9yIG1vcmUgY29saW5lYXIg
dmVydGljZXMsIGluZGV4MiBjYW4gYmUgdGhlIHRoZSBpbmRleCBvZiB0aGUgbGFzdCBjb2xpbmVh
ciB2ZXJ0ZXguCisgICAgLy8gaXMgZGVmaW5lZCBieSAzIG9yIG1vcmUgY29saW5lYXIgdmVydGlj
ZXMsIGluZGV4MiBjYW4gYmUgdGhlIGluZGV4IG9mIHRoZSBsYXN0IGNvbGluZWFyIHZlcnRleC4K
ICAgICB1bnNpZ25lZCBtX3ZlcnRleEluZGV4MTsKICAgICB1bnNpZ25lZCBtX3ZlcnRleEluZGV4
MjsKICAgICB1bnNpZ25lZCBtX2VkZ2VJbmRleDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9JbmJhbmRUZXh0VHJhY2tQcml2YXRlQVZG
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9JbmJh
bmRUZXh0VHJhY2tQcml2YXRlQVZGLmNwcAppbmRleCBlMzhkNTk1MTM1NDVjNDc1OGE2ZGVjNjg1
ZjczOTE1YWU5MjQwZGRlLi5iZjIxYjZiN2JkNDk3M2UzOGViMTU4ZDJlNzg4NDdkMjI2Y2Q4MGM2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL0luYmFuZFRleHRUcmFja1ByaXZhdGVBVkYuY3Bw
CkBAIC04OCw3ICs4OCw3IEBAIHN0YXRpYyBib29sIG1ha2VSR0JBMzJGcm9tQVJHQkNGQXJyYXko
Q0ZBcnJheVJlZiBjb2xvckFycmF5LCBSR0JBMzImIGNvbG9yKQogCiB2b2lkIEluYmFuZFRleHRU
cmFja1ByaXZhdGVBVkY6OnByb2Nlc3NDdWVBdHRyaWJ1dGVzKENGQXR0cmlidXRlZFN0cmluZ1Jl
ZiBhdHRyaWJ1dGVkU3RyaW5nLCBHZW5lcmljQ3VlRGF0YSYgY3VlRGF0YSkKIHsKLSAgICAvLyBT
b21lIG9mIHRoZSBhdHRyaWJ1dGVzIHdlIHRyYW5zbGF0ZSBpbnRvIHBlci1jdWUgV2ViVlRUIHNl
dHRpbmdzIGFyZSBhcmUgcmVwZWF0ZWQgb24gZWFjaCBwYXJ0IG9mIGFuIGF0dHJpYnV0ZWQgc3Ry
aW5nIHNvIG9ubHkKKyAgICAvLyBTb21lIG9mIHRoZSBhdHRyaWJ1dGVzIHdlIHRyYW5zbGF0ZSBp
bnRvIHBlci1jdWUgV2ViVlRUIHNldHRpbmdzIGFyZSByZXBlYXRlZCBvbiBlYWNoIHBhcnQgb2Yg
YW4gYXR0cmlidXRlZCBzdHJpbmcgc28gb25seQogICAgIC8vIHByb2Nlc3MgdGhlIGZpcnN0IGlu
c3RhbmNlIG9mIGVhY2guCiAgICAgZW51bSBBdHRyaWJ1dGVGbGFncyB7CiAgICAgICAgIExpbmUg
PSAxIDw8IDAsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0ZpbHRlck9wZXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb24uaAppbmRleCAxOWRkY2M4MDQxMGY2YzQ4MmJiZWY3
YjdkZWYyYzQ2NzQ0MWZlMTNjLi44MzhhODMyYzc4NDU2NThkNDBlNzJjZTkzODg4NjY2MDI0ZTc5
MjNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0ZpbHRlck9wZXJhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvRmlsdGVyT3BlcmF0aW9uLmgKQEAgLTk0LDcgKzk0LDcgQEAgcHVibGljOgogCiAg
ICAgLy8gVHJ1ZSBpZiB0aGUgYWxwaGEgY2hhbm5lbCBvZiBhbnkgcGl4ZWwgY2FuIGNoYW5nZSB1
bmRlciB0aGlzIG9wZXJhdGlvbi4KICAgICB2aXJ0dWFsIGJvb2wgYWZmZWN0c09wYWNpdHkoKSBj
b25zdCB7IHJldHVybiBmYWxzZTsgfQotICAgIC8vIFRydWUgaWYgdGhlIHRoZSB2YWx1ZSBvZiBv
bmUgcGl4ZWwgY2FuIGFmZmVjdCB0aGUgdmFsdWUgb2YgYW5vdGhlciBwaXhlbCB1bmRlciB0aGlz
IG9wZXJhdGlvbiwgc3VjaCBhcyBibHVyLgorICAgIC8vIFRydWUgaWYgdGhlIHZhbHVlIG9mIG9u
ZSBwaXhlbCBjYW4gYWZmZWN0IHRoZSB2YWx1ZSBvZiBhbm90aGVyIHBpeGVsIHVuZGVyIHRoaXMg
b3BlcmF0aW9uLCBzdWNoIGFzIGJsdXIuCiAgICAgdmlydHVhbCBib29sIG1vdmVzUGl4ZWxzKCkg
Y29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICAvLyBUcnVlIGlmIHRoZSBmaWx0ZXIgc2hvdWxk
IG5vdCBiZSBhbGxvd2VkIHRvIHdvcmsgb24gY29udGVudCB0aGF0IGlzIG5vdCBhdmFpbGFibGUg
ZnJvbSB0aGlzIHNlY3VyaXR5IG9yaWdpbi4KICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkQmVSZXN0
cmljdGVkQnlTZWN1cml0eU9yaWdpbigpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250
ZXh0M0RPcGVuR0wuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3Blbmds
L0dyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcAppbmRleCA1NTNhODk3MGQzMDRkMWNhNmI0N2Zi
ZjQ1MjM0MjNlZTcxZjM5NjNjLi40NWM3ZmVkNmQzMjk0ZGZlYjk3NmUxOWQwODEyYTFhZmI1NzUz
NmIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wv
R3JhcGhpY3NDb250ZXh0M0RPcGVuR0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAKQEAgLTM5MCw3ICsz
OTAsNyBAQCBib29sIEdyYXBoaWNzQ29udGV4dDNEOjp0ZXhJbWFnZTJEKEdDM0RlbnVtIHRhcmdl
dCwgR0MzRGludCBsZXZlbCwgR0MzRGVudW0gaW50ZQogICAgICAgICAvLyBXZSBhcmUgdXNpbmcg
YSBjb3JlIHByb2ZpbGUuIFRoaXMgbWVhbnMgdGhhdCBHTF9BTFBIQSwgd2hpY2ggaXMgYSB2YWxp
ZCBmb3JtYXQgaW4gV2ViR0wgZm9yIHRleEltYWdlMkQKICAgICAgICAgLy8gaXMgbm90IHN1cHBv
cnRlZCBpbiBPcGVuR0wuIEl0IG5lZWRzIHRvIGJlIGJhY2tlZCB3aXRoIGEgR0xfUkVEIHBsYW5l
LiBXZSBjaGFuZ2UgdGhlIGZvcm1hdHMgdG8gR0xfUkVECiAgICAgICAgIC8vIChib3RoIG5lZWQg
dG8gYmUgR0xfQUxQSEEgaW4gV2ViR0wpIGFuZCBpbnN0cnVjdCB0aGUgdGV4dHVyZSB0byBzd2l6
emxlIHRoZSByZWQgY29tcG9uZW50IHZhbHVlcyB3aXRoCi0gICAgICAgIC8vIHRoZSB0aGUgYWxw
aGEgY29tcG9uZW50IHZhbHVlcy4KKyAgICAgICAgLy8gdGhlIGFscGhhIGNvbXBvbmVudCB2YWx1
ZXMuCiAgICAgICAgIG9wZW5HTEludGVybmFsRm9ybWF0ID0gb3BlbkdMRm9ybWF0ID0gUkVEOwog
ICAgICAgICB0ZXhQYXJhbWV0ZXJpKHRhcmdldCwgVEVYVFVSRV9TV0laWkxFX0EsIFJFRCk7CiAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dpZGdldE1hYy5t
bSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XaWRnZXRNYWMubW0KaW5kZXggNjBmMWJi
Y2EwZWNkMWUzY2VlN2RhMjFiMWRkNjM2MTk3YmQyMWZjNS4uZDgxZjc5NjQ3YjhjN2VkMjFmYmY5
M2MyOWQzOGNjNjljNTE5NTY3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1dpZGdldE1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2lkZ2V0
TWFjLm1tCkBAIC02MCw3ICs2MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogc3RhdGljIHZv
aWQgc2FmZVJlbW92ZUZyb21TdXBlcnZpZXcoTlNWaWV3ICp2aWV3KQogewotICAgIC8vIElmIHRo
ZSB0aGUgdmlldyBpcyB0aGUgZmlyc3QgcmVzcG9uZGVyLCB0aGVuIHNldCB0aGUgd2luZG93J3Mg
Zmlyc3QgcmVzcG9uZGVyIHRvIG5pbCBzbworICAgIC8vIElmIHRoZSB2aWV3IGlzIHRoZSBmaXJz
dCByZXNwb25kZXIsIHRoZW4gc2V0IHRoZSB3aW5kb3cncyBmaXJzdCByZXNwb25kZXIgdG8gbmls
IHNvCiAgICAgLy8gd2UgZG9uJ3QgbGVhdmUgdGhlIHdpbmRvdyBwb2ludGluZyB0byBhIHZpZXcg
dGhhdCdzIG5vIGxvbmdlciBpbiBpdC4KICAgICBOU1dpbmRvdyAqd2luZG93ID0gW3ZpZXcgd2lu
ZG93XTsKICAgICBOU1Jlc3BvbmRlciAqZmlyc3RSZXNwb25kZXIgPSBbd2luZG93IGZpcnN0UmVz
cG9uZGVyXTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
a0Zsb3cuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAK
aW5kZXggMmUyNmE4ZjBjNmRhODRiY2M3MTY2N2YwYmQ5YTA3NzY1M2M2MjBmZi4uNGRlMDc5NTcx
MGQ3NzRlODQyNmNkM2I5ZDFkYmJjODQ2ZTdiZDM4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKQEAgLTEwMDQsNyArMTAwNCw3IEBAIExheW91dFVu
aXQgUmVuZGVyQmxvY2tGbG93Ojpjb2xsYXBzZU1hcmdpbnNXaXRoQ2hpbGRJbmZvKFJlbmRlckJv
eCogY2hpbGQsIFJlbmRlCiAgICAgYm9vbCBiZWZvcmVRdWlyayA9IGNoaWxkID8gaGFzTWFyZ2lu
QmVmb3JlUXVpcmsoKmNoaWxkKSA6IGZhbHNlOwogICAgIGJvb2wgYWZ0ZXJRdWlyayA9IGNoaWxk
ID8gaGFzTWFyZ2luQWZ0ZXJRdWlyaygqY2hpbGQpIDogZmFsc2U7CiAgICAgCi0gICAgLy8gVGhl
IGNoaWxkIGRpc2NhcmRzIHRoZSBiZWZvcmUgbWFyZ2luIHdoZW4gdGhlIHRoZSBhZnRlciBtYXJn
aW4gaGFzIGRpc2NhcmQgaW4gdGhlIGNhc2Ugb2YgYSBzZWxmIGNvbGxhcHNpbmcgYmxvY2suCisg
ICAgLy8gVGhlIGNoaWxkIGRpc2NhcmRzIHRoZSBiZWZvcmUgbWFyZ2luIHdoZW4gdGhlIGFmdGVy
IG1hcmdpbiBoYXMgZGlzY2FyZGVkIGluIHRoZSBjYXNlIG9mIGEgc2VsZiBjb2xsYXBzaW5nIGJs
b2NrLgogICAgIGNoaWxkRGlzY2FyZE1hcmdpbkJlZm9yZSA9IGNoaWxkRGlzY2FyZE1hcmdpbkJl
Zm9yZSB8fCAoY2hpbGREaXNjYXJkTWFyZ2luQWZ0ZXIgJiYgY2hpbGRJc1NlbGZDb2xsYXBzaW5n
KTsKICAgICAKICAgICAvLyBHZXQgdGhlIGZvdXIgbWFyZ2luIHZhbHVlcyBmb3IgdGhlIGNoaWxk
IGFuZCBjYWNoZSB0aGVtLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJsb2NrRmxvdy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxv
dy5oCmluZGV4IDk0MGY3YmU1MTdkNjBhZmY1MzcxYjFjZGMxMzdiNzBlN2JiMTJmYzUuLjI5MzIz
YTMwOWE1YTMyMWVkMWVhMGM2ZjMwZjBiZjMwYjY3ODFkNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmgKQEAgLTY5LDcgKzY5LDcgQEAgcHJvdGVjdGVkOgog
ICAgIHZvaWQgcmVidWlsZEZsb2F0aW5nT2JqZWN0U2V0RnJvbUludHJ1ZGluZ0Zsb2F0cygpOwog
CiAgICAgLy8gUmVuZGVyQmxvY2tGbG93IGFsd2F5cyBjb250YWlucyBlaXRoZXIgbGluZXMgb3Ig
cGFyYWdyYXBocy4gV2hlbiB0aGUgY2hpbGRyZW4gYXJlIGFsbCBibG9ja3MgKGUuZy4gcGFyYWdy
YXBocyksIHdlIGNhbGwgbGF5b3V0QmxvY2tDaGlsZHJlbi4KLSAgICAvLyBXaGVuIHRoZSBjaGls
ZHJlbiBhcmUgYXJlIGFsbCBpbmxpbmUgKGUuZy4sIGxpbmVzKSwgd2UgY2FsbCBsYXlvdXRJbmxp
bmVDaGlsZHJlbi4KKyAgICAvLyBXaGVuIHRoZSBjaGlsZHJlbiBhcmUgYWxsIGlubGluZSAoZS5n
LiwgbGluZXMpLCB3ZSBjYWxsIGxheW91dElubGluZUNoaWxkcmVuLgogICAgIHZvaWQgbGF5b3V0
QmxvY2tDaGlsZHJlbihib29sIHJlbGF5b3V0Q2hpbGRyZW4sIExheW91dFVuaXQmIG1heEZsb2F0
TG9naWNhbEJvdHRvbSk7CiAgICAgdm9pZCBsYXlvdXRJbmxpbmVDaGlsZHJlbihib29sIHJlbGF5
b3V0Q2hpbGRyZW4sIExheW91dFVuaXQmIHJlcGFpbnRMb2dpY2FsVG9wLCBMYXlvdXRVbml0JiBy
ZXBhaW50TG9naWNhbEJvdHRvbSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5j
cHAKaW5kZXggYWQxZDUwMzBiOWQ3OTE4ZWJiYzAyYWIzZjMzNjgzNTBmZDk3MjBhZC4uOTUxZTky
MTQyODI2NzFlZDg4ZWMwNGMxOTVmMGI4MGU5NWQwZjQ3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJveC5jcHAKQEAgLTQwMTcsNyArNDAxNyw3IEBAIHZvaWQgUmVuZGVyQm94Ojpj
b21wdXRlUG9zaXRpb25lZExvZ2ljYWxXaWR0aFJlcGxhY2VkKExvZ2ljYWxFeHRlbnRDb21wdXRl
ZFZhbHVlCiAgICAgY29uc3QgTGF5b3V0VW5pdCBjb250YWluZXJSZWxhdGl2ZUxvZ2ljYWxXaWR0
aCA9IGNvbnRhaW5pbmdCbG9ja0xvZ2ljYWxXaWR0aEZvclBvc2l0aW9uZWQoY29udGFpbmVyQmxv
Y2ssIG51bGxwdHIsIGZhbHNlKTsKIAogICAgIC8vIFRvIG1hdGNoIFdpbklFLCBpbiBxdWlya3Mg
bW9kZSB1c2UgdGhlIHBhcmVudCdzICdkaXJlY3Rpb24nIHByb3BlcnR5Ci0gICAgLy8gaW5zdGVh
ZCBvZiB0aGUgdGhlIGNvbnRhaW5lciBibG9jaydzLgorICAgIC8vIGluc3RlYWQgb2YgdGhlIGNv
bnRhaW5lciBibG9jaydzLgogICAgIFRleHREaXJlY3Rpb24gY29udGFpbmVyRGlyZWN0aW9uID0g
Y29udGFpbmVyQmxvY2suc3R5bGUoKS5kaXJlY3Rpb24oKTsKIAogICAgIC8vIFZhcmlhYmxlcyB0
byBzb2x2ZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmpl
Y3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAKaW5kZXgg
ZGQ1ZmJkMzk2MzVkOGQzNDAwYTUzNWE1NDgxMjllOGY5MzNjYzQzZi4uYmRhYjJjYTAxYWI5MGYz
ZmFjNzg4MDExZTVkMzdlNTE3YzE3NGYxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlck9iamVjdC5jcHAKQEAgLTgxNyw3ICs4MTcsNyBAQCB2b2lkIFJlbmRlck9iamVjdDo6cHJv
cGFnYXRlUmVwYWludFRvUGFyZW50V2l0aE91dGxpbmVBdXRvSWZOZWVkZWQoY29uc3QgUmVuZGVy
TAogICAgIGlmICghaGFzT3V0bGluZUF1dG9BbmNlc3RvcigpKQogICAgICAgICByZXR1cm47CiAK
LSAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIHJlYWxseSBwcm9wYWdhdGUgb25seSB3aGVuIHRoZSB0
aGUgY2hpbGQgcmVuZGVyZXIgc3RpY2tzIG91dC4KKyAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIHJl
YWxseSBwcm9wYWdhdGUgb25seSB3aGVuIHRoZSBjaGlsZCByZW5kZXJlciBzdGlja3Mgb3V0Lgog
ICAgIGJvb2wgcmVwYWludFJlY3ROZWVkc0NvbnZlcnRpbmcgPSBmYWxzZTsKICAgICAvLyBJc3N1
ZSByZXBhaW50IG9uIHRoZSByZW5kZXJlciB3aXRoIG91dGxpbmU6IGF1dG8uCiAgICAgZm9yIChj
b25zdCBhdXRvKiByZW5kZXJlciA9IHRoaXM7IHJlbmRlcmVyOyByZW5kZXJlciA9IHJlbmRlcmVy
LT5wYXJlbnQoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRoZW1lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5jcHAKaW5k
ZXggZWMxZjU1MmY5NTBjMzI2NjM4ZWY2MjZlNWNhYjJhNGNjMWIyYmUzNS4uNDFlNmEwNGNmZWI0
YThmYTFjNGUzNmUyOWQyZjAxM2JkZjgxOWU5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRoZW1lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyVGhlbWUuY3BwCkBAIC0xMzEzLDcgKzEzMTMsNyBAQCBDb2xvciBSZW5kZXJUaGVtZTo6
ZGlzYWJsZWRUZXh0Q29sb3IoY29uc3QgQ29sb3ImIHRleHRDb2xvciwgY29uc3QgQ29sb3ImIGJh
Y2tncgogICAgIAogICAgIC8vIElmIHRoZXJlJ3Mgbm90IHZlcnkgbXVjaCBjb250cmFzdCBiZXR3
ZWVuIHRoZSBkaXNhYmxlZCBjb2xvciBhbmQgdGhlIGJhY2tncm91bmQgY29sb3IsCiAgICAgLy8g
anVzdCBsZWF2ZSB0aGUgdGV4dCBjb2xvciBhbG9uZS4gV2UgZG9uJ3Qgd2FudCB0byBjaGFuZ2Ug
YSBnb29kIGNvbnRyYXN0IGNvbG9yIHNjaGVtZSBzbyB0aGF0IGl0IGhhcyByZWFsbHkgYmFkIGNv
bnRyYXN0LgotICAgIC8vIElmIHRoZSB0aGUgY29udHJhc3Qgd2FzIGFscmVhZHkgcG9vciwgdGhl
biBpdCBkb2Vzbid0IGRvIGFueSBnb29kIHRvIGNoYW5nZSBpdCB0byBhIGRpZmZlcmVudCBwb29y
IGNvbnRyYXN0IGNvbG9yIHNjaGVtZS4KKyAgICAvLyBJZiB0aGUgY29udHJhc3Qgd2FzIGFscmVh
ZHkgcG9vciwgdGhlbiBpdCBkb2Vzbid0IGRvIGFueSBnb29kIHRvIGNoYW5nZSBpdCB0byBhIGRp
ZmZlcmVudCBwb29yIGNvbnRyYXN0IGNvbG9yIHNjaGVtZS4KICAgICBpZiAoZGlmZmVyZW5jZVNx
dWFyZWQoZGlzYWJsZWRDb2xvciwgYmFja2dyb3VuZENvbG9yKSA8IG1pbkNvbG9yQ29udHJhc3RW
YWx1ZSkKICAgICAgICAgcmV0dXJuIHRleHRDb2xvcjsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL0NsYXNzQ2hhbmdlSW52YWxpZGF0aW9uLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL0NsYXNzQ2hhbmdlSW52YWxpZGF0aW9uLmNwcAppbmRleCBkYmEyMzgxNGNmMTNk
NGExNTFmYWQwYWVhOTVlNTlmZGYyNDgxMDUwLi4yYjAwZmZlMzY0ZDg1M2RjNDdkMmY0M2U4ODI5
MTUzMDAzMjk3NGUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9DbGFzc0NoYW5n
ZUludmFsaWRhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvQ2xhc3NDaGFuZ2VJ
bnZhbGlkYXRpb24uY3BwCkBAIC03NCw3ICs3NCw3IEBAIHN0YXRpYyBDbGFzc0NoYW5nZVZlY3Rv
ciBjb21wdXRlQ2xhc3NDaGFuZ2UoY29uc3QgU3BhY2VTcGxpdFN0cmluZyYgb2xkQ2xhc3NlcywK
ICAgICAgICAgY2hhbmdlZENsYXNzZXMuYXBwZW5kKG5ld0NsYXNzZXNbaV0uaW1wbCgpKTsKICAg
ICB9CiAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG9sZFNpemU7ICsraSkgewotICAgICAg
ICAvLyBJZiB0aGUgYml0IGlzIG5vdCBzZXQgdGhlIHRoZSBjb3JyZXNwb25kaW5nIGNsYXNzIGhh
cyBiZWVuIHJlbW92ZWQuCisgICAgICAgIC8vIElmIHRoZSBiaXQgaXMgbm90IHNldCB0aGUgY29y
cmVzcG9uZGluZyBjbGFzcyBoYXMgYmVlbiByZW1vdmVkLgogICAgICAgICBpZiAocmVtYWluaW5n
Q2xhc3NCaXRzLnF1aWNrR2V0KGkpKQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIGNo
YW5nZWRDbGFzc2VzLmFwcGVuZChvbGRDbGFzc2VzW2ldLmltcGwoKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1N0eWxlU2NvcGUuY3BwCmluZGV4IDE3NjkwY2NkNjc3NzljMjNiOTM3NzYzMDg0NDU0NjJkN2Fh
OTIyZGQuLjUwMTZlZWI3NzBlZWYzZGFmNTUxZmJkNTQ3MzdkZjU0MzM2YzA0MjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL1N0eWxlU2NvcGUuY3BwCkBAIC02MDgsNyArNjA4LDcgQEAgdm9pZCBTY29wZTo6
ZGlkQ2hhbmdlU3R5bGVTaGVldEVudmlyb25tZW50KCkKIHsKICAgICBpZiAoIW1fc2hhZG93Um9v
dCkgewogICAgICAgICBmb3IgKGF1dG8qIGRlc2NlbmRhbnRTaGFkb3dSb290IDogbV9kb2N1bWVu
dC5pbkRvY3VtZW50U2hhZG93Um9vdHMoKSkgewotICAgICAgICAgICAgLy8gU3R5bGVzaGVldHMg
aXMgYXV0aG9yIHNoYWRvdyByb290cyBhcmUgYXJlIHBvdGVudGlhbGx5IGFmZmVjdGVkLgorICAg
ICAgICAgICAgLy8gU3R5bGVzaGVldHMgaXMgYXV0aG9yIHNoYWRvdyByb290cyBhcmUgcG90ZW50
aWFsbHkgYWZmZWN0ZWQuCiAgICAgICAgICAgICBpZiAoZGVzY2VuZGFudFNoYWRvd1Jvb3QtPm1v
ZGUoKSAhPSBTaGFkb3dSb290TW9kZTo6VXNlckFnZW50KQogICAgICAgICAgICAgICAgIGRlc2Nl
bmRhbnRTaGFkb3dSb290LT5zdHlsZVNjb3BlKCkuc2NoZWR1bGVVcGRhdGUoVXBkYXRlVHlwZTo6
Q29udGVudHNPckludGVycHJldGF0aW9uKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0FsdEdseXBoRGVmRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHQWx0R2x5cGhEZWZFbGVtZW50LmNwcAppbmRleCA5MWY4ODc5ZjNiMWI0MGM0NjU5Yjll
NTczZGQ2M2Y0ZTI5MDM0ZGFmLi5iZTY5MGVjMDI3Mjc2MTEwODYyOTc0ODE3NDgyODhmNjc3YjU4
ZDA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQWx0R2x5cGhEZWZFbGVtZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQWx0R2x5cGhEZWZFbGVtZW50LmNwcApA
QCAtNjUsNyArNjUsNyBAQCBib29sIFNWR0FsdEdseXBoRGVmRWxlbWVudDo6aGFzVmFsaWRHbHlw
aEVsZW1lbnRzKFZlY3RvcjxTdHJpbmc+JiBnbHlwaE5hbWVzKSBjbwogICAgIC8vIGVsZW1lbnQg
c3Vycm91bmRpbmcgdGhvc2UgY2hhcmFjdGVycy4KICAgICAvLwogICAgIC8vIFRoZSBzcGVjIGRv
ZXNuJ3QgdGVsbCBob3cgdG8gZGVhbCB3aXRoIHRoZSBtaXhpbmcgb2YgPGdseXBoUmVmPiBhbmQg
PGFsdEdseUl0ZW0+LgotICAgIC8vIEhvd2V2ZXIsIHdlIGRldGVybWluZSBjb250ZW50IG1vZGVs
IGJ5IHRoZSB0aGUgdHlwZSBvZiB0aGUgZmlyc3QgYXBwZWFyaW5nIGVsZW1lbnQKKyAgICAvLyBI
b3dldmVyLCB3ZSBkZXRlcm1pbmUgY29udGVudCBtb2RlbCBieSB0aGUgdHlwZSBvZiB0aGUgZmly
c3QgYXBwZWFyaW5nIGVsZW1lbnQKICAgICAvLyBqdXN0IGxpa2UgT3BlcmEgMTEgZG9lcy4gQWZ0
ZXIgdGhlIGNvbnRlbnQgbW9kZWwgaXMgZGV0ZXJtaW5lZCB3ZSBza2lwIGVsZW1lbnRzCiAgICAg
Ly8gd2hpY2ggZG9uJ3QgY29tZm9ybSB0byBpdC4gRm9yIGV4YW1wbGU6CiAgICAgLy8gYS4gICAg
PGFsdEdseXBoRGVmPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9j
YXB0dXJlL2pzb24uaHBwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYXB0dXJlL2pz
b24uaHBwCmluZGV4IDMwNWIwMDhiMGU1ZTUwYTJiZWRhZWM2NTQ0OTQ3NzliYzIzMzMwNWYuLjdj
ODY5Nzg3ZjE5Y2M2YzIzYjQyMWY5YzQwYWEwMTU0MzMyYWUxYTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FwdHVyZS9qc29uLmhwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL2NhcHR1cmUvanNvbi5ocHAKQEAgLTE4Myw3ICsxODMsNyBAQCBl
bnVtIGNsYXNzIHZhbHVlX3QgOiB1aW50OF90CiAgICAgbnVtYmVyX2ludGVnZXIsICAvLy88IG51
bWJlciB2YWx1ZSAoc2lnbmVkIGludGVnZXIpCiAgICAgbnVtYmVyX3Vuc2lnbmVkLCAvLy88IG51
bWJlciB2YWx1ZSAodW5zaWduZWQgaW50ZWdlcikKICAgICBudW1iZXJfZmxvYXQsICAgIC8vLzwg
bnVtYmVyIHZhbHVlIChmbG9hdGluZy1wb2ludCkKLSAgICBkaXNjYXJkZWQgICAgICAgIC8vLzwg
ZGlzY2FyZGVkIGJ5IHRoZSB0aGUgcGFyc2VyIGNhbGxiYWNrIGZ1bmN0aW9uCisgICAgZGlzY2Fy
ZGVkICAgICAgICAvLy88IGRpc2NhcmRlZCBieSB0aGUgcGFyc2VyIGNhbGxiYWNrIGZ1bmN0aW9u
CiB9OwogCiAvKiEKQEAgLTExMjcxLDcgKzExMjcxLDcgQEAgYmFzaWNfanNvbl9wYXJzZXJfNzQ6
CiAgICAgICAgIG51bWJlciB0eXBlIChlaXRoZXIgaW50ZWdlciwgdW5zaWduZWQgaW50ZWdlciBv
ciBmbG9hdGluZyBwb2ludCksCiAgICAgICAgIHdoaWNoIGlzIHBhc3NlZCBiYWNrIHRvIHRoZSBj
YWxsZXIgdmlhIHRoZSByZXN1bHQgcGFyYW1ldGVyLgogCi0gICAgICAgIGludGVncmFsIG51bWJl
cnMgdGhhdCBkb24ndCBmaXQgaW50byB0aGUgdGhlIHJhbmdlIG9mIHRoZSByZXNwZWN0aXZlCisg
ICAgICAgIGludGVncmFsIG51bWJlcnMgdGhhdCBkb24ndCBmaXQgaW50byB0aGUgcmFuZ2Ugb2Yg
dGhlIHJlc3BlY3RpdmUKICAgICAgICAgdHlwZSBhcmUgcGFyc2VkIGFzIG51bWJlcl9mbG9hdF90
CiAKICAgICAgICAgZmxvYXRpbmctcG9pbnQgdmFsdWVzIGRvIG5vdCBzYXRpc2Z5IHN0ZDo6aXNm
aW5pdGUgcHJlZGljYXRlCkBAIC0xMjMxOCw3ICsxMjMxOCw3IEBAIGJhc2ljX2pzb25fcGFyc2Vy
Xzc0OgogCiAgICAgVXNlcyBhIEpTT04gcG9pbnRlciB0byByZXRyaWV2ZSBhIHJlZmVyZW5jZSB0
byB0aGUgcmVzcGVjdGl2ZSBKU09OIHZhbHVlLgogICAgIE5vIGJvdW5kIGNoZWNraW5nIGlzIHBl
cmZvcm1lZC4gVGhlIGZ1bmN0aW9uIGRvZXMgbm90IGNoYW5nZSB0aGUgSlNPTgotICAgIHZhbHVl
OyBubyBgbnVsbGAgdmFsdWVzIGFyZSBjcmVhdGVkLiBJbiBwYXJ0aWN1bGFyLCB0aGUgdGhlIHNw
ZWNpYWwgdmFsdWUKKyAgICB2YWx1ZTsgbm8gYG51bGxgIHZhbHVlcyBhcmUgY3JlYXRlZC4gSW4g
cGFydGljdWxhciwgdGhlIHNwZWNpYWwgdmFsdWUKICAgICBgLWAgeWllbGRzIGFuIGV4Y2VwdGlv
bi4KIAogICAgIEBwYXJhbVtpbl0gcHRyICBKU09OIHBvaW50ZXIgdG8gdGhlIGRlc2lyZWQgZWxl
bWVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNwcAppbmRleCA4NWYy
NmEyY2I5NTlhZDgxMTNiODljMTViMmVhMjFlMmMwMmJkZjdjLi4xNzVjMTVlYTMwZTQ3ZDA0OTY3
YTFjYzA2M2E1ZWJhYjVlZGE0YzBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3Jt
L0lQQy9Db25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9Db25u
ZWN0aW9uLmNwcApAQCAtNzk0LDcgKzc5NCw3IEBAIHZvaWQgQ29ubmVjdGlvbjo6Y29ubmVjdGlv
bkRpZENsb3NlKCkKIAogICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbcHJvdGVjdGVkVGhp
cyA9IG1ha2VSZWYoKnRoaXMpXSgpIG11dGFibGUgewogICAgICAgICAvLyBJZiB0aGUgY29ubmVj
dGlvbiBoYXMgYmVlbiBleHBsaWNpdGx5IGludmFsaWRhdGVkIGJlZm9yZSBkaXNwYXRjaENvbm5l
Y3Rpb25EaWRDbG9zZSB3YXMgY2FsbGVkLAotICAgICAgICAvLyB0aGVuIHRoZSB0aGUgY29ubmVj
dGlvbiB3aWxsIGJlIGludmFsaWQgaGVyZS4KKyAgICAgICAgLy8gdGhlbiB0aGUgY29ubmVjdGlv
biB3aWxsIGJlIGludmFsaWQgaGVyZS4KICAgICAgICAgaWYgKCFwcm90ZWN0ZWRUaGlzLT5pc1Zh
bGlkKCkpCiAgICAgICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCmluZGV4IDg5NjEyNTcyNGIwNzQ2MGIwNGQ3NmJkODMw
NjlmM2Y5OGNjZDg5NmYuLjYxNTgxZjM4YjA3NzQ2ODExZTkxZWE4NDdkYmM2OTBlNzk3YzJlYWYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcu
bW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQpA
QCAtMjY5Myw3ICsyNjkzLDcgQEAgLSAodm9pZClfa2V5Ym9hcmRXaWxsSGlkZTooTlNOb3RpZmlj
YXRpb24gKilub3RpZmljYXRpb24KIHsKICAgICAvLyBJZ25vcmUga2V5Ym9hcmQgd2lsbCBoaWRl
IG5vdGlmaWNhdGlvbnMgc2VudCBkdXJpbmcgcm90YXRpb24uIFRoZXkncmUganVzdCB0aGVyZSBm
b3IKICAgICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSByZWFzb25zIGFuZCBwcm9jZXNzaW5n
IHRoZSB3aWxsIGhpZGUgbm90aWZpY2F0aW9uIHdvdWxkCi0gICAgLy8gdGVtcG9yYXJpbHkgc2Ny
ZXcgdXAgdGhlIHRoZSB1bm9ic2N1cmVkIHZpZXcgYXJlYS4KKyAgICAvLyB0ZW1wb3JhcmlseSBz
Y3JldyB1cCB0aGUgdW5vYnNjdXJlZCB2aWV3IGFyZWEuCiAgICAgaWYgKFtbVUlQZXJpcGhlcmFs
SG9zdCBzaGFyZWRJbnN0YW5jZV0gcm90YXRpb25TdGF0ZV0pCiAgICAgICAgIHJldHVybjsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggMWVmMTM5MmYxZTI0
YzBjNTBiZmUzNjQ5YWE5M2U0ODA2NDhlNzg0Zi4uNGY3ZDhlNzNhZDI1ODE3MDI3OTBlZjYyMDlk
ODVmOWM3NTg0N2YxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
CkBAIC02MDAwLDcgKzYwMDAsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cnVuTW9kYWwoKQogICAg
IG1fcHJvY2Vzcy0+cmVzcG9uc2l2ZW5lc3NUaW1lcigpLnN0b3AoKTsKIAogICAgIC8vIE91ciBD
b25uZWN0aW9uJ3MgcnVuIGxvb3AgbWlnaHQgaGF2ZSBtb3JlIG1lc3NhZ2VzIHdhaXRpbmcgdG8g
YmUgaGFuZGxlZCBhZnRlciB0aGlzIFJ1bk1vZGFsIG1lc3NhZ2UuCi0gICAgLy8gVG8gbWFrZSBz
dXJlIHRoZXkgYXJlIGhhbmRsZWQgaW5zaWRlIG9mIHRoZSB0aGUgbmVzdGVkIG1vZGFsIHJ1biBs
b29wIHdlIG11c3QgZmlyc3Qgc2lnbmFsIHRoZSBDb25uZWN0aW9uJ3MKKyAgICAvLyBUbyBtYWtl
IHN1cmUgdGhleSBhcmUgaGFuZGxlZCBpbnNpZGUgb2YgdGhlIG5lc3RlZCBtb2RhbCBydW4gbG9v
cCB3ZSBtdXN0IGZpcnN0IHNpZ25hbCB0aGUgQ29ubmVjdGlvbidzCiAgICAgLy8gcnVuIGxvb3Ag
c28gd2UncmUgZ3VhcmFudGVlZCB0aGF0IGl0IGhhcyBhIGNoYW5jZSB0byB3YWtlIHVwLgogICAg
IC8vIFNlZSBodHRwOi8vd2Via2l0Lm9yZy9iLzg5NTkwIGZvciBtb3JlIGRpc2N1c3Npb24uCiAg
ICAgbV9wcm9jZXNzLT5jb25uZWN0aW9uKCktPndha2VVcFJ1bkxvb3AoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XZWJJbnNwZWN0b3JQcm94eU1hYy5tbSBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XZWJJbnNwZWN0b3JQcm94eU1hYy5tbQppbmRleCBi
NGZjMWFkZGQ3M2UyYzAzNGI3ZDg5Mzg0MmQwOTgzYjIwNjQ2NmM5Li5iMDIzZmQwZDM5ZjZlZjg1
ZTc0NzBiMGMyMWM2YTFiNDE2NjZhMzBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9tYWMvV2ViSW5zcGVjdG9yUHJveHlNYWMubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvbWFjL1dlYkluc3BlY3RvclByb3h5TWFjLm1tCkBAIC01NjAsNyArNTYwLDcgQEAgdm9p
ZCBXZWJJbnNwZWN0b3JQcm94eTo6aW5zcGVjdGVkVmlld0ZyYW1lRGlkQ2hhbmdlKENHRmxvYXQg
Y3VycmVudERpbWVuc2lvbikKICAgICAgICAgQ0dGbG9hdCBpbnNwZWN0b3JXaWR0aCA9IEluc3Bl
Y3RvckZyb250ZW5kQ2xpZW50TG9jYWw6OmNvbnN0cmFpbmVkQXR0YWNoZWRXaW5kb3dXaWR0aChj
dXJyZW50RGltZW5zaW9uLCBwYXJlbnRXaWR0aCk7CiAKICAgICAgICAgLy8gUHJlc2VydmUgdGhl
IHRvcCBwb3NpdGlvbiBvZiB0aGUgaW5zcGVjdGVkIHZpZXcgc28gYmFubmVycyBpbiBTYWZhcmkg
c3RpbGwgd29yay4gQnV0IGRvbid0IHVzZSB0aGF0Ci0gICAgICAgIC8vIHRvcCBwb3NpdGlvbiBm
b3IgdGhlIGluc3BlY3RvciB2aWV3IHNpbmNlIHRoZSBiYW5uZXJzIG9ubHkgc3RyZXRjaCBhcyB3
aWRlIGFzIHRoZSB0aGUgaW5zcGVjdGVkIHZpZXcuCisgICAgICAgIC8vIHRvcCBwb3NpdGlvbiBm
b3IgdGhlIGluc3BlY3RvciB2aWV3IHNpbmNlIHRoZSBiYW5uZXJzIG9ubHkgc3RyZXRjaCBhcyB3
aWRlIGFzIHRoZSBpbnNwZWN0ZWQgdmlldy4KICAgICAgICAgaW5zcGVjdGVkVmlld0ZyYW1lID0g
TlNNYWtlUmVjdCgwLCAwLCBwYXJlbnRXaWR0aCAtIGluc3BlY3RvcldpZHRoLCBpbnNwZWN0ZWRW
aWV3VG9wKTsKICAgICAgICAgQ0dGbG9hdCBpbnNldEV4Y2x1ZGluZ0Jhbm5lcnMgPSAwOwogICAg
ICAgICBpZiAoW2luc3BlY3RlZFZpZXcgaXNLaW5kT2ZDbGFzczpbV0tWaWV3IGNsYXNzXV0pCkBA
IC01NzcsNyArNTc3LDcgQEAgdm9pZCBXZWJJbnNwZWN0b3JQcm94eTo6aW5zcGVjdGVkVmlld0Zy
YW1lRGlkQ2hhbmdlKENHRmxvYXQgY3VycmVudERpbWVuc2lvbikKICAgICAgICAgQ0dGbG9hdCBp
bnNwZWN0b3JXaWR0aCA9IEluc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWw6OmNvbnN0cmFpbmVk
QXR0YWNoZWRXaW5kb3dXaWR0aChjdXJyZW50RGltZW5zaW9uLCBwYXJlbnRXaWR0aCk7CiAKICAg
ICAgICAgLy8gUHJlc2VydmUgdGhlIHRvcCBwb3NpdGlvbiBvZiB0aGUgaW5zcGVjdGVkIHZpZXcg
c28gYmFubmVycyBpbiBTYWZhcmkgc3RpbGwgd29yay4gQnV0IGRvbid0IHVzZSB0aGF0Ci0gICAg
ICAgIC8vIHRvcCBwb3NpdGlvbiBmb3IgdGhlIGluc3BlY3RvciB2aWV3IHNpbmNlIHRoZSBiYW5u
ZXJzIG9ubHkgc3RyZXRjaCBhcyB3aWRlIGFzIHRoZSB0aGUgaW5zcGVjdGVkIHZpZXcuCisgICAg
ICAgIC8vIHRvcCBwb3NpdGlvbiBmb3IgdGhlIGluc3BlY3RvciB2aWV3IHNpbmNlIHRoZSBiYW5u
ZXJzIG9ubHkgc3RyZXRjaCBhcyB3aWRlIGFzIHRoZSBpbnNwZWN0ZWQgdmlldy4KICAgICAgICAg
aW5zcGVjdGVkVmlld0ZyYW1lID0gTlNNYWtlUmVjdChpbnNwZWN0b3JXaWR0aCwgMCwgcGFyZW50
V2lkdGggLSBpbnNwZWN0b3JXaWR0aCwgaW5zcGVjdGVkVmlld1RvcCk7CiAgICAgICAgIENHRmxv
YXQgaW5zZXRFeGNsdWRpbmdCYW5uZXJzID0gMDsKICAgICAgICAgaWYgKFtpbnNwZWN0ZWRWaWV3
IGlzS2luZE9mQ2xhc3M6W1dLVmlldyBjbGFzc11dKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0gYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbQppbmRleCA3MDY0YTEyYjJiMjMwMGI4
M2Q0M2Y1NzViODViMzBmZmQ3MzZiODZiLi4zMDJiZGExYTc1NmI3ZjJlM2U4MmRhNzZhMGViZTVh
MDUzZTdlODk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9p
b3MvV2ViUGFnZUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9p
b3MvV2ViUGFnZUlPUy5tbQpAQCAtMTExNCw3ICsxMTE0LDcgQEAgdm9pZCBXZWJQYWdlOjpzZWxl
Y3RXaXRoR2VzdHVyZShjb25zdCBJbnRQb2ludCYgcG9pbnQsIHVpbnQzMl90IGdyYW51bGFyaXR5
LCB1aW4KICAgICBjYXNlIEdlc3R1cmVUeXBlOjpPbmVGaW5nZXJUYXA6CiAgICAgewogICAgICAg
ICBWaXNpYmxlUG9zaXRpb24gcmVzdWx0OwotICAgICAgICAvLyBtb3ZlIHRoZSB0aGUgcG9zaXRp
b24gYXQgdGhlIGVuZCBvZiB0aGUgd29yZAorICAgICAgICAvLyBtb3ZlIHRoZSBwb3NpdGlvbiBh
dCB0aGUgZW5kIG9mIHRoZSB3b3JkCiAgICAgICAgIGlmIChhdEJvdW5kYXJ5T2ZHcmFudWxhcml0
eShwb3NpdGlvbiwgTGluZUdyYW51bGFyaXR5LCBEaXJlY3Rpb25Gb3J3YXJkKSkgewogICAgICAg
ICAgICAgLy8gRG9uJ3QgY3Jvc3MgbGluZSBib3VuZGFyaWVzLgogICAgICAgICAgICAgcmVzdWx0
ID0gcG9zaXRpb247CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3
L1dlYkZyYW1lLmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkZyYW1lLmgK
aW5kZXggYWU0MzNiMjUyOGVlNjhkMjY0MGExMjgyYjIzMGJkZmVlOTdkODEzNS4uNGVkMTQ4YWQz
OWI3NTcwODlkYmMzZmEyODNjZDQ5MWY5YzBhMmE5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvV2ViVmlldy9XZWJGcmFtZS5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYlZpZXcvV2ViRnJhbWUuaApAQCAtMTIzLDcgKzEyMyw3IEBACiAgICAgQGFic3RyYWN0
IExvYWRzIGEgcGFnZSB0byBkaXNwbGF5IGFzIGEgc3Vic3RpdHV0ZSBmb3IgYSBVUkwgdGhhdCBj
b3VsZCBub3QgYmUgcmVhY2hlZC4KICAgICBAZGlzY3Vzc2lvbiBUaGlzIGFsbG93cyBjbGllbnRz
IHRvIGRpc3BsYXkgcGFnZS1sb2FkaW5nIGVycm9ycyBpbiB0aGUgd2VidmlldyBpdHNlbGYuCiAg
ICAgVGhpcyBpcyB0eXBpY2FsbHkgY2FsbGVkIHdoaWxlIHByb2Nlc3NpbmcgdGhlIFdlYkZyYW1l
TG9hZERlbGVnYXRlIG1ldGhvZAotICAgIC13ZWJWaWV3OmRpZEZhaWxQcm92aXNpb25hbExvYWRX
aXRoRXJyb3I6Zm9yRnJhbWU6IG9yIG9uZSBvZiB0aGUgdGhlIFdlYlBvbGljeURlbGVnYXRlIG1l
dGhvZHMKKyAgICAtd2ViVmlldzpkaWRGYWlsUHJvdmlzaW9uYWxMb2FkV2l0aEVycm9yOmZvckZy
YW1lOiBvciBvbmUgb2YgdGhlIFdlYlBvbGljeURlbGVnYXRlIG1ldGhvZHMKICAgICAtd2ViVmll
dzpkZWNpZGVQb2xpY3lGb3JNSU1FVHlwZTpyZXF1ZXN0OmZyYW1lOmRlY2lzaW9uTGlzdGVuZXI6
IG9yCiAgICAgLXdlYlZpZXc6dW5hYmxlVG9JbXBsZW1lbnRQb2xpY3lXaXRoRXJyb3I6ZnJhbWU6
LiBJZiBpdCBpcyBjYWxsZWQgZnJvbSB3aXRoaW4gb25lIG9mIHRob3NlCiAgICAgdGhyZWUgZGVs
ZWdhdGUgbWV0aG9kcyB0aGVuIHRoZSBiYWNrL2ZvcndhcmQgbGlzdCB3aWxsIGJlIG1haW50YWlu
ZWQgYXBwcm9wcmlhdGVseS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YlZpZXcvV2ViSFRNTFZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dl
YkhUTUxWaWV3Lm1tCmluZGV4IDMwM2ZmZjQ3MWI4Mjc3ZmJjZDM3Zjg5MTMyYWZjOWQ0YzAwODZj
MzIuLmYyYTcwYzk1MTkzNWY1MjIxZTJiY2I5NTQ4MmQ2YTYyMjViN2U0ZjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KKysrIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQpAQCAtNjY5Nyw3ICs2
Njk3LDcgQEAgLSAodm9pZClzZXRNYXJrZWRUZXh0OihpZClzdHJpbmcgc2VsZWN0ZWRSYW5nZToo
TlNSYW5nZSluZXdTZWxSYW5nZQogICAgICAgICBOU1N0cmluZyAqcmFuZ2VTdHJpbmcgPSBbc3Ry
aW5nIGF0dHJpYnV0ZTpOU1RleHRJbnB1dFJlcGxhY2VtZW50UmFuZ2VBdHRyaWJ1dGVOYW1lIGF0
SW5kZXg6MCBsb25nZXN0RWZmZWN0aXZlUmFuZ2U6MCBpblJhbmdlOk5TTWFrZVJhbmdlKDAsIFt0
ZXh0IGxlbmd0aF0pXTsKICAgICAgICAgTE9HKFRleHRJbnB1dCwgIiAgICBSZXBsYWNlbWVudFJh
bmdlOiAlQCIsIHJhbmdlU3RyaW5nKTsKICAgICAgICAgLy8gVGhlIEFwcEtpdCBhZGRzIGEgJ3Nl
Y3JldCcgcHJvcGVydHkgdG8gdGhlIHN0cmluZyB0aGF0IGNvbnRhaW5zIHRoZSByZXBsYWNlbWVu
dCByYW5nZS4KLSAgICAgICAgLy8gVGhlIHJlcGxhY2VtZW50IHJhbmdlIGlzIHRoZSByYW5nZSBv
ZiB0aGUgdGhlIHRleHQgdGhhdCBzaG91bGQgYmUgcmVwbGFjZWQgd2l0aCB0aGUgbmV3IHN0cmlu
Zy4KKyAgICAgICAgLy8gVGhlIHJlcGxhY2VtZW50IHJhbmdlIGlzIHRoZSByYW5nZSBvZiB0aGUg
dGV4dCB0aGF0IHNob3VsZCBiZSByZXBsYWNlZCB3aXRoIHRoZSBuZXcgc3RyaW5nLgogICAgICAg
ICBpZiAocmFuZ2VTdHJpbmcpCiAgICAgICAgICAgICByZXBsYWNlbWVudFJhbmdlID0gTlNSYW5n
ZUZyb21TdHJpbmcocmFuZ2VTdHJpbmcpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJWaWV3L1dlYlZpZXcuaCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZp
ZXcvV2ViVmlldy5oCmluZGV4IGUwODliNmNkODkwNjFjNjJlMDQwOTZiYjdjMmYxZTE1NGRjYTk2
NzIuLjY1NDE5ODg1YTkzZjUyMTUwOWVmOGI5YTJmYTNlNDQyYjMwMGFmNzkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5oCisrKyBiL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5oCkBAIC0xNDEsNyArMTQxLDcgQEAgZXh0
ZXJuIE5TU3RyaW5nICpXZWJWaWV3UHJvZ3Jlc3NGaW5pc2hlZE5vdGlmaWNhdGlvbjsKIAogLyoh
CiAgICAgIEBtZXRob2QgY2FuU2hvd01JTUVUeXBlQXNIVE1MOgotICAgICBAYWJzdHJhY3QgQ2hl
Y2tzIGlmIHRoZSB0aGUgTUlNRSB0eXBlIGlzIGEgdHlwZSB0aGF0IHRoZSBXZWJLaXQgd2lsbCBp
bnRlcnByZXQgYXMgSFRNTC4KKyAgICAgQGFic3RyYWN0IENoZWNrcyBpZiB0aGUgTUlNRSB0eXBl
IGlzIGEgdHlwZSB0aGF0IHRoZSBXZWJLaXQgd2lsbCBpbnRlcnByZXQgYXMgSFRNTC4KICAgICAg
QHBhcmFtIE1JTUVUeXBlIFRoZSBNSU1FIHR5cGUgdG8gY2hlY2suCiAgICAgIEByZXN1bHQgWUVT
IGlmIHRoZSBNSU1FdHlwZSBpbiBhbiBIVE1MIHR5cGUuCiAqLwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>322861</attachid>
            <date>2017-10-05 11:07:26 -0700</date>
            <delta_ts>2017-10-09 09:49:18 -0700</delta_ts>
            <desc>Fixed</desc>
            <filename>bug-177933-20171005200723.patch</filename>
            <type>text/plain</type>
            <size>57846</size>
            <attacher name="Robin Morisset">rmorisset</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIyOTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
YzRlNGM5ZDEyODI1OTNlN2FhZGZmNDMwNDEwZTZiOWE3NTc2ZGU1Li5lNTJlMTkwYTI4MGNjZWM0
NDgyZjk3OGYzMmJlOGJhMjg2OGI0ZTY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMSBAQAorMjAxNy0xMC0wNSAgUm9iaW4gTW9yaXNzZXQgIDxybW9yaXNzZXRAYXBwbGUu
Y29tPgorCisgICAgICAgIE1ha2UgdGhlIG5hbWVzIG9mIHRoZSBvcHRpb25zIGNvbnNpc3RlbnQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NzkzMwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEkgYWRkZWQg
YW4gYWxpYXMgc28gdGhlIG9sZCBzcGVsbGluZyBzdGlsbCB3b3Jrcy4KKyAgICAgICAgSSBhbHNv
IGZpeGVkIGEgYnVuY2ggb2YgdHlwb3MgaW4gY29tbWVudHMgYWxsIGFyb3VuZCB0aGUgY29kZWJh
c2UuCisKKyAgICAgICAgKiBiMy9CM0xvd2VyVG9BaXIuY3BwOgorICAgICAgICAqIGRmZy9ERkdC
eXRlQ29kZVBhcnNlci5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6Qnl0ZUNvZGVQYXJzZXI6OnBh
cnNlQmxvY2spOgorICAgICAgICAqIGRmZy9ERkdJbnRlZ2VyUmFuZ2VPcHRpbWl6YXRpb25QaGFz
ZS5jcHA6CisgICAgICAgICogZGZnL0RGR09wZXJhdGlvbnMuaDoKKyAgICAgICAgKiBkZmcvREZH
U1NBQ29udmVyc2lvblBoYXNlLmg6CisgICAgICAgICogZGZnL0RGR1NwZWN1bGF0aXZlSklULmg6
CisgICAgICAgICogZnRsL0ZUTExvd2VyREZHVG9CMy5jcHA6CisgICAgICAgIChKU0M6OkZUTDo6
REZHOjpMb3dlckRGR1RvQjM6Omxvd2VyKToKKyAgICAgICAgKiBmdGwvRlRMT1NSRW50cnkuY3Bw
OgorICAgICAgICAoSlNDOjpGVEw6OnByZXBhcmVPU1JFbnRyeSk6CisgICAgICAgICogaml0L0Nh
bGxGcmFtZVNodWZmbGVyLmNwcDoKKyAgICAgICAgKEpTQzo6Q2FsbEZyYW1lU2h1ZmZsZXI6OnBy
ZXBhcmVGb3JUYWlsQ2FsbCk6CisgICAgICAgICogcGFyc2VyL05vZGVzLmg6CisgICAgICAgICog
cGFyc2VyL1BhcnNlci5jcHA6CisgICAgICAgIChKU0M6OlBhcnNlcjxMZXhlclR5cGU+OjpwYXJz
ZUV4cG9ydERlY2xhcmF0aW9uKToKKyAgICAgICAgKiBydW50aW1lL09wdGlvbnMuaDoKKwogMjAx
Ny0xMC0wNSAgU2FhbSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtl
IHN1cmUgYWxsIHByb3RvdHlwZXMgdW5kZXIgcG9seSBwcm90byBnZXQgYWRkZWQgaW50byB0aGUg
Vk0ncyBwcm90b3R5cGUgbWFwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWRlN2Y4MWMyZDY2ZGRkMTNmMjVkYWZl
ZDIyNzIxNWUwYzUzN2QzNS4uYzNjODFlNmY3ZTg2YWY2MzQxNzUxYTA0Yjc2YTY4MzBlMDJkNzM1
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYwIEBACisyMDE3LTEwLTA1ICBSb2JpbiBNb3Jpc3Nl
dCAgPHJtb3Jpc3NldEBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSB0aGUgbmFtZXMgb2YgdGhl
IG9wdGlvbnMgY29uc2lzdGVudCAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3NzkzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIE5vIGZ1bmN0aW9uYWwgY2hhbmdlLCBqdXN0IGZpeGluZyBjb21tZW50cy4K
KworICAgICAgICAqIE1vZHVsZXMvbWVkaWFzb3VyY2UvTWVkaWFTb3VyY2UuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6TWVkaWFTb3VyY2U6OmJ1ZmZlcmVkIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6Ok1lZGlhU291cmNlOjptb25pdG9yU291cmNlQnVmZmVycyk6CisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9BdWRpb0J1ZmZlclNvdXJjZU5vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
QXVkaW9CdWZmZXJTb3VyY2VOb2RlOjpwcm9jZXNzKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3Jp
cHRzL2dlbmVyYXRlLWJpbmRpbmdzLnBsOgorICAgICAgICAqIGNzcy9TdHlsZVJlc29sdmVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmVzb2x2ZXI6OmFkanVzdFJlbmRlclN0eWxlKToK
KyAgICAgICAgKiBlZGl0aW5nL0JyZWFrQmxvY2txdW90ZUNvbW1hbmQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6QnJlYWtCbG9ja3F1b3RlQ29tbWFuZDo6ZG9BcHBseSk6CisgICAgICAgICogZWRp
dGluZy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXBs
YWNlU2VsZWN0aW9uQ29tbWFuZDo6ZG9BcHBseSk6CisgICAgICAgICogZWRpdGluZy9WaXNpYmxl
U2VsZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlZpc2libGVTZWxlY3Rpb246OnNldFN0
YXJ0QW5kRW5kRnJvbUJhc2VBbmRFeHRlbnRSZXNwZWN0aW5nR3JhbnVsYXJpdHkpOgorICAgICAg
ICAqIGVkaXRpbmcvVmlzaWJsZVVuaXRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNsb3Nlc3RX
b3JkQm91bmRhcnlGb3JQb3NpdGlvbik6CisgICAgICAgICogaHRtbC9wYXJzZXIvQXRvbWljSFRN
TFRva2VuLmg6CisgICAgICAgICogaHRtbC9wYXJzZXIvSFRNTERvY3VtZW50UGFyc2VyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxEb2N1bWVudFBhcnNlcjo6ZW5kKToKKyAgICAgICAgKiBp
bnNwZWN0b3IvSW5zcGVjdG9yT3ZlcmxheVBhZ2UuanM6CisgICAgICAgIChyZXNldCk6CisgICAg
ICAgICogcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Vmlld3BvcnRDb25maWd1cmF0aW9uOjpsYXlvdXRXaWR0aCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpWaWV3cG9ydENvbmZpZ3VyYXRpb246OmxheW91dEhlaWdodCBjb25zdCk6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRQb2x5Z29uLmg6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL0luYmFuZFRleHRUcmFja1ByaXZhdGVBVkYuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRjo6cHJvY2Vzc0N1ZUF0dHJp
YnV0ZXMpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3BlcmF0
aW9uLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4
dDNET3BlbkdMLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEOjp0ZXhJ
bWFnZTJEKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvV2lkZ2V0TWFjLm1tOgorICAgICAgICAo
V2ViQ29yZTo6c2FmZVJlbW92ZUZyb21TdXBlcnZpZXcpOgorICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJCbG9ja0Zsb3cuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tGbG93Ojpj
b2xsYXBzZU1hcmdpbnNXaXRoQ2hpbGRJbmZvKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
QmxvY2tGbG93Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJCb3g6OmNvbXB1dGVQb3NpdGlvbmVkTG9naWNhbFdpZHRoUmVwbGFj
ZWQgY29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyT2JqZWN0Ojpwcm9wYWdhdGVSZXBhaW50VG9QYXJlbnRXaXRoT3V0
bGluZUF1dG9JZk5lZWRlZCBjb25zdCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1l
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lOjpkaXNhYmxlZFRleHRDb2xvciBj
b25zdCk6CisgICAgICAgICogc3R5bGUvQ2xhc3NDaGFuZ2VJbnZhbGlkYXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U3R5bGU6OmNvbXB1dGVDbGFzc0NoYW5nZSk6CisgICAgICAgICogc3R5
bGUvU3R5bGVTY29wZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6U2NvcGU6OmRpZENo
YW5nZVN0eWxlU2hlZXRFbnZpcm9ubWVudCk6CisgICAgICAgICogc3ZnL1NWR0FsdEdseXBoRGVm
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdBbHRHbHlwaERlZkVsZW1lbnQ6Omhh
c1ZhbGlkR2x5cGhFbGVtZW50cyBjb25zdCk6CisKIDIwMTctMTAtMDUgIFphbGFuIEJ1anRhcyAg
PHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBNb3ZlIG11bHRpY29sdW1uIGZsb3cgY2xlYXIg
dG8gUmVuZGVyVHJlZVVwZGF0ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZjA4NzljNTFiYTFkMzg3NWI2MTAyNmQy
ZTRkOTcyYTM2NGVhZWVmMy4uMTg2NDEyMzY2OTM5ZmQ4OWRiNTczNTljNjBiNGE3YzRjZjQzOTE0
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxNy0xMC0wNSAgUm9iaW4gTW9yaXNzZXQg
IDxybW9yaXNzZXRAYXBwbGUuY29tPgorCisgICAgICAgIE1ha2UgdGhlIG5hbWVzIG9mIHRoZSBv
cHRpb25zIGNvbnNpc3RlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE3NzkzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2FwdHVyZS9qc29uLmhwcDoKKyAgICAgICAgKiBQ
bGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChJUEM6OkNvbm5lY3Rpb246OmNv
bm5lY3Rpb25EaWRDbG9zZSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZp
ZXcubW06CisgICAgICAgICgtW1dLV2ViVmlldyBfa2V5Ym9hcmRXaWxsSGlkZTpdKToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZVByb3h5OjpydW5Nb2RhbCk6CisgICAgICAgICogVUlQcm9jZXNzL21hYy9XZWJJbnNwZWN0b3JQ
cm94eU1hYy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViSW5zcGVjdG9yUHJveHk6Omluc3BlY3Rl
ZFZpZXdGcmFtZURpZENoYW5nZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9X
ZWJQYWdlSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzZWxlY3RXaXRoR2VzdHVy
ZSk6CisKIDIwMTctMTAtMDUgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAg
ICAgICAgIE1ha2UgTGliV2ViUlRDUHJvdmlkZXIgcG9ydCBhZ25vc3RpYwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvQ2hhbmdlTG9nCmluZGV4IDkzZmM1NGM3NjdkMDI1MGJkNjIxNDYxMDAxNDVkNTVmODJjNTAz
YzEuLjVkOWNkYWQwYmNiZTczOGJhN2Q2NjkyYjg3ZjJmMDhlY2Q5ZDM3MTAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNy0xMC0wNSAgUm9iaW4gTW9y
aXNzZXQgIDxybW9yaXNzZXRAYXBwbGUuY29tPgorCisgICAgICAgIE1ha2UgdGhlIG5hbWVzIG9m
IHRoZSBvcHRpb25zIGNvbnNpc3RlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE3NzkzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogV2ViVmlldy9XZWJGcmFtZS5oOgorICAgICAgICAqIFdlYlZpZXcv
V2ViSFRNTFZpZXcubW06CisgICAgICAgICgtW1dlYkhUTUxWaWV3IHNldE1hcmtlZFRleHQ6c2Vs
ZWN0ZWRSYW5nZTpdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXcuaDoKKwogMjAxNy0xMC0w
NSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBMaWJX
ZWJSVENQcm92aWRlciBwb3J0IGFnbm9zdGljCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYjMvQjNMb3dlclRvQWlyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0xv
d2VyVG9BaXIuY3BwCmluZGV4IDc2NGRiNGNiZDg2OGRkODUwYmQ4YTNhYmQxNDgyYWZhNDIzODQy
ZDkuLmQzOWJhN2I3Nzk2MDgwYTk2ZWI2YmYyODU2ODNhM2QxOWQyM2I5NmIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0xvd2VyVG9BaXIuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy9CM0xvd2VyVG9BaXIuY3BwCkBAIC03NjIsNyArNzYyLDcgQEAgcHJp
dmF0ZToKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAgICAgIC8vIFRoZSB1c2UgY291
bnQgbWlnaHQgYmUgMSBpZiB0aGUgdmFyaWFibGUgaXMgbGl2ZSBhcm91bmQgYSBsb29wLiBXZSBj
YW4gZ3VhcmFudGVlIHRoYXQgd2UKLSAgICAgICAgLy8gcGljayB0aGUgdGhlIHZhcmlhYmxlIHRo
YXQgaXMgbGVhc3QgbGlrZWx5IHRvIHN1ZmZlciB0aGlzIHByb2JsZW0gaWYgd2UgcGljayB0aGUg
b25lIHRoYXQKKyAgICAgICAgLy8gcGljayB0aGUgdmFyaWFibGUgdGhhdCBpcyBsZWFzdCBsaWtl
bHkgdG8gc3VmZmVyIHRoaXMgcHJvYmxlbSBpZiB3ZSBwaWNrIHRoZSBvbmUgdGhhdAogICAgICAg
ICAvLyBpcyBjbG9zZXN0IHRvIHVzIGluIGFuIGlkb20gd2Fsay4gQnkgY29udmVudGlvbiwgd2Ug
c2xpZ2h0bHkgYmlhcyB0aGlzIGluIGZhdm9yIG9mCiAgICAgICAgIC8vIHJldHVybmluZyB0cnVl
LgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFy
c2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3Bw
CmluZGV4IDc1YzFlNTlhOThkYzI1YWViYjAwZTZkYTRiNjNmYmVlYjVmMTM3OTUuLjBjODBjMzYx
MGUyZGFjMDlmZmY4YTQ5MjVmODRmNDRhMGRjNjJjMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwCkBAIC03NTIsNyArNzUyLDcgQEAgcHJp
dmF0ZToKICAgICAKICAgICBOb2RlKiBhZGRUb0dyYXBoKE5vZGUqIG5vZGUpCiAgICAgewotICAg
ICAgICBpZiAoT3B0aW9uczo6dmVyYm9zZURGR0J5dGVDb2RlUGFyc2luZygpKQorICAgICAgICBp
ZiAoT3B0aW9uczo6dmVyYm9zZURGR0J5dGVjb2RlUGFyc2luZygpKQogICAgICAgICAgICAgZGF0
YUxvZygiICAgICAgICBhcHBlbmRlZCAiLCBub2RlLCAiICIsIEdyYXBoOjpvcE5hbWUobm9kZS0+
b3AoKSksICJcbiIpOwogICAgICAgICBtX2N1cnJlbnRCbG9jay0+YXBwZW5kKG5vZGUpOwogICAg
ICAgICBpZiAoY2xvYmJlcnNFeGl0U3RhdGUobV9ncmFwaCwgbm9kZSkpCkBAIC0xMjk2LDcgKzEy
OTYsNyBAQCBCeXRlQ29kZVBhcnNlcjo6VGVybWluYWxpdHkgQnl0ZUNvZGVQYXJzZXI6OmhhbmRs
ZUNhbGwoCiAKICAgICByZWZpbmVTdGF0aWNhbGx5KGNhbGxMaW5rU3RhdHVzLCBjYWxsVGFyZ2V0
KTsKICAgICAKLSAgICBpZiAoT3B0aW9uczo6dmVyYm9zZURGR0J5dGVDb2RlUGFyc2luZygpKQor
ICAgIGlmIChPcHRpb25zOjp2ZXJib3NlREZHQnl0ZWNvZGVQYXJzaW5nKCkpCiAgICAgICAgIGRh
dGFMb2coIiAgICBIYW5kbGluZyBjYWxsIGF0ICIsIGN1cnJlbnRDb2RlT3JpZ2luKCksICI6ICIs
IGNhbGxMaW5rU3RhdHVzLCAiXG4iKTsKICAgICAKICAgICBpZiAoIWNhbGxMaW5rU3RhdHVzLmNh
bk9wdGltaXplKCkpIHsKQEAgLTEzNDYsNyArMTM0Niw3IEBAIEJ5dGVDb2RlUGFyc2VyOjpUZXJt
aW5hbGl0eSBCeXRlQ29kZVBhcnNlcjo6aGFuZGxlVmFyYXJnc0NhbGwoSW5zdHJ1Y3Rpb24qIHBj
LCBOCiAgICAgICAgIG1faW5saW5lU3RhY2tUb3AtPm1fY2FsbExpbmtJbmZvcywgbV9jYWxsQ29u
dGV4dE1hcCk7CiAgICAgcmVmaW5lU3RhdGljYWxseShjYWxsTGlua1N0YXR1cywgY2FsbFRhcmdl
dCk7CiAgICAgCi0gICAgaWYgKE9wdGlvbnM6OnZlcmJvc2VERkdCeXRlQ29kZVBhcnNpbmcoKSkK
KyAgICBpZiAoT3B0aW9uczo6dmVyYm9zZURGR0J5dGVjb2RlUGFyc2luZygpKQogICAgICAgICBk
YXRhTG9nKCIgICAgVmFyYXJncyBjYWxsIGxpbmsgc3RhdHVzIGF0ICIsIGN1cnJlbnRDb2RlT3Jp
Z2luKCksICI6ICIsIGNhbGxMaW5rU3RhdHVzLCAiXG4iKTsKICAgICAKICAgICBpZiAoY2FsbExp
bmtTdGF0dXMuY2FuT3B0aW1pemUoKQpAQCAtMTY4NSw3ICsxNjg1LDcgQEAgdm9pZCBCeXRlQ29k
ZVBhcnNlcjo6aW5saW5lQ2FsbChOb2RlKiBjYWxsVGFyZ2V0Tm9kZSwgaW50IHJlc3VsdE9wZXJh
bmQsIENhbGxWYXIKICAgICAvLyBJZiB0aGVyZSB3YXMgYSByZXR1cm4sIGJ1dCBubyBlYXJseSBy
ZXR1cm5zLCB0aGVuIHdlJ3JlIGRvbmUuIFdlIGFsbG93IHBhcnNpbmcgb2YKICAgICAvLyB0aGUg
Y2FsbGVyIHRvIGNvbnRpbnVlIGluIHdoYXRldmVyIGJhc2ljIGJsb2NrIHdlJ3JlIGluIHJpZ2h0
IG5vdy4KICAgICBpZiAoIWlubGluZVN0YWNrRW50cnkubV9kaWRFYXJseVJldHVybiAmJiBpbmxp
bmVTdGFja0VudHJ5Lm1fZGlkUmV0dXJuKSB7Ci0gICAgICAgIGlmIChPcHRpb25zOjp2ZXJib3Nl
REZHQnl0ZUNvZGVQYXJzaW5nKCkpCisgICAgICAgIGlmIChPcHRpb25zOjp2ZXJib3NlREZHQnl0
ZWNvZGVQYXJzaW5nKCkpCiAgICAgICAgICAgICBkYXRhTG9nKCIgICAgQWxsb3dpbmcgcGFyc2lu
ZyB0byBjb250aW51ZSBpbiBsYXN0IGlubGluZWQgYmxvY2suXG4iKTsKICAgICAgICAgCiAgICAg
ICAgIEFTU0VSVChsYXN0QmxvY2stPmlzRW1wdHkoKSB8fCAhbGFzdEJsb2NrLT50ZXJtaW5hbCgp
KTsKQEAgLTE2OTYsNyArMTY5Niw3IEBAIHZvaWQgQnl0ZUNvZGVQYXJzZXI6OmlubGluZUNhbGwo
Tm9kZSogY2FsbFRhcmdldE5vZGUsIGludCByZXN1bHRPcGVyYW5kLCBDYWxsVmFyCiAgICAgICAg
ICAgICAvLyBGb3IgZGVidWdnaW5nIHB1cnBvc2VzLCBzZXQgdGhlIGJ5dGVjb2RlQmVnaW4uIE5v
dGUgdGhhdCB0aGlzIGRvZXNuJ3QgbWF0dGVyCiAgICAgICAgICAgICAvLyBmb3IgcmVsZWFzZSBi
dWlsZHMgYmVjYXVzZSB0aGlzIGJsb2NrIHdpbGwgbmV2ZXIgc2VydmUgYXMgYSBwb3RlbnRpYWwg
dGFyZ2V0CiAgICAgICAgICAgICAvLyBpbiB0aGUgbGlua2VyJ3MgYmluYXJ5IHNlYXJjaC4KLSAg
ICAgICAgICAgIGlmIChPcHRpb25zOjp2ZXJib3NlREZHQnl0ZUNvZGVQYXJzaW5nKCkpCisgICAg
ICAgICAgICBpZiAoT3B0aW9uczo6dmVyYm9zZURGR0J5dGVjb2RlUGFyc2luZygpKQogICAgICAg
ICAgICAgICAgIGRhdGFMb2coIiAgICAgICAgUmVwdXJwb3NpbmcgbGFzdCBibG9jayBmcm9tICIs
IGxhc3RCbG9jay0+Ynl0ZWNvZGVCZWdpbiwgIiB0byAiLCBtX2N1cnJlbnRJbmRleCwgIlxuIik7
CiAgICAgICAgICAgICBsYXN0QmxvY2stPmJ5dGVjb2RlQmVnaW4gPSBtX2N1cnJlbnRJbmRleDsK
ICAgICAgICAgICAgIGlmIChjYWxsZXJMaW5rYWJpbGl0eSA9PSBDYWxsZXJEb2VzTm9ybWFsTGlu
a2luZykgewpAQCAtMTcxMCw3ICsxNzEwLDcgQEAgdm9pZCBCeXRlQ29kZVBhcnNlcjo6aW5saW5l
Q2FsbChOb2RlKiBjYWxsVGFyZ2V0Tm9kZSwgaW50IHJlc3VsdE9wZXJhbmQsIENhbGxWYXIKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChPcHRpb25zOjp2ZXJib3NlREZHQnl0ZUNv
ZGVQYXJzaW5nKCkpCisgICAgaWYgKE9wdGlvbnM6OnZlcmJvc2VERkdCeXRlY29kZVBhcnNpbmco
KSkKICAgICAgICAgZGF0YUxvZygiICAgIENyZWF0aW5nIG5ldyBibG9jayBhZnRlciBpbmxpbmlu
Zy5cbiIpOwogCiAgICAgLy8gSWYgd2UgZ2V0IHRvIHRoaXMgcG9pbnQgdGhlbiBhbGwgYmxvY2tz
IG11c3QgZW5kIGluIHNvbWUgc29ydCBvZiB0ZXJtaW5hbHMuCkBAIC0yMjI5LDcgKzIyMjksNyBA
QCBib29sIEJ5dGVDb2RlUGFyc2VyOjpoYW5kbGVNaW5NYXgoaW50IHJlc3VsdE9wZXJhbmQsIE5v
ZGVUeXBlIG9wLCBpbnQgcmVnaXN0ZXJPZgogdGVtcGxhdGU8dHlwZW5hbWUgQ2hlY2tzRnVuY3Rv
cj4KIGJvb2wgQnl0ZUNvZGVQYXJzZXI6OmhhbmRsZUludHJpbnNpY0NhbGwoTm9kZSogY2FsbGVl
LCBpbnQgcmVzdWx0T3BlcmFuZCwgSW50cmluc2ljIGludHJpbnNpYywgaW50IHJlZ2lzdGVyT2Zm
c2V0LCBpbnQgYXJndW1lbnRDb3VudEluY2x1ZGluZ1RoaXMsIFNwZWN1bGF0ZWRUeXBlIHByZWRp
Y3Rpb24sIGNvbnN0IENoZWNrc0Z1bmN0b3ImIGluc2VydENoZWNrcykKIHsKLSAgICBpZiAoT3B0
aW9uczo6dmVyYm9zZURGR0J5dGVDb2RlUGFyc2luZygpKQorICAgIGlmIChPcHRpb25zOjp2ZXJi
b3NlREZHQnl0ZWNvZGVQYXJzaW5nKCkpCiAgICAgICAgIGRhdGFMb2coIiAgICAgICBUaGUgaW50
cmluc2ljIGlzICIsIGludHJpbnNpYywgIlxuIik7CiAgICAgCiAgICAgLy8gSXQgc28gaGFwcGVu
cyB0aGF0IHRoZSBjb2RlIGJlbG93IGRvZXNuJ3QgaGFuZGxlIHRoZSBpbnZhbGlkIHJlc3VsdCBj
YXNlLiBXZSBjb3VsZCBmaXggdGhhdCwgYnV0CkBAIC0zMzIzLDcgKzMzMjMsNyBAQCBib29sIEJ5
dGVDb2RlUGFyc2VyOjpoYW5kbGVDb25zdGFudEludGVybmFsRnVuY3Rpb24oCiAgICAgTm9kZSog
Y2FsbFRhcmdldE5vZGUsIGludCByZXN1bHRPcGVyYW5kLCBJbnRlcm5hbEZ1bmN0aW9uKiBmdW5j
dGlvbiwgaW50IHJlZ2lzdGVyT2Zmc2V0LAogICAgIGludCBhcmd1bWVudENvdW50SW5jbHVkaW5n
VGhpcywgQ29kZVNwZWNpYWxpemF0aW9uS2luZCBraW5kLCBTcGVjdWxhdGVkVHlwZSBwcmVkaWN0
aW9uLCBjb25zdCBDaGVja3NGdW5jdG9yJiBpbnNlcnRDaGVja3MpCiB7Ci0gICAgaWYgKE9wdGlv
bnM6OnZlcmJvc2VERkdCeXRlQ29kZVBhcnNpbmcoKSkKKyAgICBpZiAoT3B0aW9uczo6dmVyYm9z
ZURGR0J5dGVjb2RlUGFyc2luZygpKQogICAgICAgICBkYXRhTG9nKCIgICAgSGFuZGxpbmcgY29u
c3RhbnQgaW50ZXJuYWwgZnVuY3Rpb24gIiwgSlNWYWx1ZShmdW5jdGlvbiksICJcbiIpOwogICAg
IAogICAgIC8vIEl0IHNvIGhhcHBlbnMgdGhhdCB0aGUgY29kZSBiZWxvdyBhc3N1bWVzIHRoYXQg
dGhlIHJlc3VsdCBvcGVyYW5kIGlzIHZhbGlkLiBJdCdzIGV4dHJlbWVseQpAQCAtNDI4Miw3ICs0
MjgyLDcgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6cGFyc2VCbG9jayh1bnNpZ25lZCBsaW1pdCkK
ICAgICAgICAgbV9jdXJyZW50SW5zdHJ1Y3Rpb24gPSBjdXJyZW50SW5zdHJ1Y3Rpb247IC8vIFNv
bWUgbWV0aG9kcyB3YW50IHRvIHVzZSB0aGlzLCBhbmQgd2UnZCByYXRoZXIgbm90IHRocmVhZCBp
dCB0aHJvdWdoIGNhbGxzLgogICAgICAgICBPcGNvZGVJRCBvcGNvZGVJRCA9IEludGVycHJldGVy
OjpnZXRPcGNvZGVJRChjdXJyZW50SW5zdHJ1Y3Rpb24tPnUub3Bjb2RlKTsKICAgICAgICAgCi0g
ICAgICAgIGlmIChPcHRpb25zOjp2ZXJib3NlREZHQnl0ZUNvZGVQYXJzaW5nKCkpCisgICAgICAg
IGlmIChPcHRpb25zOjp2ZXJib3NlREZHQnl0ZWNvZGVQYXJzaW5nKCkpCiAgICAgICAgICAgICBk
YXRhTG9nKCIgICAgcGFyc2luZyAiLCBjdXJyZW50Q29kZU9yaWdpbigpLCAiOiAiLCBvcGNvZGVJ
RCwgIlxuIik7CiAgICAgICAgIAogICAgICAgICBpZiAoVU5MSUtFTFkobV9ncmFwaC5jb21waWxh
dGlvbigpKSkgewpAQCAtNjA0NCw5ICs2MDQ0LDkgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6cGFy
c2VCbG9jayh1bnNpZ25lZCBsaW1pdCkKICAgICAgICAgICAgICAgICBvcCA9IE5ld0Z1bmN0aW9u
OwogICAgICAgICAgICAgfQogICAgICAgICAgICAgc2V0KFZpcnR1YWxSZWdpc3RlcihjdXJyZW50
SW5zdHJ1Y3Rpb25bMV0udS5vcGVyYW5kKSwgYWRkVG9HcmFwaChvcCwgT3BJbmZvKGZyb3plbiks
IGdldChWaXJ0dWFsUmVnaXN0ZXIoY3VycmVudEluc3RydWN0aW9uWzJdLnUub3BlcmFuZCkpKSk7
Ci0gICAgICAgICAgICBzdGF0aWNfYXNzZXJ0KE9QQ09ERV9MRU5HVEgob3BfbmV3X2Z1bmMpID09
IE9QQ09ERV9MRU5HVEgob3BfbmV3X2dlbmVyYXRvcl9mdW5jKSwgIlRoZSBsZW5ndGggb2Ygb3Bf
bmV3X2Z1bmMgc2hvdWxkIGVxYXVhbCB0byBvbmUgb2Ygb3BfbmV3X2dlbmVyYXRvcl9mdW5jIik7
Ci0gICAgICAgICAgICBzdGF0aWNfYXNzZXJ0KE9QQ09ERV9MRU5HVEgob3BfbmV3X2Z1bmMpID09
IE9QQ09ERV9MRU5HVEgob3BfbmV3X2FzeW5jX2Z1bmMpLCAiVGhlIGxlbmd0aCBvZiBvcF9uZXdf
ZnVuYyBzaG91bGQgZXFhdWFsIHRvIG9uZSBvZiBvcF9uZXdfYXN5bmNfZnVuYyIpOwotICAgICAg
ICAgICAgc3RhdGljX2Fzc2VydChPUENPREVfTEVOR1RIKG9wX25ld19mdW5jKSA9PSBPUENPREVf
TEVOR1RIKG9wX25ld19hc3luY19nZW5lcmF0b3JfZnVuYyksICJUaGUgbGVuZ3RoIG9mIG9wX25l
d19mdW5jIHNob3VsZCBlcWF1YWwgdG8gb25lIG9mIG9wX25ld19hc3luY19nZW5lcmF0b3JfZnVu
YyIpOworICAgICAgICAgICAgc3RhdGljX2Fzc2VydChPUENPREVfTEVOR1RIKG9wX25ld19mdW5j
KSA9PSBPUENPREVfTEVOR1RIKG9wX25ld19nZW5lcmF0b3JfZnVuYyksICJUaGUgbGVuZ3RoIG9m
IG9wX25ld19mdW5jIHNob3VsZCBiZSBlcXVhbCB0byBvbmUgb2Ygb3BfbmV3X2dlbmVyYXRvcl9m
dW5jIik7CisgICAgICAgICAgICBzdGF0aWNfYXNzZXJ0KE9QQ09ERV9MRU5HVEgob3BfbmV3X2Z1
bmMpID09IE9QQ09ERV9MRU5HVEgob3BfbmV3X2FzeW5jX2Z1bmMpLCAiVGhlIGxlbmd0aCBvZiBv
cF9uZXdfZnVuYyBzaG91bGQgYmUgZXF1YWwgdG8gb25lIG9mIG9wX25ld19hc3luY19mdW5jIik7
CisgICAgICAgICAgICBzdGF0aWNfYXNzZXJ0KE9QQ09ERV9MRU5HVEgob3BfbmV3X2Z1bmMpID09
IE9QQ09ERV9MRU5HVEgob3BfbmV3X2FzeW5jX2dlbmVyYXRvcl9mdW5jKSwgIlRoZSBsZW5ndGgg
b2Ygb3BfbmV3X2Z1bmMgc2hvdWxkIGJlIGVxdWFsIHRvIG9uZSBvZiBvcF9uZXdfYXN5bmNfZ2Vu
ZXJhdG9yX2Z1bmMiKTsKICAgICAgICAgICAgIE5FWFRfT1BDT0RFKG9wX25ld19mdW5jKTsKICAg
ICAgICAgfQogCkBAIC02MDcyLDkgKzYwNzIsOSBAQCBib29sIEJ5dGVDb2RlUGFyc2VyOjpwYXJz
ZUJsb2NrKHVuc2lnbmVkIGxpbWl0KQogICAgICAgICAgICAgfQogICAgICAgICAgICAgc2V0KFZp
cnR1YWxSZWdpc3RlcihjdXJyZW50SW5zdHJ1Y3Rpb25bMV0udS5vcGVyYW5kKSwgYWRkVG9HcmFw
aChvcCwgT3BJbmZvKGZyb3plbiksIGdldChWaXJ0dWFsUmVnaXN0ZXIoY3VycmVudEluc3RydWN0
aW9uWzJdLnUub3BlcmFuZCkpKSk7CiAgICAgCi0gICAgICAgICAgICBzdGF0aWNfYXNzZXJ0KE9Q
Q09ERV9MRU5HVEgob3BfbmV3X2Z1bmNfZXhwKSA9PSBPUENPREVfTEVOR1RIKG9wX25ld19nZW5l
cmF0b3JfZnVuY19leHApLCAiVGhlIGxlbmd0aCBvZiBvcF9uZXdfZnVuY19leHAgc2hvdWxkIGVx
YXVhbCB0byBvbmUgb2Ygb3BfbmV3X2dlbmVyYXRvcl9mdW5jX2V4cCIpOwotICAgICAgICAgICAg
c3RhdGljX2Fzc2VydChPUENPREVfTEVOR1RIKG9wX25ld19mdW5jX2V4cCkgPT0gT1BDT0RFX0xF
TkdUSChvcF9uZXdfYXN5bmNfZnVuY19leHApLCAiVGhlIGxlbmd0aCBvZiBvcF9uZXdfZnVuY19l
eHAgc2hvdWxkIGVxYXVhbCB0byBvbmUgb2Ygb3BfbmV3X2FzeW5jX2Z1bmNfZXhwIik7Ci0gICAg
ICAgICAgICBzdGF0aWNfYXNzZXJ0KE9QQ09ERV9MRU5HVEgob3BfbmV3X2Z1bmNfZXhwKSA9PSBP
UENPREVfTEVOR1RIKG9wX25ld19hc3luY19nZW5lcmF0b3JfZnVuY19leHApLCAiVGhlIGxlbmd0
aCBvZiBvcF9uZXdfZnVuY19leHAgc2hvdWxkIGVxYXVhbCB0byBvbmUgb2Ygb3BfbmV3X2FzeW5j
X2Z1bmNfZXhwIik7CisgICAgICAgICAgICBzdGF0aWNfYXNzZXJ0KE9QQ09ERV9MRU5HVEgob3Bf
bmV3X2Z1bmNfZXhwKSA9PSBPUENPREVfTEVOR1RIKG9wX25ld19nZW5lcmF0b3JfZnVuY19leHAp
LCAiVGhlIGxlbmd0aCBvZiBvcF9uZXdfZnVuY19leHAgc2hvdWxkIGJlIGVxdWFsIHRvIG9uZSBv
ZiBvcF9uZXdfZ2VuZXJhdG9yX2Z1bmNfZXhwIik7CisgICAgICAgICAgICBzdGF0aWNfYXNzZXJ0
KE9QQ09ERV9MRU5HVEgob3BfbmV3X2Z1bmNfZXhwKSA9PSBPUENPREVfTEVOR1RIKG9wX25ld19h
c3luY19mdW5jX2V4cCksICJUaGUgbGVuZ3RoIG9mIG9wX25ld19mdW5jX2V4cCBzaG91bGQgYmUg
ZXF1YWwgdG8gb25lIG9mIG9wX25ld19hc3luY19mdW5jX2V4cCIpOworICAgICAgICAgICAgc3Rh
dGljX2Fzc2VydChPUENPREVfTEVOR1RIKG9wX25ld19mdW5jX2V4cCkgPT0gT1BDT0RFX0xFTkdU
SChvcF9uZXdfYXN5bmNfZ2VuZXJhdG9yX2Z1bmNfZXhwKSwgIlRoZSBsZW5ndGggb2Ygb3BfbmV3
X2Z1bmNfZXhwIHNob3VsZCBiZSBlcXVhbCB0byBvbmUgb2Ygb3BfbmV3X2FzeW5jX2Z1bmNfZXhw
Iik7CiAgICAgICAgICAgICBORVhUX09QQ09ERShvcF9uZXdfZnVuY19leHApOwogICAgICAgICB9
CiAKQEAgLTY0ODgsNyArNjQ4OCw3IEBAIHZvaWQgQnl0ZUNvZGVQYXJzZXI6OnBhcnNlQ29kZUJs
b2NrKCkKICAgICAgICAgICAgIEFTU0VSVChtX2N1cnJlbnRCbG9jay0+aXNFbXB0eSgpIHx8IG1f
Y3VycmVudEJsb2NrLT50ZXJtaW5hbCgpIHx8IChtX2N1cnJlbnRJbmRleCA9PSBjb2RlQmxvY2st
Pmluc3RydWN0aW9ucygpLnNpemUoKSAmJiBpbmxpbmVDYWxsRnJhbWUoKSkgfHwgIXNob3VsZENv
bnRpbnVlUGFyc2luZyk7CiAKICAgICAgICAgICAgIGlmICghc2hvdWxkQ29udGludWVQYXJzaW5n
KSB7Ci0gICAgICAgICAgICAgICAgaWYgKE9wdGlvbnM6OnZlcmJvc2VERkdCeXRlQ29kZVBhcnNp
bmcoKSkKKyAgICAgICAgICAgICAgICBpZiAoT3B0aW9uczo6dmVyYm9zZURGR0J5dGVjb2RlUGFy
c2luZygpKQogICAgICAgICAgICAgICAgICAgICBkYXRhTG9nKCJEb25lIHBhcnNpbmcgIiwgKmNv
ZGVCbG9jaywgIlxuIik7CiAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgfQpA
QCAtNjUwMCw3ICs2NTAwLDcgQEAgdm9pZCBCeXRlQ29kZVBhcnNlcjo6cGFyc2VDb2RlQmxvY2so
KQogICAgIC8vIFNob3VsZCBoYXZlIHJlYWNoZWQgdGhlIGVuZCBvZiB0aGUgaW5zdHJ1Y3Rpb25z
LgogICAgIEFTU0VSVChtX2N1cnJlbnRJbmRleCA9PSBjb2RlQmxvY2stPmluc3RydWN0aW9ucygp
LnNpemUoKSk7CiAgICAgCi0gICAgaWYgKE9wdGlvbnM6OnZlcmJvc2VERkdCeXRlQ29kZVBhcnNp
bmcoKSkKKyAgICBpZiAoT3B0aW9uczo6dmVyYm9zZURGR0J5dGVjb2RlUGFyc2luZygpKQogICAg
ICAgICBkYXRhTG9nKCJEb25lIHBhcnNpbmcgIiwgKmNvZGVCbG9jaywgIiAoZmVsbCBvZmYgZW5k
KVxuIik7CiB9CiAKQEAgLTY1MDksNyArNjUwOSw3IEBAIGJvb2wgQnl0ZUNvZGVQYXJzZXI6OnBh
cnNlKCkKICAgICAvLyBTZXQgZHVyaW5nIGNvbnN0cnVjdGlvbi4KICAgICBBU1NFUlQoIW1fY3Vy
cmVudEluZGV4KTsKICAgICAKLSAgICBpZiAoT3B0aW9uczo6dmVyYm9zZURGR0J5dGVDb2RlUGFy
c2luZygpKQorICAgIGlmIChPcHRpb25zOjp2ZXJib3NlREZHQnl0ZWNvZGVQYXJzaW5nKCkpCiAg
ICAgICAgIGRhdGFMb2coIlBhcnNpbmcgIiwgKm1fY29kZUJsb2NrLCAiXG4iKTsKICAgICAKICAg
ICBtX2RmZ0NvZGVCbG9jayA9IG1fZ3JhcGgubV9wbGFuLnByb2ZpbGVkREZHQ29kZUJsb2NrOwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdJbnRlZ2VyUmFuZ2VPcHRp
bWl6YXRpb25QaGFzZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0ludGVnZXJS
YW5nZU9wdGltaXphdGlvblBoYXNlLmNwcAppbmRleCA0YTM4MzFlYjE2MGRjNDk3NjRlODczOTBl
ODhhZjVhYTk1ZTg2ZTg5Li4zZGJlMTcxZThlNGRkZTg2Mzc2ODEyYWNlYWZjZTc3OTIzYjJjZjJk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0ludGVnZXJSYW5nZU9w
dGltaXphdGlvblBoYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0lu
dGVnZXJSYW5nZU9wdGltaXphdGlvblBoYXNlLmNwcApAQCAtNzk5LDcgKzc5OSw3IEBAIHByaXZh
dGU6CiAgICAgICAgIC8vIGFsbCBwb3NzaWJsZSBpbmVxdWFsaXRpZXMgYmV0d2VlbiB2YXJpYWJs
ZXMgYW5kIGNvbnN0YW50cywgYnV0IHdlIGZvY3VzIG1haW5seSBvbiBjaGVhcAogICAgICAgICAv
LyBjYXNlcyBmb3Igbm93LgogCi0gICAgICAgIC8vIEhlcmUgYXJlIHNvbWUgb2YgdGhlIHRoZSBh
cnJhbmdlbWVudHMgd2UgY2FuIG1lcmdlIHVzZWZ1bGx5IGFzc3VtaW5nIEBjIDwgQGQ6CisgICAg
ICAgIC8vIEhlcmUgYXJlIHNvbWUgb2YgdGhlIGFycmFuZ2VtZW50cyB3ZSBjYW4gbWVyZ2UgdXNl
ZnVsbHkgYXNzdW1pbmcgQGMgPCBAZDoKICAgICAgICAgLy8KICAgICAgICAgLy8gICAgIEB4ID09
IEBjIHx8IEB4ID09IEBkICAgPT4gICBAeCA+PSBjICYmIEB4IDw9IEBkCiAgICAgICAgIC8vICAg
ICBAeCA+PSBAYyB8fCBAeCA8PSBAZCAgID0+ICAgVE9QCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHT3BlcmF0aW9ucy5oCmluZGV4IGUwZGE4MDg4ZWQ0YzU3MjU4OTQwOTM2MjUwYzQ4ZmYz
ZjJhNDljYTguLmIxNjVhOWJjNjBhNjgzZjQ1NWU2MGU3ZmZmYjI4MzZiYjkxMTBlMGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5oCkBAIC00MCw3ICs0MCw3IEBA
IGV4dGVybiAiQyIgewogSlNDZWxsKiBKSVRfT1BFUkFUSU9OIG9wZXJhdGlvblN0cmluZ0Zyb21D
aGFyQ29kZShFeGVjU3RhdGUqLCBpbnQzMl90KSAgV1RGX0lOVEVSTkFMOyAKIEVuY29kZWRKU1Zh
bHVlIEpJVF9PUEVSQVRJT04gb3BlcmF0aW9uU3RyaW5nRnJvbUNoYXJDb2RlVW50eXBlZChFeGVj
U3RhdGUqLCBFbmNvZGVkSlNWYWx1ZSkgIFdURl9JTlRFUk5BTDsKIAotLy8gVGhlc2Ugcm91dGlu
ZXMgYXJlIHByb3ZpZGUgY2FsbGJhY2tzIG91dCB0byBDKysgaW1wbGVtZW50YXRpb25zIG9mIG9w
ZXJhdGlvbnMgdG9vIGNvbXBsZXggdG8gSklULgorLy8gVGhlc2Ugcm91dGluZXMgcHJvdmlkZSBj
YWxsYmFja3Mgb3V0IHRvIEMrKyBpbXBsZW1lbnRhdGlvbnMgb2Ygb3BlcmF0aW9ucyB0b28gY29t
cGxleCB0byBKSVQuCiBKU0NlbGwqIEpJVF9PUEVSQVRJT04gb3BlcmF0aW9uT2JqZWN0Q29uc3Ry
dWN0b3IoRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBFbmNvZGVkSlNWYWx1ZSBlbmNvZGVk
VGFyZ2V0KSBXVEZfSU5URVJOQUw7CiBKU0NlbGwqIEpJVF9PUEVSQVRJT04gb3BlcmF0aW9uQ3Jl
YXRlVGhpcyhFeGVjU3RhdGUqLCBKU09iamVjdCogY29uc3RydWN0b3IsIGludDMyX3QgaW5saW5l
Q2FwYWNpdHkpIFdURl9JTlRFUk5BTDsKIEVuY29kZWRKU1ZhbHVlIEpJVF9PUEVSQVRJT04gb3Bl
cmF0aW9uVG9UaGlzKEV4ZWNTdGF0ZSosIEVuY29kZWRKU1ZhbHVlIGVuY29kZWRPcDEpIFdURl9J
TlRFUk5BTDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU1NBQ29u
dmVyc2lvblBoYXNlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NTQUNvbnZlcnNp
b25QaGFzZS5oCmluZGV4IDAzNzY2ODk2ZmQ0OTE2M2ViYzgzYjFmYmY5ZWYyMWE2ODcwMDhlODAu
LmI4NzViNmQ4MzAzNDRhYjVhMGUzNWVkOGE2NDg2YjNjZjYxM2U5YjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU1NBQ29udmVyc2lvblBoYXNlLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTU0FDb252ZXJzaW9uUGhhc2UuaApAQCAtMzMsNyAr
MzMsNyBAQCBjbGFzcyBHcmFwaDsKIAogLy8gQ29udmVydCBUaHJlYWRlZENQUyBmb3JtIGludG8g
U1NBIGZvcm0uIFRoaXMgcmVzdWx0cyBpbiBhIGZvcm0gdGhhdCBoYXM6CiAvLwotLy8gLSBNaW5p
bWFsIFBoaSdzLiBXZSB1c2UgdGhlIHRoZSBDeXRyb24gZXQgYWwgKFRPUExBUyc5MSkgYWxnb3Jp
dGhtIGZvcgorLy8gLSBNaW5pbWFsIFBoaSdzLiBXZSB1c2UgdGhlIEN5dHJvbiBldCBhbCAoVE9Q
TEFTJzkxKSBhbGdvcml0aG0gZm9yCiAvLyAgIFBoaSBpbnNlcnRpb24uIE1vc3Qgb2YgdGhlIGFs
Z29yaXRobSBpcyBpbXBsZW1lbnRlZCBpbiBTU0FDYWxjdWxhdG9yCiAvLyAgIGFuZCBEb21pbmF0
b3JzLgogLy8KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3Vs
YXRpdmVKSVQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQu
aAppbmRleCAzMTY1YmQwYWI5Nzk4YzA5OGE1MGVmZGNkZGY1NGI5YWIxMjhhNmRiLi4yNTgyMmFl
NDkyNTgyZWJlZjkyZGIxZDkyODFhYmMwOTIwNDFhODcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmgKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5oCkBAIC03NzgsNyArNzc4LDcgQEAgcHVibGlj
OgogICAgIC8vIGEgY2hpbGQsIGFuZCBhcyBzdWNoIHdpbGwgdXNlIHRoZSBzYW1lIEdlbmVyYXRp
b0luZm8pLgogICAgIHZvaWQgdXNlQ2hpbGRyZW4oTm9kZSopOwogCi0gICAgLy8gVGhlc2UgbWV0
aG9kIGNhbGxlZCB0byBpbml0aWFsaXplIHRoZSB0aGUgR2VuZXJhdGlvbkluZm8KKyAgICAvLyBU
aGVzZSBtZXRob2QgY2FsbGVkIHRvIGluaXRpYWxpemUgdGhlIEdlbmVyYXRpb25JbmZvCiAgICAg
Ly8gdG8gZGVzY3JpYmUgdGhlIHJlc3VsdCBvZiBhbiBvcGVyYXRpb24uCiAgICAgdm9pZCBpbnQz
MlJlc3VsdChHUFJSZWcgcmVnLCBOb2RlKiBub2RlLCBEYXRhRm9ybWF0IGZvcm1hdCA9IERhdGFG
b3JtYXRJbnQzMiwgVXNlQ2hpbGRyZW5Nb2RlIG1vZGUgPSBDYWxsVXNlQ2hpbGRyZW4pCiAgICAg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCmluZGV4
IGJlNTg3OTJjM2Y4MDBhYzNhZjhlMWE3MGI2ZTc0NGRkOThmYWQyNjYuLmY1YTM5N2Q4NGVhODIz
ZmJlZGI0MTY3MDkzYmZhMjA3NTg2YjM5ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZnRsL0ZUTExvd2VyREZHVG9CMy5jcHAKQEAgLTM1Myw3ICszNTMsNyBAQCBwdWJsaWM6CiAKICAg
ICAgICAgLy8gTWFrZSBzdXJlIGV2ZXJ5dGhpbmcgaXMgZGVjb3JhdGVkLiBUaGlzIGRvZXMgYSBi
dW5jaCBvZiBkZWZlcnJlZCBkZWNvcmF0aW5nLiBUaGlzIGhhcwogICAgICAgICAvLyB0byBoYXBw
ZW4gbGFzdCBiZWNhdXNlIG91ciBhYnN0cmFjdCBoZWFwcyBhcmUgZ2VuZXJhdGVkIGxhemlseS4g
VGhleSBoYXZlIHRvIGJlCi0gICAgICAgIC8vIGdlbmVyYXRlZCBsYXppbHkgYmVjYXVzZSB3ZSBo
YXZlIGFuIGluZmluaXRlbiBudW1iZXIgb2YgbnVtYmVyZWQsIGluZGV4ZWQsIGFuZAorICAgICAg
ICAvLyBnZW5lcmF0ZWQgbGF6aWx5IGJlY2F1c2Ugd2UgaGF2ZSBhbiBpbmZpbml0ZSBudW1iZXIg
b2YgbnVtYmVyZWQsIGluZGV4ZWQsIGFuZAogICAgICAgICAvLyBhYnNvbHV0ZSBoZWFwcy4gV2Ug
b25seSBiZWNvbWUgYXdhcmUgb2YgdGhlIG9uZXMgd2UgYWN0dWFsbHkgbWVudGlvbiB3aGlsZSBs
b3dlcmluZy4KICAgICAgICAgbV9oZWFwcy5jb21wdXRlUmFuZ2VzQW5kRGVjb3JhdGVJbnN0cnVj
dGlvbnMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExPU1JF
bnRyeS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9TUkVudHJ5LmNwcAppbmRl
eCBiMzJhNTM2Mzc2NzU0MTdmNjNiOTU2MWE2Y2Q2ZWVjMjIzNWZjYzk2Li43MmYwM2M4NThlODk4
YmFmZWJiZjM1ZGM2NTE1ZjQ1MTA1ZjliNzVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvZnRsL0ZUTE9TUkVudHJ5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRs
L0ZUTE9TUkVudHJ5LmNwcApAQCAtNzYsNyArNzYsNyBAQCB2b2lkKiBwcmVwYXJlT1NSRW50cnko
CiAgICAgICAgIEpTVmFsdWUgcmVjb25zdHJ1Y3RlZFZhbHVlID0gdmFsdWVzLmFyZ3VtZW50KGFy
Z3VtZW50KTsKICAgICAgICAgaWYgKHZhbHVlT25TdGFjayA9PSByZWNvbnN0cnVjdGVkVmFsdWUg
fHwgIWFyZ3VtZW50KQogICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGRhdGFMb2coIk1p
c21hdGNoIGJldHdlZW4gcmVjb25zdHJ1Y3RlZCB2YWx1ZXMgYW5kIHRoZSB0aGUgdmFsdWUgb24g
dGhlIHN0YWNrIGZvciBhcmd1bWVudCBhcmciLCBhcmd1bWVudCwgIiBmb3IgIiwgKmVudHJ5Q29k
ZUJsb2NrLCAiIGF0IGJjIyIsIGJ5dGVjb2RlSW5kZXgsICI6XG4iKTsKKyAgICAgICAgZGF0YUxv
ZygiTWlzbWF0Y2ggYmV0d2VlbiByZWNvbnN0cnVjdGVkIHZhbHVlcyBhbmQgdGhlIHZhbHVlIG9u
IHRoZSBzdGFjayBmb3IgYXJndW1lbnQgYXJnIiwgYXJndW1lbnQsICIgZm9yICIsICplbnRyeUNv
ZGVCbG9jaywgIiBhdCBiYyMiLCBieXRlY29kZUluZGV4LCAiOlxuIik7CiAgICAgICAgIGRhdGFM
b2coIiAgICBWYWx1ZSBvbiBzdGFjazogIiwgdmFsdWVPblN0YWNrLCAiXG4iKTsKICAgICAgICAg
ZGF0YUxvZygiICAgIFJlY29uc3RydWN0ZWQgdmFsdWU6ICIsIHJlY29uc3RydWN0ZWRWYWx1ZSwg
IlxuIik7CiAgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0NhbGxGcmFtZVNodWZmbGVyLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvQ2FsbEZyYW1lU2h1ZmZsZXIuY3BwCmluZGV4IGZmYmM3ZTZi
MDI0YTM1YzVhZTAzNjUyZTgxY2NiZWZhMTJlZTc4YmMuLmM4OTRhNTViNDAyN2JkMTljMDJmODQ2
MWFhNTZjMmVhMjUwOTU0ODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQv
Q2FsbEZyYW1lU2h1ZmZsZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvQ2Fs
bEZyYW1lU2h1ZmZsZXIuY3BwCkBAIC0zODQsNyArMzg0LDcgQEAgdm9pZCBDYWxsRnJhbWVTaHVm
Zmxlcjo6cHJlcGFyZUZvclRhaWxDYWxsKCkKICAgICAvLyBtYW51YWxseQogICAgIG1fbmV3RnJh
bWVPZmZzZXQgPSAwOwogI2VsaWYgQ1BVKEFSTSkgfHwgQ1BVKE1JUFMpCi0gICAgLy8gV2UgbG9h
ZCB0aGUgdGhlIGZyYW1lIHBvaW50ZXIgYW5kIGxpbmsgcmVnaXN0ZXIKKyAgICAvLyBXZSBsb2Fk
IHRoZSBmcmFtZSBwb2ludGVyIGFuZCBsaW5rIHJlZ2lzdGVyCiAgICAgLy8gbWFudWFsbHkuIFdl
IGNvdWxkIGFzayB0aGUgYWxnb3JpdGhtIHRvIGxvYWQgdGhlbSBmb3IgdXMsCiAgICAgLy8gYW5k
IGl0IHdvdWxkIGFsbG93IHVzIHRvIHVzZSB0aGUgbGluayByZWdpc3RlciBhcyBhbiBleHRyYQog
ICAgIC8vIHRlbXBvcmFyeSAtIGJ1dCBpdCdkIG1lYW4gdGhhdCB0aGUgZnJhbWUgcG9pbnRlciBj
YW4gYWxzbwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5oCmluZGV4IGQ2ZmVjMzAyZmJj
M2EzMzdiZTM0NDg2MTExMGY0ZDcyY2JhNTQwZTguLjE5NmE3YmE1NGI0ZDkzMWJlZDZjM2JiMGYz
NmFlZTEyZDUxMmZiNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIv
Tm9kZXMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmgKQEAgLTEw
Miw3ICsxMDIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAgIGNsYXNzIFBhcnNlckFyZW5hRnJl
ZWFibGUgewogICAgIHB1YmxpYzoKLSAgICAgICAgLy8gUGFyc2VyQXJlbmFGcmVlYWJsZSBvYmpl
Y3RzIGFyZSBhcmUgZnJlZWQgd2hlbiB0aGUgYXJlbmEgaXMgZGVsZXRlZC4KKyAgICAgICAgLy8g
UGFyc2VyQXJlbmFGcmVlYWJsZSBvYmplY3RzIGFyZSBmcmVlZCB3aGVuIHRoZSBhcmVuYSBpcyBk
ZWxldGVkLgogICAgICAgICAvLyBEZXN0cnVjdG9ycyBhcmUgbm90IGNhbGxlZC4gQ2xpZW50cyBt
dXN0IG5vdCBjYWxsIGRlbGV0ZSBvbiBzdWNoIG9iamVjdHMuCiAgICAgICAgIHZvaWQqIG9wZXJh
dG9yIG5ldyhzaXplX3QsIFBhcnNlckFyZW5hJik7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9wYXJzZXIvUGFyc2VyLmNwcAppbmRleCA3Y2Q4ZGFjYzFhYTg5Y2Y3ZmZjMTBkOTdhZDBiMTY4
MTc1MjAwYTQwLi42ODk1ZjhhYTFiNGUwYzgyMTIxZTJjOWNmZTIzZTg2ZGRiZjQ3NjNiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCkBAIC0zNDcwLDcgKzM0NzAsNyBA
QCB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVTdGF0ZW1lbnQgUGFyc2VyPExleGVy
VHlwZT46OnBhcnNlRXhwb3J0RGVjbGFyYQogICAgICAgICAgICAgc2VtYW50aWNGYWlsSWZUcnVl
KGhhc0tleXdvcmRGb3JMb2NhbEJpbmRpbmdzLCAiQ2Fubm90IHVzZSBrZXl3b3JkIGFzIGV4cG9y
dGVkIHZhcmlhYmxlIG5hbWUiKTsKICAgICAgICAgICAgIC8vIFNpbmNlIHRoaXMgZXhwb3J0IGRl
Y2xhcmF0aW9uIGRvZXMgbm90IGhhdmUgbW9kdWxlIHNwZWNpZmllciBwYXJ0LCBpdCBleHBvcnRz
IHRoZSBsb2NhbCBiaW5kaW5ncy4KICAgICAgICAgICAgIC8vIFdoaWxlIHRoZSBleHBvcnQgZGVj
bGFyYXRpb24gd2l0aCBtb2R1bGUgc3BlY2lmaWVyIGRvZXMgbm90IGhhdmUgYW55IGVmZmVjdCBv
biB0aGUgY3VycmVudCBtb2R1bGUncyBzY29wZSwKLSAgICAgICAgICAgIC8vIHRoZSBleHBvcnQg
bmFtZWQgZGVjbGFyYXRpb24gd2l0aG91dCBtb2R1bGUgc3BlY2lmaWVyIHJlZmVyZW5jZXMgdGhl
IHRoZSBsb2NhbCBiaW5kaW5nIG5hbWVzLgorICAgICAgICAgICAgLy8gdGhlIGV4cG9ydCBuYW1l
ZCBkZWNsYXJhdGlvbiB3aXRob3V0IG1vZHVsZSBzcGVjaWZpZXIgcmVmZXJlbmNlcyB0aGUgbG9j
YWwgYmluZGluZyBuYW1lcy4KICAgICAgICAgICAgIC8vIEZvciBleGFtcGxlLAogICAgICAgICAg
ICAgLy8gICBleHBvcnQgeyBBLCBCLCBDIGFzIEQgfSBmcm9tICJtb2QiCiAgICAgICAgICAgICAv
LyBkb2VzIG5vdCBoYXZlIGVmZmVjdCBvbiB0aGUgY3VycmVudCBtb2R1bGUncyBzY29wZS4gQnV0
LApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9ucy5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9ucy5oCmluZGV4IDQ1YTEwYTgyMmI4
NTMxYTM2ZGNkNGMyNDc4Njc4M2ZkNjgyODBlNGUuLjIwZjc0NWQzMzBkNjZiMDgyY2Q3M2FiYjNk
NzIwZGQwOThiNTQ5YzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L09wdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zLmgK
QEAgLTE2Nyw3ICsxNjcsNyBAQCB0eXBlZGVmIGNvbnN0IGNoYXIqIG9wdGlvblN0cmluZzsKICAg
ICB2KGJvb2wsIGR1bXBERkdGVExHcmFwaEF0RWFjaFBoYXNlLCBmYWxzZSwgTm9ybWFsLCAiZHVt
cHMgdGhlIERGRyBncmFwaCBhdCBlYWNoIHBoYXNlIG9mIERGRyBjb21waWxhdGlvbiB3aGVuIGNv
bXBpbGluZyBGVEwgY29kZSIpIFwKICAgICB2KGJvb2wsIGR1bXBCM0dyYXBoQXRFYWNoUGhhc2Us
IGZhbHNlLCBOb3JtYWwsICJkdW1wcyB0aGUgQjMgZ3JhcGggYXQgZWFjaCBwaGFzZSBvZiBjb21w
aWxhdGlvbiIpIFwKICAgICB2KGJvb2wsIGR1bXBBaXJHcmFwaEF0RWFjaFBoYXNlLCBmYWxzZSwg
Tm9ybWFsLCAiZHVtcHMgdGhlIEFpciBncmFwaCBhdCBlYWNoIHBoYXNlIG9mIGNvbXBpbGF0aW9u
IikgXAotICAgIHYoYm9vbCwgdmVyYm9zZURGR0J5dGVDb2RlUGFyc2luZywgZmFsc2UsIE5vcm1h
bCwgbnVsbHB0cikgXAorICAgIHYoYm9vbCwgdmVyYm9zZURGR0J5dGVjb2RlUGFyc2luZywgZmFs
c2UsIE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoYm9vbCwgc2FmZXBvaW50QmVmb3JlRWFjaFBo
YXNlLCB0cnVlLCBOb3JtYWwsIG51bGxwdHIpIFwKICAgICB2KGJvb2wsIHZlcmJvc2VDb21waWxh
dGlvbiwgZmFsc2UsIE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoYm9vbCwgdmVyYm9zZUZUTENv
bXBpbGF0aW9uLCBmYWxzZSwgTm9ybWFsLCBudWxscHRyKSBcCkBAIC01MTMsNiArNTEzLDcgQEAg
ZW51bSBPcHRpb25FcXVpdmFsZW5jZSB7CiAgICAgdihlbmFibGVEb2xsYXJWTSwgdXNlRG9sbGFy
Vk0sIFNhbWVPcHRpb24pIFwKICAgICB2KGVuYWJsZVdlYkFzc2VtYmx5LCB1c2VXZWJBc3NlbWJs
eSwgU2FtZU9wdGlvbikgXAogICAgIHYoZW5hYmxlQXN5bmNJdGVyYXRvciwgdXNlQXN5bmNJdGVy
YXRvciwgU2FtZU9wdGlvbikgXAorICAgIHYodmVyYm9zZURGR0J5dGVDb2RlUGFyc2luZywgdmVy
Ym9zZURGR0J5dGVjb2RlUGFyc2luZywgU2FtZU9wdGlvbikgXAogCiAKIGNsYXNzIE9wdGlvbnMg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9NZWRpYVNv
dXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL01lZGlhU291cmNl
LmNwcAppbmRleCBjMmNlZmM2OWIwOGFlODBjYTRiNTczYzlmOWYzZTE1ZGQyOTUxMzM2Li5jYmFl
MDg5NTE2ZjU4N2FiNmVlNzE0NDZiYWMzODBhZTA4ZWYzM2NmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL01lZGlhU291cmNlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL01lZGlhU291cmNlLmNwcApAQCAtMTk1LDcgKzE5
NSw3IEBAIHN0ZDo6dW5pcXVlX3B0cjxQbGF0Zm9ybVRpbWVSYW5nZXM+IE1lZGlhU291cmNlOjpi
dWZmZXJlZCgpIGNvbnN0CiAgICAgICAgIGlmIChlbmRlZCAmJiBzb3VyY2VSYW5nZXMubGVuZ3Ro
KCkpCiAgICAgICAgICAgICBzb3VyY2VSYW5nZXMuYWRkKHNvdXJjZVJhbmdlcy5zdGFydChzb3Vy
Y2VSYW5nZXMubGVuZ3RoKCkgLSAxKSwgaGlnaGVzdEVuZFRpbWUpOwogCi0gICAgICAgIC8vIDUu
MyBMZXQgbmV3IGludGVyc2VjdGlvbiByYW5nZXMgZXF1YWwgdGhlIHRoZSBpbnRlcnNlY3Rpb24g
YmV0d2VlbiB0aGUgaW50ZXJzZWN0aW9uIHJhbmdlcyBhbmQgdGhlIHNvdXJjZSByYW5nZXMuCisg
ICAgICAgIC8vIDUuMyBMZXQgbmV3IGludGVyc2VjdGlvbiByYW5nZXMgZXF1YWwgdGhlIGludGVy
c2VjdGlvbiBiZXR3ZWVuIHRoZSBpbnRlcnNlY3Rpb24gcmFuZ2VzIGFuZCB0aGUgc291cmNlIHJh
bmdlcy4KICAgICAgICAgLy8gNS40IFJlcGxhY2UgdGhlIHJhbmdlcyBpbiBpbnRlcnNlY3Rpb24g
cmFuZ2VzIHdpdGggdGhlIG5ldyBpbnRlcnNlY3Rpb24gcmFuZ2VzLgogICAgICAgICBtX2J1ZmZl
cmVkLT5pbnRlcnNlY3RXaXRoKHNvdXJjZVJhbmdlcyk7CiAgICAgfQpAQCAtMzk0LDcgKzM5NCw3
IEBAIHZvaWQgTWVkaWFTb3VyY2U6Om1vbml0b3JTb3VyY2VCdWZmZXJzKCkKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAotICAgIC8vIOKGsyBJZiB0aGUgdGhlIEhUTUxNZWRpYUVsZW1lbnQucmVh
ZHlTdGF0ZSBhdHRyaWJ1dGUgZXF1YWxzIEhBVkVfTk9USElORzoKKyAgICAvLyDihrMgSWYgdGhl
IEhUTUxNZWRpYUVsZW1lbnQucmVhZHlTdGF0ZSBhdHRyaWJ1dGUgZXF1YWxzIEhBVkVfTk9USElO
RzoKICAgICBpZiAobWVkaWFFbGVtZW50KCktPnJlYWR5U3RhdGUoKSA9PSBIVE1MTWVkaWFFbGVt
ZW50OjpIQVZFX05PVEhJTkcpIHsKICAgICAgICAgLy8gMS4gQWJvcnQgdGhlc2Ugc3RlcHMuCiAg
ICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
YXVkaW8vQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmNwcAppbmRleCAxZmEzZDE4NzhiZWE5N2U1ZWI0
ZjIyYmQ1MWU0YjNjNzk0YjIzYWM1Li5jNzFmMzkyOTM0ODFlY2VlOGQ1NWViNzZjNGMzYjU1ZjQw
OGYyZjFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlv
QnVmZmVyU291cmNlTm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9BdWRpb0J1ZmZlclNvdXJjZU5vZGUuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAgdm9pZCBBdWRp
b0J1ZmZlclNvdXJjZU5vZGU6OnByb2Nlc3Moc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykKIAogICAg
IC8vIEFmdGVyIGNhbGxpbmcgc2V0QnVmZmVyKCkgd2l0aCBhIGJ1ZmZlciBoYXZpbmcgYSBkaWZm
ZXJlbnQgbnVtYmVyIG9mIGNoYW5uZWxzLCB0aGVyZSBjYW4gaW4gcmFyZSBjYXNlcyBiZSBhIHNs
aWdodCBkZWxheQogICAgIC8vIGJlZm9yZSB0aGUgb3V0cHV0IGJ1cyBpcyB1cGRhdGVkIHRvIHRo
ZSBuZXcgbnVtYmVyIG9mIGNoYW5uZWxzIGJlY2F1c2Ugb2YgdXNlIG9mIHRyeUxvY2tzKCkgaW4g
dGhlIGNvbnRleHQncyB1cGRhdGluZyBzeXN0ZW0uCi0gICAgLy8gSW4gdGhpcyBjYXNlLCBpZiB0
aGUgdGhlIGJ1ZmZlciBoYXMganVzdCBiZWVuIGNoYW5nZWQgYW5kIHdlJ3JlIG5vdCBxdWl0ZSBy
ZWFkeSB5ZXQsIHRoZW4ganVzdCBvdXRwdXQgc2lsZW5jZS4KKyAgICAvLyBJbiB0aGlzIGNhc2Us
IGlmIHRoZSBidWZmZXIgaGFzIGp1c3QgYmVlbiBjaGFuZ2VkIGFuZCB3ZSdyZSBub3QgcXVpdGUg
cmVhZHkgeWV0LCB0aGVuIGp1c3Qgb3V0cHV0IHNpbGVuY2UuCiAgICAgaWYgKG51bWJlck9mQ2hh
bm5lbHMoKSAhPSBidWZmZXIoKS0+bnVtYmVyT2ZDaGFubmVscygpKSB7CiAgICAgICAgIG91dHB1
dEJ1cy56ZXJvKCk7CiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvZ2VuZXJhdGUtYmluZGluZ3MucGwgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRlLWJpbmRpbmdzLnBsCmluZGV4IDhlZjhlNmZjYWE4ZjA2
OWJjNjgyNTk1ZjM4MWFmMGU0YTE2NTVjNWQuLjIzMDQzZmRhZmE0YTM4NTQzODMyMmU2YWI3YTVm
YTIwNWM0ODU1YjEgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
Z2VuZXJhdGUtYmluZGluZ3MucGwKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy9nZW5lcmF0ZS1iaW5kaW5ncy5wbApAQCAtMjA3LDcgKzIwNyw3IEBAIGZvcmVhY2ggbXkgJGlk
bEZpbGUgKEBzdXBwbGVtZW50ZWRJZGxGaWxlcykgewogICAgICAgICAgICAgICAgIHB1c2goQHsk
dGFyZ2V0RGF0YU5vZGUtPmNvbnN0YW50c30sICRjb25zdGFudCk7CiAgICAgICAgICAgICB9CiAg
ICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBkaWUgIiRpZGxGaWxlIGlzIG5vdCBhIHN1cHBs
ZW1lbnRhbCBkZXBlbmRlbmN5IG9mICR0YXJnZXRJZGxGaWxlLiBUaGVyZSBtYXliZSBhIGJ1ZyBp
biB0aGUgdGhlIHN1cHBsZW1lbnRhbCBkZXBlbmRlbmN5IGdlbmVyYXRvciAocHJlcHJvY2Vzcy1p
ZGxzLnBsKS5cbiI7CisgICAgICAgICAgICBkaWUgIiRpZGxGaWxlIGlzIG5vdCBhIHN1cHBsZW1l
bnRhbCBkZXBlbmRlbmN5IG9mICR0YXJnZXRJZGxGaWxlLiBUaGVyZSBtYXliZSBhIGJ1ZyBpbiB0
aGUgc3VwcGxlbWVudGFsIGRlcGVuZGVuY3kgZ2VuZXJhdG9yIChwcmVwcm9jZXNzLWlkbHMucGwp
LlxuIjsKICAgICAgICAgfQogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNw
cAppbmRleCA1OTkwMDIwYzBhM2Q5MDU0NjNmYjc1MDRlZGRjMTAyNTE0NDA0MjgzLi40NGUzMzQ1
NGQwZjU1ZWI5NTRlMWYyN2M0ODU2MzA2MGUxNzdmYzQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxl
UmVzb2x2ZXIuY3BwCkBAIC0xMDQ4LDcgKzEwNDgsNyBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6OmFk
anVzdFJlbmRlclN0eWxlKFJlbmRlclN0eWxlJiBzdHlsZSwgY29uc3QgUmVuZGVyU3R5bGUmIHBh
cgogICAgIH0KIAogICAgIC8vIElmIHRoZSBpbmhlcml0ZWQgdmFsdWUgb2YganVzdGlmeS1pdGVt
cyBpbmNsdWRlcyB0aGUgJ2xlZ2FjeScga2V5d29yZCwKLSAgICAvLyAnYXV0bycgY29tcHV0ZXMg
dG8gdGhlIHRoZSBpbmhlcml0ZWQgdmFsdWUuIE90aGVyd2lzZSwgJ2F1dG8nIGNvbXB1dGVzIHRv
CisgICAgLy8gJ2F1dG8nIGNvbXB1dGVzIHRvIHRoZSBpbmhlcml0ZWQgdmFsdWUuIE90aGVyd2lz
ZSwgJ2F1dG8nIGNvbXB1dGVzIHRvCiAgICAgLy8gJ25vcm1hbCcuCiAgICAgaWYgKHN0eWxlLmp1
c3RpZnlJdGVtcygpLnBvc2l0aW9uKCkgPT0gSXRlbVBvc2l0aW9uQXV0bykgewogICAgICAgICBp
ZiAocGFyZW50Qm94U3R5bGUtPmp1c3RpZnlJdGVtcygpLnBvc2l0aW9uVHlwZSgpID09IExlZ2Fj
eVBvc2l0aW9uKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9CcmVha0Jsb2Nr
cXVvdGVDb21tYW5kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQnJlYWtCbG9ja3F1b3Rl
Q29tbWFuZC5jcHAKaW5kZXggNTgyMWIwODJkOTY4ZmJjODQ1YTk1MmEzN2FkNGJiN2M4OTkyMmZl
OS4uYWNiYjVkNmFiNDZlMGRhMzY2ZTFkMGFlNjViNjU0YzNmOGU3YmMyZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZWRpdGluZy9CcmVha0Jsb2NrcXVvdGVDb21tYW5kLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL0JyZWFrQmxvY2txdW90ZUNvbW1hbmQuY3BwCkBAIC03NSw3
ICs3NSw3IEBAIHZvaWQgQnJlYWtCbG9ja3F1b3RlQ29tbWFuZDo6ZG9BcHBseSgpCiAgICAgYm9v
bCBpc0xhc3RWaXNQb3NJbk5vZGUgPSBpc0xhc3RWaXNpYmxlUG9zaXRpb25Jbk5vZGUodmlzaWJs
ZVBvcywgdG9wQmxvY2txdW90ZSk7CiAKICAgICAvLyBJZiB0aGUgcG9zaXRpb24gaXMgYXQgdGhl
IGJlZ2lubmluZyBvZiB0aGUgdG9wIHF1b3RlZCBjb250ZW50LCB3ZSBkb24ndCBuZWVkIHRvIGJy
ZWFrIHRoZSBxdW90ZS4KLSAgICAvLyBJbnN0ZWFkLCBpbnNlcnQgdGhlIGJyZWFrIGJlZm9yZSB0
aGUgYmxvY2txdW90ZSwgdW5sZXNzIHRoZSBwb3NpdGlvbiBpcyBhcyB0aGUgZW5kIG9mIHRoZSB0
aGUgcXVvdGVkIGNvbnRlbnQuCisgICAgLy8gSW5zdGVhZCwgaW5zZXJ0IHRoZSBicmVhayBiZWZv
cmUgdGhlIGJsb2NrcXVvdGUsIHVubGVzcyB0aGUgcG9zaXRpb24gaXMgYXMgdGhlIGVuZCBvZiB0
aGUgcXVvdGVkIGNvbnRlbnQuCiAgICAgaWYgKGlzRmlyc3RWaXNpYmxlUG9zaXRpb25Jbk5vZGUo
dmlzaWJsZVBvcywgdG9wQmxvY2txdW90ZSkgJiYgIWlzTGFzdFZpc1Bvc0luTm9kZSkgewogICAg
ICAgICBpbnNlcnROb2RlQmVmb3JlKGJyZWFrTm9kZS5jb3B5UmVmKCksICp0b3BCbG9ja3F1b3Rl
KTsKICAgICAgICAgc2V0RW5kaW5nU2VsZWN0aW9uKFZpc2libGVTZWxlY3Rpb24ocG9zaXRpb25C
ZWZvcmVOb2RlKGJyZWFrTm9kZS5wdHIoKSksIERPV05TVFJFQU0sIGVuZGluZ1NlbGVjdGlvbigp
LmlzRGlyZWN0aW9uYWwoKSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9S
ZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1JlcGxh
Y2VTZWxlY3Rpb25Db21tYW5kLmNwcAppbmRleCBiMmE5OTA1MTgyMmI5ZGIyYjZlOWE1ZDdhOWY2
MDJlZDcwYTU1ZDkwLi5jNDI3ZjEyNGFlZGE1YTUyNzhhMzMzZDlmYTk2NzVmODUyMTgyNzk2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5k
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5k
LmNwcApAQCAtMTE5Miw3ICsxMTkyLDcgQEAgdm9pZCBSZXBsYWNlU2VsZWN0aW9uQ29tbWFuZDo6
ZG9BcHBseSgpCiAgICAgICAgIGlmIChtX3Nob3VsZE1lcmdlRW5kICYmIGRlc3RpbmF0aW9uTm9k
ZSAhPSBlbmNsb3NpbmdJbmxpbmUoZGVzdGluYXRpb25Ob2RlKSAmJiBlbmNsb3NpbmdJbmxpbmUo
ZGVzdGluYXRpb25Ob2RlKS0+bmV4dFNpYmxpbmcoKSkKICAgICAgICAgICAgIGluc2VydE5vZGVC
ZWZvcmUoSFRNTEJSRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KCkpLCAqcmVmTm9kZSk7CiAgICAg
ICAgIAotICAgICAgICAvLyBNZXJnaW5nIHRoZSB0aGUgZmlyc3QgcGFyYWdyYXBoIG9mIGluc2Vy
dGVkIGNvbnRlbnQgd2l0aCB0aGUgY29udGVudCB0aGF0IGNhbWUKKyAgICAgICAgLy8gTWVyZ2lu
ZyB0aGUgZmlyc3QgcGFyYWdyYXBoIG9mIGluc2VydGVkIGNvbnRlbnQgd2l0aCB0aGUgY29udGVu
dCB0aGF0IGNhbWUKICAgICAgICAgLy8gYmVmb3JlIHRoZSBzZWxlY3Rpb24gdGhhdCB3YXMgcGFz
dGVkIGludG8gd291bGQgYWxzbyBtb3ZlIGNvbnRlbnQgYWZ0ZXIgCiAgICAgICAgIC8vIHRoZSBz
ZWxlY3Rpb24gdGhhdCB3YXMgcGFzdGVkIGludG8gaWY6IG9ubHkgb25lIHBhcmFncmFwaCB3YXMg
YmVpbmcgcGFzdGVkLCAKICAgICAgICAgLy8gYW5kIGl0IHdhcyBub3Qgd3JhcHBlZCBpbiBhIGJs
b2NrLCB0aGUgc2VsZWN0aW9uIHRoYXQgd2FzIHBhc3RlZCBpbnRvIGVuZGVkIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9WaXNpYmxlU2VsZWN0aW9uLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvVmlzaWJsZVNlbGVjdGlvbi5jcHAKaW5kZXggMjU4MTc4NTgxMmY4NDRm
YTljYzg4N2Y5OTQwNWEwZDQxOGQ4ZTAxZi4uMTg2NTBhYjM4OWNkYWVmYmNjZDRmYjM3Y2YzMjIw
NDBhZjA4MDdmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9WaXNpYmxlU2Vs
ZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1Zpc2libGVTZWxlY3Rpb24u
Y3BwCkBAIC0yODYsNyArMjg2LDcgQEAgdm9pZCBWaXNpYmxlU2VsZWN0aW9uOjpzZXRTdGFydEFu
ZEVuZEZyb21CYXNlQW5kRXh0ZW50UmVzcGVjdGluZ0dyYW51bGFyaXR5KFRleHQKICAgICAgICAg
ICAgIC8vIEdlbmVyYWwgY2FzZTogU2VsZWN0IHRoZSB3b3JkIHRoZSBjYXJldCBpcyBwb3NpdGlv
bmVkIGluc2lkZSBvZiwgb3IgYXQgdGhlIHN0YXJ0IG9mIChSaWdodFdvcmRJZk9uQm91bmRhcnkp
LgogICAgICAgICAgICAgLy8gRWRnZSBjYXNlOiBJZiB0aGUgY2FyZXQgaXMgYWZ0ZXIgdGhlIGxh
c3Qgd29yZCBpbiBhIHNvZnQtd3JhcHBlZCBsaW5lIG9yIHRoZSBsYXN0IHdvcmQgaW4KICAgICAg
ICAgICAgIC8vIHRoZSBkb2N1bWVudCwgc2VsZWN0IHRoYXQgbGFzdCB3b3JkIChMZWZ0V29yZElm
T25Cb3VuZGFyeSkuCi0gICAgICAgICAgICAvLyBFZGdlIGNhc2U6IElmIHRoZSBjYXJldCBpcyBh
ZnRlciB0aGUgbGFzdCB3b3JkIGluIGEgcGFyYWdyYXBoLCBzZWxlY3QgZnJvbSB0aGUgdGhlIGVu
ZCBvZiB0aGUKKyAgICAgICAgICAgIC8vIEVkZ2UgY2FzZTogSWYgdGhlIGNhcmV0IGlzIGFmdGVy
IHRoZSBsYXN0IHdvcmQgaW4gYSBwYXJhZ3JhcGgsIHNlbGVjdCBmcm9tIHRoZSBlbmQgb2YgdGhl
CiAgICAgICAgICAgICAvLyBsYXN0IHdvcmQgdG8gdGhlIGxpbmUgYnJlYWsgKGFsc28gUmlnaHRX
b3JkSWZPbkJvdW5kYXJ5KTsKICAgICAgICAgICAgIFZpc2libGVQb3NpdGlvbiBzdGFydCA9IFZp
c2libGVQb3NpdGlvbihtX3N0YXJ0LCBtX2FmZmluaXR5KTsKICAgICAgICAgICAgIFZpc2libGVQ
b3NpdGlvbiBvcmlnaW5hbEVuZChtX2VuZCwgbV9hZmZpbml0eSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL1Zpc2libGVVbml0cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL1Zpc2libGVVbml0cy5jcHAKaW5kZXggMTZlOTZhYjE5NjhmMTQ2NGY0NTVlZjBlYzBjNjMy
NzVmYTBmMTZjMy4uNmFiY2Q0Zjk0Y2U1YmFhOWJiYjI2ZjQzNWM4M2E0ZjQyYmRiNzQ3YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9WaXNpYmxlVW5pdHMuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvVmlzaWJsZVVuaXRzLmNwcApAQCAtMTk3MSw3ICsxOTcxLDcg
QEAgVmlzaWJsZVBvc2l0aW9uIGNsb3Nlc3RXb3JkQm91bmRhcnlGb3JQb3NpdGlvbihjb25zdCBW
aXNpYmxlUG9zaXRpb24mIHBvc2l0aW9uKQogewogICAgIFZpc2libGVQb3NpdGlvbiByZXN1bHQ7
CiAKLSAgICAvLyBtb3ZlIHRoZSB0aGUgcG9zaXRpb24gYXQgdGhlIGVuZCBvZiB0aGUgd29yZAor
ICAgIC8vIG1vdmUgdGhlIHBvc2l0aW9uIGF0IHRoZSBlbmQgb2YgdGhlIHdvcmQKICAgICBpZiAo
YXRCb3VuZGFyeU9mR3JhbnVsYXJpdHkocG9zaXRpb24sIExpbmVHcmFudWxhcml0eSwgRGlyZWN0
aW9uRm9yd2FyZCkpIHsKICAgICAgICAgLy8gRG9uJ3QgY3Jvc3MgbGluZSBib3VuZGFyaWVzLgog
ICAgICAgICByZXN1bHQgPSBwb3NpdGlvbjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvcGFyc2VyL0F0b21pY0hUTUxUb2tlbi5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIv
QXRvbWljSFRNTFRva2VuLmgKaW5kZXggZDFmMzA5ZmYxMjVjZDQ4YjFlZTk0MGRmYTczMjc1NGE1
YjZhYWY4OC4uYTA3MGNlNDdmM2JmYmQ5N2U1OWYzNGZkMzQ1NDRhYWU4OThjNmFiYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQXRvbWljSFRNTFRva2VuLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQXRvbWljSFRNTFRva2VuLmgKQEAgLTc4LDcgKzc4
LDcgQEAgcHJpdmF0ZToKIAogICAgIFN0cmluZyBtX2RhdGE7IC8vIENvbW1lbnQKIAotICAgIC8v
IFdlIGRvbid0IHdhbnQgdG8gY29weSB0aGUgdGhlIGNoYXJhY3RlcnMgb3V0IG9mIHRoZSBIVE1M
VG9rZW4sIHNvIHdlIGtlZXAgYSBwb2ludGVyIHRvIGl0cyBidWZmZXIgaW5zdGVhZC4KKyAgICAv
LyBXZSBkb24ndCB3YW50IHRvIGNvcHkgdGhlIGNoYXJhY3RlcnMgb3V0IG9mIHRoZSBIVE1MVG9r
ZW4sIHNvIHdlIGtlZXAgYSBwb2ludGVyIHRvIGl0cyBidWZmZXIgaW5zdGVhZC4KICAgICAvLyBU
aGlzIGJ1ZmZlciBpcyBvd25lZCBieSB0aGUgSFRNTFRva2VuIGFuZCBjYXVzZXMgYSBsaWZldGlt
ZSBkZXBlbmRlbmNlIGJldHdlZW4gdGhlc2Ugb2JqZWN0cy4KICAgICAvLyBGSVhNRTogQWRkIGEg
bWVjaGFuaXNtIGZvciAiaW50ZXJuYWxpemluZyIgdGhlIGNoYXJhY3RlcnMgd2hlbiB0aGUgSFRN
TFRva2VuIGlzIGRlc3Ryb3llZC4KICAgICBjb25zdCBVQ2hhciogbV9leHRlcm5hbENoYXJhY3Rl
cnM7IC8vIENoYXJhY3RlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIv
SFRNTERvY3VtZW50UGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxE
b2N1bWVudFBhcnNlci5jcHAKaW5kZXggZDM4ZGQ5M2E4ZjZlMjc4ZDg0MDZhM2IyOWJkZjgwZGFj
ZTc1Y2M1Yi4uZGNmNDllOTAzMWNmMzdkZWIzOTFiODVlNmQxYmE5NzZiZmQ2YWExNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTERvY3VtZW50UGFyc2VyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MRG9jdW1lbnRQYXJzZXIuY3BwCkBA
IC00MDIsNyArNDAyLDcgQEAgdm9pZCBIVE1MRG9jdW1lbnRQYXJzZXI6OmVuZCgpCiAgICAgQVNT
RVJUKCFpc0RldGFjaGVkKCkpOwogICAgIEFTU0VSVCghaXNTY2hlZHVsZWRGb3JSZXN1bWUoKSk7
CiAKLSAgICAvLyBJbmZvcm1zIHRoZSB0aGUgcmVzdCBvZiBXZWJDb3JlIHRoYXQgcGFyc2luZyBp
cyByZWFsbHkgZmluaXNoZWQgKGFuZCBkZWxldGVzIHRoaXMpLgorICAgIC8vIEluZm9ybXMgdGhl
IHJlc3Qgb2YgV2ViQ29yZSB0aGF0IHBhcnNpbmcgaXMgcmVhbGx5IGZpbmlzaGVkIChhbmQgZGVs
ZXRlcyB0aGlzKS4KICAgICBtX3RyZWVCdWlsZGVyLT5maW5pc2hlZCgpOwogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yT3ZlcmxheVBhZ2UuanMgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yT3ZlcmxheVBhZ2UuanMKaW5kZXggZmE3
MTk4OTY4ZDk0NmQ3YzA1YTIyOTE5ODIxYjllYWMxM2QxMjhjZS4uMzM2YTU5MGIzNDE0MWQ3OTk5
NjNmMjI5N2RkZGVlNmQxNDNiYmUwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3Rvck92ZXJsYXlQYWdlLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JPdmVybGF5UGFnZS5qcwpAQCAtMTcyLDcgKzE3Miw3IEBAIGZ1bmN0aW9uIHJl
c2V0KHJlc2V0RGF0YSkKICAgICBjYW52YXMuc3R5bGUuaGVpZ2h0ID0gdmlld3BvcnRTaXplLmhl
aWdodCArICJweCI7CiAgICAgY29udGV4dC5zY2FsZShkZXZpY2VTY2FsZUZhY3RvciwgZGV2aWNl
U2NhbGVGYWN0b3IpOwogCi0gICAgLy8gV2UgYXZvaWQgZ2V0dGluZyB0aGUgdGhlIGNvbnRleHQg
Zm9yIHRoZSBwYWludCByZWN0cyBjYW52YXMgdW50aWwgd2UgbmVlZCB0byBwYWludCwgdG8gYXZv
aWQgYmFja2luZyBzdG9yZSBhbGxvY2F0aW9uLgorICAgIC8vIFdlIGF2b2lkIGdldHRpbmcgdGhl
IGNvbnRleHQgZm9yIHRoZSBwYWludCByZWN0cyBjYW52YXMgdW50aWwgd2UgbmVlZCB0byBwYWlu
dCwgdG8gYXZvaWQgYmFja2luZyBzdG9yZSBhbGxvY2F0aW9uLgogICAgIHBhaW50UmVjdHNDYW52
YXMud2lkdGggPSBkZXZpY2VTY2FsZUZhY3RvciAqIHZpZXdwb3J0U2l6ZS53aWR0aDsKICAgICBw
YWludFJlY3RzQ2FudmFzLmhlaWdodCA9IGRldmljZVNjYWxlRmFjdG9yICogdmlld3BvcnRTaXpl
LmhlaWdodDsKICAgICBwYWludFJlY3RzQ2FudmFzLnN0eWxlLndpZHRoID0gdmlld3BvcnRTaXpl
LndpZHRoICsgInB4IjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvVmlld3BvcnRD
b25maWd1cmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvVmlld3BvcnRDb25maWd1cmF0
aW9uLmNwcAppbmRleCBlMDk2MmMwZDQ1ZDZkZjVhOTI3MWZkZjQ0ZTk3NWUyODk0YTQ2NGYxLi5h
YTE2NDgzZmM3MGFiMDkwM2MwYjQwM2ZiOTAxYTc1YjczMjRhNmE2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1ZpZXdwb3J0Q29uZmlndXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uY3BwCkBAIC0zNjAsNyArMzYwLDcgQEAg
aW50IFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6bGF5b3V0V2lkdGgoKSBjb25zdAogICAgICAgICAg
ICAgZG91YmxlIG1heGltdW1TY2FsZSA9IHRoaXMtPm1heGltdW1TY2FsZSgpOwogICAgICAgICAg
ICAgZG91YmxlIG1heGltdW1Db250ZW50V2lkdGhJblZpZXdwb3J0Q29vcmRpbmF0ZSA9IG1heGlt
dW1TY2FsZSAqIG1fY29uZmlndXJhdGlvbi53aWR0aDsKICAgICAgICAgICAgIGlmIChtYXhpbXVt
Q29udGVudFdpZHRoSW5WaWV3cG9ydENvb3JkaW5hdGUgPCBtaW5pbXVtTGF5b3V0U2l6ZS53aWR0
aCgpKSB7Ci0gICAgICAgICAgICAgICAgLy8gVGhlIGNvbnRlbnQgem9vbWVkIHRvIG1heFNjYWxl
IGRvZXMgbm90IGZpdCB0aGUgdGhlIHZpZXcuIFJldHVybiB0aGUgbWluaW11bSB3aWR0aAorICAg
ICAgICAgICAgICAgIC8vIFRoZSBjb250ZW50IHpvb21lZCB0byBtYXhTY2FsZSBkb2VzIG5vdCBm
aXQgdGhlIHZpZXcuIFJldHVybiB0aGUgbWluaW11bSB3aWR0aAogICAgICAgICAgICAgICAgIC8v
IHNhdGlzZnlpbmcgdGhlIGNvbnN0cmFpbnQgbWF4aW11bVNjYWxlLgogICAgICAgICAgICAgICAg
IHJldHVybiBzdGQ6OnJvdW5kKG1pbmltdW1MYXlvdXRTaXplLndpZHRoKCkgLyBtYXhpbXVtU2Nh
bGUpOwogICAgICAgICAgICAgfQpAQCAtMzk2LDcgKzM5Niw3IEBAIGludCBWaWV3cG9ydENvbmZp
Z3VyYXRpb246OmxheW91dEhlaWdodCgpIGNvbnN0CiAgICAgICAgICAgICBkb3VibGUgbWF4aW11
bVNjYWxlID0gdGhpcy0+bWF4aW11bVNjYWxlKCk7CiAgICAgICAgICAgICBkb3VibGUgbWF4aW11
bUNvbnRlbnRIZWlnaHRJblZpZXdwb3J0Q29vcmRpbmF0ZSA9IG1heGltdW1TY2FsZSAqIG1fY29u
ZmlndXJhdGlvbi5oZWlnaHQ7CiAgICAgICAgICAgICBpZiAobWF4aW11bUNvbnRlbnRIZWlnaHRJ
blZpZXdwb3J0Q29vcmRpbmF0ZSA8IG1pbmltdW1MYXlvdXRTaXplLmhlaWdodCgpKSB7Ci0gICAg
ICAgICAgICAgICAgLy8gVGhlIGNvbnRlbnQgem9vbWVkIHRvIG1heFNjYWxlIGRvZXMgbm90IGZp
dCB0aGUgdGhlIHZpZXcuIFJldHVybiB0aGUgbWluaW11bSBoZWlnaHQgdGhhdAorICAgICAgICAg
ICAgICAgIC8vIFRoZSBjb250ZW50IHpvb21lZCB0byBtYXhTY2FsZSBkb2VzIG5vdCBmaXQgdGhl
IHZpZXcuIFJldHVybiB0aGUgbWluaW11bSBoZWlnaHQgdGhhdAogICAgICAgICAgICAgICAgIC8v
IHNhdGlzZnkgdGhlIGNvbnN0cmFpbnQgbWF4aW11bVNjYWxlLgogICAgICAgICAgICAgICAgIHJl
dHVybiBzdGQ6OnJvdW5kKG1pbmltdW1MYXlvdXRTaXplLmhlaWdodCgpIC8gbWF4aW11bVNjYWxl
KTsKICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0Zsb2F0UG9seWdvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
RmxvYXRQb2x5Z29uLmgKaW5kZXggZjQ3YzlhZTc3N2ExYmQ4MDE5MjBmZmJiODlmOTllNDhiNGQ3
YWVlOS4uYWJhNGJkOWVlZmE3ZTg1NTdiOTllZjE4NzBkMmFmNGYxZGRkY2MzMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRQb2x5Z29uLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRQb2x5Z29uLmgKQEAgLTEyNCw3
ICsxMjQsNyBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgLy8gRWRnZSB2ZXJ0ZXggaW5kZXgx
IGlzIGxlc3MgdGhhbiBpbmRleDIsIGV4Y2VwdCB0aGUgbGFzdCBlZGdlLCB3aGVyZSBpbmRleDIg
aXMgMC4gV2hlbiBhIHBvbHlnb24gZWRnZQotICAgIC8vIGlzIGRlZmluZWQgYnkgMyBvciBtb3Jl
IGNvbGluZWFyIHZlcnRpY2VzLCBpbmRleDIgY2FuIGJlIHRoZSB0aGUgaW5kZXggb2YgdGhlIGxh
c3QgY29saW5lYXIgdmVydGV4LgorICAgIC8vIGlzIGRlZmluZWQgYnkgMyBvciBtb3JlIGNvbGlu
ZWFyIHZlcnRpY2VzLCBpbmRleDIgY2FuIGJlIHRoZSBpbmRleCBvZiB0aGUgbGFzdCBjb2xpbmVh
ciB2ZXJ0ZXguCiAgICAgdW5zaWduZWQgbV92ZXJ0ZXhJbmRleDE7CiAgICAgdW5zaWduZWQgbV92
ZXJ0ZXhJbmRleDI7CiAgICAgdW5zaWduZWQgbV9lZGdlSW5kZXg7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vSW5iYW5kVGV4dFRyYWNr
UHJpdmF0ZUFWRi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAKaW5kZXggZTM4ZDU5NTEzNTQ1YzQ3
NThhNmRlYzY4NWY3MzkxNWFlOTI0MGRkZS4uYmYyMWI2YjdiZDQ5NzNlMzhlYjE1OGQyZTc4ODQ3
ZDIyNmNkODBjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
YXZmb3VuZGF0aW9uL0luYmFuZFRleHRUcmFja1ByaXZhdGVBVkYuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9JbmJhbmRUZXh0VHJhY2tQcml2
YXRlQVZGLmNwcApAQCAtODgsNyArODgsNyBAQCBzdGF0aWMgYm9vbCBtYWtlUkdCQTMyRnJvbUFS
R0JDRkFycmF5KENGQXJyYXlSZWYgY29sb3JBcnJheSwgUkdCQTMyJiBjb2xvcikKIAogdm9pZCBJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGOjpwcm9jZXNzQ3VlQXR0cmlidXRlcyhDRkF0dHJpYnV0
ZWRTdHJpbmdSZWYgYXR0cmlidXRlZFN0cmluZywgR2VuZXJpY0N1ZURhdGEmIGN1ZURhdGEpCiB7
Ci0gICAgLy8gU29tZSBvZiB0aGUgYXR0cmlidXRlcyB3ZSB0cmFuc2xhdGUgaW50byBwZXItY3Vl
IFdlYlZUVCBzZXR0aW5ncyBhcmUgYXJlIHJlcGVhdGVkIG9uIGVhY2ggcGFydCBvZiBhbiBhdHRy
aWJ1dGVkIHN0cmluZyBzbyBvbmx5CisgICAgLy8gU29tZSBvZiB0aGUgYXR0cmlidXRlcyB3ZSB0
cmFuc2xhdGUgaW50byBwZXItY3VlIFdlYlZUVCBzZXR0aW5ncyBhcmUgcmVwZWF0ZWQgb24gZWFj
aCBwYXJ0IG9mIGFuIGF0dHJpYnV0ZWQgc3RyaW5nIHNvIG9ubHkKICAgICAvLyBwcm9jZXNzIHRo
ZSBmaXJzdCBpbnN0YW5jZSBvZiBlYWNoLgogICAgIGVudW0gQXR0cmlidXRlRmxhZ3MgewogICAg
ICAgICBMaW5lID0gMSA8PCAwLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3BlcmF0aW9uLmgKaW5kZXggMTlkZGNjODA0MTBm
NmM0ODJiYmVmN2I3ZGVmMmM0Njc0NDFmZTEzYy4uODM4YTgzMmM3ODQ1NjU4ZDQwZTcyY2U5Mzg4
ODY2NjAyNGU3OTIzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbi5oCkBAIC05NCw3ICs5NCw3IEBAIHB1
YmxpYzoKIAogICAgIC8vIFRydWUgaWYgdGhlIGFscGhhIGNoYW5uZWwgb2YgYW55IHBpeGVsIGNh
biBjaGFuZ2UgdW5kZXIgdGhpcyBvcGVyYXRpb24uCiAgICAgdmlydHVhbCBib29sIGFmZmVjdHNP
cGFjaXR5KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICAvLyBUcnVlIGlmIHRoZSB0aGUg
dmFsdWUgb2Ygb25lIHBpeGVsIGNhbiBhZmZlY3QgdGhlIHZhbHVlIG9mIGFub3RoZXIgcGl4ZWwg
dW5kZXIgdGhpcyBvcGVyYXRpb24sIHN1Y2ggYXMgYmx1ci4KKyAgICAvLyBUcnVlIGlmIHRoZSB2
YWx1ZSBvZiBvbmUgcGl4ZWwgY2FuIGFmZmVjdCB0aGUgdmFsdWUgb2YgYW5vdGhlciBwaXhlbCB1
bmRlciB0aGlzIG9wZXJhdGlvbiwgc3VjaCBhcyBibHVyLgogICAgIHZpcnR1YWwgYm9vbCBtb3Zl
c1BpeGVscygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgLy8gVHJ1ZSBpZiB0aGUgZmls
dGVyIHNob3VsZCBub3QgYmUgYWxsb3dlZCB0byB3b3JrIG9uIGNvbnRlbnQgdGhhdCBpcyBub3Qg
YXZhaWxhYmxlIGZyb20gdGhpcyBzZWN1cml0eSBvcmlnaW4uCiAgICAgdmlydHVhbCBib29sIHNo
b3VsZEJlUmVzdHJpY3RlZEJ5U2VjdXJpdHlPcmlnaW4oKSBjb25zdCB7IHJldHVybiBmYWxzZTsg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dy
YXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAKaW5kZXggNTUzYTg5NzBkMzA0
ZDFjYTZiNDdmYmY0NTIzNDIzZWU3MWYzOTYzYy4uNDVjN2ZlZDZkMzI5NGRmZWI5NzZlMTlkMDgx
MmExYWZiNTc1MzZiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0wuY3BwCkBA
IC0zOTAsNyArMzkwLDcgQEAgYm9vbCBHcmFwaGljc0NvbnRleHQzRDo6dGV4SW1hZ2UyRChHQzNE
ZW51bSB0YXJnZXQsIEdDM0RpbnQgbGV2ZWwsIEdDM0RlbnVtIGludGUKICAgICAgICAgLy8gV2Ug
YXJlIHVzaW5nIGEgY29yZSBwcm9maWxlLiBUaGlzIG1lYW5zIHRoYXQgR0xfQUxQSEEsIHdoaWNo
IGlzIGEgdmFsaWQgZm9ybWF0IGluIFdlYkdMIGZvciB0ZXhJbWFnZTJECiAgICAgICAgIC8vIGlz
IG5vdCBzdXBwb3J0ZWQgaW4gT3BlbkdMLiBJdCBuZWVkcyB0byBiZSBiYWNrZWQgd2l0aCBhIEdM
X1JFRCBwbGFuZS4gV2UgY2hhbmdlIHRoZSBmb3JtYXRzIHRvIEdMX1JFRAogICAgICAgICAvLyAo
Ym90aCBuZWVkIHRvIGJlIEdMX0FMUEhBIGluIFdlYkdMKSBhbmQgaW5zdHJ1Y3QgdGhlIHRleHR1
cmUgdG8gc3dpenpsZSB0aGUgcmVkIGNvbXBvbmVudCB2YWx1ZXMgd2l0aAotICAgICAgICAvLyB0
aGUgdGhlIGFscGhhIGNvbXBvbmVudCB2YWx1ZXMuCisgICAgICAgIC8vIHRoZSBhbHBoYSBjb21w
b25lbnQgdmFsdWVzLgogICAgICAgICBvcGVuR0xJbnRlcm5hbEZvcm1hdCA9IG9wZW5HTEZvcm1h
dCA9IFJFRDsKICAgICAgICAgdGV4UGFyYW1ldGVyaSh0YXJnZXQsIFRFWFRVUkVfU1dJWlpMRV9B
LCBSRUQpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9X
aWRnZXRNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2lkZ2V0TWFjLm1tCmlu
ZGV4IDYwZjFiYmNhMGVjZDFlM2NlZTdkYTIxYjFkZDYzNjE5N2JkMjFmYzUuLmQ4MWY3OTY0N2I4
YzdlZDIxZmJmOTNjMjlkMzhjYzY5YzUxOTU2N2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21hYy9XaWRnZXRNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1dpZGdldE1hYy5tbQpAQCAtNjAsNyArNjAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IHN0YXRpYyB2b2lkIHNhZmVSZW1vdmVGcm9tU3VwZXJ2aWV3KE5TVmlldyAqdmlldykKIHsKLSAg
ICAvLyBJZiB0aGUgdGhlIHZpZXcgaXMgdGhlIGZpcnN0IHJlc3BvbmRlciwgdGhlbiBzZXQgdGhl
IHdpbmRvdydzIGZpcnN0IHJlc3BvbmRlciB0byBuaWwgc28KKyAgICAvLyBJZiB0aGUgdmlldyBp
cyB0aGUgZmlyc3QgcmVzcG9uZGVyLCB0aGVuIHNldCB0aGUgd2luZG93J3MgZmlyc3QgcmVzcG9u
ZGVyIHRvIG5pbCBzbwogICAgIC8vIHdlIGRvbid0IGxlYXZlIHRoZSB3aW5kb3cgcG9pbnRpbmcg
dG8gYSB2aWV3IHRoYXQncyBubyBsb25nZXIgaW4gaXQuCiAgICAgTlNXaW5kb3cgKndpbmRvdyA9
IFt2aWV3IHdpbmRvd107CiAgICAgTlNSZXNwb25kZXIgKmZpcnN0UmVzcG9uZGVyID0gW3dpbmRv
dyBmaXJzdFJlc3BvbmRlcl07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQmxvY2tGbG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
a0Zsb3cuY3BwCmluZGV4IGNlY2QzMGU2YzZjMDE1OWM2NzljNjU3NTYxODY2ZjQwNGZkNmI1MTQu
LmUyYTFiMTU3OTg0MmY4MmQ0ZTA4N2EyYWEzMjE2Yjg2YTFlY2JiY2MgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwCkBAIC0xMDA0LDcgKzEwMDQsNyBA
QCBMYXlvdXRVbml0IFJlbmRlckJsb2NrRmxvdzo6Y29sbGFwc2VNYXJnaW5zV2l0aENoaWxkSW5m
byhSZW5kZXJCb3gqIGNoaWxkLCBSZW5kZQogICAgIGJvb2wgYmVmb3JlUXVpcmsgPSBjaGlsZCA/
IGhhc01hcmdpbkJlZm9yZVF1aXJrKCpjaGlsZCkgOiBmYWxzZTsKICAgICBib29sIGFmdGVyUXVp
cmsgPSBjaGlsZCA/IGhhc01hcmdpbkFmdGVyUXVpcmsoKmNoaWxkKSA6IGZhbHNlOwogICAgIAot
ICAgIC8vIFRoZSBjaGlsZCBkaXNjYXJkcyB0aGUgYmVmb3JlIG1hcmdpbiB3aGVuIHRoZSB0aGUg
YWZ0ZXIgbWFyZ2luIGhhcyBkaXNjYXJkIGluIHRoZSBjYXNlIG9mIGEgc2VsZiBjb2xsYXBzaW5n
IGJsb2NrLgorICAgIC8vIFRoZSBjaGlsZCBkaXNjYXJkcyB0aGUgYmVmb3JlIG1hcmdpbiB3aGVu
IHRoZSBhZnRlciBtYXJnaW4gaGFzIGRpc2NhcmRlZCBpbiB0aGUgY2FzZSBvZiBhIHNlbGYgY29s
bGFwc2luZyBibG9jay4KICAgICBjaGlsZERpc2NhcmRNYXJnaW5CZWZvcmUgPSBjaGlsZERpc2Nh
cmRNYXJnaW5CZWZvcmUgfHwgKGNoaWxkRGlzY2FyZE1hcmdpbkFmdGVyICYmIGNoaWxkSXNTZWxm
Q29sbGFwc2luZyk7CiAgICAgCiAgICAgLy8gR2V0IHRoZSBmb3VyIG1hcmdpbiB2YWx1ZXMgZm9y
IHRoZSBjaGlsZCBhbmQgY2FjaGUgdGhlbS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCbG9ja0Zsb3cuaAppbmRleCBjMjNhYWU1Y2UxODdmODAxYTQ1NTdjOGJhZGEwMzdhYTJjNzdm
Mjg2Li4wNDc4YTM0OGVjNTBhMTVhM2RmYzVhOGYxYjc1NjE5N2FlMGE0NTY0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5oCkBAIC02OSw3ICs2OSw3IEBAIHBy
b3RlY3RlZDoKICAgICB2b2lkIHJlYnVpbGRGbG9hdGluZ09iamVjdFNldEZyb21JbnRydWRpbmdG
bG9hdHMoKTsKIAogICAgIC8vIFJlbmRlckJsb2NrRmxvdyBhbHdheXMgY29udGFpbnMgZWl0aGVy
IGxpbmVzIG9yIHBhcmFncmFwaHMuIFdoZW4gdGhlIGNoaWxkcmVuIGFyZSBhbGwgYmxvY2tzIChl
LmcuIHBhcmFncmFwaHMpLCB3ZSBjYWxsIGxheW91dEJsb2NrQ2hpbGRyZW4uCi0gICAgLy8gV2hl
biB0aGUgY2hpbGRyZW4gYXJlIGFyZSBhbGwgaW5saW5lIChlLmcuLCBsaW5lcyksIHdlIGNhbGwg
bGF5b3V0SW5saW5lQ2hpbGRyZW4uCisgICAgLy8gV2hlbiB0aGUgY2hpbGRyZW4gYXJlIGFsbCBp
bmxpbmUgKGUuZy4sIGxpbmVzKSwgd2UgY2FsbCBsYXlvdXRJbmxpbmVDaGlsZHJlbi4KICAgICB2
b2lkIGxheW91dEJsb2NrQ2hpbGRyZW4oYm9vbCByZWxheW91dENoaWxkcmVuLCBMYXlvdXRVbml0
JiBtYXhGbG9hdExvZ2ljYWxCb3R0b20pOwogICAgIHZvaWQgbGF5b3V0SW5saW5lQ2hpbGRyZW4o
Ym9vbCByZWxheW91dENoaWxkcmVuLCBMYXlvdXRVbml0JiByZXBhaW50TG9naWNhbFRvcCwgTGF5
b3V0VW5pdCYgcmVwYWludExvZ2ljYWxCb3R0b20pOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCb3guY3BwCmluZGV4IGFkMWQ1MDMwYjlkNzkxOGViYmMwMmFiM2YzMzY4MzUwZmQ5NzIw
YWQuLjk1MWU5MjE0MjgyNjcxZWQ4OGVjMDRjMTk1ZjBiODBlOTVkMGY0NzQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCkBAIC00MDE3LDcgKzQwMTcsNyBAQCB2b2lkIFJl
bmRlckJveDo6Y29tcHV0ZVBvc2l0aW9uZWRMb2dpY2FsV2lkdGhSZXBsYWNlZChMb2dpY2FsRXh0
ZW50Q29tcHV0ZWRWYWx1ZQogICAgIGNvbnN0IExheW91dFVuaXQgY29udGFpbmVyUmVsYXRpdmVM
b2dpY2FsV2lkdGggPSBjb250YWluaW5nQmxvY2tMb2dpY2FsV2lkdGhGb3JQb3NpdGlvbmVkKGNv
bnRhaW5lckJsb2NrLCBudWxscHRyLCBmYWxzZSk7CiAKICAgICAvLyBUbyBtYXRjaCBXaW5JRSwg
aW4gcXVpcmtzIG1vZGUgdXNlIHRoZSBwYXJlbnQncyAnZGlyZWN0aW9uJyBwcm9wZXJ0eQotICAg
IC8vIGluc3RlYWQgb2YgdGhlIHRoZSBjb250YWluZXIgYmxvY2sncy4KKyAgICAvLyBpbnN0ZWFk
IG9mIHRoZSBjb250YWluZXIgYmxvY2sncy4KICAgICBUZXh0RGlyZWN0aW9uIGNvbnRhaW5lckRp
cmVjdGlvbiA9IGNvbnRhaW5lckJsb2NrLnN0eWxlKCkuZGlyZWN0aW9uKCk7CiAKICAgICAvLyBW
YXJpYWJsZXMgdG8gc29sdmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3Qu
Y3BwCmluZGV4IGRkNWZiZDM5NjM1ZDhkMzQwMGE1MzVhNTQ4MTI5ZThmOTMzY2M0M2YuLmJkYWIy
Y2EwMWFiOTBmM2ZhYzc4ODAxMWU1ZDM3ZTUxN2MxNzRmMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCkBAIC04MTcsNyArODE3LDcgQEAgdm9pZCBSZW5kZXJP
YmplY3Q6OnByb3BhZ2F0ZVJlcGFpbnRUb1BhcmVudFdpdGhPdXRsaW5lQXV0b0lmTmVlZGVkKGNv
bnN0IFJlbmRlckwKICAgICBpZiAoIWhhc091dGxpbmVBdXRvQW5jZXN0b3IoKSkKICAgICAgICAg
cmV0dXJuOwogCi0gICAgLy8gRklYTUU6IFdlIHNob3VsZCByZWFsbHkgcHJvcGFnYXRlIG9ubHkg
d2hlbiB0aGUgdGhlIGNoaWxkIHJlbmRlcmVyIHN0aWNrcyBvdXQuCisgICAgLy8gRklYTUU6IFdl
IHNob3VsZCByZWFsbHkgcHJvcGFnYXRlIG9ubHkgd2hlbiB0aGUgY2hpbGQgcmVuZGVyZXIgc3Rp
Y2tzIG91dC4KICAgICBib29sIHJlcGFpbnRSZWN0TmVlZHNDb252ZXJ0aW5nID0gZmFsc2U7CiAg
ICAgLy8gSXNzdWUgcmVwYWludCBvbiB0aGUgcmVuZGVyZXIgd2l0aCBvdXRsaW5lOiBhdXRvLgog
ICAgIGZvciAoY29uc3QgYXV0byogcmVuZGVyZXIgPSB0aGlzOyByZW5kZXJlcjsgcmVuZGVyZXIg
PSByZW5kZXJlci0+cGFyZW50KCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJUaGVtZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhl
bWUuY3BwCmluZGV4IGVjMWY1NTJmOTUwYzMyNjYzOGVmNjI2ZTVjYWIyYTRjYzFiMmJlMzUuLjQx
ZTZhMDRjZmViNGE4ZmExYzRlMzZlMjlkMmYwMTNiZGY4MTllOWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRoZW1lLmNwcApAQCAtMTMxMyw3ICsxMzEzLDcgQEAgQ29sb3IgUmVu
ZGVyVGhlbWU6OmRpc2FibGVkVGV4dENvbG9yKGNvbnN0IENvbG9yJiB0ZXh0Q29sb3IsIGNvbnN0
IENvbG9yJiBiYWNrZ3IKICAgICAKICAgICAvLyBJZiB0aGVyZSdzIG5vdCB2ZXJ5IG11Y2ggY29u
dHJhc3QgYmV0d2VlbiB0aGUgZGlzYWJsZWQgY29sb3IgYW5kIHRoZSBiYWNrZ3JvdW5kIGNvbG9y
LAogICAgIC8vIGp1c3QgbGVhdmUgdGhlIHRleHQgY29sb3IgYWxvbmUuIFdlIGRvbid0IHdhbnQg
dG8gY2hhbmdlIGEgZ29vZCBjb250cmFzdCBjb2xvciBzY2hlbWUgc28gdGhhdCBpdCBoYXMgcmVh
bGx5IGJhZCBjb250cmFzdC4KLSAgICAvLyBJZiB0aGUgdGhlIGNvbnRyYXN0IHdhcyBhbHJlYWR5
IHBvb3IsIHRoZW4gaXQgZG9lc24ndCBkbyBhbnkgZ29vZCB0byBjaGFuZ2UgaXQgdG8gYSBkaWZm
ZXJlbnQgcG9vciBjb250cmFzdCBjb2xvciBzY2hlbWUuCisgICAgLy8gSWYgdGhlIGNvbnRyYXN0
IHdhcyBhbHJlYWR5IHBvb3IsIHRoZW4gaXQgZG9lc24ndCBkbyBhbnkgZ29vZCB0byBjaGFuZ2Ug
aXQgdG8gYSBkaWZmZXJlbnQgcG9vciBjb250cmFzdCBjb2xvciBzY2hlbWUuCiAgICAgaWYgKGRp
ZmZlcmVuY2VTcXVhcmVkKGRpc2FibGVkQ29sb3IsIGJhY2tncm91bmRDb2xvcikgPCBtaW5Db2xv
ckNvbnRyYXN0VmFsdWUpCiAgICAgICAgIHJldHVybiB0ZXh0Q29sb3I7CiAgICAgCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9DbGFzc0NoYW5nZUludmFsaWRhdGlvbi5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9DbGFzc0NoYW5nZUludmFsaWRhdGlvbi5jcHAKaW5kZXggZGJh
MjM4MTRjZjEzZDRhMTUxZmFkMGFlYTk1ZTU5ZmRmMjQ4MTA1MC4uMmIwMGZmZTM2NGQ4NTNkYzQ3
ZDJmNDNlODgyOTE1MzAwMzI5NzRlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUv
Q2xhc3NDaGFuZ2VJbnZhbGlkYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0Ns
YXNzQ2hhbmdlSW52YWxpZGF0aW9uLmNwcApAQCAtNzQsNyArNzQsNyBAQCBzdGF0aWMgQ2xhc3ND
aGFuZ2VWZWN0b3IgY29tcHV0ZUNsYXNzQ2hhbmdlKGNvbnN0IFNwYWNlU3BsaXRTdHJpbmcmIG9s
ZENsYXNzZXMsCiAgICAgICAgIGNoYW5nZWRDbGFzc2VzLmFwcGVuZChuZXdDbGFzc2VzW2ldLmlt
cGwoKSk7CiAgICAgfQogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBvbGRTaXplOyArK2kp
IHsKLSAgICAgICAgLy8gSWYgdGhlIGJpdCBpcyBub3Qgc2V0IHRoZSB0aGUgY29ycmVzcG9uZGlu
ZyBjbGFzcyBoYXMgYmVlbiByZW1vdmVkLgorICAgICAgICAvLyBJZiB0aGUgYml0IGlzIG5vdCBz
ZXQgdGhlIGNvcnJlc3BvbmRpbmcgY2xhc3MgaGFzIGJlZW4gcmVtb3ZlZC4KICAgICAgICAgaWYg
KHJlbWFpbmluZ0NsYXNzQml0cy5xdWlja0dldChpKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwog
ICAgICAgICBjaGFuZ2VkQ2xhc3Nlcy5hcHBlbmQob2xkQ2xhc3Nlc1tpXS5pbXBsKCkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTY29wZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9TdHlsZVNjb3BlLmNwcAppbmRleCAxNzY5MGNjZDY3Nzc5YzIzYjkzNzc2MzA4
NDQ1NDYyZDdhYTkyMmRkLi41MDE2ZWViNzcwZWVmM2RhZjU1MWZiZDU0NzM3ZGY1NDMzNmMwNDIx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3BlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3BlLmNwcApAQCAtNjA4LDcgKzYwOCw3IEBAIHZv
aWQgU2NvcGU6OmRpZENoYW5nZVN0eWxlU2hlZXRFbnZpcm9ubWVudCgpCiB7CiAgICAgaWYgKCFt
X3NoYWRvd1Jvb3QpIHsKICAgICAgICAgZm9yIChhdXRvKiBkZXNjZW5kYW50U2hhZG93Um9vdCA6
IG1fZG9jdW1lbnQuaW5Eb2N1bWVudFNoYWRvd1Jvb3RzKCkpIHsKLSAgICAgICAgICAgIC8vIFN0
eWxlc2hlZXRzIGlzIGF1dGhvciBzaGFkb3cgcm9vdHMgYXJlIGFyZSBwb3RlbnRpYWxseSBhZmZl
Y3RlZC4KKyAgICAgICAgICAgIC8vIFN0eWxlc2hlZXRzIGlzIGF1dGhvciBzaGFkb3cgcm9vdHMg
YXJlIHBvdGVudGlhbGx5IGFmZmVjdGVkLgogICAgICAgICAgICAgaWYgKGRlc2NlbmRhbnRTaGFk
b3dSb290LT5tb2RlKCkgIT0gU2hhZG93Um9vdE1vZGU6OlVzZXJBZ2VudCkKICAgICAgICAgICAg
ICAgICBkZXNjZW5kYW50U2hhZG93Um9vdC0+c3R5bGVTY29wZSgpLnNjaGVkdWxlVXBkYXRlKFVw
ZGF0ZVR5cGU6OkNvbnRlbnRzT3JJbnRlcnByZXRhdGlvbik7CiAgICAgICAgIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbHRHbHlwaERlZkVsZW1lbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0FsdEdseXBoRGVmRWxlbWVudC5jcHAKaW5kZXggOTFmODg3OWYzYjFi
NDBjNDY1OWI5ZTU3M2RkNjNmNGUyOTAzNGRhZi4uYmU2OTBlYzAyNzI3NjExMDg2Mjk3NDgxNzQ4
Mjg4ZjY3N2I1OGQwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FsdEdseXBo
RGVmRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FsdEdseXBoRGVmRWxl
bWVudC5jcHAKQEAgLTY1LDcgKzY1LDcgQEAgYm9vbCBTVkdBbHRHbHlwaERlZkVsZW1lbnQ6Omhh
c1ZhbGlkR2x5cGhFbGVtZW50cyhWZWN0b3I8U3RyaW5nPiYgZ2x5cGhOYW1lcykgY28KICAgICAv
LyBlbGVtZW50IHN1cnJvdW5kaW5nIHRob3NlIGNoYXJhY3RlcnMuCiAgICAgLy8KICAgICAvLyBU
aGUgc3BlYyBkb2Vzbid0IHRlbGwgaG93IHRvIGRlYWwgd2l0aCB0aGUgbWl4aW5nIG9mIDxnbHlw
aFJlZj4gYW5kIDxhbHRHbHlJdGVtPi4KLSAgICAvLyBIb3dldmVyLCB3ZSBkZXRlcm1pbmUgY29u
dGVudCBtb2RlbCBieSB0aGUgdGhlIHR5cGUgb2YgdGhlIGZpcnN0IGFwcGVhcmluZyBlbGVtZW50
CisgICAgLy8gSG93ZXZlciwgd2UgZGV0ZXJtaW5lIGNvbnRlbnQgbW9kZWwgYnkgdGhlIHR5cGUg
b2YgdGhlIGZpcnN0IGFwcGVhcmluZyBlbGVtZW50CiAgICAgLy8ganVzdCBsaWtlIE9wZXJhIDEx
IGRvZXMuIEFmdGVyIHRoZSBjb250ZW50IG1vZGVsIGlzIGRldGVybWluZWQgd2Ugc2tpcCBlbGVt
ZW50cwogICAgIC8vIHdoaWNoIGRvbid0IGNvbWZvcm0gdG8gaXQuIEZvciBleGFtcGxlOgogICAg
IC8vIGEuICAgIDxhbHRHbHlwaERlZj4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvY2FwdHVyZS9qc29uLmhwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
Y2FwdHVyZS9qc29uLmhwcAppbmRleCAzMDViMDA4YjBlNWU1MGEyYmVkYWVjNjU0NDk0Nzc5YmMy
MzMzMDVmLi43Yzg2OTc4N2YxOWNjNmMyM2I0MjFmOWM0MGFhMDE1NDMzMmFlMWEyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhcHR1cmUvanNvbi5ocHAKKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYXB0dXJlL2pzb24uaHBwCkBAIC0xODMsNyAr
MTgzLDcgQEAgZW51bSBjbGFzcyB2YWx1ZV90IDogdWludDhfdAogICAgIG51bWJlcl9pbnRlZ2Vy
LCAgLy8vPCBudW1iZXIgdmFsdWUgKHNpZ25lZCBpbnRlZ2VyKQogICAgIG51bWJlcl91bnNpZ25l
ZCwgLy8vPCBudW1iZXIgdmFsdWUgKHVuc2lnbmVkIGludGVnZXIpCiAgICAgbnVtYmVyX2Zsb2F0
LCAgICAvLy88IG51bWJlciB2YWx1ZSAoZmxvYXRpbmctcG9pbnQpCi0gICAgZGlzY2FyZGVkICAg
ICAgICAvLy88IGRpc2NhcmRlZCBieSB0aGUgdGhlIHBhcnNlciBjYWxsYmFjayBmdW5jdGlvbgor
ICAgIGRpc2NhcmRlZCAgICAgICAgLy8vPCBkaXNjYXJkZWQgYnkgdGhlIHBhcnNlciBjYWxsYmFj
ayBmdW5jdGlvbgogfTsKIAogLyohCkBAIC0xMTI3MSw3ICsxMTI3MSw3IEBAIGJhc2ljX2pzb25f
cGFyc2VyXzc0OgogICAgICAgICBudW1iZXIgdHlwZSAoZWl0aGVyIGludGVnZXIsIHVuc2lnbmVk
IGludGVnZXIgb3IgZmxvYXRpbmcgcG9pbnQpLAogICAgICAgICB3aGljaCBpcyBwYXNzZWQgYmFj
ayB0byB0aGUgY2FsbGVyIHZpYSB0aGUgcmVzdWx0IHBhcmFtZXRlci4KIAotICAgICAgICBpbnRl
Z3JhbCBudW1iZXJzIHRoYXQgZG9uJ3QgZml0IGludG8gdGhlIHRoZSByYW5nZSBvZiB0aGUgcmVz
cGVjdGl2ZQorICAgICAgICBpbnRlZ3JhbCBudW1iZXJzIHRoYXQgZG9uJ3QgZml0IGludG8gdGhl
IHJhbmdlIG9mIHRoZSByZXNwZWN0aXZlCiAgICAgICAgIHR5cGUgYXJlIHBhcnNlZCBhcyBudW1i
ZXJfZmxvYXRfdAogCiAgICAgICAgIGZsb2F0aW5nLXBvaW50IHZhbHVlcyBkbyBub3Qgc2F0aXNm
eSBzdGQ6OmlzZmluaXRlIHByZWRpY2F0ZQpAQCAtMTIzMTgsNyArMTIzMTgsNyBAQCBiYXNpY19q
c29uX3BhcnNlcl83NDoKIAogICAgIFVzZXMgYSBKU09OIHBvaW50ZXIgdG8gcmV0cmlldmUgYSBy
ZWZlcmVuY2UgdG8gdGhlIHJlc3BlY3RpdmUgSlNPTiB2YWx1ZS4KICAgICBObyBib3VuZCBjaGVj
a2luZyBpcyBwZXJmb3JtZWQuIFRoZSBmdW5jdGlvbiBkb2VzIG5vdCBjaGFuZ2UgdGhlIEpTT04K
LSAgICB2YWx1ZTsgbm8gYG51bGxgIHZhbHVlcyBhcmUgY3JlYXRlZC4gSW4gcGFydGljdWxhciwg
dGhlIHRoZSBzcGVjaWFsIHZhbHVlCisgICAgdmFsdWU7IG5vIGBudWxsYCB2YWx1ZXMgYXJlIGNy
ZWF0ZWQuIEluIHBhcnRpY3VsYXIsIHRoZSBzcGVjaWFsIHZhbHVlCiAgICAgYC1gIHlpZWxkcyBh
biBleGNlcHRpb24uCiAKICAgICBAcGFyYW1baW5dIHB0ciAgSlNPTiBwb2ludGVyIHRvIHRoZSBk
ZXNpcmVkIGVsZW1lbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0Nv
bm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5jcHAK
aW5kZXggODVmMjZhMmNiOTU5YWQ4MTEzYjg5YzE1YjJlYTIxZTJjMDJiZGY3Yy4uMTc1YzE1ZWEz
MGU0N2QwNDk2N2ExY2MwNjNhNWViYWI1ZWRhNGMwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9y
bS9JUEMvQ29ubmVjdGlvbi5jcHAKQEAgLTc5NCw3ICs3OTQsNyBAQCB2b2lkIENvbm5lY3Rpb246
OmNvbm5lY3Rpb25EaWRDbG9zZSgpCiAKICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW3By
b3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKV0oKSBtdXRhYmxlIHsKICAgICAgICAgLy8gSWYg
dGhlIGNvbm5lY3Rpb24gaGFzIGJlZW4gZXhwbGljaXRseSBpbnZhbGlkYXRlZCBiZWZvcmUgZGlz
cGF0Y2hDb25uZWN0aW9uRGlkQ2xvc2Ugd2FzIGNhbGxlZCwKLSAgICAgICAgLy8gdGhlbiB0aGUg
dGhlIGNvbm5lY3Rpb24gd2lsbCBiZSBpbnZhbGlkIGhlcmUuCisgICAgICAgIC8vIHRoZW4gdGhl
IGNvbm5lY3Rpb24gd2lsbCBiZSBpbnZhbGlkIGhlcmUuCiAgICAgICAgIGlmICghcHJvdGVjdGVk
VGhpcy0+aXNWYWxpZCgpKQogICAgICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQppbmRleCA4OTYxMjU3MjRiMDc0NjBi
MDRkNzZiZDgzMDY5ZjNmOThjY2Q4OTZmLi42MTU4MWYzOGIwNzc0NjgxMWU5MWVhODQ3ZGJjNjkw
ZTc5N2MyZWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tXZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YlZpZXcubW0KQEAgLTI2OTMsNyArMjY5Myw3IEBAIC0gKHZvaWQpX2tleWJvYXJkV2lsbEhpZGU6
KE5TTm90aWZpY2F0aW9uICopbm90aWZpY2F0aW9uCiB7CiAgICAgLy8gSWdub3JlIGtleWJvYXJk
IHdpbGwgaGlkZSBub3RpZmljYXRpb25zIHNlbnQgZHVyaW5nIHJvdGF0aW9uLiBUaGV5J3JlIGp1
c3QgdGhlcmUgZm9yCiAgICAgLy8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgcmVhc29ucyBhbmQg
cHJvY2Vzc2luZyB0aGUgd2lsbCBoaWRlIG5vdGlmaWNhdGlvbiB3b3VsZAotICAgIC8vIHRlbXBv
cmFyaWx5IHNjcmV3IHVwIHRoZSB0aGUgdW5vYnNjdXJlZCB2aWV3IGFyZWEuCisgICAgLy8gdGVt
cG9yYXJpbHkgc2NyZXcgdXAgdGhlIHVub2JzY3VyZWQgdmlldyBhcmVhLgogICAgIGlmIChbW1VJ
UGVyaXBoZXJhbEhvc3Qgc2hhcmVkSW5zdGFuY2VdIHJvdGF0aW9uU3RhdGVdKQogICAgICAgICBy
ZXR1cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDFl
ZjEzOTJmMWUyNGMwYzUwYmZlMzY0OWFhOTNlNDgwNjQ4ZTc4NGYuLjRmN2Q4ZTczYWQyNTgxNzAy
NzkwZWY2MjA5ZDg1ZjljNzU4NDdmMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmNwcApAQCAtNjAwMCw3ICs2MDAwLDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnJ1bk1v
ZGFsKCkKICAgICBtX3Byb2Nlc3MtPnJlc3BvbnNpdmVuZXNzVGltZXIoKS5zdG9wKCk7CiAKICAg
ICAvLyBPdXIgQ29ubmVjdGlvbidzIHJ1biBsb29wIG1pZ2h0IGhhdmUgbW9yZSBtZXNzYWdlcyB3
YWl0aW5nIHRvIGJlIGhhbmRsZWQgYWZ0ZXIgdGhpcyBSdW5Nb2RhbCBtZXNzYWdlLgotICAgIC8v
IFRvIG1ha2Ugc3VyZSB0aGV5IGFyZSBoYW5kbGVkIGluc2lkZSBvZiB0aGUgdGhlIG5lc3RlZCBt
b2RhbCBydW4gbG9vcCB3ZSBtdXN0IGZpcnN0IHNpZ25hbCB0aGUgQ29ubmVjdGlvbidzCisgICAg
Ly8gVG8gbWFrZSBzdXJlIHRoZXkgYXJlIGhhbmRsZWQgaW5zaWRlIG9mIHRoZSBuZXN0ZWQgbW9k
YWwgcnVuIGxvb3Agd2UgbXVzdCBmaXJzdCBzaWduYWwgdGhlIENvbm5lY3Rpb24ncwogICAgIC8v
IHJ1biBsb29wIHNvIHdlJ3JlIGd1YXJhbnRlZWQgdGhhdCBpdCBoYXMgYSBjaGFuY2UgdG8gd2Fr
ZSB1cC4KICAgICAvLyBTZWUgaHR0cDovL3dlYmtpdC5vcmcvYi84OTU5MCBmb3IgbW9yZSBkaXNj
dXNzaW9uLgogICAgIG1fcHJvY2Vzcy0+Y29ubmVjdGlvbigpLT53YWtlVXBSdW5Mb29wKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV2ViSW5zcGVjdG9yUHJveHlN
YWMubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV2ViSW5zcGVjdG9yUHJveHlNYWMu
bW0KaW5kZXggYjRmYzFhZGRkNzNlMmMwMzRiN2Q4OTM4NDJkMDk4M2IyMDY0NjZjOS4uYjAyM2Zk
MGQzOWY2ZWY4NWU3NDcwYjBjMjFjNmExYjQxNjY2YTMwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvbWFjL1dlYkluc3BlY3RvclByb3h5TWFjLm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL21hYy9XZWJJbnNwZWN0b3JQcm94eU1hYy5tbQpAQCAtNTYwLDcgKzU2
MCw3IEBAIHZvaWQgV2ViSW5zcGVjdG9yUHJveHk6Omluc3BlY3RlZFZpZXdGcmFtZURpZENoYW5n
ZShDR0Zsb2F0IGN1cnJlbnREaW1lbnNpb24pCiAgICAgICAgIENHRmxvYXQgaW5zcGVjdG9yV2lk
dGggPSBJbnNwZWN0b3JGcm9udGVuZENsaWVudExvY2FsOjpjb25zdHJhaW5lZEF0dGFjaGVkV2lu
ZG93V2lkdGgoY3VycmVudERpbWVuc2lvbiwgcGFyZW50V2lkdGgpOwogCiAgICAgICAgIC8vIFBy
ZXNlcnZlIHRoZSB0b3AgcG9zaXRpb24gb2YgdGhlIGluc3BlY3RlZCB2aWV3IHNvIGJhbm5lcnMg
aW4gU2FmYXJpIHN0aWxsIHdvcmsuIEJ1dCBkb24ndCB1c2UgdGhhdAotICAgICAgICAvLyB0b3Ag
cG9zaXRpb24gZm9yIHRoZSBpbnNwZWN0b3IgdmlldyBzaW5jZSB0aGUgYmFubmVycyBvbmx5IHN0
cmV0Y2ggYXMgd2lkZSBhcyB0aGUgdGhlIGluc3BlY3RlZCB2aWV3LgorICAgICAgICAvLyB0b3Ag
cG9zaXRpb24gZm9yIHRoZSBpbnNwZWN0b3IgdmlldyBzaW5jZSB0aGUgYmFubmVycyBvbmx5IHN0
cmV0Y2ggYXMgd2lkZSBhcyB0aGUgaW5zcGVjdGVkIHZpZXcuCiAgICAgICAgIGluc3BlY3RlZFZp
ZXdGcmFtZSA9IE5TTWFrZVJlY3QoMCwgMCwgcGFyZW50V2lkdGggLSBpbnNwZWN0b3JXaWR0aCwg
aW5zcGVjdGVkVmlld1RvcCk7CiAgICAgICAgIENHRmxvYXQgaW5zZXRFeGNsdWRpbmdCYW5uZXJz
ID0gMDsKICAgICAgICAgaWYgKFtpbnNwZWN0ZWRWaWV3IGlzS2luZE9mQ2xhc3M6W1dLVmlldyBj
bGFzc11dKQpAQCAtNTc3LDcgKzU3Nyw3IEBAIHZvaWQgV2ViSW5zcGVjdG9yUHJveHk6Omluc3Bl
Y3RlZFZpZXdGcmFtZURpZENoYW5nZShDR0Zsb2F0IGN1cnJlbnREaW1lbnNpb24pCiAgICAgICAg
IENHRmxvYXQgaW5zcGVjdG9yV2lkdGggPSBJbnNwZWN0b3JGcm9udGVuZENsaWVudExvY2FsOjpj
b25zdHJhaW5lZEF0dGFjaGVkV2luZG93V2lkdGgoY3VycmVudERpbWVuc2lvbiwgcGFyZW50V2lk
dGgpOwogCiAgICAgICAgIC8vIFByZXNlcnZlIHRoZSB0b3AgcG9zaXRpb24gb2YgdGhlIGluc3Bl
Y3RlZCB2aWV3IHNvIGJhbm5lcnMgaW4gU2FmYXJpIHN0aWxsIHdvcmsuIEJ1dCBkb24ndCB1c2Ug
dGhhdAotICAgICAgICAvLyB0b3AgcG9zaXRpb24gZm9yIHRoZSBpbnNwZWN0b3IgdmlldyBzaW5j
ZSB0aGUgYmFubmVycyBvbmx5IHN0cmV0Y2ggYXMgd2lkZSBhcyB0aGUgdGhlIGluc3BlY3RlZCB2
aWV3LgorICAgICAgICAvLyB0b3AgcG9zaXRpb24gZm9yIHRoZSBpbnNwZWN0b3IgdmlldyBzaW5j
ZSB0aGUgYmFubmVycyBvbmx5IHN0cmV0Y2ggYXMgd2lkZSBhcyB0aGUgaW5zcGVjdGVkIHZpZXcu
CiAgICAgICAgIGluc3BlY3RlZFZpZXdGcmFtZSA9IE5TTWFrZVJlY3QoaW5zcGVjdG9yV2lkdGgs
IDAsIHBhcmVudFdpZHRoIC0gaW5zcGVjdG9yV2lkdGgsIGluc3BlY3RlZFZpZXdUb3ApOwogICAg
ICAgICBDR0Zsb2F0IGluc2V0RXhjbHVkaW5nQmFubmVycyA9IDA7CiAgICAgICAgIGlmIChbaW5z
cGVjdGVkVmlldyBpc0tpbmRPZkNsYXNzOltXS1ZpZXcgY2xhc3NdXSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KaW5kZXggNzA2NGEx
MmIyYjIzMDBiODNkNDNmNTc1Yjg1YjMwZmZkNzM2Yjg2Yi4uMzAyYmRhMWE3NTZiN2YyZTNlODJk
YTc2YTBlYmU1YTA1M2U3ZTg5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KQEAgLTExMTQsNyArMTExNCw3IEBAIHZvaWQgV2Vi
UGFnZTo6c2VsZWN0V2l0aEdlc3R1cmUoY29uc3QgSW50UG9pbnQmIHBvaW50LCB1aW50MzJfdCBn
cmFudWxhcml0eSwgdWluCiAgICAgY2FzZSBHZXN0dXJlVHlwZTo6T25lRmluZ2VyVGFwOgogICAg
IHsKICAgICAgICAgVmlzaWJsZVBvc2l0aW9uIHJlc3VsdDsKLSAgICAgICAgLy8gbW92ZSB0aGUg
dGhlIHBvc2l0aW9uIGF0IHRoZSBlbmQgb2YgdGhlIHdvcmQKKyAgICAgICAgLy8gbW92ZSB0aGUg
cG9zaXRpb24gYXQgdGhlIGVuZCBvZiB0aGUgd29yZAogICAgICAgICBpZiAoYXRCb3VuZGFyeU9m
R3JhbnVsYXJpdHkocG9zaXRpb24sIExpbmVHcmFudWxhcml0eSwgRGlyZWN0aW9uRm9yd2FyZCkp
IHsKICAgICAgICAgICAgIC8vIERvbid0IGNyb3NzIGxpbmUgYm91bmRhcmllcy4KICAgICAgICAg
ICAgIHJlc3VsdCA9IHBvc2l0aW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvV2ViVmlldy9XZWJGcmFtZS5oIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9X
ZWJGcmFtZS5oCmluZGV4IGFlNDMzYjI1MjhlZTY4ZDI2NDBhMTI4MmIyMzBiZGZlZTk3ZDgxMzUu
LjRlZDE0OGFkMzliNzU3MDg5ZGJjM2ZhMjgzY2Q0OTFmOWMwYTJhOTIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRnJhbWUuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkZyYW1lLmgKQEAgLTEyMyw3ICsxMjMsNyBAQAogICAg
IEBhYnN0cmFjdCBMb2FkcyBhIHBhZ2UgdG8gZGlzcGxheSBhcyBhIHN1YnN0aXR1dGUgZm9yIGEg
VVJMIHRoYXQgY291bGQgbm90IGJlIHJlYWNoZWQuCiAgICAgQGRpc2N1c3Npb24gVGhpcyBhbGxv
d3MgY2xpZW50cyB0byBkaXNwbGF5IHBhZ2UtbG9hZGluZyBlcnJvcnMgaW4gdGhlIHdlYnZpZXcg
aXRzZWxmLgogICAgIFRoaXMgaXMgdHlwaWNhbGx5IGNhbGxlZCB3aGlsZSBwcm9jZXNzaW5nIHRo
ZSBXZWJGcmFtZUxvYWREZWxlZ2F0ZSBtZXRob2QKLSAgICAtd2ViVmlldzpkaWRGYWlsUHJvdmlz
aW9uYWxMb2FkV2l0aEVycm9yOmZvckZyYW1lOiBvciBvbmUgb2YgdGhlIHRoZSBXZWJQb2xpY3lE
ZWxlZ2F0ZSBtZXRob2RzCisgICAgLXdlYlZpZXc6ZGlkRmFpbFByb3Zpc2lvbmFsTG9hZFdpdGhF
cnJvcjpmb3JGcmFtZTogb3Igb25lIG9mIHRoZSBXZWJQb2xpY3lEZWxlZ2F0ZSBtZXRob2RzCiAg
ICAgLXdlYlZpZXc6ZGVjaWRlUG9saWN5Rm9yTUlNRVR5cGU6cmVxdWVzdDpmcmFtZTpkZWNpc2lv
bkxpc3RlbmVyOiBvcgogICAgIC13ZWJWaWV3OnVuYWJsZVRvSW1wbGVtZW50UG9saWN5V2l0aEVy
cm9yOmZyYW1lOi4gSWYgaXQgaXMgY2FsbGVkIGZyb20gd2l0aGluIG9uZSBvZiB0aG9zZQogICAg
IHRocmVlIGRlbGVnYXRlIG1ldGhvZHMgdGhlbiB0aGUgYmFjay9mb3J3YXJkIGxpc3Qgd2lsbCBi
ZSBtYWludGFpbmVkIGFwcHJvcHJpYXRlbHkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViVmlldy9XZWJIVE1MVmlldy5tbQppbmRleCAzMDNmZmY0NzFiODI3N2ZiY2QzN2Y4OTEzMmFm
YzlkNGMwMDg2YzMyLi5mMmE3MGM5NTE5MzVmNTIyMWUyYmNiOTU0ODJkNmE2MjI1YjdlNGYzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1t
CisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KQEAg
LTY2OTcsNyArNjY5Nyw3IEBAIC0gKHZvaWQpc2V0TWFya2VkVGV4dDooaWQpc3RyaW5nIHNlbGVj
dGVkUmFuZ2U6KE5TUmFuZ2UpbmV3U2VsUmFuZ2UKICAgICAgICAgTlNTdHJpbmcgKnJhbmdlU3Ry
aW5nID0gW3N0cmluZyBhdHRyaWJ1dGU6TlNUZXh0SW5wdXRSZXBsYWNlbWVudFJhbmdlQXR0cmli
dXRlTmFtZSBhdEluZGV4OjAgbG9uZ2VzdEVmZmVjdGl2ZVJhbmdlOjAgaW5SYW5nZTpOU01ha2VS
YW5nZSgwLCBbdGV4dCBsZW5ndGhdKV07CiAgICAgICAgIExPRyhUZXh0SW5wdXQsICIgICAgUmVw
bGFjZW1lbnRSYW5nZTogJUAiLCByYW5nZVN0cmluZyk7CiAgICAgICAgIC8vIFRoZSBBcHBLaXQg
YWRkcyBhICdzZWNyZXQnIHByb3BlcnR5IHRvIHRoZSBzdHJpbmcgdGhhdCBjb250YWlucyB0aGUg
cmVwbGFjZW1lbnQgcmFuZ2UuCi0gICAgICAgIC8vIFRoZSByZXBsYWNlbWVudCByYW5nZSBpcyB0
aGUgcmFuZ2Ugb2YgdGhlIHRoZSB0ZXh0IHRoYXQgc2hvdWxkIGJlIHJlcGxhY2VkIHdpdGggdGhl
IG5ldyBzdHJpbmcuCisgICAgICAgIC8vIFRoZSByZXBsYWNlbWVudCByYW5nZSBpcyB0aGUgcmFu
Z2Ugb2YgdGhlIHRleHQgdGhhdCBzaG91bGQgYmUgcmVwbGFjZWQgd2l0aCB0aGUgbmV3IHN0cmlu
Zy4KICAgICAgICAgaWYgKHJhbmdlU3RyaW5nKQogICAgICAgICAgICAgcmVwbGFjZW1lbnRSYW5n
ZSA9IE5TUmFuZ2VGcm9tU3RyaW5nKHJhbmdlU3RyaW5nKTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3LmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJWaWV3L1dlYlZpZXcuaAppbmRleCBlMDg5YjZjZDg5MDYxYzYyZTA0MDk2YmI3YzJm
MWUxNTRkY2E5NjcyLi42NTQxOTg4NWE5M2Y1MjE1MDllZjhiOWEyZmEzZTQ0MmIzMDBhZjc5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcuaApAQCAtMTQxLDcgKzE0
MSw3IEBAIGV4dGVybiBOU1N0cmluZyAqV2ViVmlld1Byb2dyZXNzRmluaXNoZWROb3RpZmljYXRp
b247CiAKIC8qIQogICAgICBAbWV0aG9kIGNhblNob3dNSU1FVHlwZUFzSFRNTDoKLSAgICAgQGFi
c3RyYWN0IENoZWNrcyBpZiB0aGUgdGhlIE1JTUUgdHlwZSBpcyBhIHR5cGUgdGhhdCB0aGUgV2Vi
S2l0IHdpbGwgaW50ZXJwcmV0IGFzIEhUTUwuCisgICAgIEBhYnN0cmFjdCBDaGVja3MgaWYgdGhl
IE1JTUUgdHlwZSBpcyBhIHR5cGUgdGhhdCB0aGUgV2ViS2l0IHdpbGwgaW50ZXJwcmV0IGFzIEhU
TUwuCiAgICAgIEBwYXJhbSBNSU1FVHlwZSBUaGUgTUlNRSB0eXBlIHRvIGNoZWNrLgogICAgICBA
cmVzdWx0IFlFUyBpZiB0aGUgTUlNRXR5cGUgaW4gYW4gSFRNTCB0eXBlLgogKi8K
</data>

          </attachment>
      

    </bug>

</bugzilla>