<?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>160538</bug_id>
          
          <creation_ts>2016-08-03 20:57:45 -0700</creation_ts>
          <short_desc>slotted() pseudo does not work with ID selector</short_desc>
          <delta_ts>2016-11-04 11:35:49 -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>DOM</component>
          <version>Safari Technology Preview</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>148695</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric">ericbidelman</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>koivisto</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1217309</commentid>
    <comment_count>0</comment_count>
      <attachid>285300</attachid>
    <who name="Eric">ericbidelman</who>
    <bug_when>2016-08-03 20:57:45 -0700</bug_when>
    <thetext>Created attachment 285300
repro of #id::slotted not working

Prefixing `::slotted()` with an #id selector does apply the styling.

Repro: http://jsbin.com/qetofazevu/edit?html,output

  &lt;nav&gt;
    &lt;span&gt;Hello&lt;/span&gt;
    &lt;span&gt;world&lt;/span&gt;
  &lt;/nav&gt;

  &lt;template&gt;
    &lt;style&gt;
      #s::slotted(*) {
        background: red;
      }
    &lt;/style&gt;
    &lt;slot id=&quot;s&quot;&gt;&lt;/slot&gt;
  &lt;/template&gt;

  &lt;script&gt;
    var t = document.querySelector(&apos;template&apos;);
    t.content.cloneNode(true);
    var nav = document.querySelector(&apos;nav&apos;);
    nav.attachShadow({mode:&apos;open&apos;}).appendChild(t.content.cloneNode(true));
  &lt;/script&gt;

Notes: 
- using `::slotted(*)` and `slot::slotted(*)` does apply the styling.
- repro works in Chrome 53+</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1234659</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2016-09-28 19:04:31 -0700</bug_when>
    <thetext>&lt;rdar://problem/28534529&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1234661</commentid>
    <comment_count>2</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2016-09-28 19:06:38 -0700</bug_when>
    <thetext>It looks like replacing #s::slotted(*) by .s::slotted(*) and adding class=&quot;s&quot; to the slot element fixes the problem.  So there&apos;s something about the style selector or collector that doesn&apos;t like using #s and ::slotted together.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1248148</commentid>
    <comment_count>3</comment_count>
      <attachid>293893</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2016-11-04 10:08:45 -0700</bug_when>
    <thetext>Created attachment 293893
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1248167</commentid>
    <comment_count>4</comment_count>
      <attachid>293902</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2016-11-04 10:56:47 -0700</bug_when>
    <thetext>Created attachment 293902
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1248179</commentid>
    <comment_count>5</comment_count>
      <attachid>293902</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-11-04 11:35:44 -0700</bug_when>
    <thetext>Comment on attachment 293902
patch

Clearing flags on attachment: 293902

Committed r208390: &lt;http://trac.webkit.org/changeset/208390&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1248180</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-11-04 11:35:49 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>285300</attachid>
            <date>2016-08-03 20:57:45 -0700</date>
            <delta_ts>2016-08-03 20:57:45 -0700</delta_ts>
            <desc>repro of #id::slotted not working</desc>
            <filename>test.html</filename>
            <type>text/html</type>
            <size>611</size>
            <attacher name="Eric">ericbidelman</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CiAg
PG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCI+CiAgPHRp
dGxlPldlYktpdCBTbG90IHN0eWxpbmcgYnVnPC90aXRsZT4KPC9oZWFkPgo8Ym9keT4KICA8bmF2
PgogICAgPHNwYW4+SGVsbG88L3NwYW4+CiAgICA8c3Bhbj53b3JsZDwvc3Bhbj4KICA8L25hdj4K
CiAgPHRlbXBsYXRlPgogICAgPHN0eWxlPgogICAgICAjczo6c2xvdHRlZCgqKSB7CiAgICAgICAg
YmFja2dyb3VuZDogcmVkOwogICAgICB9CiAgICA8L3N0eWxlPgogICAgPHNsb3QgaWQ9InMiPjwv
c2xvdD4KICA8L3RlbXBsYXRlPgoKICA8c2NyaXB0PgogICAgdmFyIHRlbXAgPSBkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCd0ZW1wbGF0ZScpOwogICAgdGVtcC5jb250ZW50LmNsb25lTm9kZSh0cnVl
KTsKICAgIHZhciBuYXYgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCduYXYnKTsKICAgIG5hdi5h
dHRhY2hTaGFkb3coe21vZGU6J29wZW4nfSkuYXBwZW5kQ2hpbGQodGVtcC5jb250ZW50LmNsb25l
Tm9kZSh0cnVlKSk7CiAgPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>293893</attachid>
            <date>2016-11-04 10:08:45 -0700</date>
            <delta_ts>2016-11-04 10:56:47 -0700</delta_ts>
            <desc>patch</desc>
            <filename>slotted-with-id.patch</filename>
            <type>text/plain</type>
            <size>10582</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwODM4NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDE2LTExLTA0ICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBzbG90dGVkKCkgcHNldWRvIGRv
ZXMgbm90IHdvcmsgd2l0aCBJRCBzZWxlY3RvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwNTM4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yODUz
NDUyOT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBX
aGVuIHdlIHNhdyBhbiBpZCBzZWxlY3RvciB3aGlsZSBhZGRpbiBydWxlcyB3ZSBpbW1lZGlhdGVs
eSB0aHJldyBpdCBpbnRvIHRoZSBtX2lkUnVsZXMKKyAgICAgICAgb3B0aW1pemF0aW9uIGJ1Y2tl
dCBhbmQgYmFpbGVkIG91dC4gSG93ZXZlciBzZWxlY3RvcnMgY29udGFpbmluZyA6OnNsb3R0ZWQg
bXVzdCBhbHdheXMgZW5kCisgICAgICAgIHVwIGluIG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxl
cyBsaXN0IG5vIG1hdHRlciB3aGF0IGVsc2UgaXMgdGhlcmUuCisKKyAgICAgICAgRml4IGJ5IHRy
ZWF0aW5nIGlkIGxpa2Ugb3RoZXIgc2VsZWN0b3JzIGFuZCBvbmx5IGNob29zaW5nIHRoZSBidWNr
ZXQgYWZ0ZXIgYW5hbHlzaW5nIGFsbAorICAgICAgICB0aGUgc2VsZWN0b3IgY29tcG9uZW50cy4K
KworICAgICAgICBUZXN0OiBmYXN0L3NoYWRvdy1kb20vY3NzLXNjb3Bpbmctc2xvdC13aXRoLWlk
Lmh0bWwKKworICAgICAgICAqIGNzcy9SdWxlU2V0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJ1
bGVTZXQ6OmFkZFJ1bGUpOiBBbHNvIG1hZGUgdGhpcyB1c2Ugc3dpdGNoIGluc3RlYWQgb2YgYSBz
ZXJpZXMgb2YgaWZzLgorCiAyMDE2LTExLTA0ICBKb2FubWFyaWUgRGlnZ3MgIDxqZGlnZ3NAaWdh
bGlhLmNvbT4KIAogICAgICAgICBBWDogW0FUS10gQXR0ZW1wdGluZyB0byBjbGVhciBzZWxlY3Rp
b24gb24gQVJJQSBsaXN0Ym94ZXMgcmVzdWx0cyBpbiBjcmFzaApJbmRleDogU291cmNlL1dlYkNv
cmUvY3NzL1J1bGVTZXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9SdWxl
U2V0LmNwcAkocmV2aXNpb24gMjA4MzYzKQorKysgU291cmNlL1dlYkNvcmUvY3NzL1J1bGVTZXQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMDAsMzMgKzIwMCwyMiBAQCB2b2lkIFJ1bGVTZXQ6OmFk
ZFJ1bGUoU3R5bGVSdWxlKiBydWxlLCB1CiAgICAgbV9mZWF0dXJlcy5jb2xsZWN0RmVhdHVyZXMo
cnVsZURhdGEpOwogCiAgICAgdW5zaWduZWQgY2xhc3NCdWNrZXRTaXplID0gMDsKKyAgICBjb25z
dCBDU1NTZWxlY3RvciogaWRTZWxlY3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0
b3IqIHRhZ1NlbGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBDU1NTZWxlY3RvciogY2xhc3NT
ZWxlY3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGxpbmtTZWxlY3RvciA9
IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGZvY3VzU2VsZWN0b3IgPSBudWxscHRy
OworICAgIGNvbnN0IENTU1NlbGVjdG9yKiBjdXN0b21Qc2V1ZG9FbGVtZW50U2VsZWN0b3IgPSBu
dWxscHRyOworICAgIGNvbnN0IENTU1NlbGVjdG9yKiBzbG90dGVkUHNldWRvRWxlbWVudFNlbGVj
dG9yID0gbnVsbHB0cjsKKyAgICBjb25zdCBDU1NTZWxlY3RvciogY3VlUHNldWRvRWxlbWVudFNl
bGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBDU1NTZWxlY3Rvciogc2VsZWN0b3IgPSBydWxl
RGF0YS5zZWxlY3RvcigpOwogICAgIGRvIHsKLSAgICAgICAgaWYgKHNlbGVjdG9yLT5tYXRjaCgp
ID09IENTU1NlbGVjdG9yOjpJZCkgewotICAgICAgICAgICAgYWRkVG9SdWxlU2V0KHNlbGVjdG9y
LT52YWx1ZSgpLmltcGwoKSwgbV9pZFJ1bGVzLCBydWxlRGF0YSk7Ci0gICAgICAgICAgICByZXR1
cm47Ci0gICAgICAgIH0KLQotI2lmIEVOQUJMRShWSURFT19UUkFDSykKLSAgICAgICAgaWYgKHNl
bGVjdG9yLT5tYXRjaCgpID09IENTU1NlbGVjdG9yOjpQc2V1ZG9FbGVtZW50ICYmIHNlbGVjdG9y
LT5wc2V1ZG9FbGVtZW50VHlwZSgpID09IENTU1NlbGVjdG9yOjpQc2V1ZG9FbGVtZW50Q3VlKSB7
Ci0gICAgICAgICAgICBtX2N1ZVBzZXVkb1J1bGVzLmFwcGVuZChydWxlRGF0YSk7Ci0gICAgICAg
ICAgICByZXR1cm47Ci0gICAgICAgIH0KLSNlbmRpZgotCi0gICAgICAgIGlmIChzZWxlY3Rvci0+
aXNDdXN0b21Qc2V1ZG9FbGVtZW50KCkpIHsKLSAgICAgICAgICAgIC8vIEZJWE1FOiBDdXN0b20g
cHNldWRvIGVsZW1lbnRzIGFyZSBoYW5kbGVkIGJ5IHRoZSBzaGFkb3cgdHJlZSdzIHNlbGVjdG9y
IGZpbHRlci4gSXQgZG9lc24ndCBrbm93IGFib3V0IHRoZSBtYWluIERPTS4KLSAgICAgICAgICAg
IHJ1bGVEYXRhLmRpc2FibGVTZWxlY3RvckZpbHRlcmluZygpOwotICAgICAgICAgICAgYWRkVG9S
dWxlU2V0KHNlbGVjdG9yLT52YWx1ZSgpLmltcGwoKSwgbV9zaGFkb3dQc2V1ZG9FbGVtZW50UnVs
ZXMsIHJ1bGVEYXRhKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQotCi0gICAgICAg
IGlmIChzZWxlY3Rvci0+bWF0Y2goKSA9PSBDU1NTZWxlY3Rvcjo6Q2xhc3MpIHsKLSAgICAgICAg
ICAgIEF0b21pY1N0cmluZ0ltcGwqIGNsYXNzTmFtZSA9IHNlbGVjdG9yLT52YWx1ZSgpLmltcGwo
KTsKKyAgICAgICAgc3dpdGNoIChzZWxlY3Rvci0+bWF0Y2goKSkgeworICAgICAgICBjYXNlIENT
U1NlbGVjdG9yOjpJZDoKKyAgICAgICAgICAgIGlkU2VsZWN0b3IgPSBzZWxlY3RvcjsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpDbGFzczogeworICAgICAg
ICAgICAgYXV0byogY2xhc3NOYW1lID0gc2VsZWN0b3ItPnZhbHVlKCkuaW1wbCgpOwogICAgICAg
ICAgICAgaWYgKCFjbGFzc1NlbGVjdG9yKSB7CiAgICAgICAgICAgICAgICAgY2xhc3NTZWxlY3Rv
ciA9IHNlbGVjdG9yOwogICAgICAgICAgICAgICAgIGNsYXNzQnVja2V0U2l6ZSA9IHJ1bGVzQ291
bnRGb3JOYW1lKG1fY2xhc3NSdWxlcywgY2xhc3NOYW1lKTsKQEAgLTIzNywxMiArMjI2LDI5IEBA
IHZvaWQgUnVsZVNldDo6YWRkUnVsZShTdHlsZVJ1bGUqIHJ1bGUsIHUKICAgICAgICAgICAgICAg
ICAgICAgY2xhc3NCdWNrZXRTaXplID0gbmV3Q2xhc3NCdWNrZXRTaXplOwogICAgICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0KLSAg
ICAgICAgaWYgKHNlbGVjdG9yLT5tYXRjaCgpID09IENTU1NlbGVjdG9yOjpUYWcgJiYgc2VsZWN0
b3ItPnRhZ1FOYW1lKCkubG9jYWxOYW1lKCkgIT0gc3RhckF0b20pCi0gICAgICAgICAgICB0YWdT
ZWxlY3RvciA9IHNlbGVjdG9yOwotCi0gICAgICAgIGlmIChTZWxlY3RvckNoZWNrZXI6OmlzQ29t
bW9uUHNldWRvQ2xhc3NTZWxlY3RvcihzZWxlY3RvcikpIHsKKyAgICAgICAgY2FzZSBDU1NTZWxl
Y3Rvcjo6VGFnOgorICAgICAgICAgICAgaWYgKHNlbGVjdG9yLT50YWdRTmFtZSgpLmxvY2FsTmFt
ZSgpICE9IHN0YXJBdG9tKQorICAgICAgICAgICAgICAgIHRhZ1NlbGVjdG9yID0gc2VsZWN0b3I7
CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvRWxl
bWVudDoKKyAgICAgICAgICAgIGlmIChzZWxlY3Rvci0+aXNDdXN0b21Qc2V1ZG9FbGVtZW50KCkp
IHsKKyAgICAgICAgICAgICAgICBjdXN0b21Qc2V1ZG9FbGVtZW50U2VsZWN0b3IgPSBzZWxlY3Rv
cjsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlm
IChzZWxlY3Rvci0+cHNldWRvRWxlbWVudFR5cGUoKSA9PSBDU1NTZWxlY3Rvcjo6UHNldWRvRWxl
bWVudFNsb3R0ZWQpIHsKKyAgICAgICAgICAgICAgICBzbG90dGVkUHNldWRvRWxlbWVudFNlbGVj
dG9yID0gc2VsZWN0b3I7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9Cisj
aWYgRU5BQkxFKFZJREVPX1RSQUNLKQorICAgICAgICAgICAgaWYgKHNlbGVjdG9yLT5wc2V1ZG9F
bGVtZW50VHlwZSgpID09IENTU1NlbGVjdG9yOjpQc2V1ZG9FbGVtZW50Q3VlKSB7CisgICAgICAg
ICAgICAgICAgY3VlUHNldWRvRWxlbWVudFNlbGVjdG9yID0gc2VsZWN0b3I7CisgICAgICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CisjZW5kaWYKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzczoKICAgICAgICAgICAgIHN3aXRj
aCAoc2VsZWN0b3ItPnBzZXVkb0NsYXNzVHlwZSgpKSB7CiAgICAgICAgICAgICBjYXNlIENTU1Nl
bGVjdG9yOjpQc2V1ZG9DbGFzc0xpbms6CiAgICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQ
c2V1ZG9DbGFzc1Zpc2l0ZWQ6CkBAIC0yNTMsMjYgKzI1OSw1MyBAQCB2b2lkIFJ1bGVTZXQ6OmFk
ZFJ1bGUoU3R5bGVSdWxlKiBydWxlLCB1CiAgICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQ
c2V1ZG9DbGFzc0ZvY3VzOgogICAgICAgICAgICAgICAgIGZvY3VzU2VsZWN0b3IgPSBzZWxlY3Rv
cjsKICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6
OlBzZXVkb0NsYXNzSG9zdDoKKyAgICAgICAgICAgICAgICBtX2hvc3RQc2V1ZG9DbGFzc1J1bGVz
LmFwcGVuZChydWxlRGF0YSk7CisgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAg
ZGVmYXVsdDoKLSAgICAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KLSAgICAgICAgfQotCi0gICAgICAgIGlmIChz
ZWxlY3Rvci0+bWF0Y2goKSA9PSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3MgJiYgc2VsZWN0b3It
PnBzZXVkb0NsYXNzVHlwZSgpID09IENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0hvc3QpIHsKLSAg
ICAgICAgICAgIG1faG9zdFBzZXVkb0NsYXNzUnVsZXMuYXBwZW5kKHJ1bGVEYXRhKTsKLSAgICAg
ICAgICAgIHJldHVybjsKLSAgICAgICAgfQotICAgICAgICBpZiAoc2VsZWN0b3ItPm1hdGNoKCkg
PT0gQ1NTU2VsZWN0b3I6OlBzZXVkb0VsZW1lbnQgJiYgc2VsZWN0b3ItPnBzZXVkb0VsZW1lbnRU
eXBlKCkgPT0gQ1NTU2VsZWN0b3I6OlBzZXVkb0VsZW1lbnRTbG90dGVkKSB7Ci0gICAgICAgICAg
ICAvLyA6OnNsb3R0ZWQgcHNldWRvIGVsZW1lbnRzIHdvcmsgYWNjcm9zcyBzaGFkb3cgYm91bmRh
cnkgbWFraW5nIGZpbHRlcmluZyBkaWZmaWN1bHQuCi0gICAgICAgICAgICBydWxlRGF0YS5kaXNh
YmxlU2VsZWN0b3JGaWx0ZXJpbmcoKTsKLSAgICAgICAgICAgIG1fc2xvdHRlZFBzZXVkb0VsZW1l
bnRSdWxlcy5hcHBlbmQocnVsZURhdGEpOwotICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlVua25vd246CisgICAgICAgIGNh
c2UgQ1NTU2VsZWN0b3I6OkV4YWN0OgorICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpTZXQ6Cisg
ICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6Okxpc3Q6CisgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6
Okh5cGhlbjoKKyAgICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6Q29udGFpbjoKKyAgICAgICAgY2Fz
ZSBDU1NTZWxlY3Rvcjo6QmVnaW46CisgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OkVuZDoKKyAg
ICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UGFnZVBzZXVkb0NsYXNzOgorICAgICAgICAgICAgYnJl
YWs7CiAgICAgICAgIH0KICAgICAgICAgaWYgKHNlbGVjdG9yLT5yZWxhdGlvbigpICE9IENTU1Nl
bGVjdG9yOjpTdWJzZWxlY3RvcikKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBzZWxlY3Rv
ciA9IHNlbGVjdG9yLT50YWdIaXN0b3J5KCk7CiAgICAgfSB3aGlsZSAoc2VsZWN0b3IpOwogCisg
ICAgaWYgKHNsb3R0ZWRQc2V1ZG9FbGVtZW50U2VsZWN0b3IpIHsKKyAgICAgICAgLy8gOjpzbG90
dGVkIHBzZXVkbyBlbGVtZW50cyB3b3JrIGFjY3Jvc3Mgc2hhZG93IGJvdW5kYXJ5IG1ha2luZyBm
aWx0ZXJpbmcgZGlmZmljdWx0LgorICAgICAgICBydWxlRGF0YS5kaXNhYmxlU2VsZWN0b3JGaWx0
ZXJpbmcoKTsKKyAgICAgICAgbV9zbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzLmFwcGVuZChydWxl
RGF0YSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoY3VlUHNldWRvRWxlbWVu
dFNlbGVjdG9yKSB7CisgICAgICAgIG1fY3VlUHNldWRvUnVsZXMuYXBwZW5kKHJ1bGVEYXRhKTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChjdXN0b21Qc2V1ZG9FbGVtZW50U2Vs
ZWN0b3IpIHsKKyAgICAgICAgLy8gRklYTUU6IEN1c3RvbSBwc2V1ZG8gZWxlbWVudHMgYXJlIGhh
bmRsZWQgYnkgdGhlIHNoYWRvdyB0cmVlJ3Mgc2VsZWN0b3IgZmlsdGVyLiBJdCBkb2Vzbid0IGtu
b3cgYWJvdXQgdGhlIG1haW4gRE9NLgorICAgICAgICBydWxlRGF0YS5kaXNhYmxlU2VsZWN0b3JG
aWx0ZXJpbmcoKTsKKyAgICAgICAgYWRkVG9SdWxlU2V0KGN1c3RvbVBzZXVkb0VsZW1lbnRTZWxl
Y3Rvci0+dmFsdWUoKS5pbXBsKCksIG1fc2hhZG93UHNldWRvRWxlbWVudFJ1bGVzLCBydWxlRGF0
YSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoaWRTZWxlY3RvcikgeworICAg
ICAgICBhZGRUb1J1bGVTZXQoaWRTZWxlY3Rvci0+dmFsdWUoKS5pbXBsKCksIG1faWRSdWxlcywg
cnVsZURhdGEpOworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgaWYgKGNsYXNzU2VsZWN0
b3IpIHsKICAgICAgICAgYWRkVG9SdWxlU2V0KGNsYXNzU2VsZWN0b3ItPnZhbHVlKCkuaW1wbCgp
LCBtX2NsYXNzUnVsZXMsIHJ1bGVEYXRhKTsKICAgICAgICAgcmV0dXJuOwpJbmRleDogTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2
aXNpb24gMjA4MzcwKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMTYtMTEtMDQgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUu
Y29tPgorCisgICAgICAgIHNsb3R0ZWQoKSBwc2V1ZG8gZG9lcyBub3Qgd29yayB3aXRoIElEIHNl
bGVjdG9yCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NjA1MzgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzI4NTM0NTI5PgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9zaGFkb3ctZG9tL2Nzcy1z
Y29waW5nLXNsb3Qtd2l0aC1pZC1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L3NoYWRvdy1kb20vY3NzLXNjb3Bpbmctc2xvdC13aXRoLWlkLmh0bWw6IEFkZGVkLgorCiAyMDE2
LTExLTAzICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdS
RVNTSU9OIChyMjA3NjY5KTogQ3Jhc2ggdW5kZXIgU1ZHUmVuZGVyU3VwcG9ydDo6dXBkYXRlTWFz
a2VkQW5jZXN0b3JTaG91bGRJc29sYXRlQmxlbmRpbmcKSW5kZXg6IExheW91dFRlc3RzL2Zhc3Qv
c2hhZG93LWRvbS9jc3Mtc2NvcGluZy1zbG90LXdpdGgtaWQtZXhwZWN0ZWQuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L3NoYWRvdy1kb20vY3NzLXNjb3Bpbmctc2xvdC13aXRo
LWlkLWV4cGVjdGVkLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvZmFzdC9zaGFk
b3ctZG9tL2Nzcy1zY29waW5nLXNsb3Qtd2l0aC1pZC1leHBlY3RlZC5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8Ym9keT4K
KyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIHNpbmdsZSAxMDBweCBieSAxMDBw
eCBncmVlbiBib3ggYmVsb3cuPC9wPgorICAgICAgICA8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7
IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+PC9kaXY+CisgICAgPC9ib2R5Pgor
PC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9zaGFkb3ctZG9tL2Nzcy1zY29waW5nLXNs
b3Qtd2l0aC1pZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qvc2hhZG93LWRv
bS9jc3Mtc2NvcGluZy1zbG90LXdpdGgtaWQuaHRtbAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRU
ZXN0cy9mYXN0L3NoYWRvdy1kb20vY3NzLXNjb3Bpbmctc2xvdC13aXRoLWlkLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTAsMCArMSw3MiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFk
PgorPHN0eWxlPgorbXktaG9zdCB7CisgIGRpc3BsYXk6IGJsb2NrOworICB3aWR0aDogMTAwcHg7
CisgIGhlaWdodDogMjVweDsKKyAgYmFja2dyb3VuZDogcmVkOworfQorPC9zdHlsZT4KKzwvaGVh
ZD4KKzxib2R5PgorPHA+VGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIHNpbmdsZSAxMDBweCBieSAx
MDBweCBncmVlbiBib3ggYmVsb3cuPC9wPgorPG15LWhvc3QgaWQ9InQxIj48ZGl2IGlkPSJob3N0
LWNoaWxkIj50ZXh0PC9kaXY+PC9teS1ob3N0PgorPG15LWhvc3QgaWQ9InQyIj48ZGl2PnRleHQ8
L2Rpdj48L215LWhvc3Q+Cis8bXktaG9zdCBpZD0idDMiPjxkaXY+dGV4dDwvZGl2PjwvbXktaG9z
dD4KKzxteS1ob3N0IGlkPSJ0NCI+PGRpdj50ZXh0PC9kaXY+PC9teS1ob3N0PgorCis8c2NyaXB0
PgordmFyIGhvc3QgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjdDEnKTsKK2hvc3QuYXR0YWNo
U2hhZG93KHsgbW9kZTogJ29wZW4nIH0pLmlubmVySFRNTCA9IGAKKyAgPHN0eWxlPgorICAgICNt
eXNsb3Q6OnNsb3R0ZWQoI2hvc3QtY2hpbGQpIHsKKyAgICAgIGJhY2tncm91bmQtY29sb3I6IGdy
ZWVuOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOworICAgIH0KKyAgPC9zdHlsZT4KKyAgPHNs
b3QgaWQ9Im15c2xvdCIgc3R5bGU9ImNvbG9yOmdyZWVuIj48L3Nsb3Q+CitgOworCit2YXIgaG9z
dCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyN0MicpOworaG9zdC5hdHRhY2hTaGFkb3coeyBt
b2RlOiAnb3BlbicgfSkuaW5uZXJIVE1MID0gYAorICA8c3R5bGU+CisgICAgLm15Y2xhc3MjbXlz
bG90W3N0eWxlXTo6c2xvdHRlZCgqKSB7CisgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsg
d2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsKKyAgICB9CisgICAgI215c2xvdDo6c2xvdHRlZCgj
bm90LW15LWhvc3QtY2hpbGQpIHsKKyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOyB3aWR0
aDogMTAwJTsgaGVpZ2h0OiAxMDAlOworICAgIH0KKyAgICAjbm90bXlzbG90OjpzbG90dGVkKCop
IHsKKyAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAw
JTsKKyAgICB9CisgIDwvc3R5bGU+CisgIDxzbG90IGNsYXNzPSJteWNsYXNzIiBpZD0ibXlzbG90
IiBzdHlsZT0iY29sb3I6Z3JlZW4iPjwvc2xvdD4KK2A7CisKK3ZhciBob3N0ID0gZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcignI3QzJyk7Citob3N0LmF0dGFjaFNoYWRvdyh7IG1vZGU6ICdvcGVuJyB9
KS5pbm5lckhUTUwgPSBgCisgIDxzdHlsZT4KKyAgICA6OnNsb3R0ZWQoKikjbXlzbG90IHsKKyAg
ICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOwor
ICAgIH0KKyAgPC9zdHlsZT4KKyAgPHNsb3QgaWQ9Im15c2xvdCIgc3R5bGU9ImNvbG9yOmdyZWVu
Ij48L3Nsb3Q+CitgOworCit2YXIgaG9zdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyN0NCcp
OwordmFyIHNoYWRvdyA9IGhvc3QuYXR0YWNoU2hhZG93KHsgbW9kZTogJ29wZW4nIH0pOworc2hh
ZG93LmlubmVySFRNTCA9IGAKKyAgPHN0eWxlPgorICAgICNteXNsb3Q6OnNsb3R0ZWQoKikgewor
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7
CisgICAgfQorICA8L3N0eWxlPgorICA8c2xvdCBpZD0ibm90bXlzbG90IiBzdHlsZT0iY29sb3I6
Z3JlZW4iPjwvc2xvdD4KK2A7Cit2YXIgc2xvdCA9IHNoYWRvdy5xdWVyeVNlbGVjdG9yKCIjbm90
bXlzbG90Iik7CitzbG90Lm9mZnNldFdpZHRoOworc2xvdC5zZXRBdHRyaWJ1dGUoImlkIiwgIm15
c2xvdCIpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>293902</attachid>
            <date>2016-11-04 10:56:47 -0700</date>
            <delta_ts>2016-11-04 11:35:44 -0700</delta_ts>
            <desc>patch</desc>
            <filename>slotted-with-id-2.patch</filename>
            <type>text/plain</type>
            <size>10721</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwODM4NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDE2LTExLTA0ICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBzbG90dGVkKCkgcHNldWRvIGRv
ZXMgbm90IHdvcmsgd2l0aCBJRCBzZWxlY3RvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwNTM4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yODUz
NDUyOT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBX
aGVuIHdlIHNhdyBhbiBpZCBzZWxlY3RvciB3aGlsZSBhZGRpbiBydWxlcyB3ZSBpbW1lZGlhdGVs
eSB0aHJldyBpdCBpbnRvIHRoZSBtX2lkUnVsZXMKKyAgICAgICAgb3B0aW1pemF0aW9uIGJ1Y2tl
dCBhbmQgYmFpbGVkIG91dC4gSG93ZXZlciBzZWxlY3RvcnMgY29udGFpbmluZyA6OnNsb3R0ZWQg
bXVzdCBhbHdheXMgZW5kCisgICAgICAgIHVwIGluIG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxl
cyBsaXN0IG5vIG1hdHRlciB3aGF0IGVsc2UgaXMgdGhlcmUuCisKKyAgICAgICAgRml4IGJ5IHRy
ZWF0aW5nIGlkIGxpa2Ugb3RoZXIgc2VsZWN0b3JzIGFuZCBvbmx5IGNob29zaW5nIHRoZSBidWNr
ZXQgYWZ0ZXIgYW5hbHlzaW5nIGFsbAorICAgICAgICB0aGUgc2VsZWN0b3IgY29tcG9uZW50cy4K
KworICAgICAgICBUZXN0OiBmYXN0L3NoYWRvdy1kb20vY3NzLXNjb3Bpbmctc2xvdC13aXRoLWlk
Lmh0bWwKKworICAgICAgICAqIGNzcy9SdWxlU2V0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJ1
bGVTZXQ6OmFkZFJ1bGUpOiBBbHNvIG1hZGUgdGhpcyB1c2Ugc3dpdGNoIGluc3RlYWQgb2YgYSBz
ZXJpZXMgb2YgaWZzLgorCiAyMDE2LTExLTA0ICBKb2FubWFyaWUgRGlnZ3MgIDxqZGlnZ3NAaWdh
bGlhLmNvbT4KIAogICAgICAgICBBWDogW0FUS10gQXR0ZW1wdGluZyB0byBjbGVhciBzZWxlY3Rp
b24gb24gQVJJQSBsaXN0Ym94ZXMgcmVzdWx0cyBpbiBjcmFzaApJbmRleDogU291cmNlL1dlYkNv
cmUvY3NzL1J1bGVTZXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9SdWxl
U2V0LmNwcAkocmV2aXNpb24gMjA4MzYzKQorKysgU291cmNlL1dlYkNvcmUvY3NzL1J1bGVTZXQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMDAsMzMgKzIwMCwyMiBAQCB2b2lkIFJ1bGVTZXQ6OmFk
ZFJ1bGUoU3R5bGVSdWxlKiBydWxlLCB1CiAgICAgbV9mZWF0dXJlcy5jb2xsZWN0RmVhdHVyZXMo
cnVsZURhdGEpOwogCiAgICAgdW5zaWduZWQgY2xhc3NCdWNrZXRTaXplID0gMDsKKyAgICBjb25z
dCBDU1NTZWxlY3RvciogaWRTZWxlY3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0
b3IqIHRhZ1NlbGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBDU1NTZWxlY3RvciogY2xhc3NT
ZWxlY3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGxpbmtTZWxlY3RvciA9
IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGZvY3VzU2VsZWN0b3IgPSBudWxscHRy
OworICAgIGNvbnN0IENTU1NlbGVjdG9yKiBjdXN0b21Qc2V1ZG9FbGVtZW50U2VsZWN0b3IgPSBu
dWxscHRyOworICAgIGNvbnN0IENTU1NlbGVjdG9yKiBzbG90dGVkUHNldWRvRWxlbWVudFNlbGVj
dG9yID0gbnVsbHB0cjsKKyAgICBjb25zdCBDU1NTZWxlY3RvciogY3VlUHNldWRvRWxlbWVudFNl
bGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBDU1NTZWxlY3Rvciogc2VsZWN0b3IgPSBydWxl
RGF0YS5zZWxlY3RvcigpOwogICAgIGRvIHsKLSAgICAgICAgaWYgKHNlbGVjdG9yLT5tYXRjaCgp
ID09IENTU1NlbGVjdG9yOjpJZCkgewotICAgICAgICAgICAgYWRkVG9SdWxlU2V0KHNlbGVjdG9y
LT52YWx1ZSgpLmltcGwoKSwgbV9pZFJ1bGVzLCBydWxlRGF0YSk7Ci0gICAgICAgICAgICByZXR1
cm47Ci0gICAgICAgIH0KLQotI2lmIEVOQUJMRShWSURFT19UUkFDSykKLSAgICAgICAgaWYgKHNl
bGVjdG9yLT5tYXRjaCgpID09IENTU1NlbGVjdG9yOjpQc2V1ZG9FbGVtZW50ICYmIHNlbGVjdG9y
LT5wc2V1ZG9FbGVtZW50VHlwZSgpID09IENTU1NlbGVjdG9yOjpQc2V1ZG9FbGVtZW50Q3VlKSB7
Ci0gICAgICAgICAgICBtX2N1ZVBzZXVkb1J1bGVzLmFwcGVuZChydWxlRGF0YSk7Ci0gICAgICAg
ICAgICByZXR1cm47Ci0gICAgICAgIH0KLSNlbmRpZgotCi0gICAgICAgIGlmIChzZWxlY3Rvci0+
aXNDdXN0b21Qc2V1ZG9FbGVtZW50KCkpIHsKLSAgICAgICAgICAgIC8vIEZJWE1FOiBDdXN0b20g
cHNldWRvIGVsZW1lbnRzIGFyZSBoYW5kbGVkIGJ5IHRoZSBzaGFkb3cgdHJlZSdzIHNlbGVjdG9y
IGZpbHRlci4gSXQgZG9lc24ndCBrbm93IGFib3V0IHRoZSBtYWluIERPTS4KLSAgICAgICAgICAg
IHJ1bGVEYXRhLmRpc2FibGVTZWxlY3RvckZpbHRlcmluZygpOwotICAgICAgICAgICAgYWRkVG9S
dWxlU2V0KHNlbGVjdG9yLT52YWx1ZSgpLmltcGwoKSwgbV9zaGFkb3dQc2V1ZG9FbGVtZW50UnVs
ZXMsIHJ1bGVEYXRhKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQotCi0gICAgICAg
IGlmIChzZWxlY3Rvci0+bWF0Y2goKSA9PSBDU1NTZWxlY3Rvcjo6Q2xhc3MpIHsKLSAgICAgICAg
ICAgIEF0b21pY1N0cmluZ0ltcGwqIGNsYXNzTmFtZSA9IHNlbGVjdG9yLT52YWx1ZSgpLmltcGwo
KTsKKyAgICAgICAgc3dpdGNoIChzZWxlY3Rvci0+bWF0Y2goKSkgeworICAgICAgICBjYXNlIENT
U1NlbGVjdG9yOjpJZDoKKyAgICAgICAgICAgIGlkU2VsZWN0b3IgPSBzZWxlY3RvcjsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpDbGFzczogeworICAgICAg
ICAgICAgYXV0byogY2xhc3NOYW1lID0gc2VsZWN0b3ItPnZhbHVlKCkuaW1wbCgpOwogICAgICAg
ICAgICAgaWYgKCFjbGFzc1NlbGVjdG9yKSB7CiAgICAgICAgICAgICAgICAgY2xhc3NTZWxlY3Rv
ciA9IHNlbGVjdG9yOwogICAgICAgICAgICAgICAgIGNsYXNzQnVja2V0U2l6ZSA9IHJ1bGVzQ291
bnRGb3JOYW1lKG1fY2xhc3NSdWxlcywgY2xhc3NOYW1lKTsKQEAgLTIzNywxMiArMjI2LDMyIEBA
IHZvaWQgUnVsZVNldDo6YWRkUnVsZShTdHlsZVJ1bGUqIHJ1bGUsIHUKICAgICAgICAgICAgICAg
ICAgICAgY2xhc3NCdWNrZXRTaXplID0gbmV3Q2xhc3NCdWNrZXRTaXplOwogICAgICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0KLSAg
ICAgICAgaWYgKHNlbGVjdG9yLT5tYXRjaCgpID09IENTU1NlbGVjdG9yOjpUYWcgJiYgc2VsZWN0
b3ItPnRhZ1FOYW1lKCkubG9jYWxOYW1lKCkgIT0gc3RhckF0b20pCi0gICAgICAgICAgICB0YWdT
ZWxlY3RvciA9IHNlbGVjdG9yOwotCi0gICAgICAgIGlmIChTZWxlY3RvckNoZWNrZXI6OmlzQ29t
bW9uUHNldWRvQ2xhc3NTZWxlY3RvcihzZWxlY3RvcikpIHsKKyAgICAgICAgY2FzZSBDU1NTZWxl
Y3Rvcjo6VGFnOgorICAgICAgICAgICAgaWYgKHNlbGVjdG9yLT50YWdRTmFtZSgpLmxvY2FsTmFt
ZSgpICE9IHN0YXJBdG9tKQorICAgICAgICAgICAgICAgIHRhZ1NlbGVjdG9yID0gc2VsZWN0b3I7
CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvRWxl
bWVudDoKKyAgICAgICAgICAgIHN3aXRjaCAoc2VsZWN0b3ItPnBzZXVkb0VsZW1lbnRUeXBlKCkp
IHsKKyAgICAgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0VsZW1lbnRVc2VyQWdlbnRD
dXN0b206CisgICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9FbGVtZW50V2ViS2l0
Q3VzdG9tOgorICAgICAgICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvRWxlbWVudFdlYktp
dEN1c3RvbUxlZ2FjeVByZWZpeGVkOgorICAgICAgICAgICAgICAgIGN1c3RvbVBzZXVkb0VsZW1l
bnRTZWxlY3RvciA9IHNlbGVjdG9yOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAg
ICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvRWxlbWVudFNsb3R0ZWQ6CisgICAgICAgICAgICAg
ICAgc2xvdHRlZFBzZXVkb0VsZW1lbnRTZWxlY3RvciA9IHNlbGVjdG9yOworICAgICAgICAgICAg
ICAgIGJyZWFrOworI2lmIEVOQUJMRShWSURFT19UUkFDSykKKyAgICAgICAgICAgIGNhc2UgQ1NT
U2VsZWN0b3I6OlBzZXVkb0VsZW1lbnRDdWU6CisgICAgICAgICAgICAgICAgY3VlUHNldWRvRWxl
bWVudFNlbGVjdG9yID0gc2VsZWN0b3I7CisgICAgICAgICAgICAgICAgYnJlYWs7CisjZW5kaWYK
KyAgICAgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRv
Q2xhc3M6CiAgICAgICAgICAgICBzd2l0Y2ggKHNlbGVjdG9yLT5wc2V1ZG9DbGFzc1R5cGUoKSkg
ewogICAgICAgICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NMaW5rOgogICAgICAg
ICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NWaXNpdGVkOgpAQCAtMjUzLDI2ICsy
NjIsNTMgQEAgdm9pZCBSdWxlU2V0OjphZGRSdWxlKFN0eWxlUnVsZSogcnVsZSwgdQogICAgICAg
ICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1czoKICAgICAgICAgICAgICAg
ICBmb2N1c1NlbGVjdG9yID0gc2VsZWN0b3I7CiAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0hvc3Q6CisgICAgICAgICAgICAg
ICAgbV9ob3N0UHNldWRvQ2xhc3NSdWxlcy5hcHBlbmQocnVsZURhdGEpOworICAgICAgICAgICAg
ICAgIHJldHVybjsKICAgICAgICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9Ci0g
ICAgICAgIH0KLQotICAgICAgICBpZiAoc2VsZWN0b3ItPm1hdGNoKCkgPT0gQ1NTU2VsZWN0b3I6
OlBzZXVkb0NsYXNzICYmIHNlbGVjdG9yLT5wc2V1ZG9DbGFzc1R5cGUoKSA9PSBDU1NTZWxlY3Rv
cjo6UHNldWRvQ2xhc3NIb3N0KSB7Ci0gICAgICAgICAgICBtX2hvc3RQc2V1ZG9DbGFzc1J1bGVz
LmFwcGVuZChydWxlRGF0YSk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAg
ICAgaWYgKHNlbGVjdG9yLT5tYXRjaCgpID09IENTU1NlbGVjdG9yOjpQc2V1ZG9FbGVtZW50ICYm
IHNlbGVjdG9yLT5wc2V1ZG9FbGVtZW50VHlwZSgpID09IENTU1NlbGVjdG9yOjpQc2V1ZG9FbGVt
ZW50U2xvdHRlZCkgewotICAgICAgICAgICAgLy8gOjpzbG90dGVkIHBzZXVkbyBlbGVtZW50cyB3
b3JrIGFjY3Jvc3Mgc2hhZG93IGJvdW5kYXJ5IG1ha2luZyBmaWx0ZXJpbmcgZGlmZmljdWx0Lgot
ICAgICAgICAgICAgcnVsZURhdGEuZGlzYWJsZVNlbGVjdG9yRmlsdGVyaW5nKCk7Ci0gICAgICAg
ICAgICBtX3Nsb3R0ZWRQc2V1ZG9FbGVtZW50UnVsZXMuYXBwZW5kKHJ1bGVEYXRhKTsKLSAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIENTU1NlbGVj
dG9yOjpVbmtub3duOgorICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpFeGFjdDoKKyAgICAgICAg
Y2FzZSBDU1NTZWxlY3Rvcjo6U2V0OgorICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpMaXN0Ogor
ICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpIeXBoZW46CisgICAgICAgIGNhc2UgQ1NTU2VsZWN0
b3I6OkNvbnRhaW46CisgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OkJlZ2luOgorICAgICAgICBj
YXNlIENTU1NlbGVjdG9yOjpFbmQ6CisgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBhZ2VQc2V1
ZG9DbGFzczoKKyAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGlmIChzZWxl
Y3Rvci0+cmVsYXRpb24oKSAhPSBDU1NTZWxlY3Rvcjo6U3Vic2VsZWN0b3IpCiAgICAgICAgICAg
ICBicmVhazsKICAgICAgICAgc2VsZWN0b3IgPSBzZWxlY3Rvci0+dGFnSGlzdG9yeSgpOwogICAg
IH0gd2hpbGUgKHNlbGVjdG9yKTsKIAorICAgIGlmIChjdWVQc2V1ZG9FbGVtZW50U2VsZWN0b3Ip
IHsKKyAgICAgICAgbV9jdWVQc2V1ZG9SdWxlcy5hcHBlbmQocnVsZURhdGEpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgaWYgKHNsb3R0ZWRQc2V1ZG9FbGVtZW50U2VsZWN0b3IpIHsK
KyAgICAgICAgLy8gOjpzbG90dGVkIHBzZXVkbyBlbGVtZW50cyB3b3JrIGFjY3Jvc3Mgc2hhZG93
IGJvdW5kYXJ5IG1ha2luZyBmaWx0ZXJpbmcgZGlmZmljdWx0LgorICAgICAgICBydWxlRGF0YS5k
aXNhYmxlU2VsZWN0b3JGaWx0ZXJpbmcoKTsKKyAgICAgICAgbV9zbG90dGVkUHNldWRvRWxlbWVu
dFJ1bGVzLmFwcGVuZChydWxlRGF0YSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBp
ZiAoY3VzdG9tUHNldWRvRWxlbWVudFNlbGVjdG9yKSB7CisgICAgICAgIC8vIEZJWE1FOiBDdXN0
b20gcHNldWRvIGVsZW1lbnRzIGFyZSBoYW5kbGVkIGJ5IHRoZSBzaGFkb3cgdHJlZSdzIHNlbGVj
dG9yIGZpbHRlci4gSXQgZG9lc24ndCBrbm93IGFib3V0IHRoZSBtYWluIERPTS4KKyAgICAgICAg
cnVsZURhdGEuZGlzYWJsZVNlbGVjdG9yRmlsdGVyaW5nKCk7CisgICAgICAgIGFkZFRvUnVsZVNl
dChjdXN0b21Qc2V1ZG9FbGVtZW50U2VsZWN0b3ItPnZhbHVlKCkuaW1wbCgpLCBtX3NoYWRvd1Bz
ZXVkb0VsZW1lbnRSdWxlcywgcnVsZURhdGEpOworICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgaWYgKGlkU2VsZWN0b3IpIHsKKyAgICAgICAgYWRkVG9SdWxlU2V0KGlkU2VsZWN0b3ItPnZh
bHVlKCkuaW1wbCgpLCBtX2lkUnVsZXMsIHJ1bGVEYXRhKTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKwogICAgIGlmIChjbGFzc1NlbGVjdG9yKSB7CiAgICAgICAgIGFkZFRvUnVsZVNldChjbGFz
c1NlbGVjdG9yLT52YWx1ZSgpLmltcGwoKSwgbV9jbGFzc1J1bGVzLCBydWxlRGF0YSk7CiAgICAg
ICAgIHJldHVybjsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwODM3MCkKKysrIExheW91dFRlc3RzL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE2LTExLTA0ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBzbG90dGVkKCkgcHNldWRv
IGRvZXMgbm90IHdvcmsgd2l0aCBJRCBzZWxlY3RvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwNTM4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8y
ODUzNDUyOT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIGZhc3Qvc2hhZG93LWRvbS9jc3Mtc2NvcGluZy1zbG90LXdpdGgtaWQtZXhwZWN0ZWQuaHRt
bDogQWRkZWQuCisgICAgICAgICogZmFzdC9zaGFkb3ctZG9tL2Nzcy1zY29waW5nLXNsb3Qtd2l0
aC1pZC5odG1sOiBBZGRlZC4KKwogMjAxNi0xMS0wMyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBh
cHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjIwNzY2OSk6IENyYXNoIHVuZGVyIFNW
R1JlbmRlclN1cHBvcnQ6OnVwZGF0ZU1hc2tlZEFuY2VzdG9yU2hvdWxkSXNvbGF0ZUJsZW5kaW5n
CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L3NoYWRvdy1kb20vY3NzLXNjb3Bpbmctc2xvdC13aXRo
LWlkLWV4cGVjdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9zaGFkb3ct
ZG9tL2Nzcy1zY29waW5nLXNsb3Qtd2l0aC1pZC1leHBlY3RlZC5odG1sCShub25leGlzdGVudCkK
KysrIExheW91dFRlc3RzL2Zhc3Qvc2hhZG93LWRvbS9jc3Mtc2NvcGluZy1zbG90LXdpdGgtaWQt
ZXhwZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDcgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+CisgICAgPGJvZHk+CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHlvdSBz
ZWUgYSBzaW5nbGUgMTAwcHggYnkgMTAwcHggZ3JlZW4gYm94IGJlbG93LjwvcD4KKyAgICAgICAg
PGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVl
bjsiPjwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3Qv
c2hhZG93LWRvbS9jc3Mtc2NvcGluZy1zbG90LXdpdGgtaWQuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L3NoYWRvdy1kb20vY3NzLXNjb3Bpbmctc2xvdC13aXRoLWlkLmh0bWwJ
KG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvZmFzdC9zaGFkb3ctZG9tL2Nzcy1zY29waW5n
LXNsb3Qtd2l0aC1pZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNzIgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KK215LWhvc3QgeworICBkaXNwbGF5
OiBibG9jazsKKyAgd2lkdGg6IDEwMHB4OworICBoZWlnaHQ6IDI1cHg7CisgIGJhY2tncm91bmQ6
IHJlZDsKK30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlRlc3QgcGFzc2VzIGlmIHlv
dSBzZWUgYSBzaW5nbGUgMTAwcHggYnkgMTAwcHggZ3JlZW4gYm94IGJlbG93LjwvcD4KKzxteS1o
b3N0IGlkPSJ0MSI+PGRpdiBpZD0iaG9zdC1jaGlsZCI+dGV4dDwvZGl2PjwvbXktaG9zdD4KKzxt
eS1ob3N0IGlkPSJ0MiI+PGRpdj50ZXh0PC9kaXY+PC9teS1ob3N0PgorPG15LWhvc3QgaWQ9InQz
Ij48ZGl2PnRleHQ8L2Rpdj48L215LWhvc3Q+Cis8bXktaG9zdCBpZD0idDQiPjxkaXY+dGV4dDwv
ZGl2PjwvbXktaG9zdD4KKworPHNjcmlwdD4KK3ZhciBob3N0ID0gZG9jdW1lbnQucXVlcnlTZWxl
Y3RvcignI3QxJyk7Citob3N0LmF0dGFjaFNoYWRvdyh7IG1vZGU6ICdvcGVuJyB9KS5pbm5lckhU
TUwgPSBgCisgIDxzdHlsZT4KKyAgICAjbXlzbG90OjpzbG90dGVkKCNob3N0LWNoaWxkKSB7Cisg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsK
KyAgICB9CisgIDwvc3R5bGU+CisgIDxzbG90IGlkPSJteXNsb3QiIHN0eWxlPSJjb2xvcjpncmVl
biI+PC9zbG90PgorYDsKKwordmFyIGhvc3QgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjdDIn
KTsKK2hvc3QuYXR0YWNoU2hhZG93KHsgbW9kZTogJ29wZW4nIH0pLmlubmVySFRNTCA9IGAKKyAg
PHN0eWxlPgorICAgIC5teWNsYXNzI215c2xvdFtzdHlsZV06OnNsb3R0ZWQoKikgeworICAgICAg
YmFja2dyb3VuZC1jb2xvcjogZ3JlZW47IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7CisgICAg
fQorICAgICNteXNsb3Q6OnNsb3R0ZWQoI25vdC1teS1ob3N0LWNoaWxkKSB7CisgICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHJlZDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsKKyAgICB9Cisg
ICAgI25vdG15c2xvdDo6c2xvdHRlZCgqKSB7CisgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7
IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7CisgICAgfQorICA8L3N0eWxlPgorICA8c2xvdCBj
bGFzcz0ibXljbGFzcyIgaWQ9Im15c2xvdCIgc3R5bGU9ImNvbG9yOmdyZWVuIj48L3Nsb3Q+Citg
OworCit2YXIgaG9zdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyN0MycpOworaG9zdC5hdHRh
Y2hTaGFkb3coeyBtb2RlOiAnb3BlbicgfSkuaW5uZXJIVE1MID0gYAorICA8c3R5bGU+CisgICAg
OjpzbG90dGVkKCopI215c2xvdCB7CisgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsgd2lk
dGg6IDEwMCU7IGhlaWdodDogMTAwJTsKKyAgICB9CisgIDwvc3R5bGU+CisgIDxzbG90IGlkPSJt
eXNsb3QiIHN0eWxlPSJjb2xvcjpncmVlbiI+PC9zbG90PgorYDsKKwordmFyIGhvc3QgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCcjdDQnKTsKK3ZhciBzaGFkb3cgPSBob3N0LmF0dGFjaFNoYWRv
dyh7IG1vZGU6ICdvcGVuJyB9KTsKK3NoYWRvdy5pbm5lckhUTUwgPSBgCisgIDxzdHlsZT4KKyAg
ICAjbXlzbG90OjpzbG90dGVkKCopIHsKKyAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyB3
aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOworICAgIH0KKyAgPC9zdHlsZT4KKyAgPHNsb3QgaWQ9
Im5vdG15c2xvdCIgc3R5bGU9ImNvbG9yOmdyZWVuIj48L3Nsb3Q+CitgOwordmFyIHNsb3QgPSBz
aGFkb3cucXVlcnlTZWxlY3RvcigiI25vdG15c2xvdCIpOworc2xvdC5vZmZzZXRXaWR0aDsKK3Ns
b3Quc2V0QXR0cmlidXRlKCJpZCIsICJteXNsb3QiKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>