<?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>189163</bug_id>
          
          <creation_ts>2018-08-30 11:13:15 -0700</creation_ts>
          <short_desc>REGRESSION(r235413): Causes crashes when running layout tests under GuardMalloc (Requested by ryanhaddad on #webkit).</short_desc>
          <delta_ts>2018-08-31 08:56:38 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>188701</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>achristensen</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1455302</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-30 11:13:15 -0700</bug_when>
    <thetext>https://trac.webkit.org/changeset/235413 broke the build:
Causes crashes when running layout tests under GuardMalloc (Requested by ryanhaddad on #webkit).

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

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

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

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455309</commentid>
    <comment_count>2</comment_count>
      <attachid>348514</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-30 11:21:53 -0700</bug_when>
    <thetext>Comment on attachment 348514
ROLLOUT of r235413

Clearing flags on attachment: 348514

Committed r235511: &lt;https://trac.webkit.org/changeset/235511&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455310</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-30 11:21:55 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455700</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-08-31 08:56:38 -0700</bug_when>
    <thetext>&lt;rdar://problem/43941935&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348514</attachid>
            <date>2018-08-30 11:13:31 -0700</date>
            <delta_ts>2018-08-30 11:21:53 -0700</delta_ts>
            <desc>ROLLOUT of r235413</desc>
            <filename>bug-189163-20180830141330.patch</filename>
            <type>text/plain</type>
            <size>33422</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1NTA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGJkNzU2MTE0MGUyYTNhNWI4
ODBiY2UwNjcwZWQ0OGRjOTAzYmYzYmQuLmZhNTRjZDZiYjIzMzg3ZGVkZDU5YTJjMTFhZTE1NzNh
OTA3YjBkMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTgtMDgtMzAgIENvbW1pdCBR
dWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJv
bGxpbmcgb3V0IHIyMzU0MTMgYW5kIHIyMzU0NDQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODkxNjMKKworICAgICAgICBDYXVzZXMgY3Jhc2hlcyB3
aGVuIHJ1bm5pbmcgbGF5b3V0IHRlc3RzIHVuZGVyIEd1YXJkTWFsbG9jCisgICAgICAgIChSZXF1
ZXN0ZWQgYnkgcnlhbmhhZGRhZCBvbiAjd2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFu
Z2VzZXRzOgorCisgICAgICAgICJOZXR3b3JrTG9hZDo6ZGlkUmVjZWl2ZVJlc3BvbnNlIHNob3Vs
ZCBwYXNzIGl0cyBjb21wbGV0aW9uCisgICAgICAgIGhhbmRsZXIgdG8gaXRzIGNsaWVudCIKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4ODcwMQorICAg
ICAgICBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjM1NDEzCisKKyAgICAgICAg
IlJlbW92ZSBhc3NlcnRpb24gaW50cm9kdWNlZCBpbiByMjM1NDEzIgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4NzAxCisgICAgICAgIGh0dHBzOi8v
dHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yMzU0NDQKKwogMjAxOC0wOC0zMCAgQWRpdHlhIEtl
ZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CiAKICAgICAgICAgW21hY09TXSBDb2xvciBwaWNr
ZXIgbGF5b3V0IGlzIGJyb2tlbiBpZiBzdWdnZXN0ZWQgY29sb3JzIGFyZSBzcGVjaWZpZWQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvRG93bmxvYWRzL0Rvd25sb2Fk
TWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0Rvd25sb2Fkcy9Eb3du
bG9hZE1hbmFnZXIuY3BwCmluZGV4IDFlMjhmYzk0Mjc4YmM0Mzg3ZDIyMzcxNTJkYzI3Yjc3YjE0
MTE5NDQuLjYzMGNlYTU2OGUwODJiNmYxNDc3OGQ0ZWQ5MDBiOTMxZmY5ZmNkNTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvRG93bmxvYWRzL0Rvd25sb2FkTWFuYWdl
ci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9Eb3dubG9hZHMvRG93bmxv
YWRNYW5hZ2VyLmNwcApAQCAtODUsMTAgKzg1LDEwIEBAIHZvaWQgRG93bmxvYWRNYW5hZ2VyOjp3
aWxsRGVjaWRlUGVuZGluZ0Rvd25sb2FkRGVzdGluYXRpb24oTmV0d29ya0RhdGFUYXNrJiBuZXR3
CiAgICAgQVNTRVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0VudHJ5KTsKIH0K
IAotdm9pZCBEb3dubG9hZE1hbmFnZXI6OmNvbnZlcnROZXR3b3JrTG9hZFRvRG93bmxvYWQoRG93
bmxvYWRJRCBkb3dubG9hZElELCBzdGQ6OnVuaXF1ZV9wdHI8TmV0d29ya0xvYWQ+JiYgbmV0d29y
a0xvYWQsIFJlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXImJiBjb21wbGV0aW9uSGFuZGxlciwgVmVj
dG9yPFJlZlB0cjxXZWJDb3JlOjpCbG9iRGF0YUZpbGVSZWZlcmVuY2U+PiYmIGJsb2JGaWxlUmVm
ZXJlbmNlcywgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgRG93bmxvYWRNYW5hZ2VyOjpjb252ZXJ0TmV0d29ya0xv
YWRUb0Rvd25sb2FkKERvd25sb2FkSUQgZG93bmxvYWRJRCwgc3RkOjp1bmlxdWVfcHRyPE5ldHdv
cmtMb2FkPiYmIG5ldHdvcmtMb2FkLCBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6OkJsb2JEYXRhRmls
ZVJlZmVyZW5jZT4+JiYgYmxvYkZpbGVSZWZlcmVuY2VzLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIEFTU0VS
VCghbV9wZW5kaW5nRG93bmxvYWRzLmNvbnRhaW5zKGRvd25sb2FkSUQpKTsKLSAgICBtX3BlbmRp
bmdEb3dubG9hZHMuYWRkKGRvd25sb2FkSUQsIHN0ZDo6bWFrZV91bmlxdWU8UGVuZGluZ0Rvd25s
b2FkPihXVEZNb3ZlKG5ldHdvcmtMb2FkKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlciksIGRv
d25sb2FkSUQsIHJlcXVlc3QsIHJlc3BvbnNlKSk7CisgICAgbV9wZW5kaW5nRG93bmxvYWRzLmFk
ZChkb3dubG9hZElELCBzdGQ6Om1ha2VfdW5pcXVlPFBlbmRpbmdEb3dubG9hZD4oV1RGTW92ZShu
ZXR3b3JrTG9hZCksIGRvd25sb2FkSUQsIHJlcXVlc3QsIHJlc3BvbnNlKSk7CiB9CiAKIHZvaWQg
RG93bmxvYWRNYW5hZ2VyOjpjb250aW51ZURlY2lkZVBlbmRpbmdEb3dubG9hZERlc3RpbmF0aW9u
KERvd25sb2FkSUQgZG93bmxvYWRJRCwgU3RyaW5nIGRlc3RpbmF0aW9uLCBTYW5kYm94RXh0ZW5z
aW9uOjpIYW5kbGUmJiBzYW5kYm94RXh0ZW5zaW9uSGFuZGxlLCBib29sIGFsbG93T3ZlcndyaXRl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9Eb3dubG9hZHMvRG93
bmxvYWRNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0Rvd25sb2Fkcy9E
b3dubG9hZE1hbmFnZXIuaAppbmRleCA1MWQwZWYxNmE2YzU2NThmZjEwYWVlYWY4ZTMzNmZhZTFj
MzNjMzY2Li43OTE5ZDI3NTcwMjc5ZWE1ZGU2OTE2MGNmYjUyMDc1NzExMjY4ZmQwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0Rvd25sb2Fkcy9Eb3dubG9hZE1hbmFn
ZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0Rvd25sb2Fkcy9Eb3dubG9h
ZE1hbmFnZXIuaApAQCAtNzksNyArNzksNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBkYXRhVGFza0Jl
Y2FtZURvd25sb2FkVGFzayhEb3dubG9hZElELCBzdGQ6OnVuaXF1ZV9wdHI8RG93bmxvYWQ+JiYp
OwogICAgIHZvaWQgY29udGludWVXaWxsU2VuZFJlcXVlc3QoRG93bmxvYWRJRCwgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiYpOwogICAgIHZvaWQgd2lsbERlY2lkZVBlbmRpbmdEb3dubG9hZERl
c3RpbmF0aW9uKE5ldHdvcmtEYXRhVGFzayYsIFJlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXImJik7
Ci0gICAgdm9pZCBjb252ZXJ0TmV0d29ya0xvYWRUb0Rvd25sb2FkKERvd25sb2FkSUQsIHN0ZDo6
dW5pcXVlX3B0cjxOZXR3b3JrTG9hZD4mJiwgUmVzcG9uc2VDb21wbGV0aW9uSGFuZGxlciYmLCAg
VmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpCbG9iRGF0YUZpbGVSZWZlcmVuY2U+PiYmLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
Jik7CisgICAgdm9pZCBjb252ZXJ0TmV0d29ya0xvYWRUb0Rvd25sb2FkKERvd25sb2FkSUQsIHN0
ZDo6dW5pcXVlX3B0cjxOZXR3b3JrTG9hZD4mJiwgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpCbG9i
RGF0YUZpbGVSZWZlcmVuY2U+PiYmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7CiAgICAgdm9pZCBjb250aW51ZURlY2lk
ZVBlbmRpbmdEb3dubG9hZERlc3RpbmF0aW9uKERvd25sb2FkSUQsIFN0cmluZyBkZXN0aW5hdGlv
biwgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiYsIGJvb2wgYWxsb3dPdmVyd3JpdGUpOwogCiAg
ICAgdm9pZCByZXN1bWVEb3dubG9hZChQQUw6OlNlc3Npb25JRCwgRG93bmxvYWRJRCwgY29uc3Qg
SVBDOjpEYXRhUmVmZXJlbmNlJiByZXN1bWVEYXRhLCBjb25zdCBTdHJpbmcmIHBhdGgsIFNhbmRi
b3hFeHRlbnNpb246OkhhbmRsZSYmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvRG93bmxvYWRzL1BlbmRpbmdEb3dubG9hZC5jcHAgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL0Rvd25sb2Fkcy9QZW5kaW5nRG93bmxvYWQuY3BwCmluZGV4IGEwOTlhYjM1
ZTk0N2IwMDVlYzkyNzk1MjAyMmViYTM3ZGYyNWNlNTIuLjdhYWQxZGJiMGY0OTVhODQ4MWM5OWVk
YjJhNDIwZjExNTJjYzFiZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvRG93bmxvYWRzL1BlbmRpbmdEb3dubG9hZC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9Eb3dubG9hZHMvUGVuZGluZ0Rvd25sb2FkLmNwcApAQCAtNDcsNyArNDcsNyBA
QCBQZW5kaW5nRG93bmxvYWQ6OlBlbmRpbmdEb3dubG9hZChOZXR3b3JrTG9hZFBhcmFtZXRlcnMm
JiBwYXJhbWV0ZXJzLCBEb3dubG9hZElECiAgICAgc2VuZChNZXNzYWdlczo6RG93bmxvYWRQcm94
eTo6RGlkU3RhcnQobV9uZXR3b3JrTG9hZC0+Y3VycmVudFJlcXVlc3QoKSwgc3VnZ2VzdGVkTmFt
ZSkpOwogfQogCi1QZW5kaW5nRG93bmxvYWQ6OlBlbmRpbmdEb3dubG9hZChzdGQ6OnVuaXF1ZV9w
dHI8TmV0d29ya0xvYWQ+JiYgbmV0d29ya0xvYWQsIFJlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXIm
JiBjb21wbGV0aW9uSGFuZGxlciwgRG93bmxvYWRJRCBkb3dubG9hZElELCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQorUGVu
ZGluZ0Rvd25sb2FkOjpQZW5kaW5nRG93bmxvYWQoc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtMb2Fk
PiYmIG5ldHdvcmtMb2FkLCBEb3dubG9hZElEIGRvd25sb2FkSUQsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiAgICAgOiBt
X25ldHdvcmtMb2FkKFdURk1vdmUobmV0d29ya0xvYWQpKQogewogICAgIG1faXNBbGxvd2VkVG9B
c2tVc2VyRm9yQ3JlZGVudGlhbHMgPSBtX25ldHdvcmtMb2FkLT5pc0FsbG93ZWRUb0Fza1VzZXJG
b3JDcmVkZW50aWFscygpOwpAQCAtNTUsNyArNTUsNyBAQCBQZW5kaW5nRG93bmxvYWQ6OlBlbmRp
bmdEb3dubG9hZChzdGQ6OnVuaXF1ZV9wdHI8TmV0d29ya0xvYWQ+JiYgbmV0d29ya0xvYWQsIFJl
cwogICAgIG1fbmV0d29ya0xvYWQtPnNldFBlbmRpbmdEb3dubG9hZElEKGRvd25sb2FkSUQpOwog
ICAgIHNlbmQoTWVzc2FnZXM6OkRvd25sb2FkUHJveHk6OkRpZFN0YXJ0KHJlcXVlc3QsIFN0cmlu
ZygpKSk7CiAKLSAgICBtX25ldHdvcmtMb2FkLT5jb252ZXJ0VGFza1RvRG93bmxvYWQoKnRoaXMs
IHJlcXVlc3QsIHJlc3BvbnNlLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgbV9u
ZXR3b3JrTG9hZC0+Y29udmVydFRhc2tUb0Rvd25sb2FkKCp0aGlzLCByZXF1ZXN0LCByZXNwb25z
ZSk7CiB9CiAKIHZvaWQgUGVuZGluZ0Rvd25sb2FkOjp3aWxsU2VuZFJlZGlyZWN0ZWRSZXF1ZXN0
KFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiBy
ZWRpcmVjdFJlcXVlc3QsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJlc3Bv
bnNlKQpAQCAtODUsMTEgKzg1LDYgQEAgSVBDOjpDb25uZWN0aW9uKiBQZW5kaW5nRG93bmxvYWQ6
Om1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCkKICAgICByZXR1cm4gTmV0d29ya1Byb2Nlc3M6OnNp
bmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCk7CiB9CiAKLXZvaWQgUGVuZGluZ0Rv
d25sb2FkOjpkaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJl
c3BvbnNlLCBSZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyJiYgY29tcGxldGlvbkhhbmRsZXIpCi17
Ci0gICAgY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6UG9saWN5QWN0aW9uOjpEb3dubG9hZCk7
Ci19Ci0KIHVpbnQ2NF90IFBlbmRpbmdEb3dubG9hZDo6bWVzc2FnZVNlbmRlckRlc3RpbmF0aW9u
SUQoKQogewogICAgIHJldHVybiBtX25ldHdvcmtMb2FkLT5wZW5kaW5nRG93bmxvYWRJRCgpLmRv
d25sb2FkSUQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvRG93
bmxvYWRzL1BlbmRpbmdEb3dubG9hZC5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9E
b3dubG9hZHMvUGVuZGluZ0Rvd25sb2FkLmgKaW5kZXggYTM4Mzc0OThhYmU1ZTIxMDA2MTNhYzc1
OWY4NmU0YjZiZGMyMDU4OS4uYWY5OTBjMTViMzJhOGE5MzFhMTY5OTcxYjAyMjY0ZDJkNDJkNjE1
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9Eb3dubG9hZHMvUGVu
ZGluZ0Rvd25sb2FkLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9Eb3dubG9h
ZHMvUGVuZGluZ0Rvd25sb2FkLmgKQEAgLTQzLDcgKzQzLDcgQEAgY2xhc3MgUGVuZGluZ0Rvd25s
b2FkIDogcHVibGljIE5ldHdvcmtMb2FkQ2xpZW50LCBwdWJsaWMgSVBDOjpNZXNzYWdlU2VuZGVy
IHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBQZW5kaW5nRG93
bmxvYWQoTmV0d29ya0xvYWRQYXJhbWV0ZXJzJiYsIERvd25sb2FkSUQsIE5ldHdvcmtTZXNzaW9u
JiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lKTsKLSAgICBQZW5kaW5nRG93bmxvYWQoc3Rk
Ojp1bmlxdWVfcHRyPE5ldHdvcmtMb2FkPiYmLCBSZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyJiYs
IERvd25sb2FkSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBQZW5kaW5nRG93bmxvYWQoc3RkOjp1bmlxdWVf
cHRyPE5ldHdvcmtMb2FkPiYmLCBEb3dubG9hZElELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7CiAKICAgICB2b2lkIGNv
bnRpbnVlV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKTsKICAgICB2
b2lkIGNhbmNlbCgpOwpAQCAtNTQsNyArNTQsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgaXNTeW5j
aHJvbm91cygpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgYm9vbCBpc0Fs
bG93ZWRUb0Fza1VzZXJGb3JDcmVkZW50aWFscygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1faXNB
bGxvd2VkVG9Bc2tVc2VyRm9yQ3JlZGVudGlhbHM7IH0KICAgICB2b2lkIHdpbGxTZW5kUmVkaXJl
Y3RlZFJlcXVlc3QoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYmIHJlZGlyZWN0UmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJl
ZGlyZWN0UmVzcG9uc2UpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFdl
YkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgUmVzcG9uc2VDb21wbGV0aW9uSGFuZGxlciYmKSBv
dmVycmlkZTsKKyAgICBTaG91bGRDb250aW51ZURpZFJlY2VpdmVSZXNwb25zZSBkaWRSZWNlaXZl
UmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmKSBvdmVycmlkZSB7IHJldHVybiBT
aG91bGRDb250aW51ZURpZFJlY2VpdmVSZXNwb25zZTo6Tm87IH07CiAgICAgdm9pZCBkaWRSZWNl
aXZlQnVmZmVyKFJlZjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiYsIGludCByZXBvcnRlZEVuY29k
ZWREYXRhTGVuZ3RoKSBvdmVycmlkZSB7IH07CiAgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKGNv
bnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYpIG92ZXJyaWRlIHsgfTsKICAgICB2b2lk
IGRpZEZhaWxMb2FkaW5nKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0NPUlNQcmVm
bGlnaHRDaGVja2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0NP
UlNQcmVmbGlnaHRDaGVja2VyLmNwcAppbmRleCA1Y2JiNDMzNjY1MDE4NzE1MThhYTU5Y2ViYmQy
N2Q5OWMwMDUzNjM5Li5mN2Q2NjU3ZmQ2ZmE5MDMwM2VkYTY5NTM2MzQ0NWU2N2E2OTVkYjBlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDT1JTUHJlZmxp
Z2h0Q2hlY2tlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
Q09SU1ByZWZsaWdodENoZWNrZXIuY3BwCkBAIC0xMDUsOSArMTA1LDkgQEAgdm9pZCBOZXR3b3Jr
Q09SU1ByZWZsaWdodENoZWNrZXI6OmRpZFJlY2VpdmVDaGFsbGVuZ2UoV2ViQ29yZTo6QXV0aGVu
dGljYXRpb25DaGEKICAgICBOZXR3b3JrUHJvY2Vzczo6c2luZ2xldG9uKCkuYXV0aGVudGljYXRp
b25NYW5hZ2VyKCkuZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKG1fcGFyYW1ldGVy
cy5wYWdlSUQsIG1fcGFyYW1ldGVycy5mcmFtZUlELCBjaGFsbGVuZ2UsIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKIH0KIAotdm9pZCBOZXR3b3JrQ09SU1ByZWZsaWdodENoZWNrZXI6OmRp
ZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJl
c3BvbnNlQ29tcGxldGlvbkhhbmRsZXImJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgTmV0d29y
a0NPUlNQcmVmbGlnaHRDaGVja2VyOjpkaWRSZWNlaXZlUmVzcG9uc2VOZXR3b3JrU2Vzc2lvbihX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc3BvbnNlQ29tcGxldGlvbkhh
bmRsZXImJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VE
KCJkaWRSZWNlaXZlUmVzcG9uc2UiKTsKKyAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKCJkaWRS
ZWNlaXZlUmVzcG9uc2VOZXR3b3JrU2Vzc2lvbiIpOwogCiAgICAgaWYgKG1fc2hvdWxkQ2FwdHVy
ZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzKQogICAgICAgICBtX2xvYWRJbmZvcm1hdGlvbi5yZXNw
b25zZSA9IHJlc3BvbnNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9OZXR3b3JrQ09SU1ByZWZsaWdodENoZWNrZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvTmV0d29ya0NPUlNQcmVmbGlnaHRDaGVja2VyLmgKaW5kZXggMDU2ZGYxMjdhNDljOWM4
Y2VmOThkYzQ3ZjExYzU0OWViZmNiYzhkMS4uNGU1NWVhMDRhZDZmZmRiYzM3NDg0MzIwMjExMGQw
MjI1MDUwYWJmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrQ09SU1ByZWZsaWdodENoZWNrZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL05ldHdvcmtDT1JTUHJlZmxpZ2h0Q2hlY2tlci5oCkBAIC02NSw3ICs2NSw3IEBAIHB1Ymxp
YzoKIHByaXZhdGU6CiAgICAgdm9pZCB3aWxsUGVyZm9ybUhUVFBSZWRpcmVjdGlvbihXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBSZWRpcmVj
dENvbXBsZXRpb25IYW5kbGVyJiYpIGZpbmFsOwogICAgIHZvaWQgZGlkUmVjZWl2ZUNoYWxsZW5n
ZShXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYmLCBDaGFsbGVuZ2VDb21wbGV0aW9u
SGFuZGxlciYmKSBmaW5hbDsKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJiYsIFJlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXImJikgZmluYWw7Cisg
ICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VOZXR3b3JrU2Vzc2lvbihXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJiYsIFJlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXImJikgZmluYWw7CiAgICAgdm9p
ZCBkaWRSZWNlaXZlRGF0YShSZWY8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiYmKSBmaW5hbDsKICAg
ICB2b2lkIGRpZENvbXBsZXRlV2l0aEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3Im
LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrTG9hZE1ldHJpY3MmKSBmaW5hbDsKICAgICB2b2lkIGRp
ZFNlbmREYXRhKHVpbnQ2NF90IHRvdGFsQnl0ZXNTZW50LCB1aW50NjRfdCB0b3RhbEJ5dGVzRXhw
ZWN0ZWRUb1NlbmQpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9OZXR3b3JrRGF0YVRhc2suY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrRGF0YVRhc2suY3BwCmluZGV4IGNmNGU2NGQ1MDNmMWE5ZWUwYmRjNWUwZDUyOGM0N2Yy
OTQyOWE2NDEuLmRkYmYzYjczMDgwMmI2YTBmZjY5MDExYjBmYjAzMWE5MGE1YThlN2EgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0RhdGFUYXNrLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtEYXRhVGFzay5jcHAKQEAg
LTExMyw3ICsxMTMsNyBAQCB2b2lkIE5ldHdvcmtEYXRhVGFzazo6ZGlkUmVjZWl2ZVJlc3BvbnNl
KFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzcG9uc2VDbwogICAgICAgICAgICAgcmV0
dXJuOwogICAgICAgICB9CiAgICAgfQotICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlUmVzcG9uc2Uo
V1RGTW92ZShyZXNwb25zZSksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICBtX2Ns
aWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNlTmV0d29ya1Nlc3Npb24oV1RGTW92ZShyZXNwb25zZSks
IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAogYm9vbCBOZXR3b3JrRGF0YVRhc2s6
OnNob3VsZENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmljcygpIGNvbnN0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtEYXRhVGFzay5oIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrRGF0YVRhc2suaAppbmRleCA0MDhmMDlhNzgx
MGZhYTBiYTJhZGQ0MDI2YTk4NTg0MzMxMjg5NGRhLi43NWEwYTRhOTk2NmRmODA2YmRmMzUxNTZh
MzFjZjczYWY5NGFlMzcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L05ldHdvcmtEYXRhVGFzay5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0
d29ya0RhdGFUYXNrLmgKQEAgLTYwLDcgKzYwLDcgQEAgY2xhc3MgTmV0d29ya0RhdGFUYXNrQ2xp
ZW50IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgd2lsbFBlcmZvcm1IVFRQUmVkaXJlY3Rp
b24oV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
JiwgUmVkaXJlY3RDb21wbGV0aW9uSGFuZGxlciYmKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGRp
ZFJlY2VpdmVDaGFsbGVuZ2UoV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmJiwgQ2hh
bGxlbmdlQ29tcGxldGlvbkhhbmRsZXImJikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNl
aXZlUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBSZXNwb25zZUNvbXBsZXRp
b25IYW5kbGVyJiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlTmV0
d29ya1Nlc3Npb24oV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBSZXNwb25zZUNvbXBsZXRp
b25IYW5kbGVyJiYpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVmPFdl
YkNvcmU6OlNoYXJlZEJ1ZmZlcj4mJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkaWRDb21wbGV0
ZVdpdGhFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiwgY29uc3QgV2ViQ29yZTo6
TmV0d29ya0xvYWRNZXRyaWNzJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkaWRTZW5kRGF0YSh1
aW50NjRfdCB0b3RhbEJ5dGVzU2VudCwgdWludDY0X3QgdG90YWxCeXRlc0V4cGVjdGVkVG9TZW5k
KSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtM
b2FkLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0xvYWQuY3BwCmlu
ZGV4IDJhNjQ3ZGQ4ZGJmZTFkZTFkOWViZGVhMmI2MDI3ODEzNWYyMjM0ODIuLjM3OGE1NDg0NDFk
MzFkZDcwYWNhNzY2ZTNkZTA2NzE3ZWMwMjkxOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya0xvYWQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvTmV0d29ya0xvYWQuY3BwCkBAIC0xMjAsNiArMTIwLDggQEAgTmV0d29ya0xvYWQ6
On5OZXR3b3JrTG9hZCgpCiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKICAgICBpZiAo
bV9yZWRpcmVjdENvbXBsZXRpb25IYW5kbGVyKQogICAgICAgICBtX3JlZGlyZWN0Q29tcGxldGlv
bkhhbmRsZXIoeyB9KTsKKyAgICBpZiAobV9yZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyKQorICAg
ICAgICBtX3Jlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXIoUG9saWN5QWN0aW9uOjpJZ25vcmUpOwog
ICAgIGlmIChtX3Rhc2spCiAgICAgICAgIG1fdGFzay0+Y2xlYXJDbGllbnQoKTsKIH0KQEAgLTE3
Myw2ICsxNzUsMTQgQEAgdm9pZCBOZXR3b3JrTG9hZDo6Y29udGludWVXaWxsU2VuZFJlcXVlc3Qo
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYgbmV3UmVxdWVzdCkKICAgICAgICAgcmVkaXJlY3RD
b21wbGV0aW9uSGFuZGxlcihSZXNvdXJjZVJlcXVlc3QobV9jdXJyZW50UmVxdWVzdCkpOwogfQog
Cit2b2lkIE5ldHdvcmtMb2FkOjpjb250aW51ZURpZFJlY2VpdmVSZXNwb25zZSgpCit7CisgICAg
aWYgKG1fcmVzcG9uc2VDb21wbGV0aW9uSGFuZGxlcikgeworICAgICAgICBhdXRvIHJlc3BvbnNl
Q29tcGxldGlvbkhhbmRsZXIgPSBzdGQ6OmV4Y2hhbmdlKG1fcmVzcG9uc2VDb21wbGV0aW9uSGFu
ZGxlciwgbnVsbHB0cik7CisgICAgICAgIHJlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXIoUG9saWN5
QWN0aW9uOjpVc2UpOworICAgIH0KK30KKwogYm9vbCBOZXR3b3JrTG9hZDo6c2hvdWxkQ2FwdHVy
ZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzKCkgY29uc3QKIHsKICAgICByZXR1cm4gbV9jbGllbnQu
Z2V0KCkuc2hvdWxkQ2FwdHVyZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzKCk7CkBAIC0xODMsMTYg
KzE5MywxNyBAQCBib29sIE5ldHdvcmtMb2FkOjppc0FsbG93ZWRUb0Fza1VzZXJGb3JDcmVkZW50
aWFscygpIGNvbnN0CiAgICAgcmV0dXJuIG1fY2xpZW50LmdldCgpLmlzQWxsb3dlZFRvQXNrVXNl
ckZvckNyZWRlbnRpYWxzKCk7CiB9CiAKLXZvaWQgTmV0d29ya0xvYWQ6OmNvbnZlcnRUYXNrVG9E
b3dubG9hZChQZW5kaW5nRG93bmxvYWQmIHBlbmRpbmdEb3dubG9hZCwgY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiB1cGRhdGVkUmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2Us
IFJlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXImJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgTmV0
d29ya0xvYWQ6OmNvbnZlcnRUYXNrVG9Eb3dubG9hZChQZW5kaW5nRG93bmxvYWQmIHBlbmRpbmdE
b3dubG9hZCwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiB1cGRhdGVkUmVxdWVzdCwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKCFtX3Rhc2spCi0gICAgICAgIHJl
dHVybiBjb21wbGV0aW9uSGFuZGxlcihQb2xpY3lBY3Rpb246Oklnbm9yZSk7CisgICAgICAgIHJl
dHVybjsKIAogICAgIG1fY2xpZW50ID0gcGVuZGluZ0Rvd25sb2FkOwogICAgIG1fY3VycmVudFJl
cXVlc3QgPSB1cGRhdGVkUmVxdWVzdDsKICAgICBtX3Rhc2stPnNldFBlbmRpbmdEb3dubG9hZChw
ZW5kaW5nRG93bmxvYWQpOwotICAgIAotICAgIE5ldHdvcmtQcm9jZXNzOjpzaW5nbGV0b24oKS5m
aW5kUGVuZGluZ0Rvd25sb2FkTG9jYXRpb24oKm1fdGFzay5nZXQoKSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlciksIHJlc3BvbnNlKTsKKworICAgIGlmIChtX3Jlc3BvbnNlQ29tcGxldGlvbkhh
bmRsZXIpCisgICAgICAgIE5ldHdvcmtQcm9jZXNzOjpzaW5nbGV0b24oKS5maW5kUGVuZGluZ0Rv
d25sb2FkTG9jYXRpb24oKm1fdGFzay5nZXQoKSwgc3RkOjpleGNoYW5nZShtX3Jlc3BvbnNlQ29t
cGxldGlvbkhhbmRsZXIsIG51bGxwdHIpLCByZXNwb25zZSk7CiB9CiAKIHZvaWQgTmV0d29ya0xv
YWQ6OnNldFBlbmRpbmdEb3dubG9hZElEKERvd25sb2FkSUQgZG93bmxvYWRJRCkKQEAgLTI1Nyw3
ICsyNjgsNyBAQCB2b2lkIE5ldHdvcmtMb2FkOjpkaWRSZWNlaXZlQ2hhbGxlbmdlKEF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlJiYgY2hhbGxlbmdlLCBDaGFsbAogICAgICAgICBOZXR3b3JrUHJvY2Vz
czo6c2luZ2xldG9uKCkuYXV0aGVudGljYXRpb25NYW5hZ2VyKCkuZGlkUmVjZWl2ZUF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlKG1fcGFyYW1ldGVycy53ZWJQYWdlSUQsIG1fcGFyYW1ldGVycy53ZWJG
cmFtZUlELCBjaGFsbGVuZ2UsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAotdm9p
ZCBOZXR3b3JrTG9hZDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlUmVzcG9uc2UmJiByZXNw
b25zZSwgUmVzcG9uc2VDb21wbGV0aW9uSGFuZGxlciYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9p
ZCBOZXR3b3JrTG9hZDo6ZGlkUmVjZWl2ZVJlc3BvbnNlTmV0d29ya1Nlc3Npb24oUmVzb3VyY2VS
ZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyJiYgY29tcGxldGlv
bkhhbmRsZXIpCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKICAgICBBU1NFUlQo
IW1fdGhyb3R0bGUpOwpAQCAtMjg5LDcgKzMwMCwxMSBAQCB2b2lkIE5ldHdvcmtMb2FkOjpub3Rp
ZnlEaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNwb25z
ZQogICAgIGlmIChtX3BhcmFtZXRlcnMubmVlZHNDZXJ0aWZpY2F0ZUluZm8pCiAgICAgICAgIHJl
c3BvbnNlLmluY2x1ZGVDZXJ0aWZpY2F0ZUluZm8oKTsKIAotICAgIG1fY2xpZW50LmdldCgpLmRp
ZFJlY2VpdmVSZXNwb25zZShXVEZNb3ZlKHJlc3BvbnNlKSwgV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcikpOworICAgIGlmIChtX2NsaWVudC5nZXQoKS5kaWRSZWNlaXZlUmVzcG9uc2UoV1RGTW92
ZShyZXNwb25zZSkpID09IE5ldHdvcmtMb2FkQ2xpZW50OjpTaG91bGRDb250aW51ZURpZFJlY2Vp
dmVSZXNwb25zZTo6Tm8pIHsKKyAgICAgICAgbV9yZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyID0g
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAg
Y29tcGxldGlvbkhhbmRsZXIoUG9saWN5QWN0aW9uOjpVc2UpOwogfQogCiB2b2lkIE5ldHdvcmtM
b2FkOjpkaWRSZWNlaXZlRGF0YShSZWY8U2hhcmVkQnVmZmVyPiYmIGJ1ZmZlcikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0xvYWQuaCBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0xvYWQuaAppbmRleCAwMGE5NjMwZmU5YWEwYmM5
MGY0NzU5MDMzNjU3ZDMxYjAyNzMwOTkwLi45OWM5MjA5M2Y4M2U2NTE5MWZmYTY2NGVjNTVlZjFk
YWNjMTYzMzlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdv
cmtMb2FkLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrTG9hZC5o
CkBAIC01OSw4ICs1OSw5IEBAIHB1YmxpYzoKICAgICBjb25zdCBOZXR3b3JrTG9hZFBhcmFtZXRl
cnMmIHBhcmFtZXRlcnMoKSBjb25zdCB7IHJldHVybiBtX3BhcmFtZXRlcnM7IH0KIAogICAgIHZv
aWQgY29udGludWVXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpOwor
ICAgIHZvaWQgY29udGludWVEaWRSZWNlaXZlUmVzcG9uc2UoKTsKIAotICAgIHZvaWQgY29udmVy
dFRhc2tUb0Rvd25sb2FkKFBlbmRpbmdEb3dubG9hZCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBSZXNwb25zZUNvbXBs
ZXRpb25IYW5kbGVyJiYpOworICAgIHZvaWQgY29udmVydFRhc2tUb0Rvd25sb2FkKFBlbmRpbmdE
b3dubG9hZCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmKTsKICAgICB2b2lkIHNldFBlbmRpbmdEb3dubG9hZElEKERvd25s
b2FkSUQpOwogICAgIHZvaWQgc2V0U3VnZ2VzdGVkRmlsZW5hbWUoY29uc3QgU3RyaW5nJik7CiAg
ICAgdm9pZCBzZXRQZW5kaW5nRG93bmxvYWQoUGVuZGluZ0Rvd25sb2FkJik7CkBAIC04MCw3ICs4
MSw3IEBAIHByaXZhdGU6CiAgICAgLy8gTmV0d29ya0RhdGFUYXNrQ2xpZW50CiAgICAgdm9pZCB3
aWxsUGVyZm9ybUhUVFBSZWRpcmVjdGlvbihXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBSZWRpcmVjdENvbXBsZXRpb25IYW5kbGVyJiYpIGZp
bmFsOwogICAgIHZvaWQgZGlkUmVjZWl2ZUNoYWxsZW5nZShXZWJDb3JlOjpBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZSYmLCBDaGFsbGVuZ2VDb21wbGV0aW9uSGFuZGxlciYmKSBmaW5hbDsKLSAgICB2
b2lkIGRpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFJlc3Bv
bnNlQ29tcGxldGlvbkhhbmRsZXImJikgZmluYWw7CisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9u
c2VOZXR3b3JrU2Vzc2lvbihXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFJlc3BvbnNlQ29t
cGxldGlvbkhhbmRsZXImJikgZmluYWw7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShSZWY8V2Vi
Q29yZTo6U2hhcmVkQnVmZmVyPiYmKSBmaW5hbDsKICAgICB2b2lkIGRpZENvbXBsZXRlV2l0aEVy
cm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImLCBjb25zdCBXZWJDb3JlOjpOZXR3b3Jr
TG9hZE1ldHJpY3MmKSBmaW5hbDsKICAgICB2b2lkIGRpZFNlbmREYXRhKHVpbnQ2NF90IHRvdGFs
Qnl0ZXNTZW50LCB1aW50NjRfdCB0b3RhbEJ5dGVzRXhwZWN0ZWRUb1NlbmQpIGZpbmFsOwpAQCAt
OTQsNiArOTUsNyBAQCBwcml2YXRlOgogICAgIGNvbnN0IE5ldHdvcmtMb2FkUGFyYW1ldGVycyBt
X3BhcmFtZXRlcnM7CiAgICAgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmJik+IG1fcmVkaXJlY3RDb21wbGV0aW9uSGFuZGxlcjsKICAgICBSZWZQdHI8TmV0
d29ya0RhdGFUYXNrPiBtX3Rhc2s7CisgICAgUmVzcG9uc2VDb21wbGV0aW9uSGFuZGxlciBtX3Jl
c3BvbnNlQ29tcGxldGlvbkhhbmRsZXI7CiAgICAgCiAgICAgc3RydWN0IFRocm90dGxlOwogICAg
IHN0ZDo6dW5pcXVlX3B0cjxUaHJvdHRsZT4gbV90aHJvdHRsZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0xvYWRDbGllbnQuaCBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0xvYWRDbGllbnQuaAppbmRleCA0NjkyZmQ3ZDZiNDRi
MmQ0MGQyMjgzNWI5NGFlY2Q4OGJjOTFiOTZjLi41YmJmYjBlNjJmMTdlMjM3MjNhZTc5YWVjOTNk
YmI0YTY1OTNjN2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtMb2FkQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrTG9hZENsaWVudC5oCkBAIC0zNCwxMyArMzQsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
Y2xhc3MgTmV0d29ya0xvYWRNZXRyaWNzOwogY2xhc3MgUHJvdGVjdGlvblNwYWNlOwogY2xhc3Mg
U2hhcmVkQnVmZmVyOwotZW51bSBjbGFzcyBQb2xpY3lBY3Rpb247CiB9CiAKIG5hbWVzcGFjZSBX
ZWJLaXQgewogCi11c2luZyBSZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyID0gQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChXZWJDb3JlOjpQb2xpY3lBY3Rpb24pPjsKLQogY2xhc3MgTmV0d29ya0xvYWRD
bGllbnQgewogcHVibGljOgogICAgIHZpcnR1YWwgfk5ldHdvcmtMb2FkQ2xpZW50KCkgeyB9CkBA
IC01MSw3ICs0OCw4IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9pZCBkaWRTZW5kRGF0YSh1
bnNpZ25lZCBsb25nIGxvbmcgYnl0ZXNTZW50LCB1bnNpZ25lZCBsb25nIGxvbmcgdG90YWxCeXRl
c1RvQmVTZW50KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHdpbGxTZW5kUmVkaXJlY3RlZFJlcXVl
c3QoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYm
IHJlZGlyZWN0UmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVz
cG9uc2UpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmJiwgUmVzcG9uc2VDb21wbGV0aW9uSGFuZGxlciYmKSA9IDA7Cisg
ICAgZW51bSBjbGFzcyBTaG91bGRDb250aW51ZURpZFJlY2VpdmVSZXNwb25zZSB7IE5vLCBZZXMg
fTsKKyAgICB2aXJ0dWFsIFNob3VsZENvbnRpbnVlRGlkUmVjZWl2ZVJlc3BvbnNlIGRpZFJlY2Vp
dmVSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYpID0gMDsKICAgICB2aXJ0dWFs
IHZvaWQgZGlkUmVjZWl2ZUJ1ZmZlcihSZWY8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiYmLCBpbnQg
cmVwb3J0ZWRFbmNvZGVkRGF0YUxlbmd0aCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5p
c2hMb2FkaW5nKGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgZGlkRmFpbExvYWRpbmcoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
ID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jl
c291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jl
c291cmNlTG9hZGVyLmNwcAppbmRleCA0ZmZkNDEwNTNkNDI2ZDVkMjlmZTUxZTVkYTA0MjIwMjY0
NTViZDgwLi45MDlhY2M0Mzg5MmExOTlkYTA4OWQyODM3YmUyNWYzYzk2OWFjNmQwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2Fk
ZXIuY3BwCkBAIC0xMzMsOCArMTMzLDYgQEAgTmV0d29ya1Jlc291cmNlTG9hZGVyOjp+TmV0d29y
a1Jlc291cmNlTG9hZGVyKCkKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwogICAgIEFT
U0VSVCghbV9uZXR3b3JrTG9hZCk7CiAgICAgQVNTRVJUKCFpc1N5bmNocm9ub3VzKCkgfHwgIW1f
c3luY2hyb25vdXNMb2FkRGF0YS0+ZGVsYXllZFJlcGx5KTsKLSAgICBpZiAobV9yZXNwb25zZUNv
bXBsZXRpb25IYW5kbGVyKQotICAgICAgICBtX3Jlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXIoUG9s
aWN5QWN0aW9uOjpJZ25vcmUpOwogfQogCiBib29sIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6Y2Fu
VXNlQ2FjaGUoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KSBjb25zdApAQCAtMzQ1LDgg
KzM0Myw3IEBAIHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpjb252ZXJ0VG9Eb3dubG9hZChE
b3dubG9hZElEIGRvd25sb2FkSUQsIGNvbnN0IFJlc291CiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKLSAgICBBU1NFUlQobV9yZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyKTsKLSAgICBOZXR3b3Jr
UHJvY2Vzczo6c2luZ2xldG9uKCkuZG93bmxvYWRNYW5hZ2VyKCkuY29udmVydE5ldHdvcmtMb2Fk
VG9Eb3dubG9hZChkb3dubG9hZElELCBzdGQ6OmV4Y2hhbmdlKG1fbmV0d29ya0xvYWQsIG51bGxw
dHIpLCBXVEZNb3ZlKG1fcmVzcG9uc2VDb21wbGV0aW9uSGFuZGxlciksIFdURk1vdmUobV9maWxl
UmVmZXJlbmNlcyksIHJlcXVlc3QsIHJlc3BvbnNlKTsKKyAgICBOZXR3b3JrUHJvY2Vzczo6c2lu
Z2xldG9uKCkuZG93bmxvYWRNYW5hZ2VyKCkuY29udmVydE5ldHdvcmtMb2FkVG9Eb3dubG9hZChk
b3dubG9hZElELCBzdGQ6OmV4Y2hhbmdlKG1fbmV0d29ya0xvYWQsIG51bGxwdHIpLCBXVEZNb3Zl
KG1fZmlsZVJlZmVyZW5jZXMpLCByZXF1ZXN0LCByZXNwb25zZSk7CiB9CiAKIHZvaWQgTmV0d29y
a1Jlc291cmNlTG9hZGVyOjphYm9ydCgpCkBAIC00MjgsNyArNDI1LDcgQEAgYm9vbCBOZXR3b3Jr
UmVzb3VyY2VMb2FkZXI6OnNob3VsZEludGVycnVwdExvYWRGb3JDU1BGcmFtZUFuY2VzdG9yc09y
WEZyYW1lT3B0aW8KICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLXZvaWQgTmV0d29ya1Jlc291cmNl
TG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VSZXNwb25zZSYmIHJlY2VpdmVkUmVz
cG9uc2UsIFJlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXImJiBjb21wbGV0aW9uSGFuZGxlcikKK2F1
dG8gTmV0d29ya1Jlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VSZXNw
b25zZSYmIHJlY2VpdmVkUmVzcG9uc2UpIC0+IFNob3VsZENvbnRpbnVlRGlkUmVjZWl2ZVJlc3Bv
bnNlCiB7CiAgICAgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRCgiZGlkUmVjZWl2ZVJlc3BvbnNlOiAo
cGFnZUlEID0gJSIgUFJJdTY0ICIsIGZyYW1lSUQgPSAlIiBQUkl1NjQgIiwgcmVzb3VyY2VJRCA9
ICUiIFBSSXU2NCAiLCBodHRwU3RhdHVzQ29kZSA9ICVkLCBsZW5ndGggPSAlIiBQUklkNjQgIiki
LCBtX3BhcmFtZXRlcnMud2ViUGFnZUlELCBtX3BhcmFtZXRlcnMud2ViRnJhbWVJRCwgbV9wYXJh
bWV0ZXJzLmlkZW50aWZpZXIsIHJlY2VpdmVkUmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSwgcmVj
ZWl2ZWRSZXNwb25zZS5leHBlY3RlZENvbnRlbnRMZW5ndGgoKSk7CiAKQEAgLTQ1NywxNSArNDU0
LDEyIEBAIHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVz
b3VyY2VSZXNwb25zZSYmIHJlY2VpdmVkUmVzcG9uCiAgICAgICAgIH0gZWxzZQogICAgICAgICAg
ICAgbV9jYWNoZUVudHJ5Rm9yVmFsaWRhdGlvbiA9IG51bGxwdHI7CiAgICAgfQotICAgIGlmICht
X2NhY2hlRW50cnlGb3JWYWxpZGF0aW9uKSB7Ci0gICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFBv
bGljeUFjdGlvbjo6VXNlKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KKyAgICBpZiAobV9jYWNo
ZUVudHJ5Rm9yVmFsaWRhdGlvbikKKyAgICAgICAgcmV0dXJuIFNob3VsZENvbnRpbnVlRGlkUmVj
ZWl2ZVJlc3BvbnNlOjpZZXM7CiAKICAgICBpZiAoaXNNYWluUmVzb3VyY2UoKSAmJiBzaG91bGRJ
bnRlcnJ1cHRMb2FkRm9yQ1NQRnJhbWVBbmNlc3RvcnNPclhGcmFtZU9wdGlvbnMobV9yZXNwb25z
ZSkpIHsKICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUmVzb3VyY2VMb2FkZXI6OlN0b3BMb2Fk
aW5nQWZ0ZXJYRnJhbWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQb2xpY3lEZW5pZWQgeyB9KTsK
LSAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoUG9saWN5QWN0aW9uOjpJZ25vcmUpOwotICAgICAg
ICByZXR1cm47CisgICAgICAgIHJldHVybiBTaG91bGRDb250aW51ZURpZFJlY2VpdmVSZXNwb25z
ZTo6Tm87CiAgICAgfQogCiAgICAgaWYgKG1fbmV0d29ya0xvYWRDaGVja2VyKSB7CkBAIC00NzUs
MjYgKzQ2OSwyMSBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKFJlc291cmNlUmVzcG9uc2UmJiByZWNlaXZlZFJlc3BvbgogICAgICAgICAgICAgICAgIGlm
IChwcm90ZWN0ZWRUaGlzLT5tX25ldHdvcmtMb2FkKQogICAgICAgICAgICAgICAgICAgICBwcm90
ZWN0ZWRUaGlzLT5kaWRGYWlsTG9hZGluZyhlcnJvcik7CiAgICAgICAgICAgICB9KTsKLSAgICAg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFBvbGljeUFjdGlvbjo6SWdub3JlKTsKLSAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgICAgIHJldHVybiBTaG91bGRDb250aW51ZURpZFJlY2VpdmVS
ZXNwb25zZTo6Tm87CiAgICAgICAgIH0KICAgICB9CiAKICAgICBhdXRvIHJlc3BvbnNlID0gc2Fu
aXRpemVSZXNwb25zZUlmUG9zc2libGUoUmVzb3VyY2VSZXNwb25zZSB7IG1fcmVzcG9uc2UgfSwg
UmVzb3VyY2VSZXNwb25zZTo6U2FuaXRpemF0aW9uVHlwZTo6Q3Jvc3NPcmlnaW5TYWZlKTsKICAg
ICBpZiAoaXNTeW5jaHJvbm91cygpKSB7CiAgICAgICAgIG1fc3luY2hyb25vdXNMb2FkRGF0YS0+
cmVzcG9uc2UgPSBXVEZNb3ZlKHJlc3BvbnNlKTsKLSAgICAgICAgY29tcGxldGlvbkhhbmRsZXIo
UG9saWN5QWN0aW9uOjpVc2UpOwotICAgICAgICByZXR1cm47CisgICAgICAgIHJldHVybiBTaG91
bGRDb250aW51ZURpZFJlY2VpdmVSZXNwb25zZTo6WWVzOwogICAgIH0KIAogICAgIC8vIFdlIHdh
aXQgdG8gcmVjZWl2ZSBtZXNzYWdlIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6Q29udGludWVEaWRS
ZWNlaXZlUmVzcG9uc2UgYmVmb3JlIGNvbnRpbnVpbmcgYSBsb2FkIGZvcgogICAgIC8vIGEgbWFp
biByZXNvdXJjZSBiZWNhdXNlIHRoZSBlbWJlZGRpbmcgY2xpZW50IG11c3QgZGVjaWRlIHdoZXRo
ZXIgdG8gYWxsb3cgdGhlIGxvYWQuCiAgICAgYm9vbCB3aWxsV2FpdEZvckNvbnRpbnVlRGlkUmVj
ZWl2ZVJlc3BvbnNlID0gaXNNYWluUmVzb3VyY2UoKTsKICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJS
ZXNvdXJjZUxvYWRlcjo6RGlkUmVjZWl2ZVJlc3BvbnNlIHsgcmVzcG9uc2UsIHdpbGxXYWl0Rm9y
Q29udGludWVEaWRSZWNlaXZlUmVzcG9uc2UgfSk7Ci0gICAgaWYgKHdpbGxXYWl0Rm9yQ29udGlu
dWVEaWRSZWNlaXZlUmVzcG9uc2UpCi0gICAgICAgIG1fcmVzcG9uc2VDb21wbGV0aW9uSGFuZGxl
ciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpOwotICAgIGVsc2UKLSAgICAgICAgY29tcGxl
dGlvbkhhbmRsZXIoUG9saWN5QWN0aW9uOjpVc2UpOworICAgIHJldHVybiB3aWxsV2FpdEZvckNv
bnRpbnVlRGlkUmVjZWl2ZVJlc3BvbnNlID8gU2hvdWxkQ29udGludWVEaWRSZWNlaXZlUmVzcG9u
c2U6Ok5vIDogU2hvdWxkQ29udGludWVEaWRSZWNlaXZlUmVzcG9uc2U6OlllczsKIH0KIAogdm9p
ZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVCdWZmZXIoUmVmPFNoYXJlZEJ1ZmZl
cj4mJiBidWZmZXIsIGludCByZXBvcnRlZEVuY29kZWREYXRhTGVuZ3RoKQpAQCAtNjQxLDcgKzYz
MCw3IEBAIHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpjb250aW51ZVdpbGxTZW5kUmVkaXJl
Y3RlZFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiYKIHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVy
OjpkaWRGaW5pc2hXaXRoUmVkaXJlY3RSZXNwb25zZShSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJl
Y3RSZXNwb25zZSkKIHsKICAgICByZWRpcmVjdFJlc3BvbnNlLnNldFR5cGUoUmVzb3VyY2VSZXNw
b25zZTo6VHlwZTo6T3BhcXVlcmVkaXJlY3QpOwotICAgIGRpZFJlY2VpdmVSZXNwb25zZShXVEZN
b3ZlKHJlZGlyZWN0UmVzcG9uc2UpLCBbXSAoYXV0bykgeyB9KTsKKyAgICBkaWRSZWNlaXZlUmVz
cG9uc2UoV1RGTW92ZShyZWRpcmVjdFJlc3BvbnNlKSk7CiAKICAgICBXZWJDb3JlOjpOZXR3b3Jr
TG9hZE1ldHJpY3MgbmV0d29ya0xvYWRNZXRyaWNzOwogICAgIG5ldHdvcmtMb2FkTWV0cmljcy5t
YXJrQ29tcGxldGUoKTsKQEAgLTcxNiwxMSArNzA1LDE1IEBAIHZvaWQgTmV0d29ya1Jlc291cmNl
TG9hZGVyOjpjb250aW51ZVdpbGxTZW5kUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmJiBuZXdSZXF1
ZXN0CiAKIHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpjb250aW51ZURpZFJlY2VpdmVSZXNw
b25zZSgpCiB7Ci0gICAgaWYgKG1fcmVzcG9uc2VDb21wbGV0aW9uSGFuZGxlcikKLSAgICAgICAg
bV9yZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyKFBvbGljeUFjdGlvbjo6VXNlKTsKLQotICAgIGlm
IChtX2NhY2hlRW50cnlXYWl0aW5nRm9yQ29udGludWVEaWRSZWNlaXZlUmVzcG9uc2UpCisgICAg
aWYgKG1fY2FjaGVFbnRyeVdhaXRpbmdGb3JDb250aW51ZURpZFJlY2VpdmVSZXNwb25zZSkgewog
ICAgICAgICBjb250aW51ZVByb2Nlc3NpbmdDYWNoZWRFbnRyeUFmdGVyRGlkUmVjZWl2ZVJlc3Bv
bnNlKFdURk1vdmUobV9jYWNoZUVudHJ5V2FpdGluZ0ZvckNvbnRpbnVlRGlkUmVjZWl2ZVJlc3Bv
bnNlKSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAvLyBGSVhNRTogUmVtb3ZlIHRo
aXMgY2hlY2sgb25jZSBCbG9iUmVzb3VyY2VIYW5kbGUgaW1wbGVtZW50cyBkaWRSZWNlaXZlUmVz
cG9uc2VBc3luYyBjb3JyZWN0bHkuCisgICAgLy8gQ3VycmVudGx5LCBpdCBkb2VzIG5vdCB3YWl0
IGZvciByZXNwb25zZSwgc28gdGhlIGxvYWQgaXMgbGlrZWx5IHRvIGZpbmlzaCBiZWZvcmUgY29u
dGludWVEaWRSZWNlaXZlUmVzcG9uc2UuCisgICAgaWYgKG1fbmV0d29ya0xvYWQpCisgICAgICAg
IG1fbmV0d29ya0xvYWQtPmNvbnRpbnVlRGlkUmVjZWl2ZVJlc3BvbnNlKCk7CiB9CiAKIHZvaWQg
TmV0d29ya1Jlc291cmNlTG9hZGVyOjpkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnl0
ZXNTZW50LCB1bnNpZ25lZCBsb25nIGxvbmcgdG90YWxCeXRlc1RvQmVTZW50KQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaCBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmgKaW5k
ZXggOTZlZGFiMzc0N2U4MDdkOGVmODZkYjgyMzg1OTk2NjZhNzQ4OTQwOC4uZDg5Nzc0ODJmY2Yy
MmZmMDhmYzNkZmM1ZGIzNzJhZjlmMjMyMGNiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oCkBAIC05Nyw3ICs5Nyw3IEBA
IHB1YmxpYzoKICAgICBib29sIGlzU3luY2hyb25vdXMoKSBjb25zdCBvdmVycmlkZTsKICAgICBi
b29sIGlzQWxsb3dlZFRvQXNrVXNlckZvckNyZWRlbnRpYWxzKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gbV9pc0FsbG93ZWRUb0Fza1VzZXJGb3JDcmVkZW50aWFsczsgfQogICAgIHZvaWQgd2ls
bFNlbmRSZWRpcmVjdGVkUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiYgcmVkaXJlY3RSZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlJiYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmJiwgUmVzcG9uc2VDb21wbGV0aW9uSGFuZGxlciYmKSBvdmVycmlk
ZTsKKyAgICBTaG91bGRDb250aW51ZURpZFJlY2VpdmVSZXNwb25zZSBkaWRSZWNlaXZlUmVzcG9u
c2UoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJl
Y2VpdmVCdWZmZXIoUmVmPFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4mJiwgaW50IHJlcG9ydGVkRW5j
b2RlZERhdGFMZW5ndGgpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhjb25z
dCBXZWJDb3JlOjpOZXR3b3JrTG9hZE1ldHJpY3MmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZh
aWxMb2FkaW5nKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKQEAgLTIw
Niw3ICsyMDYsNiBAQCBwcml2YXRlOgogICAgIHN0ZDo6dW5pcXVlX3B0cjxOZXR3b3JrQ2FjaGU6
OkVudHJ5PiBtX2NhY2hlRW50cnlXYWl0aW5nRm9yQ29udGludWVEaWRSZWNlaXZlUmVzcG9uc2U7
CiAgICAgc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtMb2FkQ2hlY2tlcj4gbV9uZXR3b3JrTG9hZENo
ZWNrZXI7CiAgICAgYm9vbCBtX3Nob3VsZFJlc3RhcnRMb2FkIHsgZmFsc2UgfTsKLSAgICBSZXNw
b25zZUNvbXBsZXRpb25IYW5kbGVyIG1fcmVzcG9uc2VDb21wbGV0aW9uSGFuZGxlcjsKIAogICAg
IHN0ZDo6b3B0aW9uYWw8TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4gbV9uZXR3b3JrQWN0aXZpdHlU
cmFja2VyOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvUGlu
Z0xvYWQuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9QaW5nTG9hZC5jcHAKaW5k
ZXggNTdlYjc2MWIxNTlmZjhkNzIwOTQzNWRlNGUzYjNlNjg3ODIwNDZhYy4uYmRiNDEyM2MxNzUy
N2I2NzZhNjkyZjJkOWNjYWZkMTM3ODc4YWU0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9QaW5nTG9hZC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9QaW5nTG9hZC5jcHAKQEAgLTEyMSw5ICsxMjEsOSBAQCB2b2lkIFBpbmdMb2FkOjpkaWRS
ZWNlaXZlQ2hhbGxlbmdlKEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiYsIENoYWxsZW5nZUNvbXBs
ZXRpbwogICAgIGRpZEZpbmlzaChSZXNvdXJjZUVycm9yIHsgU3RyaW5nKCksIDAsIGN1cnJlbnRV
UkwoKSwgIkZhaWxlZCBIVFRQIGF1dGhlbnRpY2F0aW9uIl9zLCBSZXNvdXJjZUVycm9yOjpUeXBl
OjpBY2Nlc3NDb250cm9sIH0pOwogfQogCi12b2lkIFBpbmdMb2FkOjpkaWRSZWNlaXZlUmVzcG9u
c2UoUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNwb25zZUNvbXBsZXRpb25IYW5kbGVy
JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFBpbmdMb2FkOjpkaWRSZWNlaXZlUmVzcG9uc2VO
ZXR3b3JrU2Vzc2lvbihSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc3BvbnNlQ29tcGxl
dGlvbkhhbmRsZXImJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAgICBSRUxFQVNFX0xPR19JRl9B
TExPV0VEKCJkaWRSZWNlaXZlUmVzcG9uc2UgLSBodHRwU3RhdHVzQ29kZTogJWQiLCByZXNwb25z
ZS5odHRwU3RhdHVzQ29kZSgpKTsKKyAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKCJkaWRSZWNl
aXZlUmVzcG9uc2VOZXR3b3JrU2Vzc2lvbiAtIGh0dHBTdGF0dXNDb2RlOiAlZCIsIHJlc3BvbnNl
Lmh0dHBTdGF0dXNDb2RlKCkpOwogICAgIGF1dG8gd2Vha1RoaXMgPSBtYWtlV2Vha1B0cigqdGhp
cyk7CiAgICAgY29tcGxldGlvbkhhbmRsZXIoUG9saWN5QWN0aW9uOjpJZ25vcmUpOwogICAgIGlm
ICghd2Vha1RoaXMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1Bp
bmdMb2FkLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1BpbmdMb2FkLmgKaW5kZXgg
OWYwYzZiODZiNDIwZjQ1NWJmZmMyZGU2Yjk0ZWJlN2M4YmUxNDNhMC4uZTQ3YmYxNzMzMTIxYjcx
MGJlYjVlNWIzZmYxYWU2MWQ4YzRlYmZmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9QaW5nTG9hZC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
UGluZ0xvYWQuaApAQCAtNTYsNyArNTYsNyBAQCBwcml2YXRlOgogCiAgICAgdm9pZCB3aWxsUGVy
Zm9ybUhUVFBSZWRpcmVjdGlvbihXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYmLCBSZWRpcmVjdENvbXBsZXRpb25IYW5kbGVyJiYpIGZpbmFsOwog
ICAgIHZvaWQgZGlkUmVjZWl2ZUNoYWxsZW5nZShXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZSYmLCBDaGFsbGVuZ2VDb21wbGV0aW9uSGFuZGxlciYmKSBmaW5hbDsKLSAgICB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFJlc3BvbnNlQ29t
cGxldGlvbkhhbmRsZXImJikgZmluYWw7CisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VOZXR3
b3JrU2Vzc2lvbihXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFJlc3BvbnNlQ29tcGxldGlv
bkhhbmRsZXImJikgZmluYWw7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShSZWY8V2ViQ29yZTo6
U2hhcmVkQnVmZmVyPiYmKSBmaW5hbDsKICAgICB2b2lkIGRpZENvbXBsZXRlV2l0aEVycm9yKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImLCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrTG9hZE1l
dHJpY3MmKSBmaW5hbDsKICAgICB2b2lkIGRpZFNlbmREYXRhKHVpbnQ2NF90IHRvdGFsQnl0ZXNT
ZW50LCB1aW50NjRfdCB0b3RhbEJ5dGVzRXhwZWN0ZWRUb1NlbmQpIGZpbmFsOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9QcmVjb25uZWN0VGFzay5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1ByZWNvbm5lY3RUYXNrLmNwcAppbmRleCA3YTk5ODQ5
YWRiYzY3NDUxZGJmOTQwZmUwMjczNDI0MDVmZTg2NmZiLi40MjFkZTM0NDE0ZjljYmQ2NTdlNTBm
MDFjMzg3Yzc0MGM3ZTM5OTMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL1ByZWNvbm5lY3RUYXNrLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L1ByZWNvbm5lY3RUYXNrLmNwcApAQCAtNjgsMTAgKzY4LDEwIEBAIHZvaWQgUHJlY29ubmVjdFRh
c2s6OndpbGxTZW5kUmVkaXJlY3RlZFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiYsIFJlc291cmNl
UmVxdWVzCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CiAKLXZvaWQgUHJlY29ubmVjdFRh
c2s6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc3Bv
bnNlQ29tcGxldGlvbkhhbmRsZXImJiBjb21wbGV0aW9uSGFuZGxlcikKK2F1dG8gUHJlY29ubmVj
dFRhc2s6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZVJlc3BvbnNlJiYpIC0+IFNob3VsZENv
bnRpbnVlRGlkUmVjZWl2ZVJlc3BvbnNlCiB7CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0g
ICAgY29tcGxldGlvbkhhbmRsZXIoUG9saWN5QWN0aW9uOjpJZ25vcmUpOworICAgIHJldHVybiBT
aG91bGRDb250aW51ZURpZFJlY2VpdmVSZXNwb25zZTo6Tm87CiB9CiAKIHZvaWQgUHJlY29ubmVj
dFRhc2s6OmRpZFJlY2VpdmVCdWZmZXIoUmVmPFNoYXJlZEJ1ZmZlcj4mJiwgaW50IHJlcG9ydGVk
RW5jb2RlZERhdGFMZW5ndGgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL1ByZWNvbm5lY3RUYXNrLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1ByZWNv
bm5lY3RUYXNrLmgKaW5kZXggOGY5M2ZkYzJmNzMwYTFlOGQzMGYxZDZkZDU4NzJmZWQyNzFkZjM1
MC4uMjEzYWVkZjkxMTcxMzkzZjcwMjliZWYxYjhiMDY2OWI1MDc0Y2ZjNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9QcmVjb25uZWN0VGFzay5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvUHJlY29ubmVjdFRhc2suaApAQCAtNTEsNyArNTEsNyBA
QCBwcml2YXRlOgogICAgIGJvb2wgaXNBbGxvd2VkVG9Bc2tVc2VyRm9yQ3JlZGVudGlhbHMoKSBj
b25zdCBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZvaWQgZGlkU2VuZERhdGEodW5zaWdu
ZWQgbG9uZyBsb25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNUb0Jl
U2VudCkgZmluYWw7CiAgICAgdm9pZCB3aWxsU2VuZFJlZGlyZWN0ZWRSZXF1ZXN0KFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiByZWRpcmVjdFJl
cXVlc3QsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJlc3BvbnNlKSBmaW5h
bDsKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
JiYsIFJlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXImJikgZmluYWw7CisgICAgU2hvdWxkQ29udGlu
dWVEaWRSZWNlaXZlUmVzcG9uc2UgZGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmJikgZmluYWw7CiAgICAgdm9pZCBkaWRSZWNlaXZlQnVmZmVyKFJlZjxXZWJDb3Jl
OjpTaGFyZWRCdWZmZXI+JiYsIGludCByZXBvcnRlZEVuY29kZWREYXRhTGVuZ3RoKSBmaW5hbDsK
ICAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoY29uc3QgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRy
aWNzJikgZmluYWw7CiAgICAgdm9pZCBkaWRGYWlsTG9hZGluZyhjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZUVycm9yJikgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL2NhY2hlL05ldHdvcmtDYWNoZVNwZWN1bGF0aXZlTG9hZC5jcHAgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVNwZWN1bGF0aXZlTG9hZC5jcHAKaW5k
ZXggN2I0MGFiMTJkOTczMDZhMGU2OWMxOGVhNTFmZmIxOGEwNGU2YTlmYi4uMjgyYWZkN2Y5OWIw
N2RhYjdmNzAzZmE3OGYwZjE5YzIzODliZmJmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTcGVjdWxhdGl2ZUxvYWQuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3BlY3VsYXRp
dmVMb2FkLmNwcApAQCAtODAsNyArODAsNyBAQCB2b2lkIFNwZWN1bGF0aXZlTG9hZDo6d2lsbFNl
bmRSZWRpcmVjdGVkUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBSZXNvdQogICAg
IGRpZENvbXBsZXRlKCk7CiB9CiAKLXZvaWQgU3BlY3VsYXRpdmVMb2FkOjpkaWRSZWNlaXZlUmVz
cG9uc2UoUmVzb3VyY2VSZXNwb25zZSYmIHJlY2VpdmVkUmVzcG9uc2UsIFJlc3BvbnNlQ29tcGxl
dGlvbkhhbmRsZXImJiBjb21wbGV0aW9uSGFuZGxlcikKK2F1dG8gU3BlY3VsYXRpdmVMb2FkOjpk
aWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VSZXNwb25zZSYmIHJlY2VpdmVkUmVzcG9uc2UpIC0+
IFNob3VsZENvbnRpbnVlRGlkUmVjZWl2ZVJlc3BvbnNlCiB7CiAgICAgbV9yZXNwb25zZSA9IHJl
Y2VpdmVkUmVzcG9uc2U7CiAKQEAgLTkzLDcgKzkzLDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUxvYWQ6
OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZVJlc3BvbnNlJiYgcmVjZWl2ZWRSZXNwb25zZSwg
UmUKICAgICBlbHNlCiAgICAgICAgIG1fY2FjaGVFbnRyeSA9IG51bGxwdHI7CiAKLSAgICBjb21w
bGV0aW9uSGFuZGxlcihQb2xpY3lBY3Rpb246OlVzZSk7CisgICAgcmV0dXJuIFNob3VsZENvbnRp
bnVlRGlkUmVjZWl2ZVJlc3BvbnNlOjpZZXM7CiB9CiAKIHZvaWQgU3BlY3VsYXRpdmVMb2FkOjpk
aWRSZWNlaXZlQnVmZmVyKFJlZjxTaGFyZWRCdWZmZXI+JiYgYnVmZmVyLCBpbnQgcmVwb3J0ZWRF
bmNvZGVkRGF0YUxlbmd0aCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvY2FjaGUvTmV0d29ya0NhY2hlU3BlY3VsYXRpdmVMb2FkLmggYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVNwZWN1bGF0aXZlTG9hZC5oCmluZGV4IDZj
ZTc3Zjk5ZWEwMDM0NzNjNjk4MDdmZjg1OTBiMjIxYzJlMmQ0MGMuLjZjYWI5NTY1ZjU0OTkxZjYw
MDhhOTI3OWQ0M2IxMjg5MTMyN2U3MWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3BlY3VsYXRpdmVMb2FkLmgKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTcGVjdWxhdGl2ZUxvYWQu
aApAQCAtNTYsNyArNTYsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgaXNTeW5jaHJvbm91cygpIGNv
bnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgYm9vbCBpc0FsbG93ZWRUb0Fza1Vz
ZXJGb3JDcmVkZW50aWFscygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdm9p
ZCB3aWxsU2VuZFJlZGlyZWN0ZWRSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiByZWRpcmVjdFJlcXVlc3QsIFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJlc3BvbnNlKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJl
Y2VpdmVSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFJlc3BvbnNlQ29tcGxl
dGlvbkhhbmRsZXImJikgb3ZlcnJpZGU7CisgICAgU2hvdWxkQ29udGludWVEaWRSZWNlaXZlUmVz
cG9uc2UgZGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJikgb3Zl
cnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlQnVmZmVyKFJlZjxXZWJDb3JlOjpTaGFyZWRCdWZm
ZXI+JiYsIGludCByZXBvcnRlZEVuY29kZWREYXRhTGVuZ3RoKSBvdmVycmlkZTsKICAgICB2b2lk
IGRpZEZpbmlzaExvYWRpbmcoY29uc3QgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzJikgb3Zl
cnJpZGU7CiAgICAgdm9pZCBkaWRGYWlsTG9hZGluZyhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yJikgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2NhcHR1cmUvTmV0d29ya0RhdGFUYXNrUmVwbGF5LmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvY2FwdHVyZS9OZXR3b3JrRGF0YVRhc2tSZXBsYXkuY3BwCmluZGV4IGQ1NmM3NGVk
YTAwYjNjNDhlOWM3MWQ1M2U4OWE4ZjQ3Yjc5OTU2NDkuLjNkYjc3ZTczMmM1ZDlhMDA0Y2U5YTk1
YzY3NDkzZThmMzNmYTkzMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvY2FwdHVyZS9OZXR3b3JrRGF0YVRhc2tSZXBsYXkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvY2FwdHVyZS9OZXR3b3JrRGF0YVRhc2tSZXBsYXkuY3BwCkBAIC0yNDAs
NyArMjQwLDcgQEAgdm9pZCBOZXR3b3JrRGF0YVRhc2tSZXBsYXk6OmRpZFJlY2VpdmVSZXNwb25z
ZShXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG8KICAgICBERUJVR19MT0coIlVSTCA9
ICIgU1RSSU5HX1NQRUNJRklFUiwgREVCVUdfU1RSKG1fZmlyc3RSZXF1ZXN0LnVybCgpLnN0cmlu
ZygpKSk7CiAKICAgICBBU1NFUlQobV9jbGllbnQpOwotICAgIG1fY2xpZW50LT5kaWRSZWNlaXZl
UmVzcG9uc2UoV1RGTW92ZShyZXNwb25zZSksIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJl
ZigqdGhpcyldKFdlYkNvcmU6OlBvbGljeUFjdGlvbiBwb2xpY3lBY3Rpb24pIHsKKyAgICBtX2Ns
aWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNlTmV0d29ya1Nlc3Npb24oV1RGTW92ZShyZXNwb25zZSks
IFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyldKFdlYkNvcmU6OlBvbGljeUFj
dGlvbiBwb2xpY3lBY3Rpb24pIHsKICAgICAgICAgREVCVUdfTE9HKCJkaWRSZWNlaXZlUmVzcG9u
c2UgY2FsbGJhY2sgKCV1KSIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihwb2xpY3lBY3Rpb24pKTsK
IAogICAgICAgICBpZiAobV9zdGF0ZSA9PSBTdGF0ZTo6Q2FuY2VsaW5nIHx8IG1fc3RhdGUgPT0g
U3RhdGU6OkNvbXBsZXRlZCkgewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>