<?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>202632</bug_id>
          
          <creation_ts>2019-10-07 05:29:03 -0700</creation_ts>
          <short_desc>[CSS Shadow Parts] Implement style invalidation</short_desc>
          <delta_ts>2019-10-08 05:23:14 -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>CSS</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>149443</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kangil.han</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1577317</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2019-10-07 05:29:03 -0700</bug_when>
    <thetext>::part() style should be invalidated on DOM mutations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577320</commentid>
    <comment_count>1</comment_count>
      <attachid>380316</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2019-10-07 05:49:21 -0700</bug_when>
    <thetext>Created attachment 380316
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577485</commentid>
    <comment_count>2</comment_count>
      <attachid>380316</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-10-07 13:49:07 -0700</bug_when>
    <thetext>Comment on attachment 380316
patch

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

&gt; LayoutTests/ChangeLog:10
&gt; +        * fast/css/shadow-parts/invalidation-class-descendant-combinator-expected.txt: Added.

Can we also add tests for sibling combinators (+ &amp; ~) as well as pseudo class like :hover and :active?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577725</commentid>
    <comment_count>3</comment_count>
      <attachid>380418</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2019-10-08 03:49:15 -0700</bug_when>
    <thetext>Created attachment 380418
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577732</commentid>
    <comment_count>4</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2019-10-08 04:37:58 -0700</bug_when>
    <thetext>&gt; Can we also add tests for sibling combinators (+ &amp; ~) as well as pseudo
&gt; class like :hover and :active?

Added sibling combinator tests in this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577745</commentid>
    <comment_count>5</comment_count>
      <attachid>380418</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-10-08 05:22:28 -0700</bug_when>
    <thetext>Comment on attachment 380418
patch

Clearing flags on attachment: 380418

Committed r250821: &lt;https://trac.webkit.org/changeset/250821&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577746</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-10-08 05:22:30 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577747</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-10-08 05:23:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/56071065&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380316</attachid>
            <date>2019-10-07 05:49:21 -0700</date>
            <delta_ts>2019-10-08 03:49:15 -0700</delta_ts>
            <desc>patch</desc>
            <filename>css-shadow-parts-invalidation.patch</filename>
            <type>text/plain</type>
            <size>15355</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwYmNkOTg2MDlkZS4uOWU3ZDU2NTdhZTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAor
MjAxOS0xMC0wNyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CisKKyAgICAgICAg
W0NTUyBTaGFkb3cgUGFydHNdIEltcGxlbWVudCBzdHlsZSBpbnZhbGlkYXRpb24KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMjYzMgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBzb21lIHRlc3RzIHRv
IHZlcmlmeSBjbGFzcyBtdXRhdGlvbnMgYW5kIGRlc2NlbmRhbnQgY29tYmluYXRvcnMgd2l0aCA6
OnBhcnQgYW5kIGV4cG9ydHBhcnQuCisKKyAgICAgICAgKiBmYXN0L2Nzcy9zaGFkb3ctcGFydHMv
aW52YWxpZGF0aW9uLWNsYXNzLWRlc2NlbmRhbnQtY29tYmluYXRvci1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xhc3Mt
ZGVzY2VuZGFudC1jb21iaW5hdG9yLWZvcndhcmQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2Nzcy9zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNsYXNzLWRlc2NlbmRhbnQt
Y29tYmluYXRvci1mb3J3YXJkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzL3NoYWRv
dy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xhc3MtZGVzY2VuZGFudC1jb21iaW5hdG9yLmh0bWw6IEFk
ZGVkLgorCiAyMDE5LTEwLTA0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAg
ICAgICAgQWxsb3cgcGFnZXMgdXNpbmcgRXZlbnRTb3VyY2UgdG8gZW50ZXIgdGhlIGJhY2svZm9y
d2FyZCBjYWNoZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93LXBhcnRz
L2ludmFsaWRhdGlvbi1jbGFzcy1kZXNjZW5kYW50LWNvbWJpbmF0b3ItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1kZXNj
ZW5kYW50LWNvbWJpbmF0b3ItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwLi5jNGJjYzI0ZTgxOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xhc3MtZGVzY2VuZGFudC1jb21i
aW5hdG9yLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKK1RoZSBmb2xsb3dpbmcgdGV4dCBz
aG91bGQgYmUgZ3JlZW46CisKK1BBU1MgUGFydCBpbiBzZWxlY3RlZCBob3N0IGNoYW5nZWQgY29s
b3IgCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZh
bGlkYXRpb24tY2xhc3MtZGVzY2VuZGFudC1jb21iaW5hdG9yLWZvcndhcmQtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1k
ZXNjZW5kYW50LWNvbWJpbmF0b3ItZm9yd2FyZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmM0YmNjMjRlODE4Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1kZXNj
ZW5kYW50LWNvbWJpbmF0b3ItZm9yd2FyZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACitU
aGUgZm9sbG93aW5nIHRleHQgc2hvdWxkIGJlIGdyZWVuOgorCitQQVNTIFBhcnQgaW4gc2VsZWN0
ZWQgaG9zdCBjaGFuZ2VkIGNvbG9yIAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy9zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNsYXNzLWRlc2NlbmRhbnQtY29tYmluYXRvci1m
b3J3YXJkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9zaGFkb3ctcGFydHMvaW52YWxpZGF0
aW9uLWNsYXNzLWRlc2NlbmRhbnQtY29tYmluYXRvci1mb3J3YXJkLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmM5ZDhhNTkyYjlhCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1k
ZXNjZW5kYW50LWNvbWJpbmF0b3ItZm9yd2FyZC5odG1sCkBAIC0wLDAgKzEsMzUgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5DU1MgU2hhZG93IFBhcnRz
IC0gSW52YWxpZGF0aW9uIHdpdGggd2l0aCBjbGFzcyBpbiBkZXNjZW5kYW50IGNvbWJpbmF0b3Ig
YW5kIHBhcnQgZm9yd2FyZDwvdGl0bGU+CisgICAgPGxpbmsgaHJlZj0iaHR0cDovL3d3dy5hcHBs
ZS5jb20vIiByZWw9ImF1dGhvciIgdGl0bGU9IkFwcGxlIj4KKyAgICA8bGluayBocmVmPSJodHRw
czovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLXNoYWRvdy1wYXJ0cy8iIHJlbD0iaGVscCI+CisgICAg
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+
CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvc3VwcG9ydC9zaGFkb3ctaGVscGVy
LmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8c3R5bGU+LmFuY2VzdG9y
ICNjLWUtb3V0ZXI6OnBhcnQocGFydC1mb3J3YXJkZWQpIHsgY29sb3I6IGdyZWVuOyB9PC9zdHls
ZT4KKyAgICA8c2NyaXB0Pmluc3RhbGxDdXN0b21FbGVtZW50KCJjdXN0b20tZWxlbWVudC1pbm5l
ciIsICJjdXN0b20tZWxlbWVudC1pbm5lci10ZW1wbGF0ZSIpOzwvc2NyaXB0PgorICAgIDx0ZW1w
bGF0ZSBpZD0iY3VzdG9tLWVsZW1lbnQtaW5uZXItdGVtcGxhdGUiPgorICAgICAgPHN0eWxlPnNw
YW4geyBjb2xvcjogcmVkOyB9PC9zdHlsZT4KKyAgICAgIDxzcGFuIGlkPSJwYXJ0IiBwYXJ0PSJw
YXJ0cCI+VGhpcyB0ZXh0PC9zcGFuPgorICAgIDwvdGVtcGxhdGU+CisgICAgPHNjcmlwdD5pbnN0
YWxsQ3VzdG9tRWxlbWVudCgiY3VzdG9tLWVsZW1lbnQtb3V0ZXIiLCAiY3VzdG9tLWVsZW1lbnQt
b3V0ZXItdGVtcGxhdGUiKTs8L3NjcmlwdD4KKyAgICA8dGVtcGxhdGUgaWQ9ImN1c3RvbS1lbGVt
ZW50LW91dGVyLXRlbXBsYXRlIj48Y3VzdG9tLWVsZW1lbnQtaW5uZXIgaWQ9ImMtZS1pbm5lciIg
ZXhwb3J0cGFydHM9InBhcnRwOiBwYXJ0LWZvcndhcmRlZCI+PC9jdXN0b20tZWxlbWVudC1pbm5l
cj48L3RlbXBsYXRlPgorICAgIFRoZSBmb2xsb3dpbmcgdGV4dCBzaG91bGQgYmUgZ3JlZW46Cisg
ICAgPGRpdiBpZD0idGFyZ2V0Ij4KKyAgICAgICAgPGRpdj48Y3VzdG9tLWVsZW1lbnQtb3V0ZXIg
aWQ9ImMtZS1vdXRlciI+PC9jdXN0b20tZWxlbWVudC1vdXRlcj48L2Rpdj4KKyAgICA8L2Rpdj4K
KyAgICA8c2NyaXB0PgorICAgICAgInVzZSBzdHJpY3QiOworICAgICAgdGVzdChmdW5jdGlvbigp
IHsKKyAgICAgICAgY29uc3QgcGFydCA9IGdldEVsZW1lbnRCeVNoYWRvd0lkcyhkb2N1bWVudCwg
WyJjLWUtb3V0ZXIiLCAiYy1lLWlubmVyIiwgInBhcnQiXSk7CisgICAgICAgIGNvbnN0IGJlZm9y
ZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHBhcnQpLmNvbG9yOworICAgICAgICBkb2N1bWVu
dC5xdWVyeVNlbGVjdG9yKCIjdGFyZ2V0IikuY2xhc3NMaXN0LmFkZCgiYW5jZXN0b3IiKTsKKyAg
ICAgICAgY29uc3QgYWZ0ZXIgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwYXJ0KS5jb2xvcjsK
KyAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoYmVmb3JlLCBhZnRlcik7CisgICAgICB9LCAiUGFy
dCBpbiBzZWxlY3RlZCBob3N0IGNoYW5nZWQgY29sb3IiKTsKKyAgICA8L3NjcmlwdD4KKyAgPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93LXBh
cnRzL2ludmFsaWRhdGlvbi1jbGFzcy1kZXNjZW5kYW50LWNvbWJpbmF0b3IuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xhc3MtZGVzY2VuZGFu
dC1jb21iaW5hdG9yLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAu
LjM5ZWU3ODBlMGMwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hh
ZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1kZXNjZW5kYW50LWNvbWJpbmF0b3IuaHRtbApA
QCAtMCwwICsxLDMzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8
dGl0bGU+Q1NTIFNoYWRvdyBQYXJ0cyAtIEludmFsaWRhdGlvbiB3aXRoIGNsYXNzIGluIGRlc2Nl
bmRhbnQgY29tYmluYXRvcjwvdGl0bGU+CisgICAgPGxpbmsgaHJlZj0iaHR0cDovL3d3dy5hcHBs
ZS5jb20vIiByZWw9ImF1dGhvciIgdGl0bGU9IkFwcGxlIj4KKyAgICA8bGluayBocmVmPSJodHRw
czovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLXNoYWRvdy1wYXJ0cy8iIHJlbD0iaGVscCI+CisgICAg
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+
CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvc3VwcG9ydC9zaGFkb3ctaGVscGVy
LmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8c3R5bGU+LmFuY2VzdG9y
ICNjLWU6OnBhcnQocGFydHApIHsgY29sb3I6IGdyZWVuOyB9PC9zdHlsZT4KKyAgICA8c2NyaXB0
Pmluc3RhbGxDdXN0b21FbGVtZW50KCJjdXN0b20tZWxlbWVudCIsICJjdXN0b20tZWxlbWVudC10
ZW1wbGF0ZSIpOzwvc2NyaXB0PgorICAgIDx0ZW1wbGF0ZSBpZD0iY3VzdG9tLWVsZW1lbnQtdGVt
cGxhdGUiPgorICAgICAgPHN0eWxlPnNwYW4geyBjb2xvcjogcmVkOyB9PC9zdHlsZT4KKyAgICAg
IDxzcGFuIGlkPSJwYXJ0IiBwYXJ0PSJwYXJ0cCI+VGhpcyB0ZXh0PC9zcGFuPgorICAgIDwvdGVt
cGxhdGU+CisgICAgVGhlIGZvbGxvd2luZyB0ZXh0IHNob3VsZCBiZSBncmVlbjoKKyAgICA8ZGl2
IGlkPSJ0YXJnZXQiPgorICAgICAgPGRpdj48Y3VzdG9tLWVsZW1lbnQgaWQ9ImMtZSI+PC9jdXN0
b20tZWxlbWVudD48L2Rpdj4KKyAgICA8L2Rpdj4KKyAgICA8c2NyaXB0PgorICAgICAgInVzZSBz
dHJpY3QiOworICAgICAgdGVzdChmdW5jdGlvbigpIHsKKyAgICAgICAgY29uc3QgcGFydCA9IGdl
dEVsZW1lbnRCeVNoYWRvd0lkcyhkb2N1bWVudCwgWyJjLWUiLCAicGFydCJdKTsKKyAgICAgICAg
Y29uc3QgYmVmb3JlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUocGFydCkuY29sb3I7CisgICAg
ICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiN0YXJnZXQiKS5jbGFzc0xpc3QuYWRkKCJhbmNl
c3RvciIpOworICAgICAgICBjb25zdCBhZnRlciA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHBh
cnQpLmNvbG9yOworICAgICAgICBhc3NlcnRfbm90X2VxdWFscyhiZWZvcmUsIGFmdGVyKTsKKyAg
ICAgIH0sICJQYXJ0IGluIHNlbGVjdGVkIGhvc3QgY2hhbmdlZCBjb2xvciIpOworICAgIDwvc2Ny
aXB0PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRl
eCA0NmFiZDlhNjJjYy4uMjZlOTE4Y2RjYmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE0IEBACisyMDE5LTEwLTA3ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFw
cGxlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYWRvdyBQYXJ0c10gSW1wbGVtZW50IHN0eWxlIGlu
dmFsaWRhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjAyNjMyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9u
LWNoYW5nZS1leHBvcnRwYXJ0cy1mb3J3YXJkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNoYW5nZS1w
YXJ0LW5hbWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLXNoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2hhbmdlLXBhcnQtbmFtZS1mb3J3YXJkLWV4
cGVjdGVkLnR4dDoKKwogMjAxOS0xMC0wNCAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBDaGFuZ2UgIkludmFsaWRTdGF0ZUVycm9yIiB0byAiTm90U3VwcG9ydGVk
RXJyb3IiIGZvciBhdHRhY2hTaGFkb3coKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXNoYWRvdy1wYXJ0cy9pbnZhbGlkYXRp
b24tY2hhbmdlLWV4cG9ydHBhcnRzLWZvcndhcmQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXNoYWRvdy1wYXJ0cy9pbnZh
bGlkYXRpb24tY2hhbmdlLWV4cG9ydHBhcnRzLWZvcndhcmQtZXhwZWN0ZWQudHh0CmluZGV4IDZi
NTMwMmFiMDM0Li44YTU1MTBiMzhmNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXNoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24t
Y2hhbmdlLWV4cG9ydHBhcnRzLWZvcndhcmQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvaW52
YWxpZGF0aW9uLWNoYW5nZS1leHBvcnRwYXJ0cy1mb3J3YXJkLWV4cGVjdGVkLnR4dApAQCAtMSw0
ICsxLDQgQEAKIFRoZSBmb2xsb3dpbmcgdGV4dCBzaG91bGQgYmUgZ3JlZW46IAogCi1GQUlMIFBh
cnQgaW4gc2VsZWN0ZWQgaG9zdCBjaGFuZ2VkIGNvbG9yIGFzc2VydF9ub3RfZXF1YWxzOiBnb3Qg
ZGlzYWxsb3dlZCB2YWx1ZSAicmdiKDI1NSwgMCwgMCkiCitQQVNTIFBhcnQgaW4gc2VsZWN0ZWQg
aG9zdCBjaGFuZ2VkIGNvbG9yIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mtc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1j
aGFuZ2UtcGFydC1uYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNoYW5n
ZS1wYXJ0LW5hbWUtZXhwZWN0ZWQudHh0CmluZGV4IDNiYjdiZDhmZWQzLi5jNGJjYzI0ZTgxOCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLXNoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2hhbmdlLXBhcnQtbmFtZS1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLXNoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2hhbmdlLXBhcnQtbmFtZS1leHBlY3Rl
ZC50eHQKQEAgLTEsNCArMSw0IEBACiBUaGUgZm9sbG93aW5nIHRleHQgc2hvdWxkIGJlIGdyZWVu
OgogCi1GQUlMIFBhcnQgaW4gc2VsZWN0ZWQgaG9zdCBjaGFuZ2VkIGNvbG9yIGFzc2VydF9ub3Rf
ZXF1YWxzOiBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAicmdiKDI1NSwgMCwgMCkiCitQQVNTIFBhcnQg
aW4gc2VsZWN0ZWQgaG9zdCBjaGFuZ2VkIGNvbG9yIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mtc2hhZG93LXBhcnRzL2lu
dmFsaWRhdGlvbi1jaGFuZ2UtcGFydC1uYW1lLWZvcndhcmQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXNoYWRvdy1wYXJ0
cy9pbnZhbGlkYXRpb24tY2hhbmdlLXBhcnQtbmFtZS1mb3J3YXJkLWV4cGVjdGVkLnR4dAppbmRl
eCA2YjUzMDJhYjAzNC4uOGE1NTEwYjM4ZjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvaW52YWxpZGF0
aW9uLWNoYW5nZS1wYXJ0LW5hbWUtZm9yd2FyZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXNoYWRvdy1wYXJ0cy9p
bnZhbGlkYXRpb24tY2hhbmdlLXBhcnQtbmFtZS1mb3J3YXJkLWV4cGVjdGVkLnR4dApAQCAtMSw0
ICsxLDQgQEAKIFRoZSBmb2xsb3dpbmcgdGV4dCBzaG91bGQgYmUgZ3JlZW46IAogCi1GQUlMIFBh
cnQgaW4gc2VsZWN0ZWQgaG9zdCBjaGFuZ2VkIGNvbG9yIGFzc2VydF9ub3RfZXF1YWxzOiBnb3Qg
ZGlzYWxsb3dlZCB2YWx1ZSAicmdiKDI1NSwgMCwgMCkiCitQQVNTIFBhcnQgaW4gc2VsZWN0ZWQg
aG9zdCBjaGFuZ2VkIGNvbG9yIAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjYxYTE5YzNiZDQuLjkyNzA4NDNi
MmQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzUgQEAKKzIwMTktMTAtMDcgIEFudHRpIEtvaXZp
c3RvICA8YW50dGlAYXBwbGUuY29tPgorCisgICAgICAgIFtDU1MgU2hhZG93IFBhcnRzXSBJbXBs
ZW1lbnQgc3R5bGUgaW52YWxpZGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDI2MzIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBUZXN0czogZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlv
bi1jbGFzcy1kZXNjZW5kYW50LWNvbWJpbmF0b3ItZm9yd2FyZC5odG1sCisgICAgICAgICAgICAg
ICBmYXN0L2Nzcy9zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNsYXNzLWRlc2NlbmRhbnQtY29t
YmluYXRvci5odG1sCisKKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpFbGVtZW50OjphdHRyaWJ1dGVDaGFuZ2VkKToKKworICAgICAgICBJbnZhbGlkYXRlIHBh
cnRzIGluIHNoYWRvdyB0cmVlIG9uICdleHBvcnRwYXJ0cycgYXR0cmlidXRlIG11dGF0aW9uLgor
CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpwYXJ0QXR0cmlidXRlQ2hhbmdlZCk6CisKKyAg
ICAgICAgSW52YWxpZGF0ZSBlbGVtZW50IG9uICdwYXJ0JyBhdHRyaWJ1dGUgbXV0YXRpb24uCisK
KyAgICAgICAgKiBzdHlsZS9TdHlsZUludmFsaWRhdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlN0eWxlOjpJbnZhbGlkYXRvcjo6SW52YWxpZGF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U3R5
bGU6OkludmFsaWRhdG9yOjppbnZhbGlkYXRlSWZOZWVkZWQpOgorCisgICAgICAgIEludmFsaWRh
dGUgcGFydHMgaW4gc2hhZG93IHRyZWUgZHVyaW5nIGNsYXNzIGFuZCBhdHRyaWJ1dGUgbXV0YXRp
b24gaW52YWxpZGF0aW9uLgorCisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6SW52YWxpZGF0b3I6
OmludmFsaWRhdGVTaGFkb3dQYXJ0cyk6CisgICAgICAgICogc3R5bGUvU3R5bGVJbnZhbGlkYXRv
ci5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkludmFsaWRhdG9yOjpkaXJ0aWVzQWxsU3R5
bGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkludmFsaWRhdG9yOjpoYXNTaGFk
b3dQc2V1ZG9FbGVtZW50UnVsZXNJbkF1dGhvclNoZWV0IGNvbnN0KTogRGVsZXRlZC4KKworICAg
ICAgICBSZW1vdmUgYW4gdW5uY2Vzc2FyeSBib29sLgorCiAyMDE5LTEwLTA2ICBBbnR0aSBLb2l2
aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBOb2RlOjpyZWYvZGVyZWYgc2hvdWxk
IGJlIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5kZXggMzc5M2UxMDFmNDIuLjM5OTk4ZDY1
YmEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBAIC0xMDMsNiArMTAzLDcgQEAKICNpbmNsdWRl
ICJTZXR0aW5ncy5oIgogI2luY2x1ZGUgIlNpbXVsYXRlZENsaWNrLmgiCiAjaW5jbHVkZSAiU2xv
dEFzc2lnbm1lbnQuaCIKKyNpbmNsdWRlICJTdHlsZUludmFsaWRhdG9yLmgiCiAjaW5jbHVkZSAi
U3R5bGVQcm9wZXJ0aWVzLmgiCiAjaW5jbHVkZSAiU3R5bGVSZXNvbHZlci5oIgogI2luY2x1ZGUg
IlN0eWxlU2NvcGUuaCIKQEAgLTE3NDQsOCArMTc0NSwxMCBAQCB2b2lkIEVsZW1lbnQ6OmF0dHJp
YnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSwgY29uc3QgQXRvbVN0cmluZyYg
b2xkVgogICAgICAgICB9IGVsc2UgaWYgKG5hbWUgPT0gSFRNTE5hbWVzOjpwYXJ0QXR0cikKICAg
ICAgICAgICAgIHBhcnRBdHRyaWJ1dGVDaGFuZ2VkKG5ld1ZhbHVlKTsKICAgICAgICAgZWxzZSBp
ZiAobmFtZSA9PSBIVE1MTmFtZXM6OmV4cG9ydHBhcnRzQXR0cikgewotICAgICAgICAgICAgaWYg
KGF1dG8qIHNoYWRvd1Jvb3QgPSB0aGlzLT5zaGFkb3dSb290KCkpCisgICAgICAgICAgICBpZiAo
YXV0byogc2hhZG93Um9vdCA9IHRoaXMtPnNoYWRvd1Jvb3QoKSkgewogICAgICAgICAgICAgICAg
IHNoYWRvd1Jvb3QtPmludmFsaWRhdGVQYXJ0TWFwcGluZ3MoKTsKKyAgICAgICAgICAgICAgICBT
dHlsZTo6SW52YWxpZGF0b3I6OmludmFsaWRhdGVTaGFkb3dQYXJ0cygqc2hhZG93Um9vdCk7Cisg
ICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9CiAKQEAgLTE4MjksNiArMTgzMiw5IEBAIHZv
aWQgRWxlbWVudDo6cGFydEF0dHJpYnV0ZUNoYW5nZWQoY29uc3QgQXRvbVN0cmluZyYgbmV3VmFs
dWUpCiAgICAgICAgIGlmIChhdXRvKiBwYXJ0TGlzdCA9IGVsZW1lbnRSYXJlRGF0YSgpLT5wYXJ0
TGlzdCgpKQogICAgICAgICAgICAgcGFydExpc3QtPmFzc29jaWF0ZWRBdHRyaWJ1dGVWYWx1ZUNo
YW5nZWQobmV3VmFsdWUpOwogICAgIH0KKworICAgIGlmIChuZWVkc1N0eWxlSW52YWxpZGF0aW9u
KCkgJiYgaXNJblNoYWRvd1RyZWUoKSkKKyAgICAgICAgaW52YWxpZGF0ZVN0eWxlSW50ZXJuYWwo
KTsKIH0KIAogVVJMIEVsZW1lbnQ6OmFic29sdXRlTGlua1VSTCgpIGNvbnN0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUludmFsaWRhdG9yLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL1N0eWxlSW52YWxpZGF0b3IuY3BwCmluZGV4IDZkNjk1YTY2MGQwLi45MzZhOTE1
ODY4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVJbnZhbGlkYXRvci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVJbnZhbGlkYXRvci5jcHAKQEAgLTMx
LDYgKzMxLDcgQEAKICNpbmNsdWRlICJFbGVtZW50SXRlcmF0b3IuaCIKICNpbmNsdWRlICJFbGVt
ZW50UnVsZUNvbGxlY3Rvci5oIgogI2luY2x1ZGUgIkhUTUxTbG90RWxlbWVudC5oIgorI2luY2x1
ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJTZWxlY3RvckZpbHRlci5o
IgogI2luY2x1ZGUgIlNoYWRvd1Jvb3QuaCIKICNpbmNsdWRlICJTdHlsZVJ1bGVJbXBvcnQuaCIK
QEAgLTg4LDI0ICs4OSwyNSBAQCBJbnZhbGlkYXRvcjo6SW52YWxpZGF0b3IoY29uc3QgVmVjdG9y
PFN0eWxlU2hlZXRDb250ZW50cyo+JiBzaGVldHMsIGNvbnN0IE1lZGlhUQogICAgIG1fb3duZWRS
dWxlU2V0LT5kaXNhYmxlQXV0b1Nocmlua1RvRml0KCk7CiAgICAgZm9yIChhdXRvJiBzaGVldCA6
IHNoZWV0cykKICAgICAgICAgbV9vd25lZFJ1bGVTZXQtPmFkZFJ1bGVzRnJvbVNoZWV0KCpzaGVl
dCwgbWVkaWFRdWVyeUV2YWx1YXRvcik7Ci0KLSAgICBtX2hhc1NoYWRvd1BzZXVkb0VsZW1lbnRS
dWxlc0luQXV0aG9yU2hlZXQgPSBtX3J1bGVTZXQuaGFzU2hhZG93UHNldWRvRWxlbWVudFJ1bGVz
KCk7CiB9CiAKIEludmFsaWRhdG9yOjpJbnZhbGlkYXRvcihjb25zdCBSdWxlU2V0JiBydWxlU2V0
KQogICAgIDogbV9ydWxlU2V0KHJ1bGVTZXQpCi0gICAgLCBtX2hhc1NoYWRvd1BzZXVkb0VsZW1l
bnRSdWxlc0luQXV0aG9yU2hlZXQocnVsZVNldC5oYXNTaGFkb3dQc2V1ZG9FbGVtZW50UnVsZXMo
KSkKIHsKIH0KIAogSW52YWxpZGF0b3I6OkNoZWNrRGVzY2VuZGFudHMgSW52YWxpZGF0b3I6Omlu
dmFsaWRhdGVJZk5lZWRlZChFbGVtZW50JiBlbGVtZW50LCBjb25zdCBTZWxlY3RvckZpbHRlciog
ZmlsdGVyKQogewotICAgIGlmIChtX2hhc1NoYWRvd1BzZXVkb0VsZW1lbnRSdWxlc0luQXV0aG9y
U2hlZXQpIHsKKyAgICBpZiAobV9ydWxlU2V0Lmhhc1NoYWRvd1BzZXVkb0VsZW1lbnRSdWxlcygp
KSB7CiAgICAgICAgIC8vIEZJWE1FOiBUaGlzIGNvdWxkIGRvIGFjdHVhbCBydWxlIG1hdGNoaW5n
IHRvby4KICAgICAgICAgaWYgKGVsZW1lbnQuc2hhZG93Um9vdCgpKQogICAgICAgICAgICAgZWxl
bWVudC5pbnZhbGlkYXRlU3R5bGVGb3JTdWJ0cmVlSW50ZXJuYWwoKTsKICAgICB9CiAKKyAgICAv
LyBGSVhNRTogTW9yZSBmaW5lLWdyYWluZWQgaW52YWxpZGF0aW9uIGZvciA6OnBhcnQoKQorICAg
IGlmICghbV9ydWxlU2V0LnBhcnRQc2V1ZG9FbGVtZW50UnVsZXMoKS5pc0VtcHR5KCkgJiYgZWxl
bWVudC5zaGFkb3dSb290KCkpCisgICAgICAgIGludmFsaWRhdGVTaGFkb3dQYXJ0cygqZWxlbWVu
dC5zaGFkb3dSb290KCkpOworCiAgICAgYm9vbCBzaG91bGRDaGVja0ZvclNsb3RzID0gIW1fcnVs
ZVNldC5zbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzKCkuaXNFbXB0eSgpICYmICFtX2RpZEludmFs
aWRhdGVIb3N0Q2hpbGRyZW47CiAgICAgaWYgKHNob3VsZENoZWNrRm9yU2xvdHMgJiYgaXM8SFRN
TFNsb3RFbGVtZW50PihlbGVtZW50KSkgewogICAgICAgICBhdXRvKiBjb250YWluaW5nU2hhZG93
Um9vdCA9IGVsZW1lbnQuY29udGFpbmluZ1NoYWRvd1Jvb3QoKTsKQEAgLTI2Miw1ICsyNjQsMjQg
QEAgdm9pZCBJbnZhbGlkYXRvcjo6aW52YWxpZGF0ZVN0eWxlV2l0aE1hdGNoRWxlbWVudChFbGVt
ZW50JiBlbGVtZW50LCBNYXRjaEVsZW1lbnQKICAgICB9CiB9CiAKK3ZvaWQgSW52YWxpZGF0b3I6
OmludmFsaWRhdGVTaGFkb3dQYXJ0cyhTaGFkb3dSb290JiBzaGFkb3dSb290KQoreworICAgIGlm
ICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5jc3NTaGFkb3dQYXJ0
c0VuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKHNoYWRvd1Jvb3QubW9kZSgp
ID09IFNoYWRvd1Jvb3RNb2RlOjpVc2VyQWdlbnQpCisgICAgICAgIHJldHVybjsKKworICAgIGZv
ciAoYXV0byYgZGVzY2VuZGFudCA6IGRlc2NlbmRhbnRzT2ZUeXBlPEVsZW1lbnQ+KHNoYWRvd1Jv
b3QpKSB7CisgICAgICAgIC8vIEZJWE1FOiBXZSBjb3VsZCBvbmx5IGludmFsaWRhdGUgcGFydCBu
YW1lcyB0aGF0IGFjdHVhbGx5IHNob3cgdXAgaW4gcnVsZXMuCisgICAgICAgIGlmICghZGVzY2Vu
ZGFudC5wYXJ0TmFtZXMoKS5pc0VtcHR5KCkpCisgICAgICAgICAgICBkZXNjZW5kYW50LmludmFs
aWRhdGVTdHlsZUludGVybmFsKCk7CisKKyAgICAgICAgYXV0byogbmVzdGVkU2hhZG93Um9vdCA9
IGRlc2NlbmRhbnQuc2hhZG93Um9vdCgpOworICAgICAgICBpZiAobmVzdGVkU2hhZG93Um9vdCAm
JiAhbmVzdGVkU2hhZG93Um9vdC0+cGFydE1hcHBpbmdzKCkuaXNFbXB0eSgpKQorICAgICAgICAg
ICAgaW52YWxpZGF0ZVNoYWRvd1BhcnRzKCpuZXN0ZWRTaGFkb3dSb290KTsKKyAgICB9Cit9CisK
IH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlSW52YWxpZGF0b3Iu
aCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlSW52YWxpZGF0b3IuaAppbmRleCA2NDY4ZTg1
NDZiNC4uMjAwY2RiNjc5OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxl
SW52YWxpZGF0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUludmFsaWRhdG9y
LmgKQEAgLTQ2LDEyICs0NiwxMyBAQCBwdWJsaWM6CiAgICAgSW52YWxpZGF0b3IoY29uc3QgUnVs
ZVNldCYpOwogCiAgICAgYm9vbCBkaXJ0aWVzQWxsU3R5bGUoKSBjb25zdCB7IHJldHVybiBtX2Rp
cnRpZXNBbGxTdHlsZTsgfQotICAgIGJvb2wgaGFzU2hhZG93UHNldWRvRWxlbWVudFJ1bGVzSW5B
dXRob3JTaGVldCgpIGNvbnN0IHsgcmV0dXJuIG1faGFzU2hhZG93UHNldWRvRWxlbWVudFJ1bGVz
SW5BdXRob3JTaGVldDsgfQogICAgIHZvaWQgaW52YWxpZGF0ZVN0eWxlKERvY3VtZW50Jik7CiAg
ICAgdm9pZCBpbnZhbGlkYXRlU3R5bGUoU2hhZG93Um9vdCYpOwogICAgIHZvaWQgaW52YWxpZGF0
ZVN0eWxlKEVsZW1lbnQmKTsKICAgICB2b2lkIGludmFsaWRhdGVTdHlsZVdpdGhNYXRjaEVsZW1l
bnQoRWxlbWVudCYsIE1hdGNoRWxlbWVudCk7CiAKKyAgICBzdGF0aWMgdm9pZCBpbnZhbGlkYXRl
U2hhZG93UGFydHMoU2hhZG93Um9vdCYpOworCiBwcml2YXRlOgogICAgIGVudW0gY2xhc3MgQ2hl
Y2tEZXNjZW5kYW50cyB7IFllcywgTm8gfTsKICAgICBDaGVja0Rlc2NlbmRhbnRzIGludmFsaWRh
dGVJZk5lZWRlZChFbGVtZW50JiwgY29uc3QgU2VsZWN0b3JGaWx0ZXIqKTsKQEAgLTYxLDcgKzYy
LDYgQEAgcHJpdmF0ZToKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UnVsZVNldD4gbV9vd25lZFJ1bGVT
ZXQ7CiAgICAgY29uc3QgUnVsZVNldCYgbV9ydWxlU2V0OwogICAgIGJvb2wgbV9kaXJ0aWVzQWxs
U3R5bGUgeyBmYWxzZSB9OwotICAgIGJvb2wgbV9oYXNTaGFkb3dQc2V1ZG9FbGVtZW50UnVsZXNJ
bkF1dGhvclNoZWV0IHsgZmFsc2UgfTsKICAgICBib29sIG1fZGlkSW52YWxpZGF0ZUhvc3RDaGls
ZHJlbiB7IGZhbHNlIH07CiB9OwogCg==
</data>
<flag name="review"
          id="396039"
          type_id="1"
          status="+"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380418</attachid>
            <date>2019-10-08 03:49:15 -0700</date>
            <delta_ts>2019-10-08 05:22:28 -0700</delta_ts>
            <desc>patch</desc>
            <filename>css-shadow-parts-invalidation-2.patch</filename>
            <type>text/plain</type>
            <size>21729</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwYmNkOTg2MDlkZS4uNzE1MTg1M2FmMmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAor
MjAxOS0xMC0wNyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CisKKyAgICAgICAg
W0NTUyBTaGFkb3cgUGFydHNdIEltcGxlbWVudCBzdHlsZSBpbnZhbGlkYXRpb24KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMjYzMgorCisgICAgICAg
IFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4KKworICAgICAgICBBZGQgc29tZSB0ZXN0cyB0byB2
ZXJpZnkgY2xhc3MgbXV0YXRpb25zIGFuZCBjb21iaW5hdG9ycyB3aXRoIDo6cGFydCBhbmQgZXhw
b3J0cGFydC4KKworICAgICAgICAqIGZhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24t
Y2xhc3MtZGVzY2VuZGFudC1jb21iaW5hdG9yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1kZXNjZW5kYW50LWNv
bWJpbmF0b3ItZXhwb3J0LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9jc3Mv
c2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1kZXNjZW5kYW50LWNvbWJpbmF0b3ItZXhw
b3J0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlk
YXRpb24tY2xhc3MtZGVzY2VuZGFudC1jb21iaW5hdG9yLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xhc3Mtc2libGluZy1jb21iaW5h
dG9yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9jc3Mvc2hhZG93LXBhcnRz
L2ludmFsaWRhdGlvbi1jbGFzcy1zaWJsaW5nLWNvbWJpbmF0b3ItZXhwb3J0LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1j
bGFzcy1zaWJsaW5nLWNvbWJpbmF0b3ItZXhwb3J0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xhc3Mtc2libGluZy1jb21iaW5hdG9y
Lmh0bWw6IEFkZGVkLgorCiAyMDE5LTEwLTA0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5j
b20+CiAKICAgICAgICAgQWxsb3cgcGFnZXMgdXNpbmcgRXZlbnRTb3VyY2UgdG8gZW50ZXIgdGhl
IGJhY2svZm9yd2FyZCBjYWNoZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hh
ZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1kZXNjZW5kYW50LWNvbWJpbmF0b3ItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1j
bGFzcy1kZXNjZW5kYW50LWNvbWJpbmF0b3ItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5jNGJjYzI0ZTgxOAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xhc3MtZGVzY2Vu
ZGFudC1jb21iaW5hdG9yLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKK1RoZSBmb2xsb3dp
bmcgdGV4dCBzaG91bGQgYmUgZ3JlZW46CisKK1BBU1MgUGFydCBpbiBzZWxlY3RlZCBob3N0IGNo
YW5nZWQgY29sb3IgCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3NoYWRvdy1w
YXJ0cy9pbnZhbGlkYXRpb24tY2xhc3MtZGVzY2VuZGFudC1jb21iaW5hdG9yLWV4cG9ydC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9u
LWNsYXNzLWRlc2NlbmRhbnQtY29tYmluYXRvci1leHBvcnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5jNGJjYzI0ZTgxOAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xh
c3MtZGVzY2VuZGFudC1jb21iaW5hdG9yLWV4cG9ydC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0
IEBACitUaGUgZm9sbG93aW5nIHRleHQgc2hvdWxkIGJlIGdyZWVuOgorCitQQVNTIFBhcnQgaW4g
c2VsZWN0ZWQgaG9zdCBjaGFuZ2VkIGNvbG9yIAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy9zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNsYXNzLWRlc2NlbmRhbnQtY29tYmlu
YXRvci1leHBvcnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZh
bGlkYXRpb24tY2xhc3MtZGVzY2VuZGFudC1jb21iaW5hdG9yLWV4cG9ydC5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5jOWQ4YTU5MmI5YQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xh
c3MtZGVzY2VuZGFudC1jb21iaW5hdG9yLWV4cG9ydC5odG1sCkBAIC0wLDAgKzEsMzUgQEAKKzwh
RE9DVFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5DU1MgU2hhZG93IFBh
cnRzIC0gSW52YWxpZGF0aW9uIHdpdGggd2l0aCBjbGFzcyBpbiBkZXNjZW5kYW50IGNvbWJpbmF0
b3IgYW5kIHBhcnQgZm9yd2FyZDwvdGl0bGU+CisgICAgPGxpbmsgaHJlZj0iaHR0cDovL3d3dy5h
cHBsZS5jb20vIiByZWw9ImF1dGhvciIgdGl0bGU9IkFwcGxlIj4KKyAgICA8bGluayBocmVmPSJo
dHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLXNoYWRvdy1wYXJ0cy8iIHJlbD0iaGVscCI+Cisg
ICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3Jp
cHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9y
dC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvc3VwcG9ydC9zaGFkb3ctaGVs
cGVyLmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8c3R5bGU+LmFuY2Vz
dG9yICNjLWUtb3V0ZXI6OnBhcnQocGFydC1mb3J3YXJkZWQpIHsgY29sb3I6IGdyZWVuOyB9PC9z
dHlsZT4KKyAgICA8c2NyaXB0Pmluc3RhbGxDdXN0b21FbGVtZW50KCJjdXN0b20tZWxlbWVudC1p
bm5lciIsICJjdXN0b20tZWxlbWVudC1pbm5lci10ZW1wbGF0ZSIpOzwvc2NyaXB0PgorICAgIDx0
ZW1wbGF0ZSBpZD0iY3VzdG9tLWVsZW1lbnQtaW5uZXItdGVtcGxhdGUiPgorICAgICAgPHN0eWxl
PnNwYW4geyBjb2xvcjogcmVkOyB9PC9zdHlsZT4KKyAgICAgIDxzcGFuIGlkPSJwYXJ0IiBwYXJ0
PSJwYXJ0cCI+VGhpcyB0ZXh0PC9zcGFuPgorICAgIDwvdGVtcGxhdGU+CisgICAgPHNjcmlwdD5p
bnN0YWxsQ3VzdG9tRWxlbWVudCgiY3VzdG9tLWVsZW1lbnQtb3V0ZXIiLCAiY3VzdG9tLWVsZW1l
bnQtb3V0ZXItdGVtcGxhdGUiKTs8L3NjcmlwdD4KKyAgICA8dGVtcGxhdGUgaWQ9ImN1c3RvbS1l
bGVtZW50LW91dGVyLXRlbXBsYXRlIj48Y3VzdG9tLWVsZW1lbnQtaW5uZXIgaWQ9ImMtZS1pbm5l
ciIgZXhwb3J0cGFydHM9InBhcnRwOiBwYXJ0LWZvcndhcmRlZCI+PC9jdXN0b20tZWxlbWVudC1p
bm5lcj48L3RlbXBsYXRlPgorICAgIFRoZSBmb2xsb3dpbmcgdGV4dCBzaG91bGQgYmUgZ3JlZW46
CisgICAgPGRpdiBpZD0idGFyZ2V0Ij4KKyAgICAgICAgPGRpdj48Y3VzdG9tLWVsZW1lbnQtb3V0
ZXIgaWQ9ImMtZS1vdXRlciI+PC9jdXN0b20tZWxlbWVudC1vdXRlcj48L2Rpdj4KKyAgICA8L2Rp
dj4KKyAgICA8c2NyaXB0PgorICAgICAgInVzZSBzdHJpY3QiOworICAgICAgdGVzdChmdW5jdGlv
bigpIHsKKyAgICAgICAgY29uc3QgcGFydCA9IGdldEVsZW1lbnRCeVNoYWRvd0lkcyhkb2N1bWVu
dCwgWyJjLWUtb3V0ZXIiLCAiYy1lLWlubmVyIiwgInBhcnQiXSk7CisgICAgICAgIGNvbnN0IGJl
Zm9yZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHBhcnQpLmNvbG9yOworICAgICAgICBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCIjdGFyZ2V0IikuY2xhc3NMaXN0LmFkZCgiYW5jZXN0b3IiKTsK
KyAgICAgICAgY29uc3QgYWZ0ZXIgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwYXJ0KS5jb2xv
cjsKKyAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoYmVmb3JlLCBhZnRlcik7CisgICAgICB9LCAi
UGFydCBpbiBzZWxlY3RlZCBob3N0IGNoYW5nZWQgY29sb3IiKTsKKyAgICA8L3NjcmlwdD4KKyAg
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93
LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1kZXNjZW5kYW50LWNvbWJpbmF0b3IuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xhc3MtZGVzY2Vu
ZGFudC1jb21iaW5hdG9yLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAuLjM5ZWU3ODBlMGMwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
c2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1kZXNjZW5kYW50LWNvbWJpbmF0b3IuaHRt
bApAQCAtMCwwICsxLDMzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAg
ICA8dGl0bGU+Q1NTIFNoYWRvdyBQYXJ0cyAtIEludmFsaWRhdGlvbiB3aXRoIGNsYXNzIGluIGRl
c2NlbmRhbnQgY29tYmluYXRvcjwvdGl0bGU+CisgICAgPGxpbmsgaHJlZj0iaHR0cDovL3d3dy5h
cHBsZS5jb20vIiByZWw9ImF1dGhvciIgdGl0bGU9IkFwcGxlIj4KKyAgICA8bGluayBocmVmPSJo
dHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLXNoYWRvdy1wYXJ0cy8iIHJlbD0iaGVscCI+Cisg
ICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3Jp
cHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9y
dC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvc3VwcG9ydC9zaGFkb3ctaGVs
cGVyLmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8c3R5bGU+LmFuY2Vz
dG9yICNjLWU6OnBhcnQocGFydHApIHsgY29sb3I6IGdyZWVuOyB9PC9zdHlsZT4KKyAgICA8c2Ny
aXB0Pmluc3RhbGxDdXN0b21FbGVtZW50KCJjdXN0b20tZWxlbWVudCIsICJjdXN0b20tZWxlbWVu
dC10ZW1wbGF0ZSIpOzwvc2NyaXB0PgorICAgIDx0ZW1wbGF0ZSBpZD0iY3VzdG9tLWVsZW1lbnQt
dGVtcGxhdGUiPgorICAgICAgPHN0eWxlPnNwYW4geyBjb2xvcjogcmVkOyB9PC9zdHlsZT4KKyAg
ICAgIDxzcGFuIGlkPSJwYXJ0IiBwYXJ0PSJwYXJ0cCI+VGhpcyB0ZXh0PC9zcGFuPgorICAgIDwv
dGVtcGxhdGU+CisgICAgVGhlIGZvbGxvd2luZyB0ZXh0IHNob3VsZCBiZSBncmVlbjoKKyAgICA8
ZGl2IGlkPSJ0YXJnZXQiPgorICAgICAgPGRpdj48Y3VzdG9tLWVsZW1lbnQgaWQ9ImMtZSI+PC9j
dXN0b20tZWxlbWVudD48L2Rpdj4KKyAgICA8L2Rpdj4KKyAgICA8c2NyaXB0PgorICAgICAgInVz
ZSBzdHJpY3QiOworICAgICAgdGVzdChmdW5jdGlvbigpIHsKKyAgICAgICAgY29uc3QgcGFydCA9
IGdldEVsZW1lbnRCeVNoYWRvd0lkcyhkb2N1bWVudCwgWyJjLWUiLCAicGFydCJdKTsKKyAgICAg
ICAgY29uc3QgYmVmb3JlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUocGFydCkuY29sb3I7Cisg
ICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiN0YXJnZXQiKS5jbGFzc0xpc3QuYWRkKCJh
bmNlc3RvciIpOworICAgICAgICBjb25zdCBhZnRlciA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KHBhcnQpLmNvbG9yOworICAgICAgICBhc3NlcnRfbm90X2VxdWFscyhiZWZvcmUsIGFmdGVyKTsK
KyAgICAgIH0sICJQYXJ0IGluIHNlbGVjdGVkIGhvc3QgY2hhbmdlZCBjb2xvciIpOworICAgIDwv
c2NyaXB0PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy9zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNsYXNzLXNpYmxpbmctY29tYmluYXRvci1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9zaGFkb3ctcGFydHMvaW52YWxpZGF0
aW9uLWNsYXNzLXNpYmxpbmctY29tYmluYXRvci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmM0YmNjMjRlODE4Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1zaWJs
aW5nLWNvbWJpbmF0b3ItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorVGhlIGZvbGxvd2lu
ZyB0ZXh0IHNob3VsZCBiZSBncmVlbjoKKworUEFTUyBQYXJ0IGluIHNlbGVjdGVkIGhvc3QgY2hh
bmdlZCBjb2xvciAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93LXBh
cnRzL2ludmFsaWRhdGlvbi1jbGFzcy1zaWJsaW5nLWNvbWJpbmF0b3ItZXhwb3J0LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xh
c3Mtc2libGluZy1jb21iaW5hdG9yLWV4cG9ydC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmM0YmNjMjRlODE4Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1zaWJs
aW5nLWNvbWJpbmF0b3ItZXhwb3J0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKK1RoZSBm
b2xsb3dpbmcgdGV4dCBzaG91bGQgYmUgZ3JlZW46CisKK1BBU1MgUGFydCBpbiBzZWxlY3RlZCBo
b3N0IGNoYW5nZWQgY29sb3IgCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3No
YWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xhc3Mtc2libGluZy1jb21iaW5hdG9yLWV4cG9ydC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFz
cy1zaWJsaW5nLWNvbWJpbmF0b3ItZXhwb3J0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAuLjI2M2ZkMDllM2FiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1zaWJsaW5nLWNvbWJp
bmF0b3ItZXhwb3J0Lmh0bWwKQEAgLTAsMCArMSwzNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkNTUyBTaGFkb3cgUGFydHMgLSBJbnZhbGlkYXRpb24g
d2l0aCB3aXRoIGNsYXNzIGluIGRlc2NlbmRhbnQgY29tYmluYXRvciBhbmQgcGFydCBmb3J3YXJk
PC90aXRsZT4KKyAgICA8bGluayBocmVmPSJodHRwOi8vd3d3LmFwcGxlLmNvbS8iIHJlbD0iYXV0
aG9yIiB0aXRsZT0iQXBwbGUiPgorICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vZHJhZnRzLmNzc3dn
Lm9yZy9jc3Mtc2hhZG93LXBhcnRzLyIgcmVsPSJoZWxwIj4KKyAgICA8c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAg
ICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLXNoYWRvdy1wYXJ0cy9zdXBwb3J0L3NoYWRvdy1oZWxwZXIuanMiPjwvc2NyaXB0Pgor
ICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxzdHlsZT4uc2libGluZyB+ICNjLWUtb3V0ZXI6OnBh
cnQocGFydC1mb3J3YXJkZWQpIHsgY29sb3I6IGdyZWVuOyB9PC9zdHlsZT4KKyAgICA8c2NyaXB0
Pmluc3RhbGxDdXN0b21FbGVtZW50KCJjdXN0b20tZWxlbWVudC1pbm5lciIsICJjdXN0b20tZWxl
bWVudC1pbm5lci10ZW1wbGF0ZSIpOzwvc2NyaXB0PgorICAgIDx0ZW1wbGF0ZSBpZD0iY3VzdG9t
LWVsZW1lbnQtaW5uZXItdGVtcGxhdGUiPgorICAgICAgPHN0eWxlPnNwYW4geyBjb2xvcjogcmVk
OyB9PC9zdHlsZT4KKyAgICAgIDxzcGFuIGlkPSJwYXJ0IiBwYXJ0PSJwYXJ0cCI+VGhpcyB0ZXh0
PC9zcGFuPgorICAgIDwvdGVtcGxhdGU+CisgICAgPHNjcmlwdD5pbnN0YWxsQ3VzdG9tRWxlbWVu
dCgiY3VzdG9tLWVsZW1lbnQtb3V0ZXIiLCAiY3VzdG9tLWVsZW1lbnQtb3V0ZXItdGVtcGxhdGUi
KTs8L3NjcmlwdD4KKyAgICA8dGVtcGxhdGUgaWQ9ImN1c3RvbS1lbGVtZW50LW91dGVyLXRlbXBs
YXRlIj48Y3VzdG9tLWVsZW1lbnQtaW5uZXIgaWQ9ImMtZS1pbm5lciIgZXhwb3J0cGFydHM9InBh
cnRwOiBwYXJ0LWZvcndhcmRlZCI+PC9jdXN0b20tZWxlbWVudC1pbm5lcj48L3RlbXBsYXRlPgor
ICAgIFRoZSBmb2xsb3dpbmcgdGV4dCBzaG91bGQgYmUgZ3JlZW46CisgICAgPGRpdj4KKyAgICAg
IDxkaXYgaWQ9InRhcmdldCI+PC9kaXY+CisgICAgICA8ZGl2PjwvZGl2PgorICAgICAgPGN1c3Rv
bS1lbGVtZW50LW91dGVyIGlkPSJjLWUtb3V0ZXIiPjwvY3VzdG9tLWVsZW1lbnQtb3V0ZXI+Cisg
ICAgPC9kaXY+CisgICAgPHNjcmlwdD4KKyAgICAgICJ1c2Ugc3RyaWN0IjsKKyAgICAgIHRlc3Qo
ZnVuY3Rpb24oKSB7CisgICAgICAgIGNvbnN0IHBhcnQgPSBnZXRFbGVtZW50QnlTaGFkb3dJZHMo
ZG9jdW1lbnQsIFsiYy1lLW91dGVyIiwgImMtZS1pbm5lciIsICJwYXJ0Il0pOworICAgICAgICBj
b25zdCBiZWZvcmUgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwYXJ0KS5jb2xvcjsKKyAgICAg
ICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3RhcmdldCIpLmNsYXNzTGlzdC5hZGQoInNpYmxp
bmciKTsKKyAgICAgICAgY29uc3QgYWZ0ZXIgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwYXJ0
KS5jb2xvcjsKKyAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoYmVmb3JlLCBhZnRlcik7CisgICAg
ICB9LCAiUGFydCBpbiBzZWxlY3RlZCBob3N0IGNoYW5nZWQgY29sb3IiKTsKKyAgICA8L3Njcmlw
dD4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
c2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1zaWJsaW5nLWNvbWJpbmF0b3IuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2xhc3Mtc2li
bGluZy1jb21iaW5hdG9yLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAuLmM0ZjY3ZTdjYTU5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
c2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1zaWJsaW5nLWNvbWJpbmF0b3IuaHRtbApA
QCAtMCwwICsxLDM1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8
dGl0bGU+Q1NTIFNoYWRvdyBQYXJ0cyAtIEludmFsaWRhdGlvbiB3aXRoIGNsYXNzIGluIGRlc2Nl
bmRhbnQgY29tYmluYXRvcjwvdGl0bGU+CisgICAgPGxpbmsgaHJlZj0iaHR0cDovL3d3dy5hcHBs
ZS5jb20vIiByZWw9ImF1dGhvciIgdGl0bGU9IkFwcGxlIj4KKyAgICA8bGluayBocmVmPSJodHRw
czovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLXNoYWRvdy1wYXJ0cy8iIHJlbD0iaGVscCI+CisgICAg
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+
CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvc3VwcG9ydC9zaGFkb3ctaGVscGVy
LmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8c3R5bGU+LnNpYmxpbmcg
fiAjYy1lOjpwYXJ0KHBhcnRwKSB7IGNvbG9yOiBncmVlbjsgfTwvc3R5bGU+CisgICAgPHNjcmlw
dD5pbnN0YWxsQ3VzdG9tRWxlbWVudCgiY3VzdG9tLWVsZW1lbnQiLCAiY3VzdG9tLWVsZW1lbnQt
dGVtcGxhdGUiKTs8L3NjcmlwdD4KKyAgICA8dGVtcGxhdGUgaWQ9ImN1c3RvbS1lbGVtZW50LXRl
bXBsYXRlIj4KKyAgICAgIDxzdHlsZT5zcGFuIHsgY29sb3I6IHJlZDsgfTwvc3R5bGU+CisgICAg
ICA8c3BhbiBpZD0icGFydCIgcGFydD0icGFydHAiPlRoaXMgdGV4dDwvc3Bhbj4KKyAgICA8L3Rl
bXBsYXRlPgorICAgIFRoZSBmb2xsb3dpbmcgdGV4dCBzaG91bGQgYmUgZ3JlZW46CisgICAgPGRp
dj4KKyAgICAgIDxkaXYgaWQ9InRhcmdldCI+PC9kaXY+CisgICAgICA8ZGl2PjwvZGl2PgorICAg
ICAgPGN1c3RvbS1lbGVtZW50IGlkPSJjLWUiPjwvY3VzdG9tLWVsZW1lbnQ+CisgICAgPC9kaXY+
CisgICAgPHNjcmlwdD4KKyAgICAgICJ1c2Ugc3RyaWN0IjsKKyAgICAgIHRlc3QoZnVuY3Rpb24o
KSB7CisgICAgICAgIGNvbnN0IHBhcnQgPSBnZXRFbGVtZW50QnlTaGFkb3dJZHMoZG9jdW1lbnQs
IFsiYy1lIiwgInBhcnQiXSk7CisgICAgICAgIGNvbnN0IGJlZm9yZSA9IHdpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKHBhcnQpLmNvbG9yOworICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIj
dGFyZ2V0IikuY2xhc3NMaXN0LmFkZCgic2libGluZyIpOworICAgICAgICBjb25zdCBhZnRlciA9
IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHBhcnQpLmNvbG9yOworICAgICAgICBhc3NlcnRfbm90
X2VxdWFscyhiZWZvcmUsIGFmdGVyKTsKKyAgICAgIH0sICJQYXJ0IGluIHNlbGVjdGVkIGhvc3Qg
Y2hhbmdlZCBjb2xvciIpOworICAgIDwvc2NyaXB0PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA0NmFiZDlhNjJjYy4uNmQ0MTZmM2M0YjAgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE5LTEwLTA3
ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYWRv
dyBQYXJ0c10gSW1wbGVtZW50IHN0eWxlIGludmFsaWRhdGlvbgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNjMyCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
c2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jaGFuZ2UtZXhwb3J0cGFydHMtZm9yd2FyZC1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mtc2hhZG93LXBh
cnRzL2ludmFsaWRhdGlvbi1jaGFuZ2UtcGFydC1uYW1lLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNo
YW5nZS1wYXJ0LW5hbWUtZm9yd2FyZC1leHBlY3RlZC50eHQ6CisKIDIwMTktMTAtMDQgIFJ5b3N1
a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQ2hhbmdlICJJbnZhbGlkU3Rh
dGVFcnJvciIgdG8gIk5vdFN1cHBvcnRlZEVycm9yIiBmb3IgYXR0YWNoU2hhZG93KCkKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNoYW5nZS1leHBvcnRwYXJ0cy1mb3J3YXJkLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNoYW5nZS1leHBvcnRwYXJ0cy1mb3J3
YXJkLWV4cGVjdGVkLnR4dAppbmRleCA2YjUzMDJhYjAzNC4uOGE1NTEwYjM4ZjcgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1z
aGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNoYW5nZS1leHBvcnRwYXJ0cy1mb3J3YXJkLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3Mtc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jaGFuZ2UtZXhwb3J0cGFydHMtZm9y
d2FyZC1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiBUaGUgZm9sbG93aW5nIHRleHQgc2hv
dWxkIGJlIGdyZWVuOiAKIAotRkFJTCBQYXJ0IGluIHNlbGVjdGVkIGhvc3QgY2hhbmdlZCBjb2xv
ciBhc3NlcnRfbm90X2VxdWFsczogZ290IGRpc2FsbG93ZWQgdmFsdWUgInJnYigyNTUsIDAsIDAp
IgorUEFTUyBQYXJ0IGluIHNlbGVjdGVkIGhvc3QgY2hhbmdlZCBjb2xvciAKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXNo
YWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2hhbmdlLXBhcnQtbmFtZS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mtc2hhZG93
LXBhcnRzL2ludmFsaWRhdGlvbi1jaGFuZ2UtcGFydC1uYW1lLWV4cGVjdGVkLnR4dAppbmRleCAz
YmI3YmQ4ZmVkMy4uYzRiY2MyNGU4MTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9u
LWNoYW5nZS1wYXJ0LW5hbWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9u
LWNoYW5nZS1wYXJ0LW5hbWUtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogVGhlIGZvbGxv
d2luZyB0ZXh0IHNob3VsZCBiZSBncmVlbjoKIAotRkFJTCBQYXJ0IGluIHNlbGVjdGVkIGhvc3Qg
Y2hhbmdlZCBjb2xvciBhc3NlcnRfbm90X2VxdWFsczogZ290IGRpc2FsbG93ZWQgdmFsdWUgInJn
YigyNTUsIDAsIDApIgorUEFTUyBQYXJ0IGluIHNlbGVjdGVkIGhvc3QgY2hhbmdlZCBjb2xvciAK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLXNoYWRvdy1wYXJ0cy9pbnZhbGlkYXRpb24tY2hhbmdlLXBhcnQtbmFtZS1mb3J3
YXJkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNoYW5nZS1wYXJ0LW5hbWUt
Zm9yd2FyZC1leHBlY3RlZC50eHQKaW5kZXggNmI1MzAyYWIwMzQuLjhhNTUxMGIzOGY3IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3Mtc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jaGFuZ2UtcGFydC1uYW1lLWZvcndhcmQtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1zaGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNoYW5nZS1wYXJ0LW5hbWUtZm9y
d2FyZC1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiBUaGUgZm9sbG93aW5nIHRleHQgc2hv
dWxkIGJlIGdyZWVuOiAKIAotRkFJTCBQYXJ0IGluIHNlbGVjdGVkIGhvc3QgY2hhbmdlZCBjb2xv
ciBhc3NlcnRfbm90X2VxdWFsczogZ290IGRpc2FsbG93ZWQgdmFsdWUgInJnYigyNTUsIDAsIDAp
IgorUEFTUyBQYXJ0IGluIHNlbGVjdGVkIGhvc3QgY2hhbmdlZCBjb2xvciAKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmlu
ZGV4IGY2MWExOWMzYmQ0Li42YzgyNWMwYTQwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBA
CisyMDE5LTEwLTA3ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAg
ICBbQ1NTIFNoYWRvdyBQYXJ0c10gSW1wbGVtZW50IHN0eWxlIGludmFsaWRhdGlvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNjMyCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2Nzcy9z
aGFkb3ctcGFydHMvaW52YWxpZGF0aW9uLWNsYXNzLWRlc2NlbmRhbnQtY29tYmluYXRvci1leHBv
cnQuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlv
bi1jbGFzcy1kZXNjZW5kYW50LWNvbWJpbmF0b3IuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9j
c3Mvc2hhZG93LXBhcnRzL2ludmFsaWRhdGlvbi1jbGFzcy1zaWJsaW5nLWNvbWJpbmF0b3ItZXhw
b3J0Lmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3NzL3NoYWRvdy1wYXJ0cy9pbnZhbGlkYXRp
b24tY2xhc3Mtc2libGluZy1jb21iaW5hdG9yLmh0bWwKKworICAgICAgICAqIGNzcy9SdWxlRmVh
dHVyZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjppc1NpYmxpbmdPclN1YmplY3QpOgorCisgICAg
ICAgIERvbid0IHRyZWF0IGNyb3NzaW5nIHRvIGhvc3QgYXMgbW92aW5nIHRvIGFuY2VzdG9yIHdo
ZW4gY29tcHV0aW5nIGVsZW1lbnRzIGltcGFjdGVkIGJ5IGEgc2VsZWN0b3IuCisgICAgICAgIFN0
eWxlSW52YWxpZGF0b3IgZXhwZWN0cyB0aGVzZSByZWxhdGlvbnMgdG8gYmUgYWJvdXQgdGhlIGhv
c3QgZWxlbWVudCwgc2hhZG93IHRyZWUgaW52YWxpZGF0aW9uIGluIGhhbmRsZWQgc2VwYXJhdGVs
eS4KKworICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1l
bnQ6OmF0dHJpYnV0ZUNoYW5nZWQpOgorCisgICAgICAgIEludmFsaWRhdGUgcGFydHMgaW4gc2hh
ZG93IHRyZWUgb24gJ2V4cG9ydHBhcnRzJyBhdHRyaWJ1dGUgbXV0YXRpb24uCisKKyAgICAgICAg
KFdlYkNvcmU6OkVsZW1lbnQ6OnBhcnRBdHRyaWJ1dGVDaGFuZ2VkKToKKworICAgICAgICBJbnZh
bGlkYXRlIGVsZW1lbnQgb24gJ3BhcnQnIGF0dHJpYnV0ZSBtdXRhdGlvbi4KKworICAgICAgICAq
IHN0eWxlL1N0eWxlSW52YWxpZGF0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6Oklu
dmFsaWRhdG9yOjpJbnZhbGlkYXRvcik6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6SW52YWxp
ZGF0b3I6OmludmFsaWRhdGVJZk5lZWRlZCk6CisKKyAgICAgICAgSW52YWxpZGF0ZSBwYXJ0cyBp
biBzaGFkb3cgdHJlZSBkdXJpbmcgY2xhc3MgYW5kIGF0dHJpYnV0ZSBtdXRhdGlvbiBpbnZhbGlk
YXRpb24uCisKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpJbnZhbGlkYXRvcjo6aW52YWxpZGF0
ZVNoYWRvd1BhcnRzKToKKyAgICAgICAgKiBzdHlsZS9TdHlsZUludmFsaWRhdG9yLmg6CisgICAg
ICAgIChXZWJDb3JlOjpTdHlsZTo6SW52YWxpZGF0b3I6OmRpcnRpZXNBbGxTdHlsZSBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6SW52YWxpZGF0b3I6Omhhc1NoYWRvd1BzZXVkb0Vs
ZW1lbnRSdWxlc0luQXV0aG9yU2hlZXQgY29uc3QpOiBEZWxldGVkLgorCisgICAgICAgIFJlbW92
ZSBhbiB1bm5jZXNzYXJ5IGJvb2wuCisKIDIwMTktMTAtMDYgIEFudHRpIEtvaXZpc3RvICA8YW50
dGlAYXBwbGUuY29tPgogCiAgICAgICAgIE5vZGU6OnJlZi9kZXJlZiBzaG91bGQgYmUgY29uc3QK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9SdWxlRmVhdHVyZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvUnVsZUZlYXR1cmUuY3BwCmluZGV4IDQ0ZWViMWQ3MDJkLi5jYTFiOTRmNzdi
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1J1bGVGZWF0dXJlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvUnVsZUZlYXR1cmUuY3BwCkBAIC00MiwxMiArNDIsMTIgQEAgc3Rh
dGljIGJvb2wgaXNTaWJsaW5nT3JTdWJqZWN0KE1hdGNoRWxlbWVudCBtYXRjaEVsZW1lbnQpCiAg
ICAgY2FzZSBNYXRjaEVsZW1lbnQ6OkluZGlyZWN0U2libGluZzoKICAgICBjYXNlIE1hdGNoRWxl
bWVudDo6RGlyZWN0U2libGluZzoKICAgICBjYXNlIE1hdGNoRWxlbWVudDo6QW55U2libGluZzoK
KyAgICBjYXNlIE1hdGNoRWxlbWVudDo6SG9zdDoKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAg
Y2FzZSBNYXRjaEVsZW1lbnQ6OlBhcmVudDoKICAgICBjYXNlIE1hdGNoRWxlbWVudDo6QW5jZXN0
b3I6CiAgICAgY2FzZSBNYXRjaEVsZW1lbnQ6OlBhcmVudFNpYmxpbmc6CiAgICAgY2FzZSBNYXRj
aEVsZW1lbnQ6OkFuY2VzdG9yU2libGluZzoKLSAgICBjYXNlIE1hdGNoRWxlbWVudDo6SG9zdDoK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9FbGVtZW50LmNwcAppbmRleCAzNzkzZTEwMWY0Mi4uMzk5OThkNjViYTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRWxlbWVudC5jcHAKQEAgLTEwMyw2ICsxMDMsNyBAQAogI2luY2x1ZGUgIlNldHRpbmdz
LmgiCiAjaW5jbHVkZSAiU2ltdWxhdGVkQ2xpY2suaCIKICNpbmNsdWRlICJTbG90QXNzaWdubWVu
dC5oIgorI2luY2x1ZGUgIlN0eWxlSW52YWxpZGF0b3IuaCIKICNpbmNsdWRlICJTdHlsZVByb3Bl
cnRpZXMuaCIKICNpbmNsdWRlICJTdHlsZVJlc29sdmVyLmgiCiAjaW5jbHVkZSAiU3R5bGVTY29w
ZS5oIgpAQCAtMTc0NCw4ICsxNzQ1LDEwIEBAIHZvaWQgRWxlbWVudDo6YXR0cmlidXRlQ2hhbmdl
ZChjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lLCBjb25zdCBBdG9tU3RyaW5nJiBvbGRWCiAgICAg
ICAgIH0gZWxzZSBpZiAobmFtZSA9PSBIVE1MTmFtZXM6OnBhcnRBdHRyKQogICAgICAgICAgICAg
cGFydEF0dHJpYnV0ZUNoYW5nZWQobmV3VmFsdWUpOwogICAgICAgICBlbHNlIGlmIChuYW1lID09
IEhUTUxOYW1lczo6ZXhwb3J0cGFydHNBdHRyKSB7Ci0gICAgICAgICAgICBpZiAoYXV0byogc2hh
ZG93Um9vdCA9IHRoaXMtPnNoYWRvd1Jvb3QoKSkKKyAgICAgICAgICAgIGlmIChhdXRvKiBzaGFk
b3dSb290ID0gdGhpcy0+c2hhZG93Um9vdCgpKSB7CiAgICAgICAgICAgICAgICAgc2hhZG93Um9v
dC0+aW52YWxpZGF0ZVBhcnRNYXBwaW5ncygpOworICAgICAgICAgICAgICAgIFN0eWxlOjpJbnZh
bGlkYXRvcjo6aW52YWxpZGF0ZVNoYWRvd1BhcnRzKCpzaGFkb3dSb290KTsKKyAgICAgICAgICAg
IH0KICAgICAgICAgfQogICAgIH0KIApAQCAtMTgyOSw2ICsxODMyLDkgQEAgdm9pZCBFbGVtZW50
OjpwYXJ0QXR0cmlidXRlQ2hhbmdlZChjb25zdCBBdG9tU3RyaW5nJiBuZXdWYWx1ZSkKICAgICAg
ICAgaWYgKGF1dG8qIHBhcnRMaXN0ID0gZWxlbWVudFJhcmVEYXRhKCktPnBhcnRMaXN0KCkpCiAg
ICAgICAgICAgICBwYXJ0TGlzdC0+YXNzb2NpYXRlZEF0dHJpYnV0ZVZhbHVlQ2hhbmdlZChuZXdW
YWx1ZSk7CiAgICAgfQorCisgICAgaWYgKG5lZWRzU3R5bGVJbnZhbGlkYXRpb24oKSAmJiBpc0lu
U2hhZG93VHJlZSgpKQorICAgICAgICBpbnZhbGlkYXRlU3R5bGVJbnRlcm5hbCgpOwogfQogCiBV
UkwgRWxlbWVudDo6YWJzb2x1dGVMaW5rVVJMKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1N0eWxlSW52YWxpZGF0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUv
U3R5bGVJbnZhbGlkYXRvci5jcHAKaW5kZXggNmQ2OTVhNjYwZDAuLjkzNmE5MTU4NjgxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUludmFsaWRhdG9yLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUludmFsaWRhdG9yLmNwcApAQCAtMzEsNiArMzEsNyBA
QAogI2luY2x1ZGUgIkVsZW1lbnRJdGVyYXRvci5oIgogI2luY2x1ZGUgIkVsZW1lbnRSdWxlQ29s
bGVjdG9yLmgiCiAjaW5jbHVkZSAiSFRNTFNsb3RFbGVtZW50LmgiCisjaW5jbHVkZSAiUnVudGlt
ZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUgIlNlbGVjdG9yRmlsdGVyLmgiCiAjaW5jbHVk
ZSAiU2hhZG93Um9vdC5oIgogI2luY2x1ZGUgIlN0eWxlUnVsZUltcG9ydC5oIgpAQCAtODgsMjQg
Kzg5LDI1IEBAIEludmFsaWRhdG9yOjpJbnZhbGlkYXRvcihjb25zdCBWZWN0b3I8U3R5bGVTaGVl
dENvbnRlbnRzKj4mIHNoZWV0cywgY29uc3QgTWVkaWFRCiAgICAgbV9vd25lZFJ1bGVTZXQtPmRp
c2FibGVBdXRvU2hyaW5rVG9GaXQoKTsKICAgICBmb3IgKGF1dG8mIHNoZWV0IDogc2hlZXRzKQog
ICAgICAgICBtX293bmVkUnVsZVNldC0+YWRkUnVsZXNGcm9tU2hlZXQoKnNoZWV0LCBtZWRpYVF1
ZXJ5RXZhbHVhdG9yKTsKLQotICAgIG1faGFzU2hhZG93UHNldWRvRWxlbWVudFJ1bGVzSW5BdXRo
b3JTaGVldCA9IG1fcnVsZVNldC5oYXNTaGFkb3dQc2V1ZG9FbGVtZW50UnVsZXMoKTsKIH0KIAog
SW52YWxpZGF0b3I6OkludmFsaWRhdG9yKGNvbnN0IFJ1bGVTZXQmIHJ1bGVTZXQpCiAgICAgOiBt
X3J1bGVTZXQocnVsZVNldCkKLSAgICAsIG1faGFzU2hhZG93UHNldWRvRWxlbWVudFJ1bGVzSW5B
dXRob3JTaGVldChydWxlU2V0Lmhhc1NoYWRvd1BzZXVkb0VsZW1lbnRSdWxlcygpKQogewogfQog
CiBJbnZhbGlkYXRvcjo6Q2hlY2tEZXNjZW5kYW50cyBJbnZhbGlkYXRvcjo6aW52YWxpZGF0ZUlm
TmVlZGVkKEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFNlbGVjdG9yRmlsdGVyKiBmaWx0ZXIpCiB7
Ci0gICAgaWYgKG1faGFzU2hhZG93UHNldWRvRWxlbWVudFJ1bGVzSW5BdXRob3JTaGVldCkgewor
ICAgIGlmIChtX3J1bGVTZXQuaGFzU2hhZG93UHNldWRvRWxlbWVudFJ1bGVzKCkpIHsKICAgICAg
ICAgLy8gRklYTUU6IFRoaXMgY291bGQgZG8gYWN0dWFsIHJ1bGUgbWF0Y2hpbmcgdG9vLgogICAg
ICAgICBpZiAoZWxlbWVudC5zaGFkb3dSb290KCkpCiAgICAgICAgICAgICBlbGVtZW50LmludmFs
aWRhdGVTdHlsZUZvclN1YnRyZWVJbnRlcm5hbCgpOwogICAgIH0KIAorICAgIC8vIEZJWE1FOiBN
b3JlIGZpbmUtZ3JhaW5lZCBpbnZhbGlkYXRpb24gZm9yIDo6cGFydCgpCisgICAgaWYgKCFtX3J1
bGVTZXQucGFydFBzZXVkb0VsZW1lbnRSdWxlcygpLmlzRW1wdHkoKSAmJiBlbGVtZW50LnNoYWRv
d1Jvb3QoKSkKKyAgICAgICAgaW52YWxpZGF0ZVNoYWRvd1BhcnRzKCplbGVtZW50LnNoYWRvd1Jv
b3QoKSk7CisKICAgICBib29sIHNob3VsZENoZWNrRm9yU2xvdHMgPSAhbV9ydWxlU2V0LnNsb3R0
ZWRQc2V1ZG9FbGVtZW50UnVsZXMoKS5pc0VtcHR5KCkgJiYgIW1fZGlkSW52YWxpZGF0ZUhvc3RD
aGlsZHJlbjsKICAgICBpZiAoc2hvdWxkQ2hlY2tGb3JTbG90cyAmJiBpczxIVE1MU2xvdEVsZW1l
bnQ+KGVsZW1lbnQpKSB7CiAgICAgICAgIGF1dG8qIGNvbnRhaW5pbmdTaGFkb3dSb290ID0gZWxl
bWVudC5jb250YWluaW5nU2hhZG93Um9vdCgpOwpAQCAtMjYyLDUgKzI2NCwyNCBAQCB2b2lkIElu
dmFsaWRhdG9yOjppbnZhbGlkYXRlU3R5bGVXaXRoTWF0Y2hFbGVtZW50KEVsZW1lbnQmIGVsZW1l
bnQsIE1hdGNoRWxlbWVudAogICAgIH0KIH0KIAordm9pZCBJbnZhbGlkYXRvcjo6aW52YWxpZGF0
ZVNoYWRvd1BhcnRzKFNoYWRvd1Jvb3QmIHNoYWRvd1Jvb3QpCit7CisgICAgaWYgKCFSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLmNzc1NoYWRvd1BhcnRzRW5hYmxlZCgp
KQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoc2hhZG93Um9vdC5tb2RlKCkgPT0gU2hhZG93
Um9vdE1vZGU6OlVzZXJBZ2VudCkKKyAgICAgICAgcmV0dXJuOworCisgICAgZm9yIChhdXRvJiBk
ZXNjZW5kYW50IDogZGVzY2VuZGFudHNPZlR5cGU8RWxlbWVudD4oc2hhZG93Um9vdCkpIHsKKyAg
ICAgICAgLy8gRklYTUU6IFdlIGNvdWxkIG9ubHkgaW52YWxpZGF0ZSBwYXJ0IG5hbWVzIHRoYXQg
YWN0dWFsbHkgc2hvdyB1cCBpbiBydWxlcy4KKyAgICAgICAgaWYgKCFkZXNjZW5kYW50LnBhcnRO
YW1lcygpLmlzRW1wdHkoKSkKKyAgICAgICAgICAgIGRlc2NlbmRhbnQuaW52YWxpZGF0ZVN0eWxl
SW50ZXJuYWwoKTsKKworICAgICAgICBhdXRvKiBuZXN0ZWRTaGFkb3dSb290ID0gZGVzY2VuZGFu
dC5zaGFkb3dSb290KCk7CisgICAgICAgIGlmIChuZXN0ZWRTaGFkb3dSb290ICYmICFuZXN0ZWRT
aGFkb3dSb290LT5wYXJ0TWFwcGluZ3MoKS5pc0VtcHR5KCkpCisgICAgICAgICAgICBpbnZhbGlk
YXRlU2hhZG93UGFydHMoKm5lc3RlZFNoYWRvd1Jvb3QpOworICAgIH0KK30KKwogfQogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVJbnZhbGlkYXRvci5oIGIvU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVJbnZhbGlkYXRvci5oCmluZGV4IDY0NjhlODU0NmI0Li4yMDBj
ZGI2Nzk5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVJbnZhbGlkYXRv
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlSW52YWxpZGF0b3IuaApAQCAtNDYs
MTIgKzQ2LDEzIEBAIHB1YmxpYzoKICAgICBJbnZhbGlkYXRvcihjb25zdCBSdWxlU2V0Jik7CiAK
ICAgICBib29sIGRpcnRpZXNBbGxTdHlsZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGlydGllc0FsbFN0
eWxlOyB9Ci0gICAgYm9vbCBoYXNTaGFkb3dQc2V1ZG9FbGVtZW50UnVsZXNJbkF1dGhvclNoZWV0
KCkgY29uc3QgeyByZXR1cm4gbV9oYXNTaGFkb3dQc2V1ZG9FbGVtZW50UnVsZXNJbkF1dGhvclNo
ZWV0OyB9CiAgICAgdm9pZCBpbnZhbGlkYXRlU3R5bGUoRG9jdW1lbnQmKTsKICAgICB2b2lkIGlu
dmFsaWRhdGVTdHlsZShTaGFkb3dSb290Jik7CiAgICAgdm9pZCBpbnZhbGlkYXRlU3R5bGUoRWxl
bWVudCYpOwogICAgIHZvaWQgaW52YWxpZGF0ZVN0eWxlV2l0aE1hdGNoRWxlbWVudChFbGVtZW50
JiwgTWF0Y2hFbGVtZW50KTsKIAorICAgIHN0YXRpYyB2b2lkIGludmFsaWRhdGVTaGFkb3dQYXJ0
cyhTaGFkb3dSb290Jik7CisKIHByaXZhdGU6CiAgICAgZW51bSBjbGFzcyBDaGVja0Rlc2NlbmRh
bnRzIHsgWWVzLCBObyB9OwogICAgIENoZWNrRGVzY2VuZGFudHMgaW52YWxpZGF0ZUlmTmVlZGVk
KEVsZW1lbnQmLCBjb25zdCBTZWxlY3RvckZpbHRlciopOwpAQCAtNjEsNyArNjIsNiBAQCBwcml2
YXRlOgogICAgIHN0ZDo6dW5pcXVlX3B0cjxSdWxlU2V0PiBtX293bmVkUnVsZVNldDsKICAgICBj
b25zdCBSdWxlU2V0JiBtX3J1bGVTZXQ7CiAgICAgYm9vbCBtX2RpcnRpZXNBbGxTdHlsZSB7IGZh
bHNlIH07Ci0gICAgYm9vbCBtX2hhc1NoYWRvd1BzZXVkb0VsZW1lbnRSdWxlc0luQXV0aG9yU2hl
ZXQgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9kaWRJbnZhbGlkYXRlSG9zdENoaWxkcmVuIHsgZmFs
c2UgfTsKIH07CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>