<?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>182336</bug_id>
          
          <creation_ts>2018-01-31 09:02:34 -0800</creation_ts>
          <short_desc>Invalidate style for sibling combinators accurately on class change</short_desc>
          <delta_ts>2018-02-01 01:02:30 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1395008</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2018-01-31 09:02:34 -0800</bug_when>
    <thetext>Use invalidation rulesets.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395020</commentid>
    <comment_count>1</comment_count>
      <attachid>332768</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2018-01-31 09:27:15 -0800</bug_when>
    <thetext>Created attachment 332768
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395377</commentid>
    <comment_count>2</comment_count>
      <attachid>332768</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-01 01:01:06 -0800</bug_when>
    <thetext>Comment on attachment 332768
patch

Clearing flags on attachment: 332768

Committed r227956: &lt;https://trac.webkit.org/changeset/227956&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395378</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-01 01:01:07 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395379</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-02-01 01:02:30 -0800</bug_when>
    <thetext>&lt;rdar://problem/37107594&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>332768</attachid>
            <date>2018-01-31 09:27:15 -0800</date>
            <delta_ts>2018-02-01 01:01:06 -0800</delta_ts>
            <desc>patch</desc>
            <filename>sibling-styleinvalidator-3.patch</filename>
            <type>text/plain</type>
            <size>16991</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyNzkwMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM5IEBACisyMDE4LTAxLTMxICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBJbnZhbGlkYXRlIHN0eWxlIGZv
ciBzaWJsaW5nIGNvbWJpbmF0b3JzIGFjY3VyYXRlbHkgb24gY2xhc3MgY2hhbmdlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODIzMzYKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgU3R5bGU6OkludmFs
aWRhdG9yIHRvIGludmFsaWRhdGUgb25seSB0aG9zZSBlbGVtZW50cyB0aGF0IG1heSBiZSBhZmZl
Y3RlZCBieSBhIGNsYXNzCisgICAgICAgIGNoYW5nZSBmb3Igc2libGluZyBjb21iaW5hdG9ycyBh
bmQgbnRoIHBzZXVkbyBjbGFzc2VzLgorCisgICAgICAgICogY3NzL1J1bGVGZWF0dXJlLmNwcDoK
KworICAgICAgICBBZGQgbmV3IEFsbFNpYmxpbmdzIE1hdGNoRWxlbWVudCB0byB1c2UgZm9yIG50
aCBwc2V1ZG8gY2xhc3NlcyB3aXRoIHN1YnNlbGVjdG9ycy4KKworICAgICAgICAoV2ViQ29yZTo6
aXNTaWJsaW5nT3JTdWJqZWN0KToKKworICAgICAgICBBZGQgYSBoZWxwZXIuCisKKyAgICAgICAg
KFdlYkNvcmU6OlJ1bGVGZWF0dXJlU2V0Ojpjb21wdXRlTmV4dE1hdGNoRWxlbWVudCk6CisgICAg
ICAgIChXZWJDb3JlOjpSdWxlRmVhdHVyZVNldDo6Y29tcHV0ZVN1YlNlbGVjdG9yTWF0Y2hFbGVt
ZW50KToKKworICAgICAgICBDb21wdXRlIGFuZCBwcm9wYWdlIE1hdGNoRWxlbWVudDo6QWxsU2li
bGluZ3MuCisKKyAgICAgICAgKiBjc3MvUnVsZUZlYXR1cmUuaDoKKyAgICAgICAgKiBkb20vTm9k
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpOb2RlOjp1cGRhdGVBbmNlc3RvcnNGb3JTdHlsZVJl
Y2FsYyk6CisKKyAgICAgICAgRG9uJ3QgbmVlZCB0byB0ZXN0IGZvciBjaGlsZHJlbkFmZmVjdGVk
QnlQcm9wZXJ0eUJhc2VkQmFja3dhcmRQb3NpdGlvbmFsUnVsZXMgYW55bW9yZSAoYW4gb2RkbHkg
bmFtZWQgYml0IGZvciBudGggcHNldWRvIGNsYXNzZXMpLgorCisgICAgICAgICogc3R5bGUvU3R5
bGVJbnZhbGlkYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6SW52YWxpZGF0b3I6
OmludmFsaWRhdGVTdHlsZVdpdGhNYXRjaEVsZW1lbnQpOgorCisgICAgICAgIEludmFsaWRhdGUg
b25seSB0aGUgcG90ZW50aWFsbHkgYWZmZWN0ZWQgZWxlbWVudHMuCisgICAgICAgIFRoZSBvbGQg
Y29kZSB3b3VsZCBqdXN0IHVuY29uZGl0aW9uYWxseSBpbnZhbGlkYXRlIHRoZSBjdXJyZW50IGVs
ZW1lbnQuIFRoaXMgd291bGQgcHJvcGFnYXRlIHRvIGRlc2NlZGFudHMgb2Ygc2libGluZ3Mgdmlh
CisgICAgICAgIGFmZmVjdGVkQnlQcmV2aW91c1NpYmxpbmcgYml0cy4gVGhhdCBtZWNoYW5pc20g
Y2FuIGJlIHJlbW92ZWQgd2hlbiBldmVyeXRoaW5nIGhhcyBiZWVuIHN3aXRjaGVkIHRvIGFjY3Vy
YXRlIGludmFsaWRhdGlvbi4KKwogMjAxOC0wMS0zMSAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBw
bGUuY29tPgogCiAgICAgICAgIFtSZW5kZXJUcmVlQnVpbGRlcl0gTW92ZSBSZW5kZXJNdWx0aUNv
bHVtbkZsb3c6OnJlc29sdmVNb3ZlZENoaWxkIHRvIFJlbmRlclRyZWVCdWlsZGVyLgpJbmRleDog
U291cmNlL1dlYkNvcmUvY3NzL1J1bGVGZWF0dXJlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9jc3MvUnVsZUZlYXR1cmUuY3BwCShyZXZpc2lvbiAyMjc4OTgpCisrKyBTb3VyY2Uv
V2ViQ29yZS9jc3MvUnVsZUZlYXR1cmUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw5ICszNSwy
OCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3N0YXRpYyBib29sIGlzU2libGluZ09yU3Vi
amVjdChNYXRjaEVsZW1lbnQgbWF0Y2hFbGVtZW50KQoreworICAgIHN3aXRjaCAobWF0Y2hFbGVt
ZW50KSB7CisgICAgY2FzZSBNYXRjaEVsZW1lbnQ6OlN1YmplY3Q6CisgICAgY2FzZSBNYXRjaEVs
ZW1lbnQ6OkluZGlyZWN0U2libGluZzoKKyAgICBjYXNlIE1hdGNoRWxlbWVudDo6RGlyZWN0U2li
bGluZzoKKyAgICBjYXNlIE1hdGNoRWxlbWVudDo6QW55U2libGluZzoKKyAgICAgICAgcmV0dXJu
IHRydWU7CisgICAgY2FzZSBNYXRjaEVsZW1lbnQ6OlBhcmVudDoKKyAgICBjYXNlIE1hdGNoRWxl
bWVudDo6QW5jZXN0b3I6CisgICAgY2FzZSBNYXRjaEVsZW1lbnQ6OlBhcmVudFNpYmxpbmc6Cisg
ICAgY2FzZSBNYXRjaEVsZW1lbnQ6OkFuY2VzdG9yU2libGluZzoKKyAgICBjYXNlIE1hdGNoRWxl
bWVudDo6SG9zdDoKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICBBU1NFUlRfTk9U
X1JFQUNIRUQoKTsKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIE1hdGNoRWxlbWVudCBSdWxlRmVh
dHVyZVNldDo6Y29tcHV0ZU5leHRNYXRjaEVsZW1lbnQoTWF0Y2hFbGVtZW50IG1hdGNoRWxlbWVu
dCwgQ1NTU2VsZWN0b3I6OlJlbGF0aW9uVHlwZSByZWxhdGlvbikKIHsKLSAgICBpZiAobWF0Y2hF
bGVtZW50ID09IE1hdGNoRWxlbWVudDo6U3ViamVjdCB8fCBtYXRjaEVsZW1lbnQgPT0gTWF0Y2hF
bGVtZW50OjpJbmRpcmVjdFNpYmxpbmcgfHwgbWF0Y2hFbGVtZW50ID09IE1hdGNoRWxlbWVudDo6
RGlyZWN0U2libGluZykgeworICAgIGlmIChpc1NpYmxpbmdPclN1YmplY3QobWF0Y2hFbGVtZW50
KSkgewogICAgICAgICBzd2l0Y2ggKHJlbGF0aW9uKSB7CiAgICAgICAgIGNhc2UgQ1NTU2VsZWN0
b3I6OlN1YnNlbGVjdG9yOgogICAgICAgICAgICAgcmV0dXJuIG1hdGNoRWxlbWVudDsKQEAgLTQ2
LDggKzY1LDEyIEBAIE1hdGNoRWxlbWVudCBSdWxlRmVhdHVyZVNldDo6Y29tcHV0ZU5leHQKICAg
ICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6Q2hpbGQ6CiAgICAgICAgICAgICByZXR1cm4gTWF0Y2hF
bGVtZW50OjpQYXJlbnQ7CiAgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OkluZGlyZWN0QWRqYWNl
bnQ6CisgICAgICAgICAgICBpZiAobWF0Y2hFbGVtZW50ID09IE1hdGNoRWxlbWVudDo6QW55U2li
bGluZykKKyAgICAgICAgICAgICAgICByZXR1cm4gTWF0Y2hFbGVtZW50OjpBbnlTaWJsaW5nOwog
ICAgICAgICAgICAgcmV0dXJuIE1hdGNoRWxlbWVudDo6SW5kaXJlY3RTaWJsaW5nOwogICAgICAg
ICBjYXNlIENTU1NlbGVjdG9yOjpEaXJlY3RBZGphY2VudDoKKyAgICAgICAgICAgIGlmIChtYXRj
aEVsZW1lbnQgPT0gTWF0Y2hFbGVtZW50OjpBbnlTaWJsaW5nKQorICAgICAgICAgICAgICAgIHJl
dHVybiBNYXRjaEVsZW1lbnQ6OkFueVNpYmxpbmc7CiAgICAgICAgICAgICByZXR1cm4gbWF0Y2hF
bGVtZW50ID09IE1hdGNoRWxlbWVudDo6U3ViamVjdCA/IE1hdGNoRWxlbWVudDo6RGlyZWN0U2li
bGluZyA6IE1hdGNoRWxlbWVudDo6SW5kaXJlY3RTaWJsaW5nOwogICAgICAgICBjYXNlIENTU1Nl
bGVjdG9yOjpTaGFkb3dEZXNjZW5kYW50OgogICAgICAgICAgICAgcmV0dXJuIE1hdGNoRWxlbWVu
dDo6SG9zdDsKQEAgLTc2LDkgKzk5LDggQEAgTWF0Y2hFbGVtZW50IFJ1bGVGZWF0dXJlU2V0Ojpj
b21wdXRlU3ViUwogICAgIGlmIChzZWxlY3Rvci5tYXRjaCgpID09IENTU1NlbGVjdG9yOjpQc2V1
ZG9DbGFzcykgewogICAgICAgICBhdXRvIHR5cGUgPSBzZWxlY3Rvci5wc2V1ZG9DbGFzc1R5cGUo
KTsKICAgICAgICAgLy8gRm9yIDpudGgtY2hpbGQobiBvZiAuc29tZS1zdWJzZWxlY3Rvcikgd2hl
cmUgYW4gZWxlbWVudCBjaGFuZ2UgbWF5IGFmZmVjdCBvdGhlciBlbGVtZW50cyBzaW1pbGFyIHRv
IHNpYmxpbmcgY29tYmluYXRvcnMuCi0gICAgICAgIC8vIEZJWE1FOiBUaGlzIGlzIG5vdCBlbnRp
cmVseSBhY2N1cmF0ZSBidXQgZ29vZCBlbm91Z2ggZm9yIGN1cnJlbnQgdXNlcnMuCiAgICAgICAg
IGlmICh0eXBlID09IENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc050aENoaWxkIHx8IHR5cGUgPT0g
Q1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzTnRoTGFzdENoaWxkKQotICAgICAgICAgICAgcmV0dXJu
IE1hdGNoRWxlbWVudDo6SW5kaXJlY3RTaWJsaW5nOworICAgICAgICAgICAgcmV0dXJuIE1hdGNo
RWxlbWVudDo6QW55U2libGluZzsKIAogICAgICAgICAvLyBTaW1pbGFybHkgZm9yIDpob3N0KCku
CiAgICAgICAgIGlmICh0eXBlID09IENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0hvc3QpCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9jc3MvUnVsZUZlYXR1cmUuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9jc3MvUnVsZUZlYXR1cmUuaAkocmV2aXNpb24gMjI3ODk4KQorKysgU291cmNlL1dl
YkNvcmUvY3NzL1J1bGVGZWF0dXJlLmgJKHdvcmtpbmcgY29weSkKQEAgLTMzLDcgKzMzLDcgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgUnVsZURhdGE7CiBjbGFzcyBTdHlsZVJ1bGU7CiAK
LWVudW0gY2xhc3MgTWF0Y2hFbGVtZW50IHsgU3ViamVjdCwgUGFyZW50LCBBbmNlc3RvciwgRGly
ZWN0U2libGluZywgSW5kaXJlY3RTaWJsaW5nLCBQYXJlbnRTaWJsaW5nLCBBbmNlc3RvclNpYmxp
bmcsIEhvc3QgfTsKK2VudW0gY2xhc3MgTWF0Y2hFbGVtZW50IHsgU3ViamVjdCwgUGFyZW50LCBB
bmNlc3RvciwgRGlyZWN0U2libGluZywgSW5kaXJlY3RTaWJsaW5nLCBBbnlTaWJsaW5nLCBQYXJl
bnRTaWJsaW5nLCBBbmNlc3RvclNpYmxpbmcsIEhvc3QgfTsKIGNvbnN0ZXhwciB1bnNpZ25lZCBt
YXRjaEVsZW1lbnRDb3VudCA9IHN0YXRpY19jYXN0PHVuc2lnbmVkPihNYXRjaEVsZW1lbnQ6Okhv
c3QpICsgMTsKIAogc3RydWN0IFJ1bGVGZWF0dXJlIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Rv
bS9Ob2RlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5jcHAJKHJl
dmlzaW9uIDIyNzg5OCkKKysrIFNvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNzc0LDkgKzc3NCw2IEBAIGlubGluZSB2b2lkIE5vZGU6OnVwZGF0ZUFuY2VzdG9y
c0ZvclN0eWwKICAgICBpZiAoaXQgIT0gZW5kKSB7CiAgICAgICAgIGl0LT5zZXREaXJlY3RDaGls
ZE5lZWRzU3R5bGVSZWNhbGMoKTsKIAotICAgICAgICBpZiAoaXQtPmNoaWxkcmVuQWZmZWN0ZWRC
eVByb3BlcnR5QmFzZWRCYWNrd2FyZFBvc2l0aW9uYWxSdWxlcygpKQotICAgICAgICAgICAgaXQt
PmFkanVzdFN0eWxlVmFsaWRpdHkoU3R5bGU6OlZhbGlkaXR5OjpTdWJ0cmVlSW52YWxpZCwgU3R5
bGU6OkludmFsaWRhdGlvbk1vZGU6Ok5vcm1hbCk7Ci0KICAgICAgICAgZm9yICg7IGl0ICE9IGVu
ZDsgKytpdCkgewogICAgICAgICAgICAgLy8gSXRlcmF0b3Igc2tpcHMgb3ZlciBzaGFkb3cgcm9v
dHMuCiAgICAgICAgICAgICBpZiAoYXV0byogc2hhZG93Um9vdCA9IGl0LT5zaGFkb3dSb290KCkp
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUludmFsaWRhdG9yLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUludmFsaWRhdG9yLmNwcAkocmV2aXNp
b24gMjI3ODk4KQorKysgU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVJbnZhbGlkYXRvci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTIyNywxMSArMjI3LDI5IEBAIHZvaWQgSW52YWxpZGF0b3I6Omlu
dmFsaWRhdGVTdHlsZVdpdGhNYXQKICAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIGNhc2UgTWF0
Y2hFbGVtZW50OjpEaXJlY3RTaWJsaW5nOgorICAgICAgICBpZiAoYXV0byogc2libGluZyA9IGVs
ZW1lbnQubmV4dEVsZW1lbnRTaWJsaW5nKCkpCisgICAgICAgICAgICBpbnZhbGlkYXRlSWZOZWVk
ZWQoKnNpYmxpbmcsIG51bGxwdHIpOworICAgICAgICBicmVhazsKICAgICBjYXNlIE1hdGNoRWxl
bWVudDo6SW5kaXJlY3RTaWJsaW5nOgorICAgICAgICBmb3IgKGF1dG8qIHNpYmxpbmcgPSBlbGVt
ZW50Lm5leHRFbGVtZW50U2libGluZygpOyBzaWJsaW5nOyBzaWJsaW5nID0gc2libGluZy0+bmV4
dEVsZW1lbnRTaWJsaW5nKCkpCisgICAgICAgICAgICBpbnZhbGlkYXRlSWZOZWVkZWQoKnNpYmxp
bmcsIG51bGxwdHIpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIE1hdGNoRWxlbWVudDo6QW55
U2libGluZzogeworICAgICAgICBhdXRvIHBhcmVudENoaWxkcmVuID0gY2hpbGRyZW5PZlR5cGU8
RWxlbWVudD4oKmVsZW1lbnQucGFyZW50Tm9kZSgpKTsKKyAgICAgICAgZm9yIChhdXRvJiBwYXJl
bnRDaGlsZCA6IHBhcmVudENoaWxkcmVuKQorICAgICAgICAgICAgaW52YWxpZGF0ZUlmTmVlZGVk
KHBhcmVudENoaWxkLCBudWxscHRyKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQogICAgIGNhc2Ug
TWF0Y2hFbGVtZW50OjpQYXJlbnRTaWJsaW5nOgorICAgICAgICBmb3IgKGF1dG8qIHNpYmxpbmcg
PSBlbGVtZW50Lm5leHRFbGVtZW50U2libGluZygpOyBzaWJsaW5nOyBzaWJsaW5nID0gc2libGlu
Zy0+bmV4dEVsZW1lbnRTaWJsaW5nKCkpIHsKKyAgICAgICAgICAgIGF1dG8gc2libGluZ0NoaWxk
cmVuID0gY2hpbGRyZW5PZlR5cGU8RWxlbWVudD4oKnNpYmxpbmcpOworICAgICAgICAgICAgZm9y
IChhdXRvJiBzaWJsaW5nQ2hpbGQgOiBzaWJsaW5nQ2hpbGRyZW4pCisgICAgICAgICAgICAgICAg
aW52YWxpZGF0ZUlmTmVlZGVkKHNpYmxpbmdDaGlsZCwgbnVsbHB0cik7CisgICAgICAgIH0KKyAg
ICAgICAgYnJlYWs7CiAgICAgY2FzZSBNYXRjaEVsZW1lbnQ6OkFuY2VzdG9yU2libGluZzoKLSAg
ICAgICAgLy8gRklYTUU6IEN1cnJlbnRseSBzaWJsaW5nIGludmFsaWRhdGlvbiBoYXBwZW5zIGR1
cmluZyBzdHlsZSByZXNvbHV0aW9uIHRyZWUgd2Fsay4gSXQgc2hvdWxkIGJlIGRvbmUgaGVyZSB0
b28uCi0gICAgICAgIGVsZW1lbnQuaW52YWxpZGF0ZVN0eWxlKCk7CisgICAgICAgIGZvciAoYXV0
byogc2libGluZyA9IGVsZW1lbnQubmV4dEVsZW1lbnRTaWJsaW5nKCk7IHNpYmxpbmc7IHNpYmxp
bmcgPSBzaWJsaW5nLT5uZXh0RWxlbWVudFNpYmxpbmcoKSkKKyAgICAgICAgICAgIGludmFsaWRh
dGVTdHlsZUZvckRlc2NlbmRhbnRzKCpzaWJsaW5nLCBudWxscHRyKTsKICAgICAgICAgYnJlYWs7
CiAgICAgY2FzZSBNYXRjaEVsZW1lbnQ6Okhvc3Q6CiAgICAgICAgIC8vIEZJWE1FOiBIYW5kbGUg
dGhpcyBoZXJlIGFzIHdlbGwuCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMjc4OTgpCisrKyBMYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOCBAQAorMjAxOC0wMS0z
MSAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CisKKyAgICAgICAgSW52YWxpZGF0
ZSBzdHlsZSBmb3Igc2libGluZyBjb21iaW5hdG9ycyBhY2N1cmF0ZWx5IG9uIGNsYXNzIGNoYW5n
ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgyMzM2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRhcHQg
dG8gcHJvZ3Jlc3Npb25zLgorCisgICAgICAgICogZmFzdC9jc3MvZGlyZWN0LWFkamFjZW50LXN0
eWxlLXVwZGF0ZS1vcHRpbWl6YXRpb24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvY3Nz
L2RpcmVjdC1hZGphY2VudC1zdHlsZS11cGRhdGUtb3B0aW1pemF0aW9uLmh0bWw6CisgICAgICAg
ICogZmFzdC9jc3MvaW5kaXJlY3QtYWRqYWNlbnQtc3R5bGUtdXBkYXRlLW9wdGltaXphdGlvbi1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW5kaXJlY3QtYWRqYWNlbnQtc3R5bGUt
dXBkYXRlLW9wdGltaXphdGlvbi5odG1sOgorICAgICAgICAqIGZhc3QvY3NzL250aC1sYXN0LWNo
aWxkLW9mLXN0eWxlLXVwZGF0ZS1vcHRpbWl6YXRpb24uaHRtbDoKKwogMjAxOC0wMS0zMSAgU2Fh
bSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNvbT4KIAogICAgICAgICBKU0MgaW5jb3JyZWN0bHkg
aW50ZXJwcmV0aW5nIHNjcmlwdCwgc2V0cyBHbG9iYWwgUHJvcGVydHkgaW5zdGVhZCBvZiBHbG9i
YWwgTGV4aWNhbCB2YXJpYWJsZSAoTGl0ZXJhbFBhcnNlciAvIEpTT05QIHBhdGgpCkluZGV4OiBM
YXlvdXRUZXN0cy9mYXN0L2Nzcy9kaXJlY3QtYWRqYWNlbnQtc3R5bGUtdXBkYXRlLW9wdGltaXph
dGlvbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvZGly
ZWN0LWFkamFjZW50LXN0eWxlLXVwZGF0ZS1vcHRpbWl6YXRpb24tZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAyMjc4OTgpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9kaXJlY3QtYWRqYWNlbnQtc3R5
bGUtdXBkYXRlLW9wdGltaXphdGlvbi1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTE4
LDggKzE4LDggQEAgUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LnF1ZXJ5U2VsZQogUEFT
UyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoInRhcmdldCIpWzFd
KS5iYWNrZ3JvdW5kQ29sb3IgaXMgInJnYigxLCAyLCAzKSIKIFBBU1MgZWxlbWVudHNXaXRoVGFn
bmFtZU5lZWRzU3R5bGVSZWNhbGMoW10pIGlzIHRydWUKIExldCdzIHJlbW92ZSB0aGUgY2xhc3Mg
InByb3BlcnR5Ii4KLVNvdXJjZSBzaG91bGQgcmVxdWlyZSBhIHN0eWxlIHJlY2FsYy4KLVBBU1Mg
ZWxlbWVudHNXaXRoVGFnbmFtZU5lZWRzU3R5bGVSZWNhbGMoWyJTT1VSQ0UiXSkgaXMgdHJ1ZQor
VGFyZ2V0IHNob3VsZCByZXF1aXJlIGEgc3R5bGUgcmVjYWxjLgorUEFTUyBlbGVtZW50c1dpdGhU
YWduYW1lTmVlZHNTdHlsZVJlY2FsYyhbIlRBUkdFVCJdKSBpcyB0cnVlCiBXZSBzaG91bGQgbm8g
bG9uZ2VyIGhhdmUgYSBtYXRjaC4gTGV0J3MgYWRkIGJhY2sgdGhlIGNsYXNzICJwcm9wZXJ0eSIu
IFRoZW4gd2UgZ2V0IHRoZSBzdHlsZSBvZiBldmVyeXRoaW5nIGV4Y2VwdCA8c291cmNlPiBhbmQg
PHRhcmdldD4uIFNpbmNlIG5vbmUgb2YgdGhlIHN0eWxlIHRvdWNoZWQgYWJvdmUgYXJlIHJlbGF0
ZWQgdG8gdGhlIGRpcnR5IGVsZW1lbnRzLCA8c291cmNlPiBzaG91bGQgc3RpbGwgcmVxdWlyZSBh
IHN0eWxlIHJlY2FsYy4KIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5xdWVyeVNlbGVj
dG9yQWxsKCIudGVzdC1jYXNlLCAudGVzdC1jYXNlIDpub3QodGFyZ2V0KSIpWzBdKS5iYWNrZ3Jv
dW5kQ29sb3IgaXMgInJnYigyNTUsIDI1NCwgMjUzKSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShk
b2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIudGVzdC1jYXNlLCAudGVzdC1jYXNlIDpub3QodGFy
Z2V0KSIpWzFdKS5iYWNrZ3JvdW5kQ29sb3IgaXMgInJnYigyNTUsIDI1NCwgMjUzKSIKQEAgLTMz
LDcgKzMzLDcgQEAgUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LnF1ZXJ5U2VsZQogUEFT
UyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi50ZXN0LWNhc2Us
IC50ZXN0LWNhc2UgOm5vdCh0YXJnZXQpIilbOV0pLmJhY2tncm91bmRDb2xvciBpcyAicmdiKDI1
NSwgMjU0LCAyNTMpIgogUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LnF1ZXJ5U2VsZWN0
b3JBbGwoInRhcmdldCIpWzBdKS5iYWNrZ3JvdW5kQ29sb3IgaXMgInJnYigyNTUsIDI1NCwgMjUz
KSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJ0YXJn
ZXQiKVsxXSkuYmFja2dyb3VuZENvbG9yIGlzICJyZ2IoMjU1LCAyNTQsIDI1MykiCi1QQVNTIGVs
ZW1lbnRzV2l0aFRhZ25hbWVOZWVkc1N0eWxlUmVjYWxjKFsiU09VUkNFIl0pIGlzIHRydWUKK1BB
U1MgZWxlbWVudHNXaXRoVGFnbmFtZU5lZWRzU3R5bGVSZWNhbGMoWyJUQVJHRVQiXSkgaXMgdHJ1
ZQogV2Ugc2hvdWxkIG1hdGNoIGFnYWluIG5vdyB0aGF0IHByb3BlcnR5IGlzIGJhY2suCiBQQVNT
IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnRlc3QtY2FzZSwg
LnRlc3QtY2FzZSA6bm90KHRhcmdldCkiKVswXSkuYmFja2dyb3VuZENvbG9yIGlzICJyZ2IoMjU1
LCAyNTQsIDI1MykiCiBQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQucXVlcnlTZWxlY3Rv
ckFsbCgiLnRlc3QtY2FzZSwgLnRlc3QtY2FzZSA6bm90KHRhcmdldCkiKVsxXSkuYmFja2dyb3Vu
ZENvbG9yIGlzICJyZ2IoMjU1LCAyNTQsIDI1MykiCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nz
cy9kaXJlY3QtYWRqYWNlbnQtc3R5bGUtdXBkYXRlLW9wdGltaXphdGlvbi5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY3NzL2RpcmVjdC1hZGphY2VudC1zdHlsZS11cGRhdGUt
b3B0aW1pemF0aW9uLmh0bWwJKHJldmlzaW9uIDIyNzg5OCkKKysrIExheW91dFRlc3RzL2Zhc3Qv
Y3NzL2RpcmVjdC1hZGphY2VudC1zdHlsZS11cGRhdGUtb3B0aW1pemF0aW9uLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTYzLDggKzYzLDggQEAgdmFyIGFsbFNvdXJjZXMgPSBkb2N1bWVudC5xdWVy
eVNlbGVjdG9yQQogZm9yICh2YXIgaSA9IDA7IGkgPCBhbGxTb3VyY2VzLmxlbmd0aDsgKytpKQog
ICAgIGFsbFNvdXJjZXNbaV0uY2xhc3NMaXN0LnJlbW92ZSgicHJvcGVydHkiKTsKIAotZGVidWco
IlNvdXJjZSBzaG91bGQgcmVxdWlyZSBhIHN0eWxlIHJlY2FsYy4iKTsKLXNob3VsZEJlVHJ1ZSgn
ZWxlbWVudHNXaXRoVGFnbmFtZU5lZWRzU3R5bGVSZWNhbGMoWyJTT1VSQ0UiXSknKTsKK2RlYnVn
KCJUYXJnZXQgc2hvdWxkIHJlcXVpcmUgYSBzdHlsZSByZWNhbGMuIik7CitzaG91bGRCZVRydWUo
J2VsZW1lbnRzV2l0aFRhZ25hbWVOZWVkc1N0eWxlUmVjYWxjKFsiVEFSR0VUIl0pJyk7CiAKIGRl
YnVnKCJXZSBzaG91bGQgbm8gbG9uZ2VyIGhhdmUgYSBtYXRjaC4gTGV0J3MgYWRkIGJhY2sgdGhl
IGNsYXNzIFwicHJvcGVydHlcIi4gVGhlbiB3ZSBnZXQgdGhlIHN0eWxlIG9mIGV2ZXJ5dGhpbmcg
ZXhjZXB0ICZsdDtzb3VyY2UmZ3Q7IGFuZCAmbHQ7dGFyZ2V0Jmd0Oy4gU2luY2Ugbm9uZSBvZiB0
aGUgc3R5bGUgdG91Y2hlZCBhYm92ZSBhcmUgcmVsYXRlZCB0byB0aGUgZGlydHkgZWxlbWVudHMs
ICZsdDtzb3VyY2UmZ3Q7IHNob3VsZCBzdGlsbCByZXF1aXJlIGEgc3R5bGUgcmVjYWxjLiIpOwog
CkBAIC04Miw3ICs4Miw3IEBAIGZvciAodmFyIGkgPSAwOyBpIDwgb3RoZXJzLmxlbmd0aDsgKytp
KSAKICAgICAgICAgZGVidWcoIlNvbWV0aGluZyBob3JyaWJseSB3cm9uZyBpcyBoYXBwZW5pbmcu
Iik7CiB9CiAKLXNob3VsZEJlVHJ1ZSgnZWxlbWVudHNXaXRoVGFnbmFtZU5lZWRzU3R5bGVSZWNh
bGMoWyJTT1VSQ0UiXSknKTsKK3Nob3VsZEJlVHJ1ZSgnZWxlbWVudHNXaXRoVGFnbmFtZU5lZWRz
U3R5bGVSZWNhbGMoWyJUQVJHRVQiXSknKTsKIAogZGVidWcoIldlIHNob3VsZCBtYXRjaCBhZ2Fp
biBub3cgdGhhdCBwcm9wZXJ0eSBpcyBiYWNrLiIpOwogdGVzdENvbG9yKHRydWUpOwpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9jc3MvaW5kaXJlY3QtYWRqYWNlbnQtc3R5bGUtdXBkYXRlLW9wdGlt
aXphdGlvbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
aW5kaXJlY3QtYWRqYWNlbnQtc3R5bGUtdXBkYXRlLW9wdGltaXphdGlvbi1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDIyNzg5OCkKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2luZGlyZWN0LWFkamFj
ZW50LXN0eWxlLXVwZGF0ZS1vcHRpbWl6YXRpb24tZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkp
CkBAIC0xOCw4ICsxOCw4IEBAIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5xdWVyeVNl
bGUKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJ0YXJn
ZXQiKVsxXSkuYmFja2dyb3VuZENvbG9yIGlzICJyZ2IoMSwgMiwgMykiCiBQQVNTIGVsZW1lbnRz
V2l0aFRhZ25hbWVOZWVkc1N0eWxlUmVjYWxjKFtdKSBpcyB0cnVlCiBMZXQncyByZW1vdmUgdGhl
IGNsYXNzICJwcm9wZXJ0eSIuCi1Tb3VyY2Ugc2hvdWxkIHJlcXVpcmUgYSBzdHlsZSByZWNhbGMu
Ci1QQVNTIGVsZW1lbnRzV2l0aFRhZ25hbWVOZWVkc1N0eWxlUmVjYWxjKFsiU09VUkNFIl0pIGlz
IHRydWUKK1RhcmdldCBzaG91bGQgcmVxdWlyZSBhIHN0eWxlIHJlY2FsYy4KK1BBU1MgZWxlbWVu
dHNXaXRoVGFnbmFtZU5lZWRzU3R5bGVSZWNhbGMoWyJUQVJHRVQiXSkgaXMgdHJ1ZQogV2Ugc2hv
dWxkIG5vIGxvbmdlciBoYXZlIGEgbWF0Y2guIExldCdzIGFkZCBiYWNrIHRoZSBjbGFzcyAicHJv
cGVydHkiLiBUaGVuIHdlIGdldCB0aGUgc3R5bGUgb2YgZXZlcnl0aGluZyBleGNlcHQgPHNvdXJj
ZT4gYW5kIDx0YXJnZXQ+LiBTaW5jZSBub25lIG9mIHRoZSBzdHlsZSB0b3VjaGVkIGFib3ZlIGFy
ZSByZWxhdGVkIHRvIHRoZSBkaXJ0eSBlbGVtZW50cywgPHNvdXJjZT4gc2hvdWxkIHN0aWxsIHJl
cXVpcmUgYSBzdHlsZSByZWNhbGMuCiBQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQucXVl
cnlTZWxlY3RvckFsbCgiLnRlc3QtY2FzZSwgLnRlc3QtY2FzZSA6bm90KHRhcmdldCkiKVswXSku
YmFja2dyb3VuZENvbG9yIGlzICJyZ2IoMjU1LCAyNTQsIDI1MykiCiBQQVNTIGdldENvbXB1dGVk
U3R5bGUoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnRlc3QtY2FzZSwgLnRlc3QtY2FzZSA6
bm90KHRhcmdldCkiKVsxXSkuYmFja2dyb3VuZENvbG9yIGlzICJyZ2IoMjU1LCAyNTQsIDI1Myki
CkBAIC0zMyw3ICszMyw3IEBAIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5xdWVyeVNl
bGUKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIudGVz
dC1jYXNlLCAudGVzdC1jYXNlIDpub3QodGFyZ2V0KSIpWzldKS5iYWNrZ3JvdW5kQ29sb3IgaXMg
InJnYigyNTUsIDI1NCwgMjUzKSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5xdWVy
eVNlbGVjdG9yQWxsKCJ0YXJnZXQiKVswXSkuYmFja2dyb3VuZENvbG9yIGlzICJyZ2IoMjU1LCAy
NTQsIDI1MykiCiBQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFs
bCgidGFyZ2V0IilbMV0pLmJhY2tncm91bmRDb2xvciBpcyAicmdiKDI1NSwgMjU0LCAyNTMpIgot
UEFTUyBlbGVtZW50c1dpdGhUYWduYW1lTmVlZHNTdHlsZVJlY2FsYyhbIlNPVVJDRSJdKSBpcyB0
cnVlCitQQVNTIGVsZW1lbnRzV2l0aFRhZ25hbWVOZWVkc1N0eWxlUmVjYWxjKFsiVEFSR0VUIl0p
IGlzIHRydWUKIFdlIHNob3VsZCBtYXRjaCBhZ2FpbiBub3cgdGhhdCBwcm9wZXJ0eSBpcyBiYWNr
LgogUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi50ZXN0
LWNhc2UsIC50ZXN0LWNhc2UgOm5vdCh0YXJnZXQpIilbMF0pLmJhY2tncm91bmRDb2xvciBpcyAi
cmdiKDI1NSwgMjU0LCAyNTMpIgogUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LnF1ZXJ5
U2VsZWN0b3JBbGwoIi50ZXN0LWNhc2UsIC50ZXN0LWNhc2UgOm5vdCh0YXJnZXQpIilbMV0pLmJh
Y2tncm91bmRDb2xvciBpcyAicmdiKDI1NSwgMjU0LCAyNTMpIgpJbmRleDogTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvaW5kaXJlY3QtYWRqYWNlbnQtc3R5bGUtdXBkYXRlLW9wdGltaXphdGlvbi5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY3NzL2luZGlyZWN0LWFkamFjZW50LXN0
eWxlLXVwZGF0ZS1vcHRpbWl6YXRpb24uaHRtbAkocmV2aXNpb24gMjI3ODk4KQorKysgTGF5b3V0
VGVzdHMvZmFzdC9jc3MvaW5kaXJlY3QtYWRqYWNlbnQtc3R5bGUtdXBkYXRlLW9wdGltaXphdGlv
bi5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC02Myw4ICs2Myw4IEBAIHZhciBhbGxTb3VyY2VzID0g
ZG9jdW1lbnQucXVlcnlTZWxlY3RvckEKIGZvciAodmFyIGkgPSAwOyBpIDwgYWxsU291cmNlcy5s
ZW5ndGg7ICsraSkKICAgICBhbGxTb3VyY2VzW2ldLmNsYXNzTGlzdC5yZW1vdmUoInByb3BlcnR5
Iik7CiAKLWRlYnVnKCJTb3VyY2Ugc2hvdWxkIHJlcXVpcmUgYSBzdHlsZSByZWNhbGMuIik7Ci1z
aG91bGRCZVRydWUoJ2VsZW1lbnRzV2l0aFRhZ25hbWVOZWVkc1N0eWxlUmVjYWxjKFsiU09VUkNF
Il0pJyk7CitkZWJ1ZygiVGFyZ2V0IHNob3VsZCByZXF1aXJlIGEgc3R5bGUgcmVjYWxjLiIpOwor
c2hvdWxkQmVUcnVlKCdlbGVtZW50c1dpdGhUYWduYW1lTmVlZHNTdHlsZVJlY2FsYyhbIlRBUkdF
VCJdKScpOwogCiBkZWJ1ZygiV2Ugc2hvdWxkIG5vIGxvbmdlciBoYXZlIGEgbWF0Y2guIExldCdz
IGFkZCBiYWNrIHRoZSBjbGFzcyBcInByb3BlcnR5XCIuIFRoZW4gd2UgZ2V0IHRoZSBzdHlsZSBv
ZiBldmVyeXRoaW5nIGV4Y2VwdCAmbHQ7c291cmNlJmd0OyBhbmQgJmx0O3RhcmdldCZndDsuIFNp
bmNlIG5vbmUgb2YgdGhlIHN0eWxlIHRvdWNoZWQgYWJvdmUgYXJlIHJlbGF0ZWQgdG8gdGhlIGRp
cnR5IGVsZW1lbnRzLCAmbHQ7c291cmNlJmd0OyBzaG91bGQgc3RpbGwgcmVxdWlyZSBhIHN0eWxl
IHJlY2FsYy4iKTsKIApAQCAtODIsNyArODIsNyBAQCBmb3IgKHZhciBpID0gMDsgaSA8IG90aGVy
cy5sZW5ndGg7ICsraSkgCiAgICAgICAgIGRlYnVnKCJTb21ldGhpbmcgaG9ycmlibHkgd3Jvbmcg
aXMgaGFwcGVuaW5nLiIpOwogfQogCi1zaG91bGRCZVRydWUoJ2VsZW1lbnRzV2l0aFRhZ25hbWVO
ZWVkc1N0eWxlUmVjYWxjKFsiU09VUkNFIl0pJyk7CitzaG91bGRCZVRydWUoJ2VsZW1lbnRzV2l0
aFRhZ25hbWVOZWVkc1N0eWxlUmVjYWxjKFsiVEFSR0VUIl0pJyk7CiAKIGRlYnVnKCJXZSBzaG91
bGQgbWF0Y2ggYWdhaW4gbm93IHRoYXQgcHJvcGVydHkgaXMgYmFjay4iKTsKIHRlc3RDb2xvcih0
cnVlKTsKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY3NzL250aC1sYXN0LWNoaWxkLW9mLXN0eWxl
LXVwZGF0ZS1vcHRpbWl6YXRpb24uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0
L2Nzcy9udGgtbGFzdC1jaGlsZC1vZi1zdHlsZS11cGRhdGUtb3B0aW1pemF0aW9uLmh0bWwJKHJl
dmlzaW9uIDIyNzg5OCkKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL250aC1sYXN0LWNoaWxkLW9m
LXN0eWxlLXVwZGF0ZS1vcHRpbWl6YXRpb24uaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNTEsOCAr
NTEsOCBAQCB2YXIgYWxsQ29udGVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBCiBmb3IgKHZh
ciBpID0gMDsgaSA8IGFsbENvbnRlbnQubGVuZ3RoOyArK2kpIHsKICAgICB2YXIgbm9kZSA9IGFs
bENvbnRlbnRbaV07CiAgICAgaWYgKGludGVybmFscy5ub2RlTmVlZHNTdHlsZVJlY2FsYyhub2Rl
KSkgewotICAgICAgICBpZiAobm9kZSAhPT0gdGFyZ2V0MSAmJiBub2RlICE9PSB0YXJnZXQxLnBh
cmVudE5vZGUpIHsKLSAgICAgICAgICAgIHRlc3RGYWlsZWQoIkludmFsaWRhdGluZyB0aGUgc3R5
bGUgb2YgdGFyZ2V0MSBzaG91bGQgbmV2ZXIgaW52YWxpZGF0ZSBtb3JlIHRoYW4gdGFyZ2V0MSBh
bmQgaXRzIHBhcmVudC4iKTsKKyAgICAgICAgaWYgKG5vZGUgIT09IHRhcmdldDEgJiYgbm9kZSAh
PT0gdGFyZ2V0MS5wcmV2aW91c0VsZW1lbnRTaWJsaW5nKSB7CisgICAgICAgICAgICB0ZXN0RmFp
bGVkKCJJbnZhbGlkYXRpbmcgdGhlIHN0eWxlIG9mIHRhcmdldDEgc2hvdWxkIG5ldmVyIGludmFs
aWRhdGUgbW9yZSB0aGFuIHRhcmdldDEgYW5kIGl0cyBzaWJsaW5ncy4iKTsKICAgICAgICAgICAg
IGJyZWFrOwogICAgICAgICB9CiAgICAgfQpAQCAtNjgsOCArNjgsOCBAQCB2YXIgYWxsQ29udGVu
dCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBCiBmb3IgKHZhciBpID0gMDsgaSA8IGFsbENvbnRl
bnQubGVuZ3RoOyArK2kpIHsKICAgICB2YXIgbm9kZSA9IGFsbENvbnRlbnRbaV07CiAgICAgaWYg
KGludGVybmFscy5ub2RlTmVlZHNTdHlsZVJlY2FsYyhub2RlKSkgewotICAgICAgICBpZiAobm9k
ZSAhPT0gdGFyZ2V0MiAmJiBub2RlICE9PSB0YXJnZXQyLnBhcmVudE5vZGUpIHsKLSAgICAgICAg
ICAgIHRlc3RGYWlsZWQoIkludmFsaWRhdGluZyB0aGUgc3R5bGUgb2YgdGFyZ2V0MSBzaG91bGQg
bmV2ZXIgaW52YWxpZGF0ZSBtb3JlIHRoYW4gdGFyZ2V0MSBhbmQgaXRzIHBhcmVudC4iKTsKKyAg
ICAgICAgaWYgKG5vZGUgIT09IHRhcmdldDIgJiYgbm9kZSAhPT0gdGFyZ2V0Mi5wcmV2aW91c0Vs
ZW1lbnRTaWJsaW5nKSB7CisgICAgICAgICAgICB0ZXN0RmFpbGVkKCJJbnZhbGlkYXRpbmcgdGhl
IHN0eWxlIG9mIHRhcmdldDIgc2hvdWxkIG5ldmVyIGludmFsaWRhdGUgbW9yZSB0aGFuIHRhcmdl
dDEgYW5kIGl0cyBzaWJsaW5ncy4iKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAg
ICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>