<?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>212863</bug_id>
          
          <creation_ts>2020-06-05 20:48:33 -0700</creation_ts>
          <short_desc>[JSC] Shrink __DATA,(__data,__bss,__common) more</short_desc>
          <delta_ts>2020-06-09 14:06:18 -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>
          <dependson>212992</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>bburg</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>hi</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1659903</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-06-05 20:48:33 -0700</bug_when>
    <thetext>[JSC] Shrink __DATA,(__data,__bss,__common) more</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1659904</commentid>
    <comment_count>1</comment_count>
      <attachid>401231</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-06-05 20:50:38 -0700</bug_when>
    <thetext>Created attachment 401231
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1659905</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2020-06-05 20:51:30 -0700</bug_when>
    <thetext>This patch modifies the inspector protocol generator. Please ensure that you have rebaselined any generator test results (i.e., by running `Tools/Scripts/run-inspector-generator-tests --reset-results`)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1660043</commentid>
    <comment_count>3</comment_count>
      <attachid>401287</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-06-07 01:32:03 -0700</bug_when>
    <thetext>Created attachment 401287
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1660082</commentid>
    <comment_count>4</comment_count>
      <attachid>401287</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2020-06-07 09:09:08 -0700</bug_when>
    <thetext>Comment on attachment 401287
Patch

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

Nice find.

&gt; Source/JavaScriptCore/heap/MarkedSpace.cpp:134
&gt; +    // We have an optimiation in MarkedSpace::optimalSizeFor() that assumes things about

/optimiation/optimization/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1660643</commentid>
    <comment_count>5</comment_count>
      <attachid>401287</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-06-09 02:19:39 -0700</bug_when>
    <thetext>Comment on attachment 401287
Patch

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

Thanks!

&gt;&gt; Source/JavaScriptCore/heap/MarkedSpace.cpp:134
&gt;&gt; +    // We have an optimiation in MarkedSpace::optimalSizeFor() that assumes things about
&gt; 
&gt; /optimiation/optimization/

Fixed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1660644</commentid>
    <comment_count>6</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-06-09 02:20:50 -0700</bug_when>
    <thetext>Committed r262786: &lt;https://trac.webkit.org/changeset/262786&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1660645</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-06-09 02:21:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/64156273&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1660848</commentid>
    <comment_count>8</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-06-09 14:04:26 -0700</bug_when>
    <thetext>Let me try to use this bugzilla&apos;s patch for my webkitbot testing. So this will be re-opened, and closed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1660853</commentid>
    <comment_count>9</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-06-09 14:05:39 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 212992</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1660855</commentid>
    <comment_count>10</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-06-09 14:06:18 -0700</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #9)
&gt; Re-opened since this is blocked by bug 212992</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>401231</attachid>
            <date>2020-06-05 20:50:38 -0700</date>
            <delta_ts>2020-06-07 01:32:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-212863-20200605205037.patch</filename>
            <type>text/plain</type>
            <size>22030</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYyNjY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
YWZjMDI4ZTkyYjAxNmFlODRhZDRiNjE5YThhMzc4ZDY0MjMyMzNmLi40OGZjNzViYzk5YWNiM2Vm
YmE0NTM3YTllNTBmYjRmZjg4ODdkZWY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAyMC0wNi0wNSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFNocmluayBfX0RBVEEsKF9fZGF0YSxfX2JzcyxfX2NvbW1vbikg
bW9yZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEy
ODYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgMS4g
VXNlIGB1bnNpZ25lZGAgaW5zdGVhZCBvZiBgc2l6ZV90YCBpbiBHQyBzaXplLWNsYXNzIGFycmF5
LiBXZSBrbm93IHRoYXQgdGhpcyBudW1iZXIgbmV2ZXIgZXhjZWVkcyBsYXJnZUN1dG9mZiwKKyAg
ICAgICAgICAgd2hpY2ggbXVzdCBiZSBtdWNoIG1hbGxlciB0aGFuIFVJTlQzMl9NQVguCisgICAg
ICAgIDIuIEFkZCBtaXNzaW5nIGNvbnN0IHRvIHZhcmlvdXMgdmFyaWFibGVzIHRvIHB1dCB0aGVt
IERBVEEsX19jb25zdCBpbnN0ZWFkIG9mIERBVEEsX19kYXRhIGV0Yy4KKworICAgICAgICAqIGhl
YXAvTWFya2VkU3BhY2UuY3BwOgorICAgICAgICAoSlNDOjpNYXJrZWRTcGFjZTo6aW5pdGlhbGl6
ZVNpemVDbGFzc0ZvclN0ZXBTaXplKToKKyAgICAgICAgKiBoZWFwL01hcmtlZFNwYWNlLmg6Cisg
ICAgICAgICogaGVhcC9WaXNpdFJhY2VLZXkuY3BwOgorICAgICAgICAqIGhlYXAvVmlzaXRSYWNl
S2V5Lmg6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50
LmNwcDoKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQu
aDoKKyAgICAgICAgKiBpbnNwZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dlbmVyYXRlX2NwcF9wcm90
b2NvbF90eXBlc19oZWFkZXIucHk6CisgICAgICAgICogaW5zcGVjdG9yL3NjcmlwdHMvY29kZWdl
bi9nZW5lcmF0ZV9jcHBfcHJvdG9jb2xfdHlwZXNfaW1wbGVtZW50YXRpb24ucHk6CisgICAgICAg
IChDcHBQcm90b2NvbFR5cGVzSW1wbGVtZW50YXRpb25HZW5lcmF0b3IuX2dlbmVyYXRlX29wZW5f
ZmllbGRfbmFtZXMpOgorICAgICAgICAqIGluc3BlY3Rvci9zY3JpcHRzL3Rlc3RzL2V4cGVjdGVk
L3R5cGUtd2l0aC1vcGVuLXBhcmFtZXRlcnMuanNvbi1yZXN1bHQ6CisgICAgICAgICogcnVudGlt
ZS9Qcm9wZXJ0eURlc2NyaXB0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUHJvcGVydHlEZXNj
cmlwdG9yLmg6CisKIDIwMjAtMDYtMDUgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNv
bT4KIAogICAgICAgICBbSlNDXSBQdXQgZGZnT3BOYW1lcyBpbiBfX0RBVEEsX19jb25zdCBzZWN0
aW9uIGluc3RlYWQgb2YgX19EQVRBLF9fZGF0YQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
TWFya2VkU3BhY2UuY3BwCmluZGV4IDRjMjU4NjNmZGE3NWUyMTQ2NTk3OWVjNGUzNWNhMGI1ZDA1
NjRjMjguLjlkMjU0ZThkYmIzYTUxNjA4MTczMGJhM2UzNWFhMTc4OWViM2Q0NDcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRTcGFjZS5jcHAKQEAgLTMwLDExOCArMzAsMTEz
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1zdGQ6OmFycmF5PHNpemVfdCwgTWFya2VkU3BhY2U6
Om51bVNpemVDbGFzc2VzPiBNYXJrZWRTcGFjZTo6c19zaXplQ2xhc3NGb3JTaXplU3RlcDsKK3N0
ZDo6YXJyYXk8dW5zaWduZWQsIE1hcmtlZFNwYWNlOjpudW1TaXplQ2xhc3Nlcz4gTWFya2VkU3Bh
Y2U6OnNfc2l6ZUNsYXNzRm9yU2l6ZVN0ZXA7CiAKIG5hbWVzcGFjZSB7CiAKLWNvbnN0IFZlY3Rv
cjxzaXplX3Q+JiBzaXplQ2xhc3NlcygpCitzdGF0aWMgVmVjdG9yPHNpemVfdD4gc2l6ZUNsYXNz
ZXMoKQogewotICAgIHN0YXRpYyBWZWN0b3I8c2l6ZV90PiogcmVzdWx0OwotICAgIHN0YXRpYyBz
dGQ6Om9uY2VfZmxhZyBvbmNlOwotICAgIHN0ZDo6Y2FsbF9vbmNlKAotICAgICAgICBvbmNlLAot
ICAgICAgICBbXSB7Ci0gICAgICAgICAgICByZXN1bHQgPSBuZXcgVmVjdG9yPHNpemVfdD4oKTsK
LSAgICAgICAgICAgIAotICAgICAgICAgICAgaWYgKFVOTElLRUxZKE9wdGlvbnM6OmR1bXBTaXpl
Q2xhc3NlcygpKSkgewotICAgICAgICAgICAgICAgIGRhdGFMb2coIkJsb2NrIHNpemU6ICIsIE1h
cmtlZEJsb2NrOjpibG9ja1NpemUsICJcbiIpOwotICAgICAgICAgICAgICAgIGRhdGFMb2coIkZv
b3RlciBzaXplOiAiLCBzaXplb2YoTWFya2VkQmxvY2s6OkZvb3RlciksICJcbiIpOwotICAgICAg
ICAgICAgfQotICAgICAgICAgICAgCi0gICAgICAgICAgICBhdXRvIGFkZCA9IFsmXSAoc2l6ZV90
IHNpemVDbGFzcykgewotICAgICAgICAgICAgICAgIHNpemVDbGFzcyA9IFdURjo6cm91bmRVcFRv
TXVsdGlwbGVPZjxNYXJrZWRCbG9jazo6YXRvbVNpemU+KHNpemVDbGFzcyk7Ci0gICAgICAgICAg
ICAgICAgZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVtcFNpemVDbGFzc2VzKCksICJBZGRpbmcgSlND
IE1hcmtlZFNwYWNlIHNpemUgY2xhc3M6ICIsIHNpemVDbGFzcyk7Ci0gICAgICAgICAgICAgICAg
Ly8gUGVyZm9ybSBzb21lIHZhbGlkYXRpb24gYXMgd2UgZ28uCi0gICAgICAgICAgICAgICAgUkVM
RUFTRV9BU1NFUlQoIShzaXplQ2xhc3MgJSBNYXJrZWRTcGFjZTo6c2l6ZVN0ZXApKTsKLSAgICAg
ICAgICAgICAgICBpZiAocmVzdWx0LT5pc0VtcHR5KCkpCi0gICAgICAgICAgICAgICAgICAgIFJF
TEVBU0VfQVNTRVJUKHNpemVDbGFzcyA9PSBNYXJrZWRTcGFjZTo6c2l6ZVN0ZXApOwotICAgICAg
ICAgICAgICAgIHJlc3VsdC0+YXBwZW5kKHNpemVDbGFzcyk7Ci0gICAgICAgICAgICB9OwotICAg
ICAgICAgICAgCi0gICAgICAgICAgICAvLyBUaGlzIGlzIGEgZGVmaW5pdGlvbiBvZiB0aGUgc2l6
ZSBjbGFzc2VzIGluIG91ciBHQy4gSXQgbXVzdCBkZWZpbmUgYWxsIG9mIHRoZQotICAgICAgICAg
ICAgLy8gc2l6ZSBjbGFzc2VzIGZyb20gc2l6ZVN0ZXAgdXAgdG8gbGFyZ2VDdXRvZmYuCisgICAg
VmVjdG9yPHNpemVfdD4gcmVzdWx0OworCisgICAgaWYgKFVOTElLRUxZKE9wdGlvbnM6OmR1bXBT
aXplQ2xhc3NlcygpKSkgeworICAgICAgICBkYXRhTG9nKCJCbG9jayBzaXplOiAiLCBNYXJrZWRC
bG9jazo6YmxvY2tTaXplLCAiXG4iKTsKKyAgICAgICAgZGF0YUxvZygiRm9vdGVyIHNpemU6ICIs
IHNpemVvZihNYXJrZWRCbG9jazo6Rm9vdGVyKSwgIlxuIik7CisgICAgfQorICAgIAorICAgIGF1
dG8gYWRkID0gWyZdIChzaXplX3Qgc2l6ZUNsYXNzKSB7CisgICAgICAgIHNpemVDbGFzcyA9IFdU
Rjo6cm91bmRVcFRvTXVsdGlwbGVPZjxNYXJrZWRCbG9jazo6YXRvbVNpemU+KHNpemVDbGFzcyk7
CisgICAgICAgIGRhdGFMb2dMbklmKE9wdGlvbnM6OmR1bXBTaXplQ2xhc3NlcygpLCAiQWRkaW5n
IEpTQyBNYXJrZWRTcGFjZSBzaXplIGNsYXNzOiAiLCBzaXplQ2xhc3MpOworICAgICAgICAvLyBQ
ZXJmb3JtIHNvbWUgdmFsaWRhdGlvbiBhcyB3ZSBnby4KKyAgICAgICAgUkVMRUFTRV9BU1NFUlQo
IShzaXplQ2xhc3MgJSBNYXJrZWRTcGFjZTo6c2l6ZVN0ZXApKTsKKyAgICAgICAgaWYgKHJlc3Vs
dC5pc0VtcHR5KCkpCisgICAgICAgICAgICBSRUxFQVNFX0FTU0VSVChzaXplQ2xhc3MgPT0gTWFy
a2VkU3BhY2U6OnNpemVTdGVwKTsKKyAgICAgICAgcmVzdWx0LmFwcGVuZChzaXplQ2xhc3MpOwor
ICAgIH07CiAgICAgCi0gICAgICAgICAgICAvLyBIYXZlIHZlcnkgcHJlY2lzZSBzaXplIGNsYXNz
ZXMgZm9yIHRoZSBzbWFsbCBzdHVmZi4gVGhpcyBpcyBhIGxvb3AgdG8gbWFrZSBpdCBlYXN5IHRv
IHJlZHVjZQotICAgICAgICAgICAgLy8gYXRvbVNpemUuCi0gICAgICAgICAgICBmb3IgKHNpemVf
dCBzaXplID0gTWFya2VkU3BhY2U6OnNpemVTdGVwOyBzaXplIDwgTWFya2VkU3BhY2U6OnByZWNp
c2VDdXRvZmY7IHNpemUgKz0gTWFya2VkU3BhY2U6OnNpemVTdGVwKQotICAgICAgICAgICAgICAg
IGFkZChzaXplKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgLy8gV2Ugd2FudCB0byBtYWtl
IHN1cmUgdGhhdCB0aGUgcmVtYWluaW5nIHNpemUgY2xhc3NlcyBtaW5pbWl6ZSBpbnRlcm5hbCBm
cmFnbWVudGF0aW9uIChpLmUuCi0gICAgICAgICAgICAvLyB0aGUgd2FzdGVkIHNwYWNlIGF0IHRo
ZSB0YWlsIGVuZCBvZiBhIE1hcmtlZEJsb2NrKSB3aGlsZSBwcm9jZWVkaW5nIHJvdWdobHkgaW4g
YW4gZXhwb25lbnRpYWwKLSAgICAgICAgICAgIC8vIHdheSBzdGFydGluZyBhdCBqdXN0IGFib3Zl
IHRoZSBwcmVjaXNlIHNpemUgY2xhc3NlcyB0byBmb3VyIGNlbGxzIHBlciBibG9jay4KLSAgICAg
ICAgICAgIAotICAgICAgICAgICAgZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVtcFNpemVDbGFzc2Vz
KCksICIgICAgTWFya2VkIGJsb2NrIHBheWxvYWQgc2l6ZTogIiwgc3RhdGljX2Nhc3Q8c2l6ZV90
PihNYXJrZWRTcGFjZTo6YmxvY2tQYXlsb2FkKSk7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAg
IGZvciAodW5zaWduZWQgaSA9IDA7IDsgKytpKSB7Ci0gICAgICAgICAgICAgICAgZG91YmxlIGFw
cHJveGltYXRlU2l6ZSA9IE1hcmtlZFNwYWNlOjpwcmVjaXNlQ3V0b2ZmICogcG93KE9wdGlvbnM6
OnNpemVDbGFzc1Byb2dyZXNzaW9uKCksIGkpOwotICAgICAgICAgICAgICAgIGRhdGFMb2dMbklm
KE9wdGlvbnM6OmR1bXBTaXplQ2xhc3NlcygpLCAiICAgIE5leHQgc2l6ZSBjbGFzcyBhcyBhIGRv
dWJsZTogIiwgYXBwcm94aW1hdGVTaXplKTsKKyAgICAvLyBUaGlzIGlzIGEgZGVmaW5pdGlvbiBv
ZiB0aGUgc2l6ZSBjbGFzc2VzIGluIG91ciBHQy4gSXQgbXVzdCBkZWZpbmUgYWxsIG9mIHRoZQor
ICAgIC8vIHNpemUgY2xhc3NlcyBmcm9tIHNpemVTdGVwIHVwIHRvIGxhcmdlQ3V0b2ZmLgorCisg
ICAgLy8gSGF2ZSB2ZXJ5IHByZWNpc2Ugc2l6ZSBjbGFzc2VzIGZvciB0aGUgc21hbGwgc3R1ZmYu
IFRoaXMgaXMgYSBsb29wIHRvIG1ha2UgaXQgZWFzeSB0byByZWR1Y2UKKyAgICAvLyBhdG9tU2l6
ZS4KKyAgICBmb3IgKHNpemVfdCBzaXplID0gTWFya2VkU3BhY2U6OnNpemVTdGVwOyBzaXplIDwg
TWFya2VkU3BhY2U6OnByZWNpc2VDdXRvZmY7IHNpemUgKz0gTWFya2VkU3BhY2U6OnNpemVTdGVw
KQorICAgICAgICBhZGQoc2l6ZSk7CisgICAgCisgICAgLy8gV2Ugd2FudCB0byBtYWtlIHN1cmUg
dGhhdCB0aGUgcmVtYWluaW5nIHNpemUgY2xhc3NlcyBtaW5pbWl6ZSBpbnRlcm5hbCBmcmFnbWVu
dGF0aW9uIChpLmUuCisgICAgLy8gdGhlIHdhc3RlZCBzcGFjZSBhdCB0aGUgdGFpbCBlbmQgb2Yg
YSBNYXJrZWRCbG9jaykgd2hpbGUgcHJvY2VlZGluZyByb3VnaGx5IGluIGFuIGV4cG9uZW50aWFs
CisgICAgLy8gd2F5IHN0YXJ0aW5nIGF0IGp1c3QgYWJvdmUgdGhlIHByZWNpc2Ugc2l6ZSBjbGFz
c2VzIHRvIGZvdXIgY2VsbHMgcGVyIGJsb2NrLgorICAgIAorICAgIGRhdGFMb2dMbklmKE9wdGlv
bnM6OmR1bXBTaXplQ2xhc3NlcygpLCAiICAgIE1hcmtlZCBibG9jayBwYXlsb2FkIHNpemU6ICIs
IHN0YXRpY19jYXN0PHNpemVfdD4oTWFya2VkU3BhY2U6OmJsb2NrUGF5bG9hZCkpOworICAgIAor
ICAgIGZvciAodW5zaWduZWQgaSA9IDA7IDsgKytpKSB7CisgICAgICAgIGRvdWJsZSBhcHByb3hp
bWF0ZVNpemUgPSBNYXJrZWRTcGFjZTo6cHJlY2lzZUN1dG9mZiAqIHBvdyhPcHRpb25zOjpzaXpl
Q2xhc3NQcm9ncmVzc2lvbigpLCBpKTsKKyAgICAgICAgZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVt
cFNpemVDbGFzc2VzKCksICIgICAgTmV4dCBzaXplIGNsYXNzIGFzIGEgZG91YmxlOiAiLCBhcHBy
b3hpbWF0ZVNpemUpOworCisgICAgICAgIHNpemVfdCBhcHByb3hpbWF0ZVNpemVJbkJ5dGVzID0g
c3RhdGljX2Nhc3Q8c2l6ZV90PihhcHByb3hpbWF0ZVNpemUpOworICAgICAgICBkYXRhTG9nTG5J
ZihPcHRpb25zOjpkdW1wU2l6ZUNsYXNzZXMoKSwgIiAgICBOZXh0IHNpemUgY2xhc3MgYXMgYnl0
ZXM6ICIsIGFwcHJveGltYXRlU2l6ZUluQnl0ZXMpOworCisgICAgICAgIC8vIE1ha2Ugc3VyZSB0
aGF0IHRoZSBjb21wdXRlciBkaWQgdGhlIG1hdGggY29ycmVjdGx5LgorICAgICAgICBSRUxFQVNF
X0FTU0VSVChhcHByb3hpbWF0ZVNpemVJbkJ5dGVzID49IE1hcmtlZFNwYWNlOjpwcmVjaXNlQ3V0
b2ZmKTsKICAgICAgICAgCi0gICAgICAgICAgICAgICAgc2l6ZV90IGFwcHJveGltYXRlU2l6ZUlu
Qnl0ZXMgPSBzdGF0aWNfY2FzdDxzaXplX3Q+KGFwcHJveGltYXRlU2l6ZSk7Ci0gICAgICAgICAg
ICAgICAgZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVtcFNpemVDbGFzc2VzKCksICIgICAgTmV4dCBz
aXplIGNsYXNzIGFzIGJ5dGVzOiAiLCBhcHByb3hpbWF0ZVNpemVJbkJ5dGVzKTsKKyAgICAgICAg
aWYgKGFwcHJveGltYXRlU2l6ZUluQnl0ZXMgPiBNYXJrZWRTcGFjZTo6bGFyZ2VDdXRvZmYpCisg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgCi0gICAgICAgICAgICAgICAgLy8gTWFrZSBzdXJl
IHRoYXQgdGhlIGNvbXB1dGVyIGRpZCB0aGUgbWF0aCBjb3JyZWN0bHkuCi0gICAgICAgICAgICAg
ICAgUkVMRUFTRV9BU1NFUlQoYXBwcm94aW1hdGVTaXplSW5CeXRlcyA+PSBNYXJrZWRTcGFjZTo6
cHJlY2lzZUN1dG9mZik7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAgaWYgKGFw
cHJveGltYXRlU2l6ZUluQnl0ZXMgPiBNYXJrZWRTcGFjZTo6bGFyZ2VDdXRvZmYpCi0gICAgICAg
ICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAgIHNp
emVfdCBzaXplQ2xhc3MgPQotICAgICAgICAgICAgICAgICAgICBXVEY6OnJvdW5kVXBUb011bHRp
cGxlT2Y8TWFya2VkU3BhY2U6OnNpemVTdGVwPihhcHByb3hpbWF0ZVNpemVJbkJ5dGVzKTsKLSAg
ICAgICAgICAgICAgICBkYXRhTG9nTG5JZihPcHRpb25zOjpkdW1wU2l6ZUNsYXNzZXMoKSwgIiAg
ICBTaXplIGNsYXNzOiAiLCBzaXplQ2xhc3MpOwotICAgICAgICAgICAgICAgIAotICAgICAgICAg
ICAgICAgIC8vIE9wdGltaXplIHRoZSBzaXplIGNsYXNzIHNvIHRoYXQgdGhlcmUgaXNuJ3QgYW55
IHNsb3AgYXQgdGhlIGVuZCBvZiB0aGUgYmxvY2sncwotICAgICAgICAgICAgICAgIC8vIHBheWxv
YWQuCi0gICAgICAgICAgICAgICAgdW5zaWduZWQgY2VsbHNQZXJCbG9jayA9IE1hcmtlZFNwYWNl
OjpibG9ja1BheWxvYWQgLyBzaXplQ2xhc3M7Ci0gICAgICAgICAgICAgICAgc2l6ZV90IHBvc3Np
Ymx5QmV0dGVyU2l6ZUNsYXNzID0gKE1hcmtlZFNwYWNlOjpibG9ja1BheWxvYWQgLyBjZWxsc1Bl
ckJsb2NrKSAmIH4oTWFya2VkU3BhY2U6OnNpemVTdGVwIC0gMSk7Ci0gICAgICAgICAgICAgICAg
ZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVtcFNpemVDbGFzc2VzKCksICIgICAgUG9zc2libHkgYmV0
dGVyIHNpemUgY2xhc3M6ICIsIHBvc3NpYmx5QmV0dGVyU2l6ZUNsYXNzKTsKLQotICAgICAgICAg
ICAgICAgIC8vIFRoZSBzaXplIGNsYXNzIHdlIGp1c3QgY2FtZSB1cCB3aXRoIGlzIGJldHRlciB0
aGFuIHRoZSBvdGhlciBvbmUgaWYgaXQgcmVkdWNlcwotICAgICAgICAgICAgICAgIC8vIHRvdGFs
IHdhc3RhZ2UgYXNzdW1pbmcgd2Ugb25seSBhbGxvY2F0ZSBjZWxscyBvZiB0aGF0IHNpemUuCi0g
ICAgICAgICAgICAgICAgc2l6ZV90IG9yaWdpbmFsV2FzdGFnZSA9IE1hcmtlZFNwYWNlOjpibG9j
a1BheWxvYWQgLSBjZWxsc1BlckJsb2NrICogc2l6ZUNsYXNzOwotICAgICAgICAgICAgICAgIHNp
emVfdCBuZXdXYXN0YWdlID0gKHBvc3NpYmx5QmV0dGVyU2l6ZUNsYXNzIC0gc2l6ZUNsYXNzKSAq
IGNlbGxzUGVyQmxvY2s7Ci0gICAgICAgICAgICAgICAgZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVt
cFNpemVDbGFzc2VzKCksICIgICAgT3JpZ2luYWwgd2FzdGFnZTogIiwgb3JpZ2luYWxXYXN0YWdl
LCAiLCBuZXcgd2FzdGFnZTogIiwgbmV3V2FzdGFnZSk7Ci0gICAgICAgICAgICAgICAgCi0gICAg
ICAgICAgICAgICAgc2l6ZV90IGJldHRlclNpemVDbGFzczsKLSAgICAgICAgICAgICAgICBpZiAo
bmV3V2FzdGFnZSA+IG9yaWdpbmFsV2FzdGFnZSkKLSAgICAgICAgICAgICAgICAgICAgYmV0dGVy
U2l6ZUNsYXNzID0gc2l6ZUNsYXNzOwotICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAg
ICAgICAgICAgYmV0dGVyU2l6ZUNsYXNzID0gcG9zc2libHlCZXR0ZXJTaXplQ2xhc3M7Ci0gICAg
ICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAgZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVtcFNp
emVDbGFzc2VzKCksICIgICAgQ2hvb3Npbmcgc2l6ZSBjbGFzczogIiwgYmV0dGVyU2l6ZUNsYXNz
KTsKLSAgICAgICAgICAgICAgICAKLSAgICAgICAgICAgICAgICBpZiAoYmV0dGVyU2l6ZUNsYXNz
ID09IHJlc3VsdC0+bGFzdCgpKSB7Ci0gICAgICAgICAgICAgICAgICAgIC8vIERlZmVuc2UgZm9y
IHdoZW4gZXhwU3RlcCBpcyBzbWFsbC4KLSAgICAgICAgICAgICAgICAgICAgY29udGludWU7Ci0g
ICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAgIC8vIFRo
aXMgaXMgdXN1YWxseSBob3cgd2UgZ2V0IG91dCBvZiB0aGUgbG9vcC4KLSAgICAgICAgICAgICAg
ICBpZiAoYmV0dGVyU2l6ZUNsYXNzID4gTWFya2VkU3BhY2U6OmxhcmdlQ3V0b2ZmCi0gICAgICAg
ICAgICAgICAgICAgIHx8IGJldHRlclNpemVDbGFzcyA+IE9wdGlvbnM6OnByZWNpc2VBbGxvY2F0
aW9uQ3V0b2ZmKCkpCi0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAg
IAotICAgICAgICAgICAgICAgIGFkZChiZXR0ZXJTaXplQ2xhc3MpOwotICAgICAgICAgICAgfQor
ICAgICAgICBzaXplX3Qgc2l6ZUNsYXNzID0KKyAgICAgICAgICAgIFdURjo6cm91bmRVcFRvTXVs
dGlwbGVPZjxNYXJrZWRTcGFjZTo6c2l6ZVN0ZXA+KGFwcHJveGltYXRlU2l6ZUluQnl0ZXMpOwor
ICAgICAgICBkYXRhTG9nTG5JZihPcHRpb25zOjpkdW1wU2l6ZUNsYXNzZXMoKSwgIiAgICBTaXpl
IGNsYXNzOiAiLCBzaXplQ2xhc3MpOworICAgICAgICAKKyAgICAgICAgLy8gT3B0aW1pemUgdGhl
IHNpemUgY2xhc3Mgc28gdGhhdCB0aGVyZSBpc24ndCBhbnkgc2xvcCBhdCB0aGUgZW5kIG9mIHRo
ZSBibG9jaydzCisgICAgICAgIC8vIHBheWxvYWQuCisgICAgICAgIHVuc2lnbmVkIGNlbGxzUGVy
QmxvY2sgPSBNYXJrZWRTcGFjZTo6YmxvY2tQYXlsb2FkIC8gc2l6ZUNsYXNzOworICAgICAgICBz
aXplX3QgcG9zc2libHlCZXR0ZXJTaXplQ2xhc3MgPSAoTWFya2VkU3BhY2U6OmJsb2NrUGF5bG9h
ZCAvIGNlbGxzUGVyQmxvY2spICYgfihNYXJrZWRTcGFjZTo6c2l6ZVN0ZXAgLSAxKTsKKyAgICAg
ICAgZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVtcFNpemVDbGFzc2VzKCksICIgICAgUG9zc2libHkg
YmV0dGVyIHNpemUgY2xhc3M6ICIsIHBvc3NpYmx5QmV0dGVyU2l6ZUNsYXNzKTsKKworICAgICAg
ICAvLyBUaGUgc2l6ZSBjbGFzcyB3ZSBqdXN0IGNhbWUgdXAgd2l0aCBpcyBiZXR0ZXIgdGhhbiB0
aGUgb3RoZXIgb25lIGlmIGl0IHJlZHVjZXMKKyAgICAgICAgLy8gdG90YWwgd2FzdGFnZSBhc3N1
bWluZyB3ZSBvbmx5IGFsbG9jYXRlIGNlbGxzIG9mIHRoYXQgc2l6ZS4KKyAgICAgICAgc2l6ZV90
IG9yaWdpbmFsV2FzdGFnZSA9IE1hcmtlZFNwYWNlOjpibG9ja1BheWxvYWQgLSBjZWxsc1BlckJs
b2NrICogc2l6ZUNsYXNzOworICAgICAgICBzaXplX3QgbmV3V2FzdGFnZSA9IChwb3NzaWJseUJl
dHRlclNpemVDbGFzcyAtIHNpemVDbGFzcykgKiBjZWxsc1BlckJsb2NrOworICAgICAgICBkYXRh
TG9nTG5JZihPcHRpb25zOjpkdW1wU2l6ZUNsYXNzZXMoKSwgIiAgICBPcmlnaW5hbCB3YXN0YWdl
OiAiLCBvcmlnaW5hbFdhc3RhZ2UsICIsIG5ldyB3YXN0YWdlOiAiLCBuZXdXYXN0YWdlKTsKKyAg
ICAgICAgCisgICAgICAgIHNpemVfdCBiZXR0ZXJTaXplQ2xhc3M7CisgICAgICAgIGlmIChuZXdX
YXN0YWdlID4gb3JpZ2luYWxXYXN0YWdlKQorICAgICAgICAgICAgYmV0dGVyU2l6ZUNsYXNzID0g
c2l6ZUNsYXNzOworICAgICAgICBlbHNlCisgICAgICAgICAgICBiZXR0ZXJTaXplQ2xhc3MgPSBw
b3NzaWJseUJldHRlclNpemVDbGFzczsKKyAgICAgICAgCisgICAgICAgIGRhdGFMb2dMbklmKE9w
dGlvbnM6OmR1bXBTaXplQ2xhc3NlcygpLCAiICAgIENob29zaW5nIHNpemUgY2xhc3M6ICIsIGJl
dHRlclNpemVDbGFzcyk7CisgICAgICAgIAorICAgICAgICBpZiAoYmV0dGVyU2l6ZUNsYXNzID09
IHJlc3VsdC5sYXN0KCkpIHsKKyAgICAgICAgICAgIC8vIERlZmVuc2UgZm9yIHdoZW4gZXhwU3Rl
cCBpcyBzbWFsbC4KKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisgICAgICAgIAor
ICAgICAgICAvLyBUaGlzIGlzIHVzdWFsbHkgaG93IHdlIGdldCBvdXQgb2YgdGhlIGxvb3AuCisg
ICAgICAgIGlmIChiZXR0ZXJTaXplQ2xhc3MgPiBNYXJrZWRTcGFjZTo6bGFyZ2VDdXRvZmYKKyAg
ICAgICAgICAgIHx8IGJldHRlclNpemVDbGFzcyA+IE9wdGlvbnM6OnByZWNpc2VBbGxvY2F0aW9u
Q3V0b2ZmKCkpCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgCisgICAgICAgIGFkZChiZXR0
ZXJTaXplQ2xhc3MpOworICAgIH0KIAotICAgICAgICAgICAgLy8gTWFudWFsbHkgaW5qZWN0IHNp
emUgY2xhc3NlcyBmb3Igb2JqZWN0cyB3ZSBrbm93IHdpbGwgYmUgYWxsb2NhdGVkIGluIGhpZ2gg
dm9sdW1lLgotICAgICAgICAgICAgLy8gRklYTUU6IEFsbCBvZiB0aGVzZSB0aGluZ3Mgc2hvdWxk
IGhhdmUgSXNvU3Vic3BhY2VzLgotICAgICAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE3OTg3NgotICAgICAgICAgICAgYWRkKDI1Nik7CisgICAgLy8g
TWFudWFsbHkgaW5qZWN0IHNpemUgY2xhc3NlcyBmb3Igb2JqZWN0cyB3ZSBrbm93IHdpbGwgYmUg
YWxsb2NhdGVkIGluIGhpZ2ggdm9sdW1lLgorICAgIC8vIEZJWE1FOiBBbGwgb2YgdGhlc2UgdGhp
bmdzIHNob3VsZCBoYXZlIElzb1N1YnNwYWNlcy4KKyAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc5ODc2CisgICAgYWRkKDI1Nik7CiAKLSAgICAgICAgICAg
IHsKLSAgICAgICAgICAgICAgICAvLyBTb3J0IGFuZCBkZWR1cGxpY2F0ZS4KLSAgICAgICAgICAg
ICAgICBzdGQ6OnNvcnQocmVzdWx0LT5iZWdpbigpLCByZXN1bHQtPmVuZCgpKTsKLSAgICAgICAg
ICAgICAgICBhdXRvIGl0ID0gc3RkOjp1bmlxdWUocmVzdWx0LT5iZWdpbigpLCByZXN1bHQtPmVu
ZCgpKTsKLSAgICAgICAgICAgICAgICByZXN1bHQtPnNocmlua0NhcGFjaXR5KGl0IC0gcmVzdWx0
LT5iZWdpbigpKTsKLSAgICAgICAgICAgIH0KKyAgICB7CisgICAgICAgIC8vIFNvcnQgYW5kIGRl
ZHVwbGljYXRlLgorICAgICAgICBzdGQ6OnNvcnQocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQo
KSk7CisgICAgICAgIGF1dG8gaXQgPSBzdGQ6OnVuaXF1ZShyZXN1bHQuYmVnaW4oKSwgcmVzdWx0
LmVuZCgpKTsKKyAgICAgICAgcmVzdWx0LnNocmlua0NhcGFjaXR5KGl0IC0gcmVzdWx0LmJlZ2lu
KCkpOworICAgIH0KIAotICAgICAgICAgICAgZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVtcFNpemVD
bGFzc2VzKCksICJKU0MgSGVhcCBNYXJrZWRTcGFjZSBzaXplIGNsYXNzIGR1bXA6ICIsIGxpc3RE
dW1wKCpyZXN1bHQpKTsKKyAgICBkYXRhTG9nTG5JZihPcHRpb25zOjpkdW1wU2l6ZUNsYXNzZXMo
KSwgIkpTQyBIZWFwIE1hcmtlZFNwYWNlIHNpemUgY2xhc3MgZHVtcDogIiwgbGlzdER1bXAocmVz
dWx0KSk7CiAKLSAgICAgICAgICAgIC8vIFdlIGhhdmUgYW4gb3B0aW1pYXRpb24gaW4gTWFya2Vk
U3BhY2U6Om9wdGltYWxTaXplRm9yKCkgdGhhdCBhc3N1bWVzIHRoaW5ncyBhYm91dAotICAgICAg
ICAgICAgLy8gdGhlIHNpemUgY2xhc3MgdGFibGUuIFRoaXMgY2hlY2tzIG91ciByZXN1bHRzIGFn
YWluc3QgdGhhdCBmdW5jdGlvbidzIGFzc3VtcHRpb25zLgotICAgICAgICAgICAgZm9yIChzaXpl
X3Qgc2l6ZSA9IE1hcmtlZFNwYWNlOjpzaXplU3RlcCwgaSA9IDA7IHNpemUgPD0gTWFya2VkU3Bh
Y2U6OnByZWNpc2VDdXRvZmY7IHNpemUgKz0gTWFya2VkU3BhY2U6OnNpemVTdGVwLCBpKyspCi0g
ICAgICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlQocmVzdWx0LT5hdChpKSA9PSBzaXplKTsKLSAg
ICAgICAgfSk7Ci0gICAgcmV0dXJuICpyZXN1bHQ7CisgICAgLy8gV2UgaGF2ZSBhbiBvcHRpbWlh
dGlvbiBpbiBNYXJrZWRTcGFjZTo6b3B0aW1hbFNpemVGb3IoKSB0aGF0IGFzc3VtZXMgdGhpbmdz
IGFib3V0CisgICAgLy8gdGhlIHNpemUgY2xhc3MgdGFibGUuIFRoaXMgY2hlY2tzIG91ciByZXN1
bHRzIGFnYWluc3QgdGhhdCBmdW5jdGlvbidzIGFzc3VtcHRpb25zLgorICAgIGZvciAoc2l6ZV90
IHNpemUgPSBNYXJrZWRTcGFjZTo6c2l6ZVN0ZXAsIGkgPSAwOyBzaXplIDw9IE1hcmtlZFNwYWNl
OjpwcmVjaXNlQ3V0b2ZmOyBzaXplICs9IE1hcmtlZFNwYWNlOjpzaXplU3RlcCwgaSsrKQorICAg
ICAgICBSRUxFQVNFX0FTU0VSVChyZXN1bHQuYXQoaSkgPT0gc2l6ZSk7CisKKyAgICByZXR1cm4g
cmVzdWx0OwogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUYWJsZVR5cGUsIHR5cGVuYW1lIFNpemVD
bGFzc0NvbnMsIHR5cGVuYW1lIERlZmF1bHRDb25zPgpAQCAtMTcxLDkgKzE2NiwxMSBAQCB2b2lk
IE1hcmtlZFNwYWNlOjppbml0aWFsaXplU2l6ZUNsYXNzRm9yU3RlcFNpemUoKQogICAgICAgICAg
ICAgYnVpbGRTaXplQ2xhc3NUYWJsZSgKICAgICAgICAgICAgICAgICBzX3NpemVDbGFzc0ZvclNp
emVTdGVwLAogICAgICAgICAgICAgICAgIFsmXSAoc2l6ZV90IHNpemVDbGFzcykgLT4gc2l6ZV90
IHsKKyAgICAgICAgICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlQoc2l6ZUNsYXNzIDw9IFVJTlQz
Ml9NQVgpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2l6ZUNsYXNzOwogICAgICAgICAg
ICAgICAgIH0sCiAgICAgICAgICAgICAgICAgWyZdIChzaXplX3Qgc2l6ZUNsYXNzKSAtPiBzaXpl
X3QgeworICAgICAgICAgICAgICAgICAgICBSRUxFQVNFX0FTU0VSVChzaXplQ2xhc3MgPD0gVUlO
VDMyX01BWCk7CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzaXplQ2xhc3M7CiAgICAgICAg
ICAgICAgICAgfSk7CiAgICAgICAgIH0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvTWFya2VkU3BhY2UuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtl
ZFNwYWNlLmgKaW5kZXggODkzNmU1MWE2YmU3MzY3YmY1YTFhMzk5NjA0YmYxN2RmZGM3NDlkNS4u
ZTRiMWEyZDhlNWQxMmU4NWY4MWQxNGY3NWJjZDUxZGQ3NzkyZDQ0MCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaGVhcC9NYXJrZWRTcGFjZS5oCkBAIC02NSw2ICs2NSw3IEBAIGNsYXNzIE1hcmtl
ZFNwYWNlIHsKICAgICAvLyBlbnN1cmVzIHRoYXQgd2Ugb25seSB1c2UgdGhlIHNpemUgY2xhc3Mg
YXBwcm9hY2ggaWYgaXQgbWVhbnMgYmVpbmcgYWJsZSB0byBwYWNrIHR3byB0aGluZ3MKICAgICAv
LyBpbnRvIG9uZSBibG9jay4KICAgICBzdGF0aWMgY29uc3RleHByIHNpemVfdCBsYXJnZUN1dG9m
ZiA9IChibG9ja1BheWxvYWQgLyAyKSAmIH4oc2l6ZVN0ZXAgLSAxKTsKKyAgICBzdGF0aWNfYXNz
ZXJ0KGxhcmdlQ3V0b2ZmIDw9IFVJTlQzMl9NQVgpOwogCiAgICAgLy8gV2UgaGF2ZSBhbiBleHRy
YSBzaXplIGNsYXNzIGZvciBzaXplIHplcm8uCiAgICAgc3RhdGljIGNvbnN0ZXhwciBzaXplX3Qg
bnVtU2l6ZUNsYXNzZXMgPSBsYXJnZUN1dG9mZiAvIHNpemVTdGVwICsgMTsKQEAgLTE3NSw3ICsx
NzYsNyBAQCBjbGFzcyBNYXJrZWRTcGFjZSB7CiAgICAgCiAgICAgdm9pZCBkdW1wQml0cyhQcmlu
dFN0cmVhbSYgPSBXVEY6OmRhdGFGaWxlKCkpOwogICAgIAotICAgIEpTX0VYUE9SVF9QUklWQVRF
IHN0YXRpYyBzdGQ6OmFycmF5PHNpemVfdCwgbnVtU2l6ZUNsYXNzZXM+IHNfc2l6ZUNsYXNzRm9y
U2l6ZVN0ZXA7CisgICAgSlNfRVhQT1JUX1BSSVZBVEUgc3RhdGljIHN0ZDo6YXJyYXk8dW5zaWdu
ZWQsIG51bVNpemVDbGFzc2VzPiBzX3NpemVDbGFzc0ZvclNpemVTdGVwOwogICAgIAogcHJpdmF0
ZToKICAgICBmcmllbmQgY2xhc3MgQ29tcGxldGVTdWJzcGFjZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Zpc2l0UmFjZUtleS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaGVhcC9WaXNpdFJhY2VLZXkuY3BwCmluZGV4IDI4ZWUzMGI4MGFlMzMwMTRiZjc2Nzc1
NTcxZGM4YzZlZDllNzg4MjguLjBjNzMzNTdmODM2NjRmNmM5NzJiODE2MTUxMjk0NTE2YTNmMjc3
YzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Zpc2l0UmFjZUtleS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvVmlzaXRSYWNlS2V5LmNwcApAQCAt
MjgsNyArMjgsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgY2hhciogVmlzaXRSYWNl
S2V5OjptX2RlbGV0ZWRWYWx1ZVJhY2VOYW1lID0gImRlbGV0ZWQgdmFsdWUiOworY29uc3QgY2hh
ciogY29uc3QgVmlzaXRSYWNlS2V5OjptX2RlbGV0ZWRWYWx1ZVJhY2VOYW1lID0gImRlbGV0ZWQg
dmFsdWUiOwogCiB2b2lkIFZpc2l0UmFjZUtleTo6ZHVtcChQcmludFN0cmVhbSYgb3V0KSBjb25z
dAogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvVmlzaXRSYWNlS2V5
LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9WaXNpdFJhY2VLZXkuaAppbmRleCBjYzFi
ZTkxYmIwMzllYTA0ZjJkZmQ4NDZmMzJmMzQ0MDRkYjk1ZjcyLi43MzEwYmRjZTlmYmFmYTI5YWFj
MDg1ODRmZDM2Njg3NzNkZDllOWQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9WaXNpdFJhY2VLZXkuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9WaXNp
dFJhY2VLZXkuaApAQCAtNzksNyArNzksNyBAQCBjbGFzcyBWaXNpdFJhY2VLZXkgewogICAgIH0K
IAogcHJpdmF0ZToKLSAgICBzdGF0aWMgY29uc3QgY2hhciogbV9kZWxldGVkVmFsdWVSYWNlTmFt
ZTsKKyAgICBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgbV9kZWxldGVkVmFsdWVSYWNlTmFtZTsK
ICAgICAKICAgICBKU0NlbGwqIG1fY2VsbCB7IG51bGxwdHIgfTsKICAgICBjb25zdCBjaGFyKiBt
X3JhY2VOYW1lIHsgbnVsbHB0ciB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcApp
bmRleCA3Y2M5YjVlYjQ4MDg3Njc3MDM4N2YwMjQ5YjBmNThlYjJhNmVhZTMzLi4yOWMxMzBiOTY1
Y2EyNjU2NDFjNDBmNzUwOTljZjZlYmQyNjQwMDcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dl
ckFnZW50LmNwcApAQCAtNDQsNyArNDQsNyBAQAogCiBuYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAot
Y29uc3QgY2hhciogSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6YmFja3RyYWNlT2JqZWN0R3JvdXAg
PSAiYmFja3RyYWNlIjsKK2NvbnN0IGNoYXIqIGNvbnN0IEluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6
OmJhY2t0cmFjZU9iamVjdEdyb3VwID0gImJhY2t0cmFjZSI7CiAKIC8vIE9iamVjdHMgY3JlYXRl
ZCBhbmQgcmV0YWluZWQgYnkgZXZhbHVhdGluZyBicmVha3BvaW50IGFjdGlvbnMgYXJlIHB1dCBp
bnRvIG9iamVjdCBncm91cHMKIC8vIGFjY29yZGluZyB0byB0aGUgYnJlYWtwb2ludCBhY3Rpb24g
aWRlbnRpZmllciBhc3NpZ25lZCBieSB0aGUgZnJvbnRlbmQuIEEgYnJlYWtwb2ludCBtYXkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rv
ckRlYnVnZ2VyQWdlbnQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRz
L0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaAppbmRleCAxOTBjOWJhMzg5YmQxMGI3MDI3OWI2NmM5
ODRlOTFlOTZlMTc2ZjNlLi4zNWFmMTZkMjdkNmZmOWU0ZGQ2YmU1ZTMyN2ZkOGQ2ODIyOGE3YzE3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNw
ZWN0b3JEZWJ1Z2dlckFnZW50LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oCkBAIC01NSw3ICs1NSw3IEBAIGNsYXNz
IEpTX0VYUE9SVF9QUklWQVRFIEluc3BlY3RvckRlYnVnZ2VyQWdlbnQgOiBwdWJsaWMgSW5zcGVj
dG9yQWdlbnRCYXNlLCBwdWJsCiBwdWJsaWM6CiAgICAgfkluc3BlY3RvckRlYnVnZ2VyQWdlbnQo
KSBvdmVycmlkZTsKIAotICAgIHN0YXRpYyBjb25zdCBjaGFyKiBiYWNrdHJhY2VPYmplY3RHcm91
cDsKKyAgICBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgYmFja3RyYWNlT2JqZWN0R3JvdXA7CiAK
ICAgICAvLyBJbnNwZWN0b3JBZ2VudEJhc2UKICAgICB2b2lkIGRpZENyZWF0ZUZyb250ZW5kQW5k
QmFja2VuZChGcm9udGVuZFJvdXRlciosIEJhY2tlbmREaXNwYXRjaGVyKikgZmluYWw7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3NjcmlwdHMvY29kZWdlbi9n
ZW5lcmF0ZV9jcHBfcHJvdG9jb2xfdHlwZXNfaGVhZGVyLnB5IGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfY3BwX3Byb3RvY29sX3R5cGVz
X2hlYWRlci5weQppbmRleCAxOWZkMGNhMDQxMmJjZmIxMmVmNTkyNzE2ZmI1ZTE1N2I3NDkzMzhi
Li5mZWMxNTRhYjg5YTkwZGFjODc4MzdlMGRiMmU0NDRmNjkyNmQ1NzAyIDEwMDc1NQotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3NjcmlwdHMvY29kZWdlbi9nZW5lcmF0ZV9j
cHBfcHJvdG9jb2xfdHlwZXNfaGVhZGVyLnB5CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
bnNwZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dlbmVyYXRlX2NwcF9wcm90b2NvbF90eXBlc19oZWFk
ZXIucHkKQEAgLTI3Nyw3ICsyNzcsNyBAQCBkZWYgX2dlbmVyYXRlX2NsYXNzX2Zvcl9vYmplY3Rf
ZGVjbGFyYXRpb24oc2VsZiwgdHlwZV9kZWNsYXJhdGlvbiwgZG9tYWluKToKICAgICAgICAgICAg
IG9wZW5fbWVtYmVycyA9IEdlbmVyYXRvci5vcGVuX2ZpZWxkcyh0eXBlX2RlY2xhcmF0aW9uKQog
ICAgICAgICAgICAgZm9yIHR5cGVfbWVtYmVyIGluIG9wZW5fbWVtYmVyczoKICAgICAgICAgICAg
ICAgICBleHBvcnRfbWFjcm8gPSBzZWxmLm1vZGVsKCkuZnJhbWV3b3JrLnNldHRpbmcoJ2V4cG9y
dF9tYWNybycsIE5vbmUpCi0gICAgICAgICAgICAgICAgbGluZXMuYXBwZW5kKCcgICAgJXMgc3Rh
dGljIGNvbnN0IGNoYXIqICVzOycgJSAoZXhwb3J0X21hY3JvLCB1Y2ZpcnN0KHR5cGVfbWVtYmVy
Lm1lbWJlcl9uYW1lKSkpCisgICAgICAgICAgICAgICAgbGluZXMuYXBwZW5kKCcgICAgJXMgc3Rh
dGljIGNvbnN0IGNoYXIqIGNvbnN0ICVzOycgJSAoZXhwb3J0X21hY3JvLCB1Y2ZpcnN0KHR5cGVf
bWVtYmVyLm1lbWJlcl9uYW1lKSkpCiAKICAgICAgICAgbGluZXMuYXBwZW5kKCd9OycpCiAgICAg
ICAgIHJldHVybiBzZWxmLndyYXBfd2l0aF9ndWFyZF9mb3JfY29uZGl0aW9uKHR5cGVfZGVjbGFy
YXRpb24uY29uZGl0aW9uLCAnXG4nLmpvaW4obGluZXMpKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2luc3BlY3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfY3BwX3Byb3Rv
Y29sX3R5cGVzX2ltcGxlbWVudGF0aW9uLnB5IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfY3BwX3Byb3RvY29sX3R5cGVzX2ltcGxlbWVu
dGF0aW9uLnB5CmluZGV4IDVkZDUzNDY5NDQ4NTUxNTQ4ZDY3YWEwYjQ1NmM2YTFhNjY1OGQ1OTMu
LmQ2MzZjZjRjMzEzNDE3MmExMzQ3NWIyZDAzNTU3ZjdlNmRiZGU3MmUgMTAwNzU1Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dlbmVyYXRlX2Nw
cF9wcm90b2NvbF90eXBlc19pbXBsZW1lbnRhdGlvbi5weQorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaW5zcGVjdG9yL3NjcmlwdHMvY29kZWdlbi9nZW5lcmF0ZV9jcHBfcHJvdG9jb2xfdHlw
ZXNfaW1wbGVtZW50YXRpb24ucHkKQEAgLTE4NCw3ICsxODQsNyBAQCBkZWYgX2dlbmVyYXRlX29w
ZW5fZmllbGRfbmFtZXMoc2VsZik6CiAgICAgICAgICAgICAgICAgb3Blbl9tZW1iZXJzID0gR2Vu
ZXJhdG9yLm9wZW5fZmllbGRzKHR5cGVfZGVjbGFyYXRpb24pCiAgICAgICAgICAgICAgICAgZm9y
IHR5cGVfbWVtYmVyIGluIHNvcnRlZChvcGVuX21lbWJlcnMsIGtleT1sYW1iZGEgbWVtYmVyOiBt
ZW1iZXIubWVtYmVyX25hbWUpOgogICAgICAgICAgICAgICAgICAgICBmaWVsZF9uYW1lID0gJzo6
Jy5qb2luKFsnSW5zcGVjdG9yJywgJ1Byb3RvY29sJywgZG9tYWluLmRvbWFpbl9uYW1lLCB1Y2Zp
cnN0KHR5cGVfZGVjbGFyYXRpb24udHlwZV9uYW1lKSwgdWNmaXJzdCh0eXBlX21lbWJlci5tZW1i
ZXJfbmFtZSldKQotICAgICAgICAgICAgICAgICAgICBkb21haW5fbGluZXMuYXBwZW5kKCdjb25z
dCBjaGFyKiAlcyA9ICIlcyI7JyAlIChmaWVsZF9uYW1lLCB0eXBlX21lbWJlci5tZW1iZXJfbmFt
ZSkpCisgICAgICAgICAgICAgICAgICAgIGRvbWFpbl9saW5lcy5hcHBlbmQoJ2NvbnN0IGNoYXIq
IGNvbnN0ICVzID0gIiVzIjsnICUgKGZpZWxkX25hbWUsIHR5cGVfbWVtYmVyLm1lbWJlcl9uYW1l
KSkKICAgICAgICAgICAgIGlmIGxlbihkb21haW5fbGluZXMpOgogICAgICAgICAgICAgICAgIGxp
bmVzLmFwcGVuZChzZWxmLndyYXBfd2l0aF9ndWFyZF9mb3JfY29uZGl0aW9uKGRvbWFpbi5jb25k
aXRpb24sICdcbicuam9pbihkb21haW5fbGluZXMpKSkKIApkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2luc3BlY3Rvci9zY3JpcHRzL3Rlc3RzL2V4cGVjdGVkL3R5cGUtd2l0aC1v
cGVuLXBhcmFtZXRlcnMuanNvbi1yZXN1bHQgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVj
dG9yL3NjcmlwdHMvdGVzdHMvZXhwZWN0ZWQvdHlwZS13aXRoLW9wZW4tcGFyYW1ldGVycy5qc29u
LXJlc3VsdAppbmRleCA3ZDU3NzYyYThmZjhiZTRhOWFlNDlkYzllZjU0N2I5ZDMyMTNkYzdiLi44
MDQyOWIyZmUwODUxYTIzZGQxMzE4MzU5NTE5NmM1NjYxNDY5YzViIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3NjcmlwdHMvdGVzdHMvZXhwZWN0ZWQvdHlwZS13
aXRoLW9wZW4tcGFyYW1ldGVycy5qc29uLXJlc3VsdAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaW5zcGVjdG9yL3NjcmlwdHMvdGVzdHMvZXhwZWN0ZWQvdHlwZS13aXRoLW9wZW4tcGFyYW1l
dGVycy5qc29uLXJlc3VsdApAQCAtNDUwLDcgKzQ1MCw3IEBAIHB1YmxpYzoKICAgICB9CiAKICAg
ICAvLyBQcm9wZXJ0eSBuYW1lcyBmb3IgdHlwZSBnZW5lcmF0ZWQgYXMgb3Blbi4KLSAgICBOb25l
IHN0YXRpYyBjb25zdCBjaGFyKiBBbHBoYTsKKyAgICBOb25lIHN0YXRpYyBjb25zdCBjaGFyKiBj
b25zdCBBbHBoYTsKIH07CiAKIH0gLy8gVGVzdApAQCAtNTAyLDcgKzUwMiw3IEBAIG5hbWVzcGFj
ZSBJbnNwZWN0b3IgewogCiBuYW1lc3BhY2UgUHJvdG9jb2wgewogCi1jb25zdCBjaGFyKiBJbnNw
ZWN0b3I6OlByb3RvY29sOjpUZXN0OjpPcGVuUGFyYW1ldGVyczo6QWxwaGEgPSAiYWxwaGEiOwor
Y29uc3QgY2hhciogY29uc3QgSW5zcGVjdG9yOjpQcm90b2NvbDo6VGVzdDo6T3BlblBhcmFtZXRl
cnM6OkFscGhhID0gImFscGhhIjsKIAogfSAvLyBuYW1lc3BhY2UgUHJvdG9jb2wKIApkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJvcGVydHlEZXNjcmlwdG9yLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5RGVzY3JpcHRvci5jcHAK
aW5kZXggMTMyOWE3Njk1ZjE5OGU2OTQ1OGEzNDMxYTc4ZWNkMzBkMTQ4M2QxMi4uOGNmODA0Zjdh
MTg0YjIyNjg1N2QzZWFhZDFmMGU3YWYwNjZhZDUxNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUHJvcGVydHlEZXNjcmlwdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eURlc2NyaXB0b3IuY3BwCkBAIC0zMSw3ICszMSw2
IEBACiAjaW5jbHVkZSAiSlNDSlNWYWx1ZUlubGluZXMuaCIKIAogbmFtZXNwYWNlIEpTQyB7Ci11
bnNpZ25lZCBQcm9wZXJ0eURlc2NyaXB0b3I6OmRlZmF1bHRBdHRyaWJ1dGVzID0gUHJvcGVydHlB
dHRyaWJ1dGU6OkRvbnREZWxldGUgfCBQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0gfCBQcm9w
ZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHk7CiAKIGJvb2wgUHJvcGVydHlEZXNjcmlwdG9yOjp3cml0
YWJsZSgpIGNvbnN0CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Qcm9wZXJ0eURlc2NyaXB0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1By
b3BlcnR5RGVzY3JpcHRvci5oCmluZGV4IDRkZmYxMGY2MzM2NGViOWUxYTA1MDhhODI0NzQ5YzYy
MDZiNzA2YzYuLjg0MWI2YjBiNGUwMDE1MDQ5YWZlZDc0ZjMyNmMwY2UwZjUxYzI5MTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5RGVzY3JpcHRvci5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5RGVzY3JpcHRvci5o
CkBAIC0yNyw2ICsyNyw3IEBACiAKICNpbmNsdWRlICJEZWZpbmVQcm9wZXJ0eUF0dHJpYnV0ZXMu
aCIKICNpbmNsdWRlICJKU0NKU1ZhbHVlLmgiCisjaW5jbHVkZSAiUHJvcGVydHlTbG90LmgiCiAK
IG5hbWVzcGFjZSBKU0MgewogCkBAIC04Miw3ICs4Myw4IEBAIGNsYXNzIFByb3BlcnR5RGVzY3Jp
cHRvciB7CiAgICAgdW5zaWduZWQgYXR0cmlidXRlc092ZXJyaWRpbmdDdXJyZW50KGNvbnN0IFBy
b3BlcnR5RGVzY3JpcHRvciYgY3VycmVudCkgY29uc3Q7CiAKIHByaXZhdGU6Ci0gICAgSlNfRVhQ
T1JUX1BSSVZBVEUgc3RhdGljIHVuc2lnbmVkIGRlZmF1bHRBdHRyaWJ1dGVzOworICAgIHN0YXRp
YyBjb25zdGV4cHIgdW5zaWduZWQgZGVmYXVsdEF0dHJpYnV0ZXMgPSBQcm9wZXJ0eUF0dHJpYnV0
ZTo6RG9udERlbGV0ZSB8IFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IFByb3BlcnR5QXR0
cmlidXRlOjpSZWFkT25seTsKKwogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBQcm9wZXJ0eURl
c2NyaXB0b3ImKSB7IHJldHVybiBmYWxzZTsgfQogICAgIGVudW0geyBXcml0YWJsZVByZXNlbnQg
PSAxLCBFbnVtZXJhYmxlUHJlc2VudCA9IDIsIENvbmZpZ3VyYWJsZVByZXNlbnQgPSA0fTsKICAg
ICAvLyBNYXkgYmUgYSBnZXR0ZXIvc2V0dGVyCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>401287</attachid>
            <date>2020-06-07 01:32:03 -0700</date>
            <delta_ts>2020-06-07 08:19:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-212863-20200607013202.patch</filename>
            <type>text/plain</type>
            <size>18409</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYyNjk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBj
NTExNGM1ZTI0ZDczZjE1YWJiMzkyOTY2NWIzMWE0MDViNTExMjA5Li44ZDkzMzU3YTc0MTE5ZjY1
ZTZlYzA1NTJlODY5ZTY1YTc4NTBhYTMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNCBAQAorMjAyMC0wNi0wNyAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFNocmluayBfX0RBVEEsKF9fZGF0YSxfX2JzcyxfX2NvbW1vbikg
bW9yZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEy
ODYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgMS4g
VXNlIGB1bnNpZ25lZGAgaW5zdGVhZCBvZiBgc2l6ZV90YCBpbiBHQyBzaXplLWNsYXNzIGFycmF5
LiBXZSBrbm93IHRoYXQgdGhpcyBudW1iZXIgbmV2ZXIgZXhjZWVkcyBsYXJnZUN1dG9mZiwKKyAg
ICAgICAgICAgd2hpY2ggbXVzdCBiZSBtdWNoIG1hbGxlciB0aGFuIFVJTlQzMl9NQVguCisgICAg
ICAgIDIuIEFkZCBtaXNzaW5nIGNvbnN0IHRvIHZhcmlvdXMgdmFyaWFibGVzIHRvIHB1dCB0aGVt
IERBVEEsX19jb25zdCBpbnN0ZWFkIG9mIERBVEEsX19kYXRhIGV0Yy4KKworICAgICAgICAqIGhl
YXAvTWFya2VkU3BhY2UuY3BwOgorICAgICAgICAoSlNDOjpNYXJrZWRTcGFjZTo6aW5pdGlhbGl6
ZVNpemVDbGFzc0ZvclN0ZXBTaXplKToKKyAgICAgICAgKiBoZWFwL01hcmtlZFNwYWNlLmg6Cisg
ICAgICAgICogaGVhcC9WaXNpdFJhY2VLZXkuY3BwOgorICAgICAgICAqIGhlYXAvVmlzaXRSYWNl
S2V5Lmg6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50
LmNwcDoKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQu
aDoKKyAgICAgICAgKiBydW50aW1lL1Byb3BlcnR5RGVzY3JpcHRvci5jcHA6CisgICAgICAgICog
cnVudGltZS9Qcm9wZXJ0eURlc2NyaXB0b3IuaDoKKwogMjAyMC0wNi0wNyAgWXVzdWtlIFN1enVr
aSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIENoZWNrc3VtIGZvciBnZW5l
cmF0ZWQgZmlsZXMgc2hvdWxkIGJlIGVtaXR0ZWQgYXQgdGhlIGVuZCBvZiB0aGUgZmlsZXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmNwcAppbmRleCA0YzI1ODYzZmRh
NzVlMjE0NjU5NzllYzRlMzVjYTBiNWQwNTY0YzI4Li45ZDI1NGU4ZGJiM2E1MTYwODE3MzBiYTNl
MzVhYTE3ODllYjNkNDQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9N
YXJrZWRTcGFjZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3Bh
Y2UuY3BwCkBAIC0zMCwxMTggKzMwLDExMyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotc3RkOjph
cnJheTxzaXplX3QsIE1hcmtlZFNwYWNlOjpudW1TaXplQ2xhc3Nlcz4gTWFya2VkU3BhY2U6OnNf
c2l6ZUNsYXNzRm9yU2l6ZVN0ZXA7CitzdGQ6OmFycmF5PHVuc2lnbmVkLCBNYXJrZWRTcGFjZTo6
bnVtU2l6ZUNsYXNzZXM+IE1hcmtlZFNwYWNlOjpzX3NpemVDbGFzc0ZvclNpemVTdGVwOwogCiBu
YW1lc3BhY2UgewogCi1jb25zdCBWZWN0b3I8c2l6ZV90PiYgc2l6ZUNsYXNzZXMoKQorc3RhdGlj
IFZlY3RvcjxzaXplX3Q+IHNpemVDbGFzc2VzKCkKIHsKLSAgICBzdGF0aWMgVmVjdG9yPHNpemVf
dD4qIHJlc3VsdDsKLSAgICBzdGF0aWMgc3RkOjpvbmNlX2ZsYWcgb25jZTsKLSAgICBzdGQ6OmNh
bGxfb25jZSgKLSAgICAgICAgb25jZSwKLSAgICAgICAgW10gewotICAgICAgICAgICAgcmVzdWx0
ID0gbmV3IFZlY3RvcjxzaXplX3Q+KCk7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGlmIChV
TkxJS0VMWShPcHRpb25zOjpkdW1wU2l6ZUNsYXNzZXMoKSkpIHsKLSAgICAgICAgICAgICAgICBk
YXRhTG9nKCJCbG9jayBzaXplOiAiLCBNYXJrZWRCbG9jazo6YmxvY2tTaXplLCAiXG4iKTsKLSAg
ICAgICAgICAgICAgICBkYXRhTG9nKCJGb290ZXIgc2l6ZTogIiwgc2l6ZW9mKE1hcmtlZEJsb2Nr
OjpGb290ZXIpLCAiXG4iKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAotICAgICAgICAg
ICAgYXV0byBhZGQgPSBbJl0gKHNpemVfdCBzaXplQ2xhc3MpIHsKLSAgICAgICAgICAgICAgICBz
aXplQ2xhc3MgPSBXVEY6OnJvdW5kVXBUb011bHRpcGxlT2Y8TWFya2VkQmxvY2s6OmF0b21TaXpl
PihzaXplQ2xhc3MpOwotICAgICAgICAgICAgICAgIGRhdGFMb2dMbklmKE9wdGlvbnM6OmR1bXBT
aXplQ2xhc3NlcygpLCAiQWRkaW5nIEpTQyBNYXJrZWRTcGFjZSBzaXplIGNsYXNzOiAiLCBzaXpl
Q2xhc3MpOwotICAgICAgICAgICAgICAgIC8vIFBlcmZvcm0gc29tZSB2YWxpZGF0aW9uIGFzIHdl
IGdvLgotICAgICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUKCEoc2l6ZUNsYXNzICUgTWFya2Vk
U3BhY2U6OnNpemVTdGVwKSk7Ci0gICAgICAgICAgICAgICAgaWYgKHJlc3VsdC0+aXNFbXB0eSgp
KQotICAgICAgICAgICAgICAgICAgICBSRUxFQVNFX0FTU0VSVChzaXplQ2xhc3MgPT0gTWFya2Vk
U3BhY2U6OnNpemVTdGVwKTsKLSAgICAgICAgICAgICAgICByZXN1bHQtPmFwcGVuZChzaXplQ2xh
c3MpOwotICAgICAgICAgICAgfTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgLy8gVGhpcyBp
cyBhIGRlZmluaXRpb24gb2YgdGhlIHNpemUgY2xhc3NlcyBpbiBvdXIgR0MuIEl0IG11c3QgZGVm
aW5lIGFsbCBvZiB0aGUKLSAgICAgICAgICAgIC8vIHNpemUgY2xhc3NlcyBmcm9tIHNpemVTdGVw
IHVwIHRvIGxhcmdlQ3V0b2ZmLgorICAgIFZlY3RvcjxzaXplX3Q+IHJlc3VsdDsKKworICAgIGlm
IChVTkxJS0VMWShPcHRpb25zOjpkdW1wU2l6ZUNsYXNzZXMoKSkpIHsKKyAgICAgICAgZGF0YUxv
ZygiQmxvY2sgc2l6ZTogIiwgTWFya2VkQmxvY2s6OmJsb2NrU2l6ZSwgIlxuIik7CisgICAgICAg
IGRhdGFMb2coIkZvb3RlciBzaXplOiAiLCBzaXplb2YoTWFya2VkQmxvY2s6OkZvb3RlciksICJc
biIpOworICAgIH0KKyAgICAKKyAgICBhdXRvIGFkZCA9IFsmXSAoc2l6ZV90IHNpemVDbGFzcykg
eworICAgICAgICBzaXplQ2xhc3MgPSBXVEY6OnJvdW5kVXBUb011bHRpcGxlT2Y8TWFya2VkQmxv
Y2s6OmF0b21TaXplPihzaXplQ2xhc3MpOworICAgICAgICBkYXRhTG9nTG5JZihPcHRpb25zOjpk
dW1wU2l6ZUNsYXNzZXMoKSwgIkFkZGluZyBKU0MgTWFya2VkU3BhY2Ugc2l6ZSBjbGFzczogIiwg
c2l6ZUNsYXNzKTsKKyAgICAgICAgLy8gUGVyZm9ybSBzb21lIHZhbGlkYXRpb24gYXMgd2UgZ28u
CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKCEoc2l6ZUNsYXNzICUgTWFya2VkU3BhY2U6OnNpemVT
dGVwKSk7CisgICAgICAgIGlmIChyZXN1bHQuaXNFbXB0eSgpKQorICAgICAgICAgICAgUkVMRUFT
RV9BU1NFUlQoc2l6ZUNsYXNzID09IE1hcmtlZFNwYWNlOjpzaXplU3RlcCk7CisgICAgICAgIHJl
c3VsdC5hcHBlbmQoc2l6ZUNsYXNzKTsKKyAgICB9OwogICAgIAotICAgICAgICAgICAgLy8gSGF2
ZSB2ZXJ5IHByZWNpc2Ugc2l6ZSBjbGFzc2VzIGZvciB0aGUgc21hbGwgc3R1ZmYuIFRoaXMgaXMg
YSBsb29wIHRvIG1ha2UgaXQgZWFzeSB0byByZWR1Y2UKLSAgICAgICAgICAgIC8vIGF0b21TaXpl
LgotICAgICAgICAgICAgZm9yIChzaXplX3Qgc2l6ZSA9IE1hcmtlZFNwYWNlOjpzaXplU3RlcDsg
c2l6ZSA8IE1hcmtlZFNwYWNlOjpwcmVjaXNlQ3V0b2ZmOyBzaXplICs9IE1hcmtlZFNwYWNlOjpz
aXplU3RlcCkKLSAgICAgICAgICAgICAgICBhZGQoc2l6ZSk7Ci0gICAgICAgICAgICAKLSAgICAg
ICAgICAgIC8vIFdlIHdhbnQgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIHJlbWFpbmluZyBzaXplIGNs
YXNzZXMgbWluaW1pemUgaW50ZXJuYWwgZnJhZ21lbnRhdGlvbiAoaS5lLgotICAgICAgICAgICAg
Ly8gdGhlIHdhc3RlZCBzcGFjZSBhdCB0aGUgdGFpbCBlbmQgb2YgYSBNYXJrZWRCbG9jaykgd2hp
bGUgcHJvY2VlZGluZyByb3VnaGx5IGluIGFuIGV4cG9uZW50aWFsCi0gICAgICAgICAgICAvLyB3
YXkgc3RhcnRpbmcgYXQganVzdCBhYm92ZSB0aGUgcHJlY2lzZSBzaXplIGNsYXNzZXMgdG8gZm91
ciBjZWxscyBwZXIgYmxvY2suCi0gICAgICAgICAgICAKLSAgICAgICAgICAgIGRhdGFMb2dMbklm
KE9wdGlvbnM6OmR1bXBTaXplQ2xhc3NlcygpLCAiICAgIE1hcmtlZCBibG9jayBwYXlsb2FkIHNp
emU6ICIsIHN0YXRpY19jYXN0PHNpemVfdD4oTWFya2VkU3BhY2U6OmJsb2NrUGF5bG9hZCkpOwot
ICAgICAgICAgICAgCi0gICAgICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyA7ICsraSkgewot
ICAgICAgICAgICAgICAgIGRvdWJsZSBhcHByb3hpbWF0ZVNpemUgPSBNYXJrZWRTcGFjZTo6cHJl
Y2lzZUN1dG9mZiAqIHBvdyhPcHRpb25zOjpzaXplQ2xhc3NQcm9ncmVzc2lvbigpLCBpKTsKLSAg
ICAgICAgICAgICAgICBkYXRhTG9nTG5JZihPcHRpb25zOjpkdW1wU2l6ZUNsYXNzZXMoKSwgIiAg
ICBOZXh0IHNpemUgY2xhc3MgYXMgYSBkb3VibGU6ICIsIGFwcHJveGltYXRlU2l6ZSk7CisgICAg
Ly8gVGhpcyBpcyBhIGRlZmluaXRpb24gb2YgdGhlIHNpemUgY2xhc3NlcyBpbiBvdXIgR0MuIEl0
IG11c3QgZGVmaW5lIGFsbCBvZiB0aGUKKyAgICAvLyBzaXplIGNsYXNzZXMgZnJvbSBzaXplU3Rl
cCB1cCB0byBsYXJnZUN1dG9mZi4KKworICAgIC8vIEhhdmUgdmVyeSBwcmVjaXNlIHNpemUgY2xh
c3NlcyBmb3IgdGhlIHNtYWxsIHN0dWZmLiBUaGlzIGlzIGEgbG9vcCB0byBtYWtlIGl0IGVhc3kg
dG8gcmVkdWNlCisgICAgLy8gYXRvbVNpemUuCisgICAgZm9yIChzaXplX3Qgc2l6ZSA9IE1hcmtl
ZFNwYWNlOjpzaXplU3RlcDsgc2l6ZSA8IE1hcmtlZFNwYWNlOjpwcmVjaXNlQ3V0b2ZmOyBzaXpl
ICs9IE1hcmtlZFNwYWNlOjpzaXplU3RlcCkKKyAgICAgICAgYWRkKHNpemUpOworICAgIAorICAg
IC8vIFdlIHdhbnQgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIHJlbWFpbmluZyBzaXplIGNsYXNzZXMg
bWluaW1pemUgaW50ZXJuYWwgZnJhZ21lbnRhdGlvbiAoaS5lLgorICAgIC8vIHRoZSB3YXN0ZWQg
c3BhY2UgYXQgdGhlIHRhaWwgZW5kIG9mIGEgTWFya2VkQmxvY2spIHdoaWxlIHByb2NlZWRpbmcg
cm91Z2hseSBpbiBhbiBleHBvbmVudGlhbAorICAgIC8vIHdheSBzdGFydGluZyBhdCBqdXN0IGFi
b3ZlIHRoZSBwcmVjaXNlIHNpemUgY2xhc3NlcyB0byBmb3VyIGNlbGxzIHBlciBibG9jay4KKyAg
ICAKKyAgICBkYXRhTG9nTG5JZihPcHRpb25zOjpkdW1wU2l6ZUNsYXNzZXMoKSwgIiAgICBNYXJr
ZWQgYmxvY2sgcGF5bG9hZCBzaXplOiAiLCBzdGF0aWNfY2FzdDxzaXplX3Q+KE1hcmtlZFNwYWNl
OjpibG9ja1BheWxvYWQpKTsKKyAgICAKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyA7ICsraSkg
eworICAgICAgICBkb3VibGUgYXBwcm94aW1hdGVTaXplID0gTWFya2VkU3BhY2U6OnByZWNpc2VD
dXRvZmYgKiBwb3coT3B0aW9uczo6c2l6ZUNsYXNzUHJvZ3Jlc3Npb24oKSwgaSk7CisgICAgICAg
IGRhdGFMb2dMbklmKE9wdGlvbnM6OmR1bXBTaXplQ2xhc3NlcygpLCAiICAgIE5leHQgc2l6ZSBj
bGFzcyBhcyBhIGRvdWJsZTogIiwgYXBwcm94aW1hdGVTaXplKTsKKworICAgICAgICBzaXplX3Qg
YXBwcm94aW1hdGVTaXplSW5CeXRlcyA9IHN0YXRpY19jYXN0PHNpemVfdD4oYXBwcm94aW1hdGVT
aXplKTsKKyAgICAgICAgZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVtcFNpemVDbGFzc2VzKCksICIg
ICAgTmV4dCBzaXplIGNsYXNzIGFzIGJ5dGVzOiAiLCBhcHByb3hpbWF0ZVNpemVJbkJ5dGVzKTsK
KworICAgICAgICAvLyBNYWtlIHN1cmUgdGhhdCB0aGUgY29tcHV0ZXIgZGlkIHRoZSBtYXRoIGNv
cnJlY3RseS4KKyAgICAgICAgUkVMRUFTRV9BU1NFUlQoYXBwcm94aW1hdGVTaXplSW5CeXRlcyA+
PSBNYXJrZWRTcGFjZTo6cHJlY2lzZUN1dG9mZik7CiAgICAgICAgIAotICAgICAgICAgICAgICAg
IHNpemVfdCBhcHByb3hpbWF0ZVNpemVJbkJ5dGVzID0gc3RhdGljX2Nhc3Q8c2l6ZV90PihhcHBy
b3hpbWF0ZVNpemUpOwotICAgICAgICAgICAgICAgIGRhdGFMb2dMbklmKE9wdGlvbnM6OmR1bXBT
aXplQ2xhc3NlcygpLCAiICAgIE5leHQgc2l6ZSBjbGFzcyBhcyBieXRlczogIiwgYXBwcm94aW1h
dGVTaXplSW5CeXRlcyk7CisgICAgICAgIGlmIChhcHByb3hpbWF0ZVNpemVJbkJ5dGVzID4gTWFy
a2VkU3BhY2U6OmxhcmdlQ3V0b2ZmKQorICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIAotICAg
ICAgICAgICAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IHRoZSBjb21wdXRlciBkaWQgdGhlIG1hdGgg
Y29ycmVjdGx5LgotICAgICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUKGFwcHJveGltYXRlU2l6
ZUluQnl0ZXMgPj0gTWFya2VkU3BhY2U6OnByZWNpc2VDdXRvZmYpOwotICAgICAgICAgICAgICAg
IAotICAgICAgICAgICAgICAgIGlmIChhcHByb3hpbWF0ZVNpemVJbkJ5dGVzID4gTWFya2VkU3Bh
Y2U6OmxhcmdlQ3V0b2ZmKQotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAg
ICAgICAKLSAgICAgICAgICAgICAgICBzaXplX3Qgc2l6ZUNsYXNzID0KLSAgICAgICAgICAgICAg
ICAgICAgV1RGOjpyb3VuZFVwVG9NdWx0aXBsZU9mPE1hcmtlZFNwYWNlOjpzaXplU3RlcD4oYXBw
cm94aW1hdGVTaXplSW5CeXRlcyk7Ci0gICAgICAgICAgICAgICAgZGF0YUxvZ0xuSWYoT3B0aW9u
czo6ZHVtcFNpemVDbGFzc2VzKCksICIgICAgU2l6ZSBjbGFzczogIiwgc2l6ZUNsYXNzKTsKLSAg
ICAgICAgICAgICAgICAKLSAgICAgICAgICAgICAgICAvLyBPcHRpbWl6ZSB0aGUgc2l6ZSBjbGFz
cyBzbyB0aGF0IHRoZXJlIGlzbid0IGFueSBzbG9wIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrJ3MK
LSAgICAgICAgICAgICAgICAvLyBwYXlsb2FkLgotICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNl
bGxzUGVyQmxvY2sgPSBNYXJrZWRTcGFjZTo6YmxvY2tQYXlsb2FkIC8gc2l6ZUNsYXNzOwotICAg
ICAgICAgICAgICAgIHNpemVfdCBwb3NzaWJseUJldHRlclNpemVDbGFzcyA9IChNYXJrZWRTcGFj
ZTo6YmxvY2tQYXlsb2FkIC8gY2VsbHNQZXJCbG9jaykgJiB+KE1hcmtlZFNwYWNlOjpzaXplU3Rl
cCAtIDEpOwotICAgICAgICAgICAgICAgIGRhdGFMb2dMbklmKE9wdGlvbnM6OmR1bXBTaXplQ2xh
c3NlcygpLCAiICAgIFBvc3NpYmx5IGJldHRlciBzaXplIGNsYXNzOiAiLCBwb3NzaWJseUJldHRl
clNpemVDbGFzcyk7Ci0KLSAgICAgICAgICAgICAgICAvLyBUaGUgc2l6ZSBjbGFzcyB3ZSBqdXN0
IGNhbWUgdXAgd2l0aCBpcyBiZXR0ZXIgdGhhbiB0aGUgb3RoZXIgb25lIGlmIGl0IHJlZHVjZXMK
LSAgICAgICAgICAgICAgICAvLyB0b3RhbCB3YXN0YWdlIGFzc3VtaW5nIHdlIG9ubHkgYWxsb2Nh
dGUgY2VsbHMgb2YgdGhhdCBzaXplLgotICAgICAgICAgICAgICAgIHNpemVfdCBvcmlnaW5hbFdh
c3RhZ2UgPSBNYXJrZWRTcGFjZTo6YmxvY2tQYXlsb2FkIC0gY2VsbHNQZXJCbG9jayAqIHNpemVD
bGFzczsKLSAgICAgICAgICAgICAgICBzaXplX3QgbmV3V2FzdGFnZSA9IChwb3NzaWJseUJldHRl
clNpemVDbGFzcyAtIHNpemVDbGFzcykgKiBjZWxsc1BlckJsb2NrOwotICAgICAgICAgICAgICAg
IGRhdGFMb2dMbklmKE9wdGlvbnM6OmR1bXBTaXplQ2xhc3NlcygpLCAiICAgIE9yaWdpbmFsIHdh
c3RhZ2U6ICIsIG9yaWdpbmFsV2FzdGFnZSwgIiwgbmV3IHdhc3RhZ2U6ICIsIG5ld1dhc3RhZ2Up
OwotICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAgIHNpemVfdCBiZXR0ZXJTaXplQ2xh
c3M7Ci0gICAgICAgICAgICAgICAgaWYgKG5ld1dhc3RhZ2UgPiBvcmlnaW5hbFdhc3RhZ2UpCi0g
ICAgICAgICAgICAgICAgICAgIGJldHRlclNpemVDbGFzcyA9IHNpemVDbGFzczsKLSAgICAgICAg
ICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIGJldHRlclNpemVDbGFzcyA9IHBvc3Np
Ymx5QmV0dGVyU2l6ZUNsYXNzOwotICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAgIGRh
dGFMb2dMbklmKE9wdGlvbnM6OmR1bXBTaXplQ2xhc3NlcygpLCAiICAgIENob29zaW5nIHNpemUg
Y2xhc3M6ICIsIGJldHRlclNpemVDbGFzcyk7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAg
ICAgICAgaWYgKGJldHRlclNpemVDbGFzcyA9PSByZXN1bHQtPmxhc3QoKSkgewotICAgICAgICAg
ICAgICAgICAgICAvLyBEZWZlbnNlIGZvciB3aGVuIGV4cFN0ZXAgaXMgc21hbGwuCi0gICAgICAg
ICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAg
ICAKLSAgICAgICAgICAgICAgICAvLyBUaGlzIGlzIHVzdWFsbHkgaG93IHdlIGdldCBvdXQgb2Yg
dGhlIGxvb3AuCi0gICAgICAgICAgICAgICAgaWYgKGJldHRlclNpemVDbGFzcyA+IE1hcmtlZFNw
YWNlOjpsYXJnZUN1dG9mZgotICAgICAgICAgICAgICAgICAgICB8fCBiZXR0ZXJTaXplQ2xhc3Mg
PiBPcHRpb25zOjpwcmVjaXNlQWxsb2NhdGlvbkN1dG9mZigpKQotICAgICAgICAgICAgICAgICAg
ICBicmVhazsKLSAgICAgICAgICAgICAgICAKLSAgICAgICAgICAgICAgICBhZGQoYmV0dGVyU2l6
ZUNsYXNzKTsKLSAgICAgICAgICAgIH0KKyAgICAgICAgc2l6ZV90IHNpemVDbGFzcyA9CisgICAg
ICAgICAgICBXVEY6OnJvdW5kVXBUb011bHRpcGxlT2Y8TWFya2VkU3BhY2U6OnNpemVTdGVwPihh
cHByb3hpbWF0ZVNpemVJbkJ5dGVzKTsKKyAgICAgICAgZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVt
cFNpemVDbGFzc2VzKCksICIgICAgU2l6ZSBjbGFzczogIiwgc2l6ZUNsYXNzKTsKKyAgICAgICAg
CisgICAgICAgIC8vIE9wdGltaXplIHRoZSBzaXplIGNsYXNzIHNvIHRoYXQgdGhlcmUgaXNuJ3Qg
YW55IHNsb3AgYXQgdGhlIGVuZCBvZiB0aGUgYmxvY2sncworICAgICAgICAvLyBwYXlsb2FkLgor
ICAgICAgICB1bnNpZ25lZCBjZWxsc1BlckJsb2NrID0gTWFya2VkU3BhY2U6OmJsb2NrUGF5bG9h
ZCAvIHNpemVDbGFzczsKKyAgICAgICAgc2l6ZV90IHBvc3NpYmx5QmV0dGVyU2l6ZUNsYXNzID0g
KE1hcmtlZFNwYWNlOjpibG9ja1BheWxvYWQgLyBjZWxsc1BlckJsb2NrKSAmIH4oTWFya2VkU3Bh
Y2U6OnNpemVTdGVwIC0gMSk7CisgICAgICAgIGRhdGFMb2dMbklmKE9wdGlvbnM6OmR1bXBTaXpl
Q2xhc3NlcygpLCAiICAgIFBvc3NpYmx5IGJldHRlciBzaXplIGNsYXNzOiAiLCBwb3NzaWJseUJl
dHRlclNpemVDbGFzcyk7CisKKyAgICAgICAgLy8gVGhlIHNpemUgY2xhc3Mgd2UganVzdCBjYW1l
IHVwIHdpdGggaXMgYmV0dGVyIHRoYW4gdGhlIG90aGVyIG9uZSBpZiBpdCByZWR1Y2VzCisgICAg
ICAgIC8vIHRvdGFsIHdhc3RhZ2UgYXNzdW1pbmcgd2Ugb25seSBhbGxvY2F0ZSBjZWxscyBvZiB0
aGF0IHNpemUuCisgICAgICAgIHNpemVfdCBvcmlnaW5hbFdhc3RhZ2UgPSBNYXJrZWRTcGFjZTo6
YmxvY2tQYXlsb2FkIC0gY2VsbHNQZXJCbG9jayAqIHNpemVDbGFzczsKKyAgICAgICAgc2l6ZV90
IG5ld1dhc3RhZ2UgPSAocG9zc2libHlCZXR0ZXJTaXplQ2xhc3MgLSBzaXplQ2xhc3MpICogY2Vs
bHNQZXJCbG9jazsKKyAgICAgICAgZGF0YUxvZ0xuSWYoT3B0aW9uczo6ZHVtcFNpemVDbGFzc2Vz
KCksICIgICAgT3JpZ2luYWwgd2FzdGFnZTogIiwgb3JpZ2luYWxXYXN0YWdlLCAiLCBuZXcgd2Fz
dGFnZTogIiwgbmV3V2FzdGFnZSk7CisgICAgICAgIAorICAgICAgICBzaXplX3QgYmV0dGVyU2l6
ZUNsYXNzOworICAgICAgICBpZiAobmV3V2FzdGFnZSA+IG9yaWdpbmFsV2FzdGFnZSkKKyAgICAg
ICAgICAgIGJldHRlclNpemVDbGFzcyA9IHNpemVDbGFzczsKKyAgICAgICAgZWxzZQorICAgICAg
ICAgICAgYmV0dGVyU2l6ZUNsYXNzID0gcG9zc2libHlCZXR0ZXJTaXplQ2xhc3M7CisgICAgICAg
IAorICAgICAgICBkYXRhTG9nTG5JZihPcHRpb25zOjpkdW1wU2l6ZUNsYXNzZXMoKSwgIiAgICBD
aG9vc2luZyBzaXplIGNsYXNzOiAiLCBiZXR0ZXJTaXplQ2xhc3MpOworICAgICAgICAKKyAgICAg
ICAgaWYgKGJldHRlclNpemVDbGFzcyA9PSByZXN1bHQubGFzdCgpKSB7CisgICAgICAgICAgICAv
LyBEZWZlbnNlIGZvciB3aGVuIGV4cFN0ZXAgaXMgc21hbGwuCisgICAgICAgICAgICBjb250aW51
ZTsKKyAgICAgICAgfQorICAgICAgICAKKyAgICAgICAgLy8gVGhpcyBpcyB1c3VhbGx5IGhvdyB3
ZSBnZXQgb3V0IG9mIHRoZSBsb29wLgorICAgICAgICBpZiAoYmV0dGVyU2l6ZUNsYXNzID4gTWFy
a2VkU3BhY2U6OmxhcmdlQ3V0b2ZmCisgICAgICAgICAgICB8fCBiZXR0ZXJTaXplQ2xhc3MgPiBP
cHRpb25zOjpwcmVjaXNlQWxsb2NhdGlvbkN1dG9mZigpKQorICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIAorICAgICAgICBhZGQoYmV0dGVyU2l6ZUNsYXNzKTsKKyAgICB9CiAKLSAgICAgICAg
ICAgIC8vIE1hbnVhbGx5IGluamVjdCBzaXplIGNsYXNzZXMgZm9yIG9iamVjdHMgd2Uga25vdyB3
aWxsIGJlIGFsbG9jYXRlZCBpbiBoaWdoIHZvbHVtZS4KLSAgICAgICAgICAgIC8vIEZJWE1FOiBB
bGwgb2YgdGhlc2UgdGhpbmdzIHNob3VsZCBoYXZlIElzb1N1YnNwYWNlcy4KLSAgICAgICAgICAg
IC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzk4NzYKLSAgICAg
ICAgICAgIGFkZCgyNTYpOworICAgIC8vIE1hbnVhbGx5IGluamVjdCBzaXplIGNsYXNzZXMgZm9y
IG9iamVjdHMgd2Uga25vdyB3aWxsIGJlIGFsbG9jYXRlZCBpbiBoaWdoIHZvbHVtZS4KKyAgICAv
LyBGSVhNRTogQWxsIG9mIHRoZXNlIHRoaW5ncyBzaG91bGQgaGF2ZSBJc29TdWJzcGFjZXMuCisg
ICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3OTg3NgorICAg
IGFkZCgyNTYpOwogCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gU29ydCBhbmQg
ZGVkdXBsaWNhdGUuCi0gICAgICAgICAgICAgICAgc3RkOjpzb3J0KHJlc3VsdC0+YmVnaW4oKSwg
cmVzdWx0LT5lbmQoKSk7Ci0gICAgICAgICAgICAgICAgYXV0byBpdCA9IHN0ZDo6dW5pcXVlKHJl
c3VsdC0+YmVnaW4oKSwgcmVzdWx0LT5lbmQoKSk7Ci0gICAgICAgICAgICAgICAgcmVzdWx0LT5z
aHJpbmtDYXBhY2l0eShpdCAtIHJlc3VsdC0+YmVnaW4oKSk7Ci0gICAgICAgICAgICB9CisgICAg
eworICAgICAgICAvLyBTb3J0IGFuZCBkZWR1cGxpY2F0ZS4KKyAgICAgICAgc3RkOjpzb3J0KHJl
c3VsdC5iZWdpbigpLCByZXN1bHQuZW5kKCkpOworICAgICAgICBhdXRvIGl0ID0gc3RkOjp1bmlx
dWUocmVzdWx0LmJlZ2luKCksIHJlc3VsdC5lbmQoKSk7CisgICAgICAgIHJlc3VsdC5zaHJpbmtD
YXBhY2l0eShpdCAtIHJlc3VsdC5iZWdpbigpKTsKKyAgICB9CiAKLSAgICAgICAgICAgIGRhdGFM
b2dMbklmKE9wdGlvbnM6OmR1bXBTaXplQ2xhc3NlcygpLCAiSlNDIEhlYXAgTWFya2VkU3BhY2Ug
c2l6ZSBjbGFzcyBkdW1wOiAiLCBsaXN0RHVtcCgqcmVzdWx0KSk7CisgICAgZGF0YUxvZ0xuSWYo
T3B0aW9uczo6ZHVtcFNpemVDbGFzc2VzKCksICJKU0MgSGVhcCBNYXJrZWRTcGFjZSBzaXplIGNs
YXNzIGR1bXA6ICIsIGxpc3REdW1wKHJlc3VsdCkpOwogCi0gICAgICAgICAgICAvLyBXZSBoYXZl
IGFuIG9wdGltaWF0aW9uIGluIE1hcmtlZFNwYWNlOjpvcHRpbWFsU2l6ZUZvcigpIHRoYXQgYXNz
dW1lcyB0aGluZ3MgYWJvdXQKLSAgICAgICAgICAgIC8vIHRoZSBzaXplIGNsYXNzIHRhYmxlLiBU
aGlzIGNoZWNrcyBvdXIgcmVzdWx0cyBhZ2FpbnN0IHRoYXQgZnVuY3Rpb24ncyBhc3N1bXB0aW9u
cy4KLSAgICAgICAgICAgIGZvciAoc2l6ZV90IHNpemUgPSBNYXJrZWRTcGFjZTo6c2l6ZVN0ZXAs
IGkgPSAwOyBzaXplIDw9IE1hcmtlZFNwYWNlOjpwcmVjaXNlQ3V0b2ZmOyBzaXplICs9IE1hcmtl
ZFNwYWNlOjpzaXplU3RlcCwgaSsrKQotICAgICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUKHJl
c3VsdC0+YXQoaSkgPT0gc2l6ZSk7Ci0gICAgICAgIH0pOwotICAgIHJldHVybiAqcmVzdWx0Owor
ICAgIC8vIFdlIGhhdmUgYW4gb3B0aW1pYXRpb24gaW4gTWFya2VkU3BhY2U6Om9wdGltYWxTaXpl
Rm9yKCkgdGhhdCBhc3N1bWVzIHRoaW5ncyBhYm91dAorICAgIC8vIHRoZSBzaXplIGNsYXNzIHRh
YmxlLiBUaGlzIGNoZWNrcyBvdXIgcmVzdWx0cyBhZ2FpbnN0IHRoYXQgZnVuY3Rpb24ncyBhc3N1
bXB0aW9ucy4KKyAgICBmb3IgKHNpemVfdCBzaXplID0gTWFya2VkU3BhY2U6OnNpemVTdGVwLCBp
ID0gMDsgc2l6ZSA8PSBNYXJrZWRTcGFjZTo6cHJlY2lzZUN1dG9mZjsgc2l6ZSArPSBNYXJrZWRT
cGFjZTo6c2l6ZVN0ZXAsIGkrKykKKyAgICAgICAgUkVMRUFTRV9BU1NFUlQocmVzdWx0LmF0KGkp
ID09IHNpemUpOworCisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUg
VGFibGVUeXBlLCB0eXBlbmFtZSBTaXplQ2xhc3NDb25zLCB0eXBlbmFtZSBEZWZhdWx0Q29ucz4K
QEAgLTE3MSw5ICsxNjYsMTEgQEAgdm9pZCBNYXJrZWRTcGFjZTo6aW5pdGlhbGl6ZVNpemVDbGFz
c0ZvclN0ZXBTaXplKCkKICAgICAgICAgICAgIGJ1aWxkU2l6ZUNsYXNzVGFibGUoCiAgICAgICAg
ICAgICAgICAgc19zaXplQ2xhc3NGb3JTaXplU3RlcCwKICAgICAgICAgICAgICAgICBbJl0gKHNp
emVfdCBzaXplQ2xhc3MpIC0+IHNpemVfdCB7CisgICAgICAgICAgICAgICAgICAgIFJFTEVBU0Vf
QVNTRVJUKHNpemVDbGFzcyA8PSBVSU5UMzJfTUFYKTsKICAgICAgICAgICAgICAgICAgICAgcmV0
dXJuIHNpemVDbGFzczsKICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgIFsmXSAo
c2l6ZV90IHNpemVDbGFzcykgLT4gc2l6ZV90IHsKKyAgICAgICAgICAgICAgICAgICAgUkVMRUFT
RV9BU1NFUlQoc2l6ZUNsYXNzIDw9IFVJTlQzMl9NQVgpOwogICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gc2l6ZUNsYXNzOwogICAgICAgICAgICAgICAgIH0pOwogICAgICAgICB9KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRTcGFjZS5oCmluZGV4IDg5MzZlNTFhNmJlNzM2N2Jm
NWExYTM5OTYwNGJmMTdkZmRjNzQ5ZDUuLmU0YjFhMmQ4ZTVkMTJlODVmODFkMTRmNzViY2Q1MWRk
Nzc5MmQ0NDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNw
YWNlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuaApAQCAt
NjUsNiArNjUsNyBAQCBjbGFzcyBNYXJrZWRTcGFjZSB7CiAgICAgLy8gZW5zdXJlcyB0aGF0IHdl
IG9ubHkgdXNlIHRoZSBzaXplIGNsYXNzIGFwcHJvYWNoIGlmIGl0IG1lYW5zIGJlaW5nIGFibGUg
dG8gcGFjayB0d28gdGhpbmdzCiAgICAgLy8gaW50byBvbmUgYmxvY2suCiAgICAgc3RhdGljIGNv
bnN0ZXhwciBzaXplX3QgbGFyZ2VDdXRvZmYgPSAoYmxvY2tQYXlsb2FkIC8gMikgJiB+KHNpemVT
dGVwIC0gMSk7CisgICAgc3RhdGljX2Fzc2VydChsYXJnZUN1dG9mZiA8PSBVSU5UMzJfTUFYKTsK
IAogICAgIC8vIFdlIGhhdmUgYW4gZXh0cmEgc2l6ZSBjbGFzcyBmb3Igc2l6ZSB6ZXJvLgogICAg
IHN0YXRpYyBjb25zdGV4cHIgc2l6ZV90IG51bVNpemVDbGFzc2VzID0gbGFyZ2VDdXRvZmYgLyBz
aXplU3RlcCArIDE7CkBAIC0xNzUsNyArMTc2LDcgQEAgY2xhc3MgTWFya2VkU3BhY2UgewogICAg
IAogICAgIHZvaWQgZHVtcEJpdHMoUHJpbnRTdHJlYW0mID0gV1RGOjpkYXRhRmlsZSgpKTsKICAg
ICAKLSAgICBKU19FWFBPUlRfUFJJVkFURSBzdGF0aWMgc3RkOjphcnJheTxzaXplX3QsIG51bVNp
emVDbGFzc2VzPiBzX3NpemVDbGFzc0ZvclNpemVTdGVwOworICAgIEpTX0VYUE9SVF9QUklWQVRF
IHN0YXRpYyBzdGQ6OmFycmF5PHVuc2lnbmVkLCBudW1TaXplQ2xhc3Nlcz4gc19zaXplQ2xhc3NG
b3JTaXplU3RlcDsKICAgICAKIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIENvbXBsZXRlU3Vi
c3BhY2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9WaXNpdFJhY2VL
ZXkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvVmlzaXRSYWNlS2V5LmNwcAppbmRl
eCAyOGVlMzBiODBhZTMzMDE0YmY3Njc3NTU3MWRjOGM2ZWQ5ZTc4ODI4Li4wYzczMzU3ZjgzNjY0
ZjZjOTcyYjgxNjE1MTI5NDUxNmEzZjI3N2M3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaGVhcC9WaXNpdFJhY2VLZXkuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9o
ZWFwL1Zpc2l0UmFjZUtleS5jcHAKQEAgLTI4LDcgKzI4LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IGNoYXIqIFZpc2l0UmFjZUtleTo6bV9kZWxldGVkVmFsdWVSYWNlTmFtZSA9ICJk
ZWxldGVkIHZhbHVlIjsKK2NvbnN0IGNoYXIqIGNvbnN0IFZpc2l0UmFjZUtleTo6bV9kZWxldGVk
VmFsdWVSYWNlTmFtZSA9ICJkZWxldGVkIHZhbHVlIjsKIAogdm9pZCBWaXNpdFJhY2VLZXk6OmR1
bXAoUHJpbnRTdHJlYW0mIG91dCkgY29uc3QKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL1Zpc2l0UmFjZUtleS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
VmlzaXRSYWNlS2V5LmgKaW5kZXggY2MxYmU5MWJiMDM5ZWEwNGYyZGZkODQ2ZjMyZjM0NDA0ZGI5
NWY3Mi4uNzMxMGJkY2U5ZmJhZmEyOWFhYzA4NTg0ZmQzNjY4NzczZGQ5ZTlkMyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvVmlzaXRSYWNlS2V5LmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvVmlzaXRSYWNlS2V5LmgKQEAgLTc5LDcgKzc5LDcgQEAgY2xh
c3MgVmlzaXRSYWNlS2V5IHsKICAgICB9CiAKIHByaXZhdGU6Ci0gICAgc3RhdGljIGNvbnN0IGNo
YXIqIG1fZGVsZXRlZFZhbHVlUmFjZU5hbWU7CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0
IG1fZGVsZXRlZFZhbHVlUmFjZU5hbWU7CiAgICAgCiAgICAgSlNDZWxsKiBtX2NlbGwgeyBudWxs
cHRyIH07CiAgICAgY29uc3QgY2hhciogbV9yYWNlTmFtZSB7IG51bGxwdHIgfTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVn
Z2VyQWdlbnQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5z
cGVjdG9yRGVidWdnZXJBZ2VudC5jcHAKaW5kZXggN2NjOWI1ZWI0ODA4NzY3NzAzODdmMDI0OWIw
ZjU4ZWIyYTZlYWUzMy4uMjljMTMwYjk2NWNhMjY1NjQxYzQwZjc1MDk5Y2Y2ZWJkMjY0MDA3MiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVj
dG9yRGVidWdnZXJBZ2VudC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAKIAog
bmFtZXNwYWNlIEluc3BlY3RvciB7CiAKLWNvbnN0IGNoYXIqIEluc3BlY3RvckRlYnVnZ2VyQWdl
bnQ6OmJhY2t0cmFjZU9iamVjdEdyb3VwID0gImJhY2t0cmFjZSI7Citjb25zdCBjaGFyKiBjb25z
dCBJbnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpiYWNrdHJhY2VPYmplY3RHcm91cCA9ICJiYWNrdHJh
Y2UiOwogCiAvLyBPYmplY3RzIGNyZWF0ZWQgYW5kIHJldGFpbmVkIGJ5IGV2YWx1YXRpbmcgYnJl
YWtwb2ludCBhY3Rpb25zIGFyZSBwdXQgaW50byBvYmplY3QgZ3JvdXBzCiAvLyBhY2NvcmRpbmcg
dG8gdGhlIGJyZWFrcG9pbnQgYWN0aW9uIGlkZW50aWZpZXIgYXNzaWduZWQgYnkgdGhlIGZyb250
ZW5kLiBBIGJyZWFrcG9pbnQgbWF5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmgKaW5kZXgg
MTkwYzliYTM4OWJkMTBiNzAyNzliNjZjOTg0ZTkxZTk2ZTE3NmYzZS4uMzVhZjE2ZDI3ZDZmZjll
NGRkNmJlNWUzMjdmZDhkNjgyMjhhN2MxNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQu
aApAQCAtNTUsNyArNTUsNyBAQCBjbGFzcyBKU19FWFBPUlRfUFJJVkFURSBJbnNwZWN0b3JEZWJ1
Z2dlckFnZW50IDogcHVibGljIEluc3BlY3RvckFnZW50QmFzZSwgcHVibAogcHVibGljOgogICAg
IH5JbnNwZWN0b3JEZWJ1Z2dlckFnZW50KCkgb3ZlcnJpZGU7CiAKLSAgICBzdGF0aWMgY29uc3Qg
Y2hhciogYmFja3RyYWNlT2JqZWN0R3JvdXA7CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0
IGJhY2t0cmFjZU9iamVjdEdyb3VwOwogCiAgICAgLy8gSW5zcGVjdG9yQWdlbnRCYXNlCiAgICAg
dm9pZCBkaWRDcmVhdGVGcm9udGVuZEFuZEJhY2tlbmQoRnJvbnRlbmRSb3V0ZXIqLCBCYWNrZW5k
RGlzcGF0Y2hlciopIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUHJvcGVydHlEZXNjcmlwdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1Byb3BlcnR5RGVzY3JpcHRvci5jcHAKaW5kZXggMTMyOWE3Njk1ZjE5OGU2OTQ1OGEzNDMx
YTc4ZWNkMzBkMTQ4M2QxMi4uOGNmODA0ZjdhMTg0YjIyNjg1N2QzZWFhZDFmMGU3YWYwNjZhZDUx
NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJvcGVydHlEZXNj
cmlwdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eURl
c2NyaXB0b3IuY3BwCkBAIC0zMSw3ICszMSw2IEBACiAjaW5jbHVkZSAiSlNDSlNWYWx1ZUlubGlu
ZXMuaCIKIAogbmFtZXNwYWNlIEpTQyB7Ci11bnNpZ25lZCBQcm9wZXJ0eURlc2NyaXB0b3I6OmRl
ZmF1bHRBdHRyaWJ1dGVzID0gUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnREZWxldGUgfCBQcm9wZXJ0
eUF0dHJpYnV0ZTo6RG9udEVudW0gfCBQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHk7CiAKIGJv
b2wgUHJvcGVydHlEZXNjcmlwdG9yOjp3cml0YWJsZSgpIGNvbnN0CiB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eURlc2NyaXB0b3IuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5RGVzY3JpcHRvci5oCmluZGV4IDRkZmYx
MGY2MzM2NGViOWUxYTA1MDhhODI0NzQ5YzYyMDZiNzA2YzYuLjg0MWI2YjBiNGUwMDE1MDQ5YWZl
ZDc0ZjMyNmMwY2UwZjUxYzI5MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1Byb3BlcnR5RGVzY3JpcHRvci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1Byb3BlcnR5RGVzY3JpcHRvci5oCkBAIC0yNyw2ICsyNyw3IEBACiAKICNpbmNsdWRl
ICJEZWZpbmVQcm9wZXJ0eUF0dHJpYnV0ZXMuaCIKICNpbmNsdWRlICJKU0NKU1ZhbHVlLmgiCisj
aW5jbHVkZSAiUHJvcGVydHlTbG90LmgiCiAKIG5hbWVzcGFjZSBKU0MgewogCkBAIC04Miw3ICs4
Myw4IEBAIGNsYXNzIFByb3BlcnR5RGVzY3JpcHRvciB7CiAgICAgdW5zaWduZWQgYXR0cmlidXRl
c092ZXJyaWRpbmdDdXJyZW50KGNvbnN0IFByb3BlcnR5RGVzY3JpcHRvciYgY3VycmVudCkgY29u
c3Q7CiAKIHByaXZhdGU6Ci0gICAgSlNfRVhQT1JUX1BSSVZBVEUgc3RhdGljIHVuc2lnbmVkIGRl
ZmF1bHRBdHRyaWJ1dGVzOworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgZGVmYXVsdEF0
dHJpYnV0ZXMgPSBQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udERlbGV0ZSB8IFByb3BlcnR5QXR0cmli
dXRlOjpEb250RW51bSB8IFByb3BlcnR5QXR0cmlidXRlOjpSZWFkT25seTsKKwogICAgIGJvb2wg
b3BlcmF0b3I9PShjb25zdCBQcm9wZXJ0eURlc2NyaXB0b3ImKSB7IHJldHVybiBmYWxzZTsgfQog
ICAgIGVudW0geyBXcml0YWJsZVByZXNlbnQgPSAxLCBFbnVtZXJhYmxlUHJlc2VudCA9IDIsIENv
bmZpZ3VyYWJsZVByZXNlbnQgPSA0fTsKICAgICAvLyBNYXkgYmUgYSBnZXR0ZXIvc2V0dGVyCg==
</data>
<flag name="review"
          id="416693"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>