<?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>207959</bug_id>
          
          <creation_ts>2020-02-19 13:41:20 -0800</creation_ts>
          <short_desc>Regression(r247567) HTTP Disk cache capacity is no longer set</short_desc>
          <delta_ts>2020-02-19 15:34:03 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=199817</see_also>
          <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>207967</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>koivisto</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1620840</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-02-19 13:41:20 -0800</bug_when>
    <thetext>HTTP Disk cache capacity is no longer set since r247567 so we end up with a default capacity for std::numeric_limit&lt;size_t&gt;::max().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620841</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-02-19 13:41:50 -0800</bug_when>
    <thetext>&lt;rdar://problem/59603972&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620846</commentid>
    <comment_count>2</comment_count>
      <attachid>391197</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-02-19 13:58:49 -0800</bug_when>
    <thetext>Created attachment 391197
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620857</commentid>
    <comment_count>3</comment_count>
      <attachid>391197</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-02-19 14:12:27 -0800</bug_when>
    <thetext>Comment on attachment 391197
Patch

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

&gt; Source/WebKit/NetworkProcess/cache/NetworkCache.cpp:76
&gt; +        calculateURLCacheSizes(cacheModel, diskFreeSize, urlCacheMemoryCapacity, urlCacheDiskCapacity);
&gt; +    }
&gt; +    return urlCacheDiskCapacity;

This stuff could use a cleanups at some point. We have no &quot;URL cache&quot; and urlCacheMemoryCapacity is never used.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620858</commentid>
    <comment_count>4</comment_count>
      <attachid>391197</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-02-19 14:13:09 -0800</bug_when>
    <thetext>Comment on attachment 391197
Patch

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

&gt; Source/WebKit/NetworkProcess/NetworkProcess.cpp:2047
&gt; +    if (m_hasSetCacheModel &amp;&amp; cacheModel == m_cacheModel)

m_cacheModel should be an Optional instead of a bool m_hasSetCacheModel</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620881</commentid>
    <comment_count>5</comment_count>
      <attachid>391197</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-02-19 14:49:46 -0800</bug_when>
    <thetext>Comment on attachment 391197
Patch

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

&gt;&gt; Source/WebKit/NetworkProcess/NetworkProcess.cpp:2047
&gt;&gt; +    if (m_hasSetCacheModel &amp;&amp; cacheModel == m_cacheModel)
&gt; 
&gt; m_cacheModel should be an Optional instead of a bool m_hasSetCacheModel

I agree but since the patch will likely get cherry-picked, I think it is good to keep the change minimal. I will drop changes to this line. Not sure why I dropped the parentheses.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620882</commentid>
    <comment_count>6</comment_count>
      <attachid>391204</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-02-19 14:50:36 -0800</bug_when>
    <thetext>Created attachment 391204
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620909</commentid>
    <comment_count>7</comment_count>
      <attachid>391204</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-19 15:34:01 -0800</bug_when>
    <thetext>Comment on attachment 391204
Patch

Clearing flags on attachment: 391204

Committed r256967: &lt;https://trac.webkit.org/changeset/256967&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620910</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-19 15:34:03 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391197</attachid>
            <date>2020-02-19 13:58:49 -0800</date>
            <delta_ts>2020-02-19 14:50:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207959-20200219135848.patch</filename>
            <type>text/plain</type>
            <size>14965</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2OTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDgzN2RmYWJkMWExZGRiYzE4
YTdhZGQzYWMxYTc3YjEyMzZkZGZhNDcuLjAzMDhmZTIyOGQwZjRlZWY5N2M3MmM5M2E4MzQyOTQ5
YTM5ODQyZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUgQEAKKzIwMjAtMDItMTkgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBSZWdyZXNzaW9uKHIyNDc1NjcpIEhU
VFAgRGlzayBjYWNoZSBjYXBhY2l0eSBpcyBubyBsb25nZXIgc2V0CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc5NTkKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzU5NjAzOTcyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIE5ldHdvcmtQcm9jZXNzOjppbml0aWFsaXplTmV0d29ya1Byb2Nlc3MoKSB3YXMg
c2V0dGluZyB0aGUgY2FjaGUgbW9kZWwsIHdoaWNoCisgICAgICAgIHdvdWxkIGl0ZXJhdGUgb3Zl
ciBhbGwgbmV0d29yayBzZXNzaW9ucyB0byB1cGRhdGUgdGhlaXIgbmV0d29yayBjYWNoZSBjYXBh
Y2l0eS4KKyAgICAgICAgVGhlIGlzc3VlIHdhcyB0aGF0IG5ldHdvcmsgc2Vzc2lvbnMgd2VyZSBu
b3QgY29uc3RydWN0ZWQgeWV0IGF0IHRoaXMgcG9pbnQuCisgICAgICAgIFdoZW4gdGhlIG5ldHdv
cmsgc2Vzc2lvbihzKSB3b3VsZCBnZXQgY3JlYXRlZCBsYXRlciBvbiwgdGhleSB3b3VsZCBjb25z
dHJ1Y3QKKyAgICAgICAgdGhlaXIgTmV0d29ya0NhY2hlIGFuZCBpdCB3b3VsZCB1c2UgdGhlIGRl
ZmF1bHQgY2FwYWNpdHkgKGkuZS4KKyAgICAgICAgc3RkOjpudW1lcmljX2xpbWl0czxzaXplX3Q+
OjptYXgoKSkuCisKKyAgICAgICAgVG8gbWFrZSB0aGlzIHNhZmVyLCBJIGhhdmUgbW92ZWQgdGhl
IGNhcGFjaXR5IGNvbXB1dGF0aW9uIHRvIHRoZSBDYWNoZTo6b3BlbigpCisgICAgICAgIG1ldGhv
ZCBhbmQgbm93IHBhc3MgdGhlIGNhcGFjaXR5IHdoZW4gY29uc3RydWN0aW5nIHRoZSBuZXR3b3Jr
IGNhY2hlIHN0b3JhZ2UuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vz
cy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjppbml0aWFsaXplTmV0d29y
a1Byb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6c2V0Q2FjaGVNb2Rl
bFN5bmNocm9ub3VzbHlGb3JUZXN0aW5nKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nl
c3M6OnNldENhY2hlTW9kZWwpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9j
ZXNzLmg6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpjYWNoZU1vZGVsIGNvbnN0
KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5tZXNzYWdlcy5pbjoK
KyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jYWNoZS9DYWNoZVN0b3JhZ2VFbmdpbmVDYWNoZXMu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpDYWNoZVN0b3JhZ2U6OkNhY2hlczo6aW5pdGlhbGl6ZSk6
CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpjb21wdXRlQ2FwYWNpdHkpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrQ2FjaGU6OkNhY2hlOjpvcGVuKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29y
a0NhY2hlOjpDYWNoZTo6Y2FwYWNpdHkgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
Q2FjaGU6OkNhY2hlOjp1cGRhdGVDYXBhY2l0eSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtD
YWNoZTo6Q2FjaGU6OnNldENhcGFjaXR5KTogRGVsZXRlZC4KKyAgICAgICAgKiBOZXR3b3JrUHJv
Y2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuaDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jYWNo
ZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hl
OjpTdG9yYWdlOjpvcGVuKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpTdG9yYWdl
OjpTdG9yYWdlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpTdG9yYWdlOjpzZXRD
YXBhY2l0eSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3Rv
cmFnZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpzZXRDYWNoZU1vZGVsKToKKwogMjAyMC0wMi0xOSAg
QnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBSZS1kaXNhYmxl
IHRvcC1sZXZlbCBkYXRhIFVSTCBuYXZpZ2F0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAppbmRleCA5MmMxZWE1NTdlNDM5YWRjNzE4ZTYz
YWU5MTNiZjNlYWVhOTU0MGNhLi5mMzUwNzBiMjBlM2JlMjViMTAyYzNmMDBmNzE0ZWQyOTExZjhl
NjAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9j
ZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNz
LmNwcApAQCAtMzI2LDcgKzMyNiw3IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmluaXRpYWxpemVO
ZXR3b3JrUHJvY2VzcyhOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyYmCiAgICAgICAg
IG1lbW9yeVByZXNzdXJlSGFuZGxlci5pbnN0YWxsKCk7CiAgICAgfQogCi0gICAgc2V0Q2FjaGVN
b2RlbChwYXJhbWV0ZXJzLmNhY2hlTW9kZWwsIHBhcmFtZXRlcnMuZGVmYXVsdERhdGFTdG9yZVBh
cmFtZXRlcnMubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLm5ldHdvcmtDYWNoZURpcmVjdG9yeSk7
CisgICAgc2V0Q2FjaGVNb2RlbChwYXJhbWV0ZXJzLmNhY2hlTW9kZWwpOwogCiAjaWYgRU5BQkxF
KFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICBtX2lzSVRQRGF0YWJhc2VFbmFibGVkID0g
cGFyYW1ldGVycy5zaG91bGRFbmFibGVJVFBEYXRhYmFzZTsKQEAgLTIwMzgsNDAgKzIwMzgsMjEg
QEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6Y29udGludWVEZWNpZGVQZW5kaW5nRG93bmxvYWREZXN0
aW5hdGlvbihEb3dubG9hZElEIGRvd25sb2EKIAogdm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0Q2Fj
aGVNb2RlbFN5bmNocm9ub3VzbHlGb3JUZXN0aW5nKENhY2hlTW9kZWwgY2FjaGVNb2RlbCwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewotICAgIHNldENh
Y2hlTW9kZWwoY2FjaGVNb2RlbCwgeyB9KTsKKyAgICBzZXRDYWNoZU1vZGVsKGNhY2hlTW9kZWwp
OwogICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CiB9CiAKLXZvaWQgTmV0d29ya1Byb2Nlc3M6OnNl
dENhY2hlTW9kZWwoQ2FjaGVNb2RlbCBjYWNoZU1vZGVsLCBTdHJpbmcgY2FjaGVTdG9yYWdlRGly
ZWN0b3J5KQordm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0Q2FjaGVNb2RlbChDYWNoZU1vZGVsIGNh
Y2hlTW9kZWwpCiB7Ci0gICAgaWYgKG1faGFzU2V0Q2FjaGVNb2RlbCAmJiAoY2FjaGVNb2RlbCA9
PSBtX2NhY2hlTW9kZWwpKQorICAgIGlmIChtX2hhc1NldENhY2hlTW9kZWwgJiYgY2FjaGVNb2Rl
bCA9PSBtX2NhY2hlTW9kZWwpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1faGFzU2V0Q2FjaGVN
b2RlbCA9IHRydWU7CiAgICAgbV9jYWNoZU1vZGVsID0gY2FjaGVNb2RlbDsKIAotICAgIHVuc2ln
bmVkIHVybENhY2hlTWVtb3J5Q2FwYWNpdHkgPSAwOwotICAgIHVpbnQ2NF90IHVybENhY2hlRGlz
a0NhcGFjaXR5ID0gMDsKLSAgICB1aW50NjRfdCBkaXNrRnJlZVNpemUgPSAwOwotCi0gICAgLy8g
RklYTUU6IE1vdmUgdGhlIGNhY2hlIG1vZGVsIHRvIFdlYnNpdGVEYXRhU3RvcmUgc28gd2UgZG9u
J3QgbmVlZCB0byBhc3N1bWUgdGhlIGZpcnN0IGNhY2hlIGlzIG9uIHRoZSBzYW1lIHZvbHVtZSBh
cyBhbGwgY2FjaGVzLgotICAgIGZvckVhY2hOZXR3b3JrU2Vzc2lvbihbJl0oYXV0byYgc2Vzc2lv
bikgewotICAgICAgICBpZiAoIWNhY2hlU3RvcmFnZURpcmVjdG9yeS5pc051bGwoKSkKLSAgICAg
ICAgICAgIHJldHVybjsKLSAgICAgICAgaWYgKGF1dG8qIGNhY2hlID0gc2Vzc2lvbi5jYWNoZSgp
KQotICAgICAgICAgICAgY2FjaGVTdG9yYWdlRGlyZWN0b3J5ID0gY2FjaGUtPnN0b3JhZ2VEaXJl
Y3RvcnkoKTsKLSAgICB9KTsKLQotICAgIGlmIChGaWxlU3lzdGVtOjpnZXRWb2x1bWVGcmVlU3Bh
Y2UoY2FjaGVTdG9yYWdlRGlyZWN0b3J5LCBkaXNrRnJlZVNpemUpKSB7Ci0gICAgICAgIC8vIEFz
IGEgZnVkZ2UgZmFjdG9yLCB1c2UgMTAwMCBpbnN0ZWFkIG9mIDEwMjQsIGluIGNhc2UgdGhlIHJl
cG9ydGVkIGJ5dGUKLSAgICAgICAgLy8gY291bnQgZG9lc24ndCBhbGlnbiBleGFjdGx5IHRvIGEg
bWVnYWJ5dGUgYm91bmRhcnkuCi0gICAgICAgIGRpc2tGcmVlU2l6ZSAvPSBLQiAqIDEwMDA7Ci0g
ICAgICAgIGNhbGN1bGF0ZVVSTENhY2hlU2l6ZXMoY2FjaGVNb2RlbCwgZGlza0ZyZWVTaXplLCB1
cmxDYWNoZU1lbW9yeUNhcGFjaXR5LCB1cmxDYWNoZURpc2tDYXBhY2l0eSk7Ci0gICAgfQotCi0g
ICAgZm9yRWFjaE5ldHdvcmtTZXNzaW9uKFt1cmxDYWNoZURpc2tDYXBhY2l0eV0oYXV0byYgc2Vz
c2lvbikgeworICAgIGZvckVhY2hOZXR3b3JrU2Vzc2lvbihbXShhdXRvJiBzZXNzaW9uKSB7CiAg
ICAgICAgIGlmIChhdXRvKiBjYWNoZSA9IHNlc3Npb24uY2FjaGUoKSkKLSAgICAgICAgICAgIGNh
Y2hlLT5zZXRDYXBhY2l0eSh1cmxDYWNoZURpc2tDYXBhY2l0eSk7CisgICAgICAgICAgICBjYWNo
ZS0+dXBkYXRlQ2FwYWNpdHkoKTsKICAgICB9KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oCmluZGV4IDFiYjc2Y2YzNzg5YTZkZjc5YzA1ZDMy
ZDU0ZGQ4MDczMWJhMDhhNDAuLjNhYzgzNGY2ZWU1N2MyZGEyNDBkZDdjZmYyNDMzMGU3NTg0M2Q4
YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nl
c3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmgK
QEAgLTE4MCw2ICsxODAsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBwcm9jZXNzRGlkUmVzdW1lKCk7
CiAgICAgdm9pZCByZXN1bWUoKTsKIAorICAgIENhY2hlTW9kZWwgY2FjaGVNb2RlbCgpIGNvbnN0
IHsgcmV0dXJuIG1fY2FjaGVNb2RlbDsgfQorCiAgICAgLy8gRGlhZ25vc3RpYyBtZXNzYWdlcyBs
b2dnaW5nLgogICAgIHZvaWQgbG9nRGlhZ25vc3RpY01lc3NhZ2UoV2ViUGFnZVByb3h5SWRlbnRp
ZmllciwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRlc2NyaXB0aW9uLCBX
ZWJDb3JlOjpTaG91bGRTYW1wbGUpOwogICAgIHZvaWQgbG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRo
UmVzdWx0KFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29u
c3QgU3RyaW5nJiBkZXNjcmlwdGlvbiwgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRU
eXBlLCBXZWJDb3JlOjpTaG91bGRTYW1wbGUpOwpAQCAtNDA4LDcgKzQxMCw3IEBAIHByaXZhdGU6
CiAgICAgdm9pZCBhcHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZCgpOwogICAgIHZvaWQgYXBw
bGljYXRpb25XaWxsRW50ZXJGb3JlZ3JvdW5kKCk7CiAKLSAgICB2b2lkIHNldENhY2hlTW9kZWwo
Q2FjaGVNb2RlbCwgU3RyaW5nIG92ZXJyaWRlQ2FjaGVTdG9yYWdlRGlyZWN0b3J5KTsKKyAgICB2
b2lkIHNldENhY2hlTW9kZWwoQ2FjaGVNb2RlbCk7CiAgICAgdm9pZCBzZXRDYWNoZU1vZGVsU3lu
Y2hyb25vdXNseUZvclRlc3RpbmcoQ2FjaGVNb2RlbCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgp
PiYmKTsKICAgICB2b2lkIGFsbG93U3BlY2lmaWNIVFRQU0NlcnRpZmljYXRlRm9ySG9zdChjb25z
dCBXZWJDb3JlOjpDZXJ0aWZpY2F0ZUluZm8mLCBjb25zdCBTdHJpbmcmIGhvc3QpOwogICAgIHZv
aWQgY2xlYXJDYWNoZUZvckFsbE9yaWdpbnModWludDMyX3QgY2FjaGVzVG9DbGVhcik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3Nh
Z2VzLmluIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5tZXNz
YWdlcy5pbgppbmRleCBhZjcwOGFlNGZkMzViMTI3YTZiOThiMDYxZmFmNjBlZjg2MmM3YzJlLi5l
ZGRmY2RiYTM5YTMwN2VmNWUxZDA3YWYxMzVmMjQ3ZjEzZWVjMWFjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluCisrKyBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMuaW4K
QEAgLTcwLDcgKzcwLDcgQEAgbWVzc2FnZXMgLT4gTmV0d29ya1Byb2Nlc3MgTGVnYWN5UmVjZWl2
ZXIgewogICAgIEFsbG93U3BlY2lmaWNIVFRQU0NlcnRpZmljYXRlRm9ySG9zdChXZWJDb3JlOjpD
ZXJ0aWZpY2F0ZUluZm8gY2VydGlmaWNhdGUsIFN0cmluZyBob3N0KQogICAgIAogICAgIENsZWFy
Q2FjaGVGb3JBbGxPcmlnaW5zKHVpbnQzMl90IGNhY2hlc1RvQ2xlYXIpCi0gICAgU2V0Q2FjaGVN
b2RlbChlbnVtOnVpbnQ4X3QgV2ViS2l0OjpDYWNoZU1vZGVsIGNhY2hlTW9kZWwsIFN0cmluZyBv
dmVycmlkZUNhY2hlU3RvcmFnZURpcmVjdG9yeSkKKyAgICBTZXRDYWNoZU1vZGVsKGVudW06dWlu
dDhfdCBXZWJLaXQ6OkNhY2hlTW9kZWwgY2FjaGVNb2RlbCkKICAgICBTZXRDYWNoZU1vZGVsU3lu
Y2hyb25vdXNseUZvclRlc3RpbmcoZW51bTp1aW50OF90IFdlYktpdDo6Q2FjaGVNb2RlbCBjYWNo
ZU1vZGVsKSAtPiAoKSBTeW5jaHJvbm91cwogCiAgICAgUHJvY2Vzc0RpZFRyYW5zaXRpb25Ub0Jh
Y2tncm91bmQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNo
ZS9DYWNoZVN0b3JhZ2VFbmdpbmVDYWNoZXMuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9jYWNoZS9DYWNoZVN0b3JhZ2VFbmdpbmVDYWNoZXMuY3BwCmluZGV4IGE0YWU2YzgxMjky
MGZlMzlmN2I4MDEwYjJjN2ViNjdkNjA3NjI2YzkuLmFhZGZhMzVkMWQ4NTJjZTNjMTY1OGJjNGJk
NThiZWE0MDA2ZDMwYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
Y2FjaGUvQ2FjaGVTdG9yYWdlRW5naW5lQ2FjaGVzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL2NhY2hlL0NhY2hlU3RvcmFnZUVuZ2luZUNhY2hlcy5jcHAKQEAgLTE1MCw3
ICsxNTAsOCBAQCB2b2lkIENhY2hlczo6aW5pdGlhbGl6ZShXZWJDb3JlOjpET01DYWNoZUVuZ2lu
ZTo6Q29tcGxldGlvbkNhbGxiYWNrJiYgY2FsbGJhY2spCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKLSAgICBhdXRvIHN0b3JhZ2UgPSBTdG9yYWdlOjpvcGVuKG1fcm9vdFBhdGgsIFN0b3JhZ2U6
Ok1vZGU6OkF2b2lkUmFuZG9tbmVzcyk7CisgICAgc2l6ZV90IGNhcGFjaXR5ID0gc3RkOjpudW1l
cmljX2xpbWl0czxzaXplX3Q+OjptYXgoKTsgLy8gV2UgdXNlIGEgcGVyLW9yaWdpbiBxdW90YSBp
bnN0ZWFkIG9mIGEgZ2xvYmFsIGNhcGFjaXR5LgorICAgIGF1dG8gc3RvcmFnZSA9IFN0b3JhZ2U6
Om9wZW4obV9yb290UGF0aCwgU3RvcmFnZTo6TW9kZTo6QXZvaWRSYW5kb21uZXNzLCBjYXBhY2l0
eSk7CiAgICAgaWYgKCFzdG9yYWdlKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SKENhY2hl
U3RvcmFnZSwgIkNhY2hlczo6aW5pdGlhbGl6ZSBmYWlsZWQgb3BlbmluZyBzdG9yYWdlIik7CiAg
ICAgICAgIGNhbGxiYWNrKEVycm9yOjpXcml0ZURpc2spOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuY3BwIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuY3BwCmluZGV4IDQyOGJiYjhmNjJh
ZTA3ZDlmYzY0YjVhNmRmNTczZDAwZWM0MTBkMzkuLmU5MzQxNmQyMzZlNzQ0YzhmZGVhNjZmY2Q5
Mzg3NDZlNzFlMGZiNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
Y2FjaGUvTmV0d29ya0NhY2hlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2NhY2hlL05ldHdvcmtDYWNoZS5jcHAKQEAgLTYyLDkgKzYyLDI0IEBAIHN0YXRpYyBjb25zdCBB
dG9tU3RyaW5nJiByZXNvdXJjZVR5cGUoKQogICAgIHJldHVybiByZXNvdXJjZTsKIH0KIAorc3Rh
dGljIHNpemVfdCBjb21wdXRlQ2FwYWNpdHkoQ2FjaGVNb2RlbCBjYWNoZU1vZGVsLCBjb25zdCBT
dHJpbmcmIGNhY2hlUGF0aCkKK3sKKyAgICB1bnNpZ25lZCB1cmxDYWNoZU1lbW9yeUNhcGFjaXR5
ID0gMDsKKyAgICB1aW50NjRfdCB1cmxDYWNoZURpc2tDYXBhY2l0eSA9IDA7CisgICAgdWludDY0
X3QgZGlza0ZyZWVTaXplID0gMDsKKyAgICBpZiAoRmlsZVN5c3RlbTo6Z2V0Vm9sdW1lRnJlZVNw
YWNlKGNhY2hlUGF0aCwgZGlza0ZyZWVTaXplKSkgeworICAgICAgICAvLyBBcyBhIGZ1ZGdlIGZh
Y3RvciwgdXNlIDEwMDAgaW5zdGVhZCBvZiAxMDI0LCBpbiBjYXNlIHRoZSByZXBvcnRlZCBieXRl
CisgICAgICAgIC8vIGNvdW50IGRvZXNuJ3QgYWxpZ24gZXhhY3RseSB0byBhIG1lZ2FieXRlIGJv
dW5kYXJ5LgorICAgICAgICBkaXNrRnJlZVNpemUgLz0gS0IgKiAxMDAwOworICAgICAgICBjYWxj
dWxhdGVVUkxDYWNoZVNpemVzKGNhY2hlTW9kZWwsIGRpc2tGcmVlU2l6ZSwgdXJsQ2FjaGVNZW1v
cnlDYXBhY2l0eSwgdXJsQ2FjaGVEaXNrQ2FwYWNpdHkpOworICAgIH0KKyAgICByZXR1cm4gdXJs
Q2FjaGVEaXNrQ2FwYWNpdHk7Cit9CisKIFJlZlB0cjxDYWNoZT4gQ2FjaGU6Om9wZW4oTmV0d29y
a1Byb2Nlc3MmIG5ldHdvcmtQcm9jZXNzLCBjb25zdCBTdHJpbmcmIGNhY2hlUGF0aCwgT3B0aW9u
U2V0PENhY2hlT3B0aW9uPiBvcHRpb25zLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCiB7Ci0g
ICAgYXV0byBzdG9yYWdlID0gU3RvcmFnZTo6b3BlbihjYWNoZVBhdGgsIG9wdGlvbnMuY29udGFp
bnMoQ2FjaGVPcHRpb246OlRlc3RpbmdNb2RlKSA/IFN0b3JhZ2U6Ok1vZGU6OkF2b2lkUmFuZG9t
bmVzcyA6IFN0b3JhZ2U6Ok1vZGU6Ok5vcm1hbCk7CisgICAgYXV0byBjYXBhY2l0eSA9IGNvbXB1
dGVDYXBhY2l0eShuZXR3b3JrUHJvY2Vzcy5jYWNoZU1vZGVsKCksIGNhY2hlUGF0aCk7CisgICAg
YXV0byBzdG9yYWdlID0gU3RvcmFnZTo6b3BlbihjYWNoZVBhdGgsIG9wdGlvbnMuY29udGFpbnMo
Q2FjaGVPcHRpb246OlRlc3RpbmdNb2RlKSA/IFN0b3JhZ2U6Ok1vZGU6OkF2b2lkUmFuZG9tbmVz
cyA6IFN0b3JhZ2U6Ok1vZGU6Ok5vcm1hbCwgY2FwYWNpdHkpOwogCiAgICAgTE9HKE5ldHdvcmtD
YWNoZSwgIihOZXR3b3JrUHJvY2Vzcykgb3BlbmVkIGNhY2hlIHN0b3JhZ2UsIHN1Y2Nlc3MgJWQi
LCAhIXN0b3JhZ2UpOwogCkBAIC0xMjUsOSArMTQwLDE1IEBAIENhY2hlOjp+Q2FjaGUoKQogewog
fQogCi12b2lkIENhY2hlOjpzZXRDYXBhY2l0eShzaXplX3QgbWF4aW11bVNpemUpCitzaXplX3Qg
Q2FjaGU6OmNhcGFjaXR5KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9zdG9yYWdlLT5jYXBhY2l0
eSgpOworfQorCit2b2lkIENhY2hlOjp1cGRhdGVDYXBhY2l0eSgpCiB7Ci0gICAgbV9zdG9yYWdl
LT5zZXRDYXBhY2l0eShtYXhpbXVtU2l6ZSk7CisgICAgYXV0byBuZXdDYXBhY2l0eSA9IGNvbXB1
dGVDYXBhY2l0eShtX25ldHdvcmtQcm9jZXNzLT5jYWNoZU1vZGVsKCksIG1fc3RvcmFnZS0+YmFz
ZVBhdGhJc29sYXRlZENvcHkoKSk7CisgICAgbV9zdG9yYWdlLT5zZXRDYXBhY2l0eShuZXdDYXBh
Y2l0eSk7CiB9CiAKIEtleSBDYWNoZTo6bWFrZUNhY2hlS2V5KGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2NhY2hlL05ldHdvcmtDYWNoZS5oCmluZGV4IGNjZmM5OGEzNjMwYWZlMmU2NGJiNTljYzQ2OWEx
ZjcwNmFmNjAxYWUuLjA0ZDdkNmFmNzNiYzNiNzAxZjc2ZjBhNGMzNjQ5NWRmMDE4YmNiZjMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hl
LmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUu
aApAQCAtMTI3LDcgKzEyNyw4IEBAIGNsYXNzIENhY2hlIDogcHVibGljIFJlZkNvdW50ZWQ8Q2Fj
aGU+IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmUHRyPENhY2hlPiBvcGVuKE5ldHdvcmtQcm9j
ZXNzJiwgY29uc3QgU3RyaW5nJiBjYWNoZVBhdGgsIE9wdGlvblNldDxDYWNoZU9wdGlvbj4sIFBB
TDo6U2Vzc2lvbklEKTsKIAotICAgIHZvaWQgc2V0Q2FwYWNpdHkoc2l6ZV90KTsKKyAgICBzaXpl
X3QgY2FwYWNpdHkoKSBjb25zdDsKKyAgICB2b2lkIHVwZGF0ZUNhcGFjaXR5KCk7CiAKICAgICAv
LyBDb21wbGV0aW9uIGhhbmRsZXIgbWF5IGdldCBjYWxsZWQgYmFjayBzeW5jaHJvbm91c2x5IG9u
IGZhaWx1cmUuCiAgICAgc3RydWN0IFJldHJpZXZlSW5mbyB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcApp
bmRleCBiNzliYjEzMmI2NTNmZTgwZWMzMGI3OTBkNDZkMjgyMTVhNTBmZWQ1Li5iODIwZDczYTBl
YjUwMTM1OTIwZDFiOWY4NWRiZmM3NzhmYzBhNDY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHAKQEAg
LTE3NCw3ICsxNzQsNyBAQCBzdGF0aWMgU3RyaW5nIG1ha2VTYWx0RmlsZVBhdGgoY29uc3QgU3Ry
aW5nJiBiYXNlRGlyZWN0b3J5UGF0aCkKICAgICByZXR1cm4gRmlsZVN5c3RlbTo6cGF0aEJ5QXBw
ZW5kaW5nQ29tcG9uZW50KG1ha2VWZXJzaW9uZWREaXJlY3RvcnlQYXRoKGJhc2VEaXJlY3RvcnlQ
YXRoKSwgc2FsdEZpbGVOYW1lKTsKIH0KIAotUmVmUHRyPFN0b3JhZ2U+IFN0b3JhZ2U6Om9wZW4o
Y29uc3QgU3RyaW5nJiBiYXNlQ2FjaGVQYXRoLCBNb2RlIG1vZGUpCitSZWZQdHI8U3RvcmFnZT4g
U3RvcmFnZTo6b3Blbihjb25zdCBTdHJpbmcmIGJhc2VDYWNoZVBhdGgsIE1vZGUgbW9kZSwgc2l6
ZV90IGNhcGFjaXR5KQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAgICAgQVNT
RVJUKCFiYXNlQ2FjaGVQYXRoLmlzTnVsbCgpKTsKQEAgLTE4OCw3ICsxODgsNyBAQCBSZWZQdHI8
U3RvcmFnZT4gU3RvcmFnZTo6b3Blbihjb25zdCBTdHJpbmcmIGJhc2VDYWNoZVBhdGgsIE1vZGUg
bW9kZSkKICAgICBpZiAoIXNhbHQpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgcmV0
dXJuIGFkb3B0UmVmKG5ldyBTdG9yYWdlKGNhY2hlUGF0aCwgbW9kZSwgKnNhbHQpKTsKKyAgICBy
ZXR1cm4gYWRvcHRSZWYobmV3IFN0b3JhZ2UoY2FjaGVQYXRoLCBtb2RlLCAqc2FsdCwgY2FwYWNp
dHkpKTsKIH0KIAogdXNpbmcgUmVjb3JkRmlsZVRyYXZlcnNlRnVuY3Rpb24gPSBGdW5jdGlvbjx2
b2lkIChjb25zdCBTdHJpbmcmIGZpbGVOYW1lLCBjb25zdCBTdHJpbmcmIGhhc2hTdHJpbmcsIGNv
bnN0IFN0cmluZyYgdHlwZSwgYm9vbCBpc0Jsb2IsIGNvbnN0IFN0cmluZyYgcmVjb3JkRGlyZWN0
b3J5UGF0aCk+OwpAQCAtMjM4LDExICsyMzgsMTIgQEAgc3RhdGljIHZvaWQgZGVsZXRlRW1wdHlS
ZWNvcmRzRGlyZWN0b3JpZXMoY29uc3QgU3RyaW5nJiByZWNvcmRzUGF0aCkKICAgICB9KTsKIH0K
IAotU3RvcmFnZTo6U3RvcmFnZShjb25zdCBTdHJpbmcmIGJhc2VEaXJlY3RvcnlQYXRoLCBNb2Rl
IG1vZGUsIFNhbHQgc2FsdCkKK1N0b3JhZ2U6OlN0b3JhZ2UoY29uc3QgU3RyaW5nJiBiYXNlRGly
ZWN0b3J5UGF0aCwgTW9kZSBtb2RlLCBTYWx0IHNhbHQsIHNpemVfdCBjYXBhY2l0eSkKICAgICA6
IG1fYmFzZVBhdGgoYmFzZURpcmVjdG9yeVBhdGgpCiAgICAgLCBtX3JlY29yZHNQYXRoKG1ha2VS
ZWNvcmRzRGlyZWN0b3J5UGF0aChiYXNlRGlyZWN0b3J5UGF0aCkpCiAgICAgLCBtX21vZGUobW9k
ZSkKICAgICAsIG1fc2FsdChzYWx0KQorICAgICwgbV9jYXBhY2l0eShjYXBhY2l0eSkKICAgICAs
IG1fcmVhZE9wZXJhdGlvblRpbWVvdXRUaW1lcigqdGhpcywgJlN0b3JhZ2U6OmNhbmNlbEFsbFJl
YWRPcGVyYXRpb25zKQogICAgICwgbV93cml0ZU9wZXJhdGlvbkRpc3BhdGNoVGltZXIoKnRoaXMs
ICZTdG9yYWdlOjpkaXNwYXRjaFBlbmRpbmdXcml0ZU9wZXJhdGlvbnMpCiAgICAgLCBtX2lvUXVl
dWUoV29ya1F1ZXVlOjpjcmVhdGUoImNvbS5hcHBsZS5XZWJLaXQuQ2FjaGUuU3RvcmFnZSIsIFdv
cmtRdWV1ZTo6VHlwZTo6Q29uY3VycmVudCkpCkBAIC05ODYsNiArOTg3LDggQEAgdm9pZCBTdG9y
YWdlOjp0cmF2ZXJzZShjb25zdCBTdHJpbmcmIHR5cGUsIE9wdGlvblNldDxUcmF2ZXJzZUZsYWc+
IGZsYWdzLCBUcmF2ZXIKIHZvaWQgU3RvcmFnZTo6c2V0Q2FwYWNpdHkoc2l6ZV90IGNhcGFjaXR5
KQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisgICAgaWYgKG1fY2FwYWNpdHkg
PT0gY2FwYWNpdHkpCisgICAgICAgIHJldHVybjsKIAogI2lmIEFTU0VSVF9FTkFCTEVECiAgICAg
Y29uc3Qgc2l6ZV90IGFzc3VtZWRBdmVyYWdlUmVjb3JkU2l6ZSA9IDUwIDw8IDEwOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9y
YWdlLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0
b3JhZ2UuaAppbmRleCA0M2Q4ZTBlYmQ3ODJhZTQxMGJmMzg0YTY3Nzc1MThjY2I0ZmMxNzg5Li42
NzEwMzhmYTQ4YjJkZjkzYjUxYmYxZWIyNTI3MWM3YzMxYzJjYTFlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2Uu
aApAQCAtNDgsNyArNDgsNyBAQCBjbGFzcyBJT0NoYW5uZWw7CiBjbGFzcyBTdG9yYWdlIDogcHVi
bGljIFRocmVhZFNhZmVSZWZDb3VudGVkPFN0b3JhZ2UsIFdURjo6RGVzdHJ1Y3Rpb25UaHJlYWQ6
Ok1haW4+IHsKIHB1YmxpYzoKICAgICBlbnVtIGNsYXNzIE1vZGUgeyBOb3JtYWwsIEF2b2lkUmFu
ZG9tbmVzcyB9OwotICAgIHN0YXRpYyBSZWZQdHI8U3RvcmFnZT4gb3Blbihjb25zdCBTdHJpbmcm
IGNhY2hlUGF0aCwgTW9kZSk7CisgICAgc3RhdGljIFJlZlB0cjxTdG9yYWdlPiBvcGVuKGNvbnN0
IFN0cmluZyYgY2FjaGVQYXRoLCBNb2RlLCBzaXplX3QgY2FwYWNpdHkpOwogCiAgICAgc3RydWN0
IFJlY29yZCB7CiAgICAgICAgIEtleSBrZXk7CkBAIC0xMjAsNyArMTIwLDcgQEAgcHVibGljOgog
ICAgIHZvaWQgd3JpdGVXaXRob3V0V2FpdGluZygpIHsgbV9pbml0aWFsV3JpdGVEZWxheSA9IDBf
czsgfTsKIAogcHJpdmF0ZToKLSAgICBTdG9yYWdlKGNvbnN0IFN0cmluZyYgZGlyZWN0b3J5UGF0
aCwgTW9kZSwgU2FsdCk7CisgICAgU3RvcmFnZShjb25zdCBTdHJpbmcmIGRpcmVjdG9yeVBhdGgs
IE1vZGUsIFNhbHQsIHNpemVfdCBjYXBhY2l0eSk7CiAKICAgICBTdHJpbmcgcmVjb3JkRGlyZWN0
b3J5UGF0aEZvcktleShjb25zdCBLZXkmKSBjb25zdDsKICAgICBTdHJpbmcgcmVjb3JkUGF0aEZv
cktleShjb25zdCBLZXkmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nl
c3NQb29sLmNwcAppbmRleCBlODcwYzdkZDJlMjZjYTUzOTBmOTA3NmNkYWFlNDkwMGZlODY0Yjcx
Li5iZWU3ODAzYTkyZDNkNTA3N2RhOGVkMGQxNDMyOTYzN2Q0YmRmNzk2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCkBAIC0xNjEzLDcgKzE2MTMsNyBAQCB2
b2lkIFdlYlByb2Nlc3NQb29sOjpzZXRDYWNoZU1vZGVsKENhY2hlTW9kZWwgY2FjaGVNb2RlbCkK
ICAgICBzZW5kVG9BbGxQcm9jZXNzZXMoTWVzc2FnZXM6OldlYlByb2Nlc3M6OlNldENhY2hlTW9k
ZWwoY2FjaGVNb2RlbCkpOwogCiAgICAgaWYgKG1fbmV0d29ya1Byb2Nlc3MpCi0gICAgICAgIG1f
bmV0d29ya1Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpTZXRDYWNoZU1v
ZGVsKGNhY2hlTW9kZWwsIHsgfSksIDApOworICAgICAgICBtX25ldHdvcmtQcm9jZXNzLT5zZW5k
KE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vzczo6U2V0Q2FjaGVNb2RlbChjYWNoZU1vZGVsKSwgMCk7
CiB9CiAKIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnNldENhY2hlTW9kZWxTeW5jaHJvbm91c2x5Rm9y
VGVzdGluZyhDYWNoZU1vZGVsIGNhY2hlTW9kZWwpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391204</attachid>
            <date>2020-02-19 14:50:36 -0800</date>
            <delta_ts>2020-02-19 15:34:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207959-20200219145036.patch</filename>
            <type>text/plain</type>
            <size>15010</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2OTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDgzN2RmYWJkMWExZGRiYzE4
YTdhZGQzYWMxYTc3YjEyMzZkZGZhNDcuLmNjZThjMGM2ZWE2MTcyMGRjOGMxNzNmMzUzZmRiMDAw
NTllMjExY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUgQEAKKzIwMjAtMDItMTkgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBSZWdyZXNzaW9uKHIyNDc1NjcpIEhU
VFAgRGlzayBjYWNoZSBjYXBhY2l0eSBpcyBubyBsb25nZXIgc2V0CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc5NTkKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzU5NjAzOTcyPgorCisgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4u
CisKKyAgICAgICAgTmV0d29ya1Byb2Nlc3M6OmluaXRpYWxpemVOZXR3b3JrUHJvY2VzcygpIHdh
cyBzZXR0aW5nIHRoZSBjYWNoZSBtb2RlbCwgd2hpY2gKKyAgICAgICAgd291bGQgaXRlcmF0ZSBv
dmVyIGFsbCBuZXR3b3JrIHNlc3Npb25zIHRvIHVwZGF0ZSB0aGVpciBuZXR3b3JrIGNhY2hlIGNh
cGFjaXR5LgorICAgICAgICBUaGUgaXNzdWUgd2FzIHRoYXQgbmV0d29yayBzZXNzaW9ucyB3ZXJl
IG5vdCBjb25zdHJ1Y3RlZCB5ZXQgYXQgdGhpcyBwb2ludC4KKyAgICAgICAgV2hlbiB0aGUgbmV0
d29yayBzZXNzaW9uKHMpIHdvdWxkIGdldCBjcmVhdGVkIGxhdGVyIG9uLCB0aGV5IHdvdWxkIGNv
bnN0cnVjdAorICAgICAgICB0aGVpciBOZXR3b3JrQ2FjaGUgYW5kIGl0IHdvdWxkIHVzZSB0aGUg
ZGVmYXVsdCBjYXBhY2l0eSAoaS5lLgorICAgICAgICBzdGQ6Om51bWVyaWNfbGltaXRzPHNpemVf
dD46Om1heCgpKS4KKworICAgICAgICBUbyBtYWtlIHRoaXMgc2FmZXIsIEkgaGF2ZSBtb3ZlZCB0
aGUgY2FwYWNpdHkgY29tcHV0YXRpb24gdG8gdGhlIENhY2hlOjpvcGVuKCkKKyAgICAgICAgbWV0
aG9kIGFuZCBub3cgcGFzcyB0aGUgY2FwYWNpdHkgd2hlbiBjb25zdHJ1Y3RpbmcgdGhlIG5ldHdv
cmsgY2FjaGUgc3RvcmFnZS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9j
ZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OmluaXRpYWxpemVOZXR3
b3JrUHJvY2Vzcyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpzZXRDYWNoZU1v
ZGVsU3luY2hyb25vdXNseUZvclRlc3RpbmcpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJv
Y2Vzczo6c2V0Q2FjaGVNb2RlbCk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1By
b2Nlc3MuaDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OmNhY2hlTW9kZWwgY29u
c3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmlu
OgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hlL0NhY2hlU3RvcmFnZUVuZ2luZUNhY2hl
cy5jcHA6CisgICAgICAgIChXZWJLaXQ6OkNhY2hlU3RvcmFnZTo6Q2FjaGVzOjppbml0aWFsaXpl
KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OmNvbXB1dGVDYXBhY2l0eSk6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6Q2FjaGU6Om9wZW4pOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrQ2FjaGU6OkNhY2hlOjpjYXBhY2l0eSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdv
cmtDYWNoZTo6Q2FjaGU6OnVwZGF0ZUNhcGFjaXR5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29y
a0NhY2hlOjpDYWNoZTo6c2V0Q2FwYWNpdHkpOiBEZWxldGVkLgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZS5oOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2Nh
Y2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2Fj
aGU6OlN0b3JhZ2U6Om9wZW4pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OlN0b3Jh
Z2U6OlN0b3JhZ2UpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OlN0b3JhZ2U6OnNl
dENhcGFjaXR5KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVT
dG9yYWdlLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OnNldENhY2hlTW9kZWwpOgorCiAyMDIwLTAyLTE5
ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFJlLWRpc2Fi
bGUgdG9wLWxldmVsIGRhdGEgVVJMIG5hdmlnYXRpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCmluZGV4IDkyYzFlYTU1N2U0MzlhZGM3MThl
NjNhZTkxM2JmM2VhZWE5NTQwY2EuLjdkZmE2NDMzNDgwOTE3N2ZkNTZlYmYwYmI4NzA3NDgwY2Q4
NzBkMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1By
b2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nl
c3MuY3BwCkBAIC0zMjYsNyArMzI2LDcgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6aW5pdGlhbGl6
ZU5ldHdvcmtQcm9jZXNzKE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJiYKICAgICAg
ICAgbWVtb3J5UHJlc3N1cmVIYW5kbGVyLmluc3RhbGwoKTsKICAgICB9CiAKLSAgICBzZXRDYWNo
ZU1vZGVsKHBhcmFtZXRlcnMuY2FjaGVNb2RlbCwgcGFyYW1ldGVycy5kZWZhdWx0RGF0YVN0b3Jl
UGFyYW1ldGVycy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMubmV0d29ya0NhY2hlRGlyZWN0b3J5
KTsKKyAgICBzZXRDYWNoZU1vZGVsKHBhcmFtZXRlcnMuY2FjaGVNb2RlbCk7CiAKICNpZiBFTkFC
TEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQogICAgIG1faXNJVFBEYXRhYmFzZUVuYWJsZWQg
PSBwYXJhbWV0ZXJzLnNob3VsZEVuYWJsZUlUUERhdGFiYXNlOwpAQCAtMjAzOCwxMSArMjAzOCwx
MSBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzOjpjb250aW51ZURlY2lkZVBlbmRpbmdEb3dubG9hZERl
c3RpbmF0aW9uKERvd25sb2FkSUQgZG93bmxvYQogCiB2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRD
YWNoZU1vZGVsU3luY2hyb25vdXNseUZvclRlc3RpbmcoQ2FjaGVNb2RlbCBjYWNoZU1vZGVsLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7Ci0gICAgc2V0
Q2FjaGVNb2RlbChjYWNoZU1vZGVsLCB7IH0pOworICAgIHNldENhY2hlTW9kZWwoY2FjaGVNb2Rl
bCk7CiAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKIH0KIAotdm9pZCBOZXR3b3JrUHJvY2Vzczo6
c2V0Q2FjaGVNb2RlbChDYWNoZU1vZGVsIGNhY2hlTW9kZWwsIFN0cmluZyBjYWNoZVN0b3JhZ2VE
aXJlY3RvcnkpCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRDYWNoZU1vZGVsKENhY2hlTW9kZWwg
Y2FjaGVNb2RlbCkKIHsKICAgICBpZiAobV9oYXNTZXRDYWNoZU1vZGVsICYmIChjYWNoZU1vZGVs
ID09IG1fY2FjaGVNb2RlbCkpCiAgICAgICAgIHJldHVybjsKQEAgLTIwNTAsMjggKzIwNTAsOSBA
QCB2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRDYWNoZU1vZGVsKENhY2hlTW9kZWwgY2FjaGVNb2Rl
bCwgU3RyaW5nIGNhY2hlU3RvcmFnZURpcgogICAgIG1faGFzU2V0Q2FjaGVNb2RlbCA9IHRydWU7
CiAgICAgbV9jYWNoZU1vZGVsID0gY2FjaGVNb2RlbDsKIAotICAgIHVuc2lnbmVkIHVybENhY2hl
TWVtb3J5Q2FwYWNpdHkgPSAwOwotICAgIHVpbnQ2NF90IHVybENhY2hlRGlza0NhcGFjaXR5ID0g
MDsKLSAgICB1aW50NjRfdCBkaXNrRnJlZVNpemUgPSAwOwotCi0gICAgLy8gRklYTUU6IE1vdmUg
dGhlIGNhY2hlIG1vZGVsIHRvIFdlYnNpdGVEYXRhU3RvcmUgc28gd2UgZG9uJ3QgbmVlZCB0byBh
c3N1bWUgdGhlIGZpcnN0IGNhY2hlIGlzIG9uIHRoZSBzYW1lIHZvbHVtZSBhcyBhbGwgY2FjaGVz
LgotICAgIGZvckVhY2hOZXR3b3JrU2Vzc2lvbihbJl0oYXV0byYgc2Vzc2lvbikgewotICAgICAg
ICBpZiAoIWNhY2hlU3RvcmFnZURpcmVjdG9yeS5pc051bGwoKSkKLSAgICAgICAgICAgIHJldHVy
bjsKLSAgICAgICAgaWYgKGF1dG8qIGNhY2hlID0gc2Vzc2lvbi5jYWNoZSgpKQotICAgICAgICAg
ICAgY2FjaGVTdG9yYWdlRGlyZWN0b3J5ID0gY2FjaGUtPnN0b3JhZ2VEaXJlY3RvcnkoKTsKLSAg
ICB9KTsKLQotICAgIGlmIChGaWxlU3lzdGVtOjpnZXRWb2x1bWVGcmVlU3BhY2UoY2FjaGVTdG9y
YWdlRGlyZWN0b3J5LCBkaXNrRnJlZVNpemUpKSB7Ci0gICAgICAgIC8vIEFzIGEgZnVkZ2UgZmFj
dG9yLCB1c2UgMTAwMCBpbnN0ZWFkIG9mIDEwMjQsIGluIGNhc2UgdGhlIHJlcG9ydGVkIGJ5dGUK
LSAgICAgICAgLy8gY291bnQgZG9lc24ndCBhbGlnbiBleGFjdGx5IHRvIGEgbWVnYWJ5dGUgYm91
bmRhcnkuCi0gICAgICAgIGRpc2tGcmVlU2l6ZSAvPSBLQiAqIDEwMDA7Ci0gICAgICAgIGNhbGN1
bGF0ZVVSTENhY2hlU2l6ZXMoY2FjaGVNb2RlbCwgZGlza0ZyZWVTaXplLCB1cmxDYWNoZU1lbW9y
eUNhcGFjaXR5LCB1cmxDYWNoZURpc2tDYXBhY2l0eSk7Ci0gICAgfQotCi0gICAgZm9yRWFjaE5l
dHdvcmtTZXNzaW9uKFt1cmxDYWNoZURpc2tDYXBhY2l0eV0oYXV0byYgc2Vzc2lvbikgeworICAg
IGZvckVhY2hOZXR3b3JrU2Vzc2lvbihbXShhdXRvJiBzZXNzaW9uKSB7CiAgICAgICAgIGlmIChh
dXRvKiBjYWNoZSA9IHNlc3Npb24uY2FjaGUoKSkKLSAgICAgICAgICAgIGNhY2hlLT5zZXRDYXBh
Y2l0eSh1cmxDYWNoZURpc2tDYXBhY2l0eSk7CisgICAgICAgICAgICBjYWNoZS0+dXBkYXRlQ2Fw
YWNpdHkoKTsKICAgICB9KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUHJvY2Vzcy5oCmluZGV4IDFiYjc2Y2YzNzg5YTZkZjc5YzA1ZDMyZDU0ZGQ4MDczMWJh
MDhhNDAuLjNhYzgzNGY2ZWU1N2MyZGEyNDBkZDdjZmYyNDMzMGU3NTg0M2Q4YTggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaAorKysgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmgKQEAgLTE4MCw2ICsx
ODAsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBwcm9jZXNzRGlkUmVzdW1lKCk7CiAgICAgdm9pZCBy
ZXN1bWUoKTsKIAorICAgIENhY2hlTW9kZWwgY2FjaGVNb2RlbCgpIGNvbnN0IHsgcmV0dXJuIG1f
Y2FjaGVNb2RlbDsgfQorCiAgICAgLy8gRGlhZ25vc3RpYyBtZXNzYWdlcyBsb2dnaW5nLgogICAg
IHZvaWQgbG9nRGlhZ25vc3RpY01lc3NhZ2UoV2ViUGFnZVByb3h5SWRlbnRpZmllciwgY29uc3Qg
U3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRlc2NyaXB0aW9uLCBXZWJDb3JlOjpTaG91
bGRTYW1wbGUpOwogICAgIHZvaWQgbG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoUmVzdWx0KFdlYlBh
Z2VQcm94eUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBk
ZXNjcmlwdGlvbiwgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLCBXZWJDb3Jl
OjpTaG91bGRTYW1wbGUpOwpAQCAtNDA4LDcgKzQxMCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBh
cHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZCgpOwogICAgIHZvaWQgYXBwbGljYXRpb25XaWxs
RW50ZXJGb3JlZ3JvdW5kKCk7CiAKLSAgICB2b2lkIHNldENhY2hlTW9kZWwoQ2FjaGVNb2RlbCwg
U3RyaW5nIG92ZXJyaWRlQ2FjaGVTdG9yYWdlRGlyZWN0b3J5KTsKKyAgICB2b2lkIHNldENhY2hl
TW9kZWwoQ2FjaGVNb2RlbCk7CiAgICAgdm9pZCBzZXRDYWNoZU1vZGVsU3luY2hyb25vdXNseUZv
clRlc3RpbmcoQ2FjaGVNb2RlbCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKICAgICB2
b2lkIGFsbG93U3BlY2lmaWNIVFRQU0NlcnRpZmljYXRlRm9ySG9zdChjb25zdCBXZWJDb3JlOjpD
ZXJ0aWZpY2F0ZUluZm8mLCBjb25zdCBTdHJpbmcmIGhvc3QpOwogICAgIHZvaWQgY2xlYXJDYWNo
ZUZvckFsbE9yaWdpbnModWludDMyX3QgY2FjaGVzVG9DbGVhcik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5tZXNzYWdlcy5pbgppbmRl
eCBhZjcwOGFlNGZkMzViMTI3YTZiOThiMDYxZmFmNjBlZjg2MmM3YzJlLi5lZGRmY2RiYTM5YTMw
N2VmNWUxZDA3YWYxMzVmMjQ3ZjEzZWVjMWFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMuaW4KQEAgLTcwLDcgKzcw
LDcgQEAgbWVzc2FnZXMgLT4gTmV0d29ya1Byb2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogICAgIEFs
bG93U3BlY2lmaWNIVFRQU0NlcnRpZmljYXRlRm9ySG9zdChXZWJDb3JlOjpDZXJ0aWZpY2F0ZUlu
Zm8gY2VydGlmaWNhdGUsIFN0cmluZyBob3N0KQogICAgIAogICAgIENsZWFyQ2FjaGVGb3JBbGxP
cmlnaW5zKHVpbnQzMl90IGNhY2hlc1RvQ2xlYXIpCi0gICAgU2V0Q2FjaGVNb2RlbChlbnVtOnVp
bnQ4X3QgV2ViS2l0OjpDYWNoZU1vZGVsIGNhY2hlTW9kZWwsIFN0cmluZyBvdmVycmlkZUNhY2hl
U3RvcmFnZURpcmVjdG9yeSkKKyAgICBTZXRDYWNoZU1vZGVsKGVudW06dWludDhfdCBXZWJLaXQ6
OkNhY2hlTW9kZWwgY2FjaGVNb2RlbCkKICAgICBTZXRDYWNoZU1vZGVsU3luY2hyb25vdXNseUZv
clRlc3RpbmcoZW51bTp1aW50OF90IFdlYktpdDo6Q2FjaGVNb2RlbCBjYWNoZU1vZGVsKSAtPiAo
KSBTeW5jaHJvbm91cwogCiAgICAgUHJvY2Vzc0RpZFRyYW5zaXRpb25Ub0JhY2tncm91bmQoKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9DYWNoZVN0b3Jh
Z2VFbmdpbmVDYWNoZXMuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9D
YWNoZVN0b3JhZ2VFbmdpbmVDYWNoZXMuY3BwCmluZGV4IGE0YWU2YzgxMjkyMGZlMzlmN2I4MDEw
YjJjN2ViNjdkNjA3NjI2YzkuLmFhZGZhMzVkMWQ4NTJjZTNjMTY1OGJjNGJkNThiZWE0MDA2ZDMw
YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvQ2FjaGVT
dG9yYWdlRW5naW5lQ2FjaGVzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2NhY2hlL0NhY2hlU3RvcmFnZUVuZ2luZUNhY2hlcy5jcHAKQEAgLTE1MCw3ICsxNTAsOCBAQCB2
b2lkIENhY2hlczo6aW5pdGlhbGl6ZShXZWJDb3JlOjpET01DYWNoZUVuZ2luZTo6Q29tcGxldGlv
bkNhbGxiYWNrJiYgY2FsbGJhY2spCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBhdXRv
IHN0b3JhZ2UgPSBTdG9yYWdlOjpvcGVuKG1fcm9vdFBhdGgsIFN0b3JhZ2U6Ok1vZGU6OkF2b2lk
UmFuZG9tbmVzcyk7CisgICAgc2l6ZV90IGNhcGFjaXR5ID0gc3RkOjpudW1lcmljX2xpbWl0czxz
aXplX3Q+OjptYXgoKTsgLy8gV2UgdXNlIGEgcGVyLW9yaWdpbiBxdW90YSBpbnN0ZWFkIG9mIGEg
Z2xvYmFsIGNhcGFjaXR5LgorICAgIGF1dG8gc3RvcmFnZSA9IFN0b3JhZ2U6Om9wZW4obV9yb290
UGF0aCwgU3RvcmFnZTo6TW9kZTo6QXZvaWRSYW5kb21uZXNzLCBjYXBhY2l0eSk7CiAgICAgaWYg
KCFzdG9yYWdlKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SKENhY2hlU3RvcmFnZSwgIkNh
Y2hlczo6aW5pdGlhbGl6ZSBmYWlsZWQgb3BlbmluZyBzdG9yYWdlIik7CiAgICAgICAgIGNhbGxi
YWNrKEVycm9yOjpXcml0ZURpc2spOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuY3BwCmluZGV4IDQyOGJiYjhmNjJhZTA3ZDlmYzY0YjVh
NmRmNTczZDAwZWM0MTBkMzkuLmU5MzQxNmQyMzZlNzQ0YzhmZGVhNjZmY2Q5Mzg3NDZlNzFlMGZi
NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29y
a0NhY2hlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdv
cmtDYWNoZS5jcHAKQEAgLTYyLDkgKzYyLDI0IEBAIHN0YXRpYyBjb25zdCBBdG9tU3RyaW5nJiBy
ZXNvdXJjZVR5cGUoKQogICAgIHJldHVybiByZXNvdXJjZTsKIH0KIAorc3RhdGljIHNpemVfdCBj
b21wdXRlQ2FwYWNpdHkoQ2FjaGVNb2RlbCBjYWNoZU1vZGVsLCBjb25zdCBTdHJpbmcmIGNhY2hl
UGF0aCkKK3sKKyAgICB1bnNpZ25lZCB1cmxDYWNoZU1lbW9yeUNhcGFjaXR5ID0gMDsKKyAgICB1
aW50NjRfdCB1cmxDYWNoZURpc2tDYXBhY2l0eSA9IDA7CisgICAgdWludDY0X3QgZGlza0ZyZWVT
aXplID0gMDsKKyAgICBpZiAoRmlsZVN5c3RlbTo6Z2V0Vm9sdW1lRnJlZVNwYWNlKGNhY2hlUGF0
aCwgZGlza0ZyZWVTaXplKSkgeworICAgICAgICAvLyBBcyBhIGZ1ZGdlIGZhY3RvciwgdXNlIDEw
MDAgaW5zdGVhZCBvZiAxMDI0LCBpbiBjYXNlIHRoZSByZXBvcnRlZCBieXRlCisgICAgICAgIC8v
IGNvdW50IGRvZXNuJ3QgYWxpZ24gZXhhY3RseSB0byBhIG1lZ2FieXRlIGJvdW5kYXJ5LgorICAg
ICAgICBkaXNrRnJlZVNpemUgLz0gS0IgKiAxMDAwOworICAgICAgICBjYWxjdWxhdGVVUkxDYWNo
ZVNpemVzKGNhY2hlTW9kZWwsIGRpc2tGcmVlU2l6ZSwgdXJsQ2FjaGVNZW1vcnlDYXBhY2l0eSwg
dXJsQ2FjaGVEaXNrQ2FwYWNpdHkpOworICAgIH0KKyAgICByZXR1cm4gdXJsQ2FjaGVEaXNrQ2Fw
YWNpdHk7Cit9CisKIFJlZlB0cjxDYWNoZT4gQ2FjaGU6Om9wZW4oTmV0d29ya1Byb2Nlc3MmIG5l
dHdvcmtQcm9jZXNzLCBjb25zdCBTdHJpbmcmIGNhY2hlUGF0aCwgT3B0aW9uU2V0PENhY2hlT3B0
aW9uPiBvcHRpb25zLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCiB7Ci0gICAgYXV0byBzdG9y
YWdlID0gU3RvcmFnZTo6b3BlbihjYWNoZVBhdGgsIG9wdGlvbnMuY29udGFpbnMoQ2FjaGVPcHRp
b246OlRlc3RpbmdNb2RlKSA/IFN0b3JhZ2U6Ok1vZGU6OkF2b2lkUmFuZG9tbmVzcyA6IFN0b3Jh
Z2U6Ok1vZGU6Ok5vcm1hbCk7CisgICAgYXV0byBjYXBhY2l0eSA9IGNvbXB1dGVDYXBhY2l0eShu
ZXR3b3JrUHJvY2Vzcy5jYWNoZU1vZGVsKCksIGNhY2hlUGF0aCk7CisgICAgYXV0byBzdG9yYWdl
ID0gU3RvcmFnZTo6b3BlbihjYWNoZVBhdGgsIG9wdGlvbnMuY29udGFpbnMoQ2FjaGVPcHRpb246
OlRlc3RpbmdNb2RlKSA/IFN0b3JhZ2U6Ok1vZGU6OkF2b2lkUmFuZG9tbmVzcyA6IFN0b3JhZ2U6
Ok1vZGU6Ok5vcm1hbCwgY2FwYWNpdHkpOwogCiAgICAgTE9HKE5ldHdvcmtDYWNoZSwgIihOZXR3
b3JrUHJvY2Vzcykgb3BlbmVkIGNhY2hlIHN0b3JhZ2UsIHN1Y2Nlc3MgJWQiLCAhIXN0b3JhZ2Up
OwogCkBAIC0xMjUsOSArMTQwLDE1IEBAIENhY2hlOjp+Q2FjaGUoKQogewogfQogCi12b2lkIENh
Y2hlOjpzZXRDYXBhY2l0eShzaXplX3QgbWF4aW11bVNpemUpCitzaXplX3QgQ2FjaGU6OmNhcGFj
aXR5KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9zdG9yYWdlLT5jYXBhY2l0eSgpOworfQorCit2
b2lkIENhY2hlOjp1cGRhdGVDYXBhY2l0eSgpCiB7Ci0gICAgbV9zdG9yYWdlLT5zZXRDYXBhY2l0
eShtYXhpbXVtU2l6ZSk7CisgICAgYXV0byBuZXdDYXBhY2l0eSA9IGNvbXB1dGVDYXBhY2l0eSht
X25ldHdvcmtQcm9jZXNzLT5jYWNoZU1vZGVsKCksIG1fc3RvcmFnZS0+YmFzZVBhdGhJc29sYXRl
ZENvcHkoKSk7CisgICAgbV9zdG9yYWdlLT5zZXRDYXBhY2l0eShuZXdDYXBhY2l0eSk7CiB9CiAK
IEtleSBDYWNoZTo6bWFrZUNhY2hlS2V5KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUv
TmV0d29ya0NhY2hlLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdv
cmtDYWNoZS5oCmluZGV4IGNjZmM5OGEzNjMwYWZlMmU2NGJiNTljYzQ2OWExZjcwNmFmNjAxYWUu
LjA0ZDdkNmFmNzNiYzNiNzAxZjc2ZjBhNGMzNjQ5NWRmMDE4YmNiZjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlLmgKKysrIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuaApAQCAtMTI3LDcg
KzEyNyw4IEBAIGNsYXNzIENhY2hlIDogcHVibGljIFJlZkNvdW50ZWQ8Q2FjaGU+IHsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgUmVmUHRyPENhY2hlPiBvcGVuKE5ldHdvcmtQcm9jZXNzJiwgY29uc3Qg
U3RyaW5nJiBjYWNoZVBhdGgsIE9wdGlvblNldDxDYWNoZU9wdGlvbj4sIFBBTDo6U2Vzc2lvbklE
KTsKIAotICAgIHZvaWQgc2V0Q2FwYWNpdHkoc2l6ZV90KTsKKyAgICBzaXplX3QgY2FwYWNpdHko
KSBjb25zdDsKKyAgICB2b2lkIHVwZGF0ZUNhcGFjaXR5KCk7CiAKICAgICAvLyBDb21wbGV0aW9u
IGhhbmRsZXIgbWF5IGdldCBjYWxsZWQgYmFjayBzeW5jaHJvbm91c2x5IG9uIGZhaWx1cmUuCiAg
ICAgc3RydWN0IFJldHJpZXZlSW5mbyB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcAppbmRleCBiNzliYjEz
MmI2NTNmZTgwZWMzMGI3OTBkNDZkMjgyMTVhNTBmZWQ1Li5iODIwZDczYTBlYjUwMTM1OTIwZDFi
OWY4NWRiZmM3NzhmYzBhNDY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHAKQEAgLTE3NCw3ICsxNzQs
NyBAQCBzdGF0aWMgU3RyaW5nIG1ha2VTYWx0RmlsZVBhdGgoY29uc3QgU3RyaW5nJiBiYXNlRGly
ZWN0b3J5UGF0aCkKICAgICByZXR1cm4gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9u
ZW50KG1ha2VWZXJzaW9uZWREaXJlY3RvcnlQYXRoKGJhc2VEaXJlY3RvcnlQYXRoKSwgc2FsdEZp
bGVOYW1lKTsKIH0KIAotUmVmUHRyPFN0b3JhZ2U+IFN0b3JhZ2U6Om9wZW4oY29uc3QgU3RyaW5n
JiBiYXNlQ2FjaGVQYXRoLCBNb2RlIG1vZGUpCitSZWZQdHI8U3RvcmFnZT4gU3RvcmFnZTo6b3Bl
bihjb25zdCBTdHJpbmcmIGJhc2VDYWNoZVBhdGgsIE1vZGUgbW9kZSwgc2l6ZV90IGNhcGFjaXR5
KQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAgICAgQVNTRVJUKCFiYXNlQ2Fj
aGVQYXRoLmlzTnVsbCgpKTsKQEAgLTE4OCw3ICsxODgsNyBAQCBSZWZQdHI8U3RvcmFnZT4gU3Rv
cmFnZTo6b3Blbihjb25zdCBTdHJpbmcmIGJhc2VDYWNoZVBhdGgsIE1vZGUgbW9kZSkKICAgICBp
ZiAoIXNhbHQpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgcmV0dXJuIGFkb3B0UmVm
KG5ldyBTdG9yYWdlKGNhY2hlUGF0aCwgbW9kZSwgKnNhbHQpKTsKKyAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IFN0b3JhZ2UoY2FjaGVQYXRoLCBtb2RlLCAqc2FsdCwgY2FwYWNpdHkpKTsKIH0KIAog
dXNpbmcgUmVjb3JkRmlsZVRyYXZlcnNlRnVuY3Rpb24gPSBGdW5jdGlvbjx2b2lkIChjb25zdCBT
dHJpbmcmIGZpbGVOYW1lLCBjb25zdCBTdHJpbmcmIGhhc2hTdHJpbmcsIGNvbnN0IFN0cmluZyYg
dHlwZSwgYm9vbCBpc0Jsb2IsIGNvbnN0IFN0cmluZyYgcmVjb3JkRGlyZWN0b3J5UGF0aCk+OwpA
QCAtMjM4LDExICsyMzgsMTIgQEAgc3RhdGljIHZvaWQgZGVsZXRlRW1wdHlSZWNvcmRzRGlyZWN0
b3JpZXMoY29uc3QgU3RyaW5nJiByZWNvcmRzUGF0aCkKICAgICB9KTsKIH0KIAotU3RvcmFnZTo6
U3RvcmFnZShjb25zdCBTdHJpbmcmIGJhc2VEaXJlY3RvcnlQYXRoLCBNb2RlIG1vZGUsIFNhbHQg
c2FsdCkKK1N0b3JhZ2U6OlN0b3JhZ2UoY29uc3QgU3RyaW5nJiBiYXNlRGlyZWN0b3J5UGF0aCwg
TW9kZSBtb2RlLCBTYWx0IHNhbHQsIHNpemVfdCBjYXBhY2l0eSkKICAgICA6IG1fYmFzZVBhdGgo
YmFzZURpcmVjdG9yeVBhdGgpCiAgICAgLCBtX3JlY29yZHNQYXRoKG1ha2VSZWNvcmRzRGlyZWN0
b3J5UGF0aChiYXNlRGlyZWN0b3J5UGF0aCkpCiAgICAgLCBtX21vZGUobW9kZSkKICAgICAsIG1f
c2FsdChzYWx0KQorICAgICwgbV9jYXBhY2l0eShjYXBhY2l0eSkKICAgICAsIG1fcmVhZE9wZXJh
dGlvblRpbWVvdXRUaW1lcigqdGhpcywgJlN0b3JhZ2U6OmNhbmNlbEFsbFJlYWRPcGVyYXRpb25z
KQogICAgICwgbV93cml0ZU9wZXJhdGlvbkRpc3BhdGNoVGltZXIoKnRoaXMsICZTdG9yYWdlOjpk
aXNwYXRjaFBlbmRpbmdXcml0ZU9wZXJhdGlvbnMpCiAgICAgLCBtX2lvUXVldWUoV29ya1F1ZXVl
OjpjcmVhdGUoImNvbS5hcHBsZS5XZWJLaXQuQ2FjaGUuU3RvcmFnZSIsIFdvcmtRdWV1ZTo6VHlw
ZTo6Q29uY3VycmVudCkpCkBAIC05ODYsNiArOTg3LDggQEAgdm9pZCBTdG9yYWdlOjp0cmF2ZXJz
ZShjb25zdCBTdHJpbmcmIHR5cGUsIE9wdGlvblNldDxUcmF2ZXJzZUZsYWc+IGZsYWdzLCBUcmF2
ZXIKIHZvaWQgU3RvcmFnZTo6c2V0Q2FwYWNpdHkoc2l6ZV90IGNhcGFjaXR5KQogewogICAgIEFT
U0VSVChSdW5Mb29wOjppc01haW4oKSk7CisgICAgaWYgKG1fY2FwYWNpdHkgPT0gY2FwYWNpdHkp
CisgICAgICAgIHJldHVybjsKIAogI2lmIEFTU0VSVF9FTkFCTEVECiAgICAgY29uc3Qgc2l6ZV90
IGFzc3VtZWRBdmVyYWdlUmVjb3JkU2l6ZSA9IDUwIDw8IDEwOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmggYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuaAppbmRl
eCA0M2Q4ZTBlYmQ3ODJhZTQxMGJmMzg0YTY3Nzc1MThjY2I0ZmMxNzg5Li42NzEwMzhmYTQ4YjJk
ZjkzYjUxYmYxZWIyNTI3MWM3YzMxYzJjYTFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuaApAQCAtNDgsNyAr
NDgsNyBAQCBjbGFzcyBJT0NoYW5uZWw7CiBjbGFzcyBTdG9yYWdlIDogcHVibGljIFRocmVhZFNh
ZmVSZWZDb3VudGVkPFN0b3JhZ2UsIFdURjo6RGVzdHJ1Y3Rpb25UaHJlYWQ6Ok1haW4+IHsKIHB1
YmxpYzoKICAgICBlbnVtIGNsYXNzIE1vZGUgeyBOb3JtYWwsIEF2b2lkUmFuZG9tbmVzcyB9Owot
ICAgIHN0YXRpYyBSZWZQdHI8U3RvcmFnZT4gb3Blbihjb25zdCBTdHJpbmcmIGNhY2hlUGF0aCwg
TW9kZSk7CisgICAgc3RhdGljIFJlZlB0cjxTdG9yYWdlPiBvcGVuKGNvbnN0IFN0cmluZyYgY2Fj
aGVQYXRoLCBNb2RlLCBzaXplX3QgY2FwYWNpdHkpOwogCiAgICAgc3RydWN0IFJlY29yZCB7CiAg
ICAgICAgIEtleSBrZXk7CkBAIC0xMjAsNyArMTIwLDcgQEAgcHVibGljOgogICAgIHZvaWQgd3Jp
dGVXaXRob3V0V2FpdGluZygpIHsgbV9pbml0aWFsV3JpdGVEZWxheSA9IDBfczsgfTsKIAogcHJp
dmF0ZToKLSAgICBTdG9yYWdlKGNvbnN0IFN0cmluZyYgZGlyZWN0b3J5UGF0aCwgTW9kZSwgU2Fs
dCk7CisgICAgU3RvcmFnZShjb25zdCBTdHJpbmcmIGRpcmVjdG9yeVBhdGgsIE1vZGUsIFNhbHQs
IHNpemVfdCBjYXBhY2l0eSk7CiAKICAgICBTdHJpbmcgcmVjb3JkRGlyZWN0b3J5UGF0aEZvcktl
eShjb25zdCBLZXkmKSBjb25zdDsKICAgICBTdHJpbmcgcmVjb3JkUGF0aEZvcktleShjb25zdCBL
ZXkmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nl
c3NQb29sLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApp
bmRleCBlODcwYzdkZDJlMjZjYTUzOTBmOTA3NmNkYWFlNDkwMGZlODY0YjcxLi5iZWU3ODAzYTky
ZDNkNTA3N2RhOGVkMGQxNDMyOTYzN2Q0YmRmNzk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCkBAIC0xNjEzLDcgKzE2MTMsNyBAQCB2b2lkIFdlYlByb2Nl
c3NQb29sOjpzZXRDYWNoZU1vZGVsKENhY2hlTW9kZWwgY2FjaGVNb2RlbCkKICAgICBzZW5kVG9B
bGxQcm9jZXNzZXMoTWVzc2FnZXM6OldlYlByb2Nlc3M6OlNldENhY2hlTW9kZWwoY2FjaGVNb2Rl
bCkpOwogCiAgICAgaWYgKG1fbmV0d29ya1Byb2Nlc3MpCi0gICAgICAgIG1fbmV0d29ya1Byb2Nl
c3MtPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpTZXRDYWNoZU1vZGVsKGNhY2hlTW9k
ZWwsIHsgfSksIDApOworICAgICAgICBtX25ldHdvcmtQcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpO
ZXR3b3JrUHJvY2Vzczo6U2V0Q2FjaGVNb2RlbChjYWNoZU1vZGVsKSwgMCk7CiB9CiAKIHZvaWQg
V2ViUHJvY2Vzc1Bvb2w6OnNldENhY2hlTW9kZWxTeW5jaHJvbm91c2x5Rm9yVGVzdGluZyhDYWNo
ZU1vZGVsIGNhY2hlTW9kZWwpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>