<?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>51379</bug_id>
          
          <creation_ts>2010-12-20 22:18:56 -0800</creation_ts>
          <short_desc>Convert &lt;keygen&gt; option elements to a shadow DOM</short_desc>
          <delta_ts>2011-02-09 11:13:24 -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>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>52557</dependson>
          <blocked>48698</blocked>
    
    <blocked>53030</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Dominic Cooney">dominicc</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>loislo</cc>
    
    <cc>morrita</cc>
    
    <cc>mrobinson</cc>
    
    <cc>ossy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>324785</commentid>
    <comment_count>0</comment_count>
    <who name="Dominic Cooney">dominicc</who>
    <bug_when>2010-12-20 22:18:56 -0800</bug_when>
    <thetext>&lt;keygen&gt; needs a shadow DOM to hold its &lt;option&gt; elements.  Right now they&apos;re just added to the DOM directly, which causes us to skip the html5 parsing tests on all platforms other than mac (since the current expected DOM is the one which appears for Mac.)

This came up in the review for &lt;https://bugs.webkit.org/show_bug.cgi?id=44907&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>324789</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-12-20 22:21:29 -0800</bug_when>
    <thetext>I&apos;m certain we already have a old bug on this.  :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>324790</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-12-20 22:22:18 -0800</bug_when>
    <thetext>Hmm.. I guess it was only ever discussed in https://bugs.webkit.org/show_bug.cgi?id=42776.  Maybe a bug about this specific issue was never filed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>324868</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-12-20 23:37:34 -0800</bug_when>
    <thetext>Thanks dominicc.  I&apos;ve been hoping someone would fix this bug.  :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>333596</commentid>
    <comment_count>4</comment_count>
      <attachid>78788</attachid>
    <who name="Dominic Cooney">dominicc</who>
    <bug_when>2011-01-13 01:58:35 -0800</bug_when>
    <thetext>Created attachment 78788
WIP--adds IDL for keygen element</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344585</commentid>
    <comment_count>5</comment_count>
      <attachid>81042</attachid>
    <who name="Dominic Cooney">dominicc</who>
    <bug_when>2011-02-03 01:33:37 -0800</bug_when>
    <thetext>Created attachment 81042
WIP—moves select into shadow DOM

WIP--moves select into shadow DOM but does not forward form protocol yet</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345402</commentid>
    <comment_count>6</comment_count>
      <attachid>81197</attachid>
    <who name="Dominic Cooney">dominicc</who>
    <bug_when>2011-02-04 01:15:29 -0800</bug_when>
    <thetext>Created attachment 81197
Patch.

Chromium expectations need to be updated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345487</commentid>
    <comment_count>7</comment_count>
      <attachid>81197</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-02-04 07:45:55 -0800</bug_when>
    <thetext>Comment on attachment 81197
Patch.

This looks great!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345551</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-02-04 09:49:33 -0800</bug_when>
    <thetext>So exciting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345741</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-02-04 13:27:29 -0800</bug_when>
    <thetext>We shoudl also now remove the parser test from the windows/gtk/qt skipped lists. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346252</commentid>
    <comment_count>10</comment_count>
      <attachid>81395</attachid>
    <who name="Dominic Cooney">dominicc</who>
    <bug_when>2011-02-06 01:36:02 -0800</bug_when>
    <thetext>Created attachment 81395
Unskips html5lib/runner.html for Qt and GTK</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346257</commentid>
    <comment_count>11</comment_count>
      <attachid>81395</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-02-06 02:17:12 -0800</bug_when>
    <thetext>Comment on attachment 81395
Unskips html5lib/runner.html for Qt and GTK

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346259</commentid>
    <comment_count>12</comment_count>
      <attachid>81395</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-02-06 02:38:42 -0800</bug_when>
    <thetext>Comment on attachment 81395
Unskips html5lib/runner.html for Qt and GTK

Rejecting attachment 81395 from commit-queue.

Failed to run &quot;[&apos;./Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=cr-jail-3&apos;, &apos;land-a...&quot; exit_code: 1

Last 500 characters of output:
ommit-queue/Tools/Scripts/webkitpy/tool/commands/stepsequence.py&quot;, line 64, in _run
    step(tool, options).run(state)
  File &quot;/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/tool/steps/validatereviewer.py&quot;, line 57, in run
    if self._has_valid_reviewer(changelog_entry):
  File &quot;/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/tool/steps/validatereviewer.py&quot;, line 42, in _has_valid_reviewer
    if changelog_entry.reviewer():
AttributeError: &apos;NoneType&apos; object has no attribute &apos;reviewer&apos;

Full output: http://queues.webkit.org/results/7700543</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346331</commentid>
    <comment_count>13</comment_count>
      <attachid>81395</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-02-06 10:15:21 -0800</bug_when>
    <thetext>Comment on attachment 81395
Unskips html5lib/runner.html for Qt and GTK

I&apos;m not sure why the cq did that.  Lets try again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346345</commentid>
    <comment_count>14</comment_count>
      <attachid>81395</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-02-06 11:09:35 -0800</bug_when>
    <thetext>Comment on attachment 81395
Unskips html5lib/runner.html for Qt and GTK

Rejecting attachment 81395 from commit-queue.

Failed to run &quot;[&apos;./Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=cr-jail-4&apos;, &apos;land-a...&quot; exit_code: 1

Last 500 characters of output:
ommit-queue/Tools/Scripts/webkitpy/tool/commands/stepsequence.py&quot;, line 64, in _run
    step(tool, options).run(state)
  File &quot;/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/tool/steps/validatereviewer.py&quot;, line 57, in run
    if self._has_valid_reviewer(changelog_entry):
  File &quot;/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/tool/steps/validatereviewer.py&quot;, line 42, in _has_valid_reviewer
    if changelog_entry.reviewer():
AttributeError: &apos;NoneType&apos; object has no attribute &apos;reviewer&apos;

Full output: http://queues.webkit.org/results/7707156</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346346</commentid>
    <comment_count>15</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-02-06 11:17:51 -0800</bug_when>
    <thetext>Ah, I see.  That would suggest you&apos;re missing a ChangeLog.  But I thought we had a better message for that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346395</commentid>
    <comment_count>16</comment_count>
    <who name="Dominic Cooney">dominicc</who>
    <bug_when>2011-02-06 15:51:34 -0800</bug_when>
    <thetext>My fault. I went from work to home and snarfed the patch with webkit-patch apply. It must have helpfully filled in dglazkov since the previous patch was r+.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346417</commentid>
    <comment_count>17</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2011-02-06 17:40:37 -0800</bug_when>
    <thetext>Committed r77781: &lt;http://trac.webkit.org/changeset/77781&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>348158</commentid>
    <comment_count>18</comment_count>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2011-02-09 04:43:17 -0800</bug_when>
    <thetext>new expectations were added for chromium

http://trac.webkit.org/changeset/78046
http://trac.webkit.org/changeset/78037</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>348162</commentid>
    <comment_count>19</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-02-09 05:00:31 -0800</bug_when>
    <thetext>Chromium shouldn&apos;t need separate expectations anymore.  Do you know why it still has its own -expected.txt file?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>348164</commentid>
    <comment_count>20</comment_count>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2011-02-09 05:09:09 -0800</bug_when>
    <thetext>(In reply to comment #19)
&gt; Chromium shouldn&apos;t need separate expectations anymore.  Do you know why it still has its own -expected.txt file?

There is a difference in SyntaxError text for html5lib/runner.html.

loislo@loislo0-g:/var/sdb1/loislo/chromium/src/third_party/WebKit$ diff LayoutTests/html5lib/runner-expected.txt LayoutTests/platform/chromium/html5lib/runner-expected.txt 
1,2c1,2
&lt; CONSOLE MESSAGE: line 1: SyntaxError: Parse error
&lt; CONSOLE MESSAGE: line 1: SyntaxError: Parse error
---
&gt; CONSOLE MESSAGE: line 1: Uncaught SyntaxError: Unexpected token &lt;
&gt; CONSOLE MESSAGE: line 1: Uncaught SyntaxError: Unexpected token &lt;
6,9c6,9
&lt; CONSOLE MESSAGE: line 1: SyntaxError: Parse error
&lt; CONSOLE MESSAGE: line 1: SyntaxError: Parse error
&lt; CONSOLE MESSAGE: line 1: SyntaxError: Parse error
&lt; CONSOLE MESSAGE: line 1: SyntaxError: Parse error
---
&gt; CONSOLE MESSAGE: line 1: Uncaught SyntaxError: Unexpected token &lt;
&gt; CONSOLE MESSAGE: line 1: Uncaught SyntaxError: Unexpected token &lt;
&gt; CONSOLE MESSAGE: line 1: Uncaught SyntaxError: Unexpected token &lt;
&gt; CONSOLE MESSAGE: line 1: Uncaught SyntaxError: Unexpected token &lt;


and 2 pixel difference of vertical size for fast/invalid/residual-style-expected.txt.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>348396</commentid>
    <comment_count>21</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-02-09 11:13:24 -0800</bug_when>
    <thetext>(In reply to comment #19)
&gt; Chromium shouldn&apos;t need separate expectations anymore.  Do you know why it still has its own -expected.txt file?

It&apos;s because V8&apos;s error messages don&apos;t match those of JSC.  We&apos;ve tried getting the V8 team to change, but they refuse.  I&apos;d really like to know how much engineering time that costs us.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>78788</attachid>
            <date>2011-01-13 01:58:35 -0800</date>
            <delta_ts>2011-02-03 01:33:33 -0800</delta_ts>
            <desc>WIP--adds IDL for keygen element</desc>
            <filename>bug-51379-20110113185832.patch</filename>
            <type>text/plain</type>
            <size>7989</size>
            <attacher name="Dominic Cooney">dominicc</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaHRtbC9rZXlnZW4uaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvaHRtbC9rZXlnZW4uaHRtbAppbmRleCA1NTIwYjhiZWY1ZTlkMTAzOTAzMThkOTdj
YWIzY2NkYzhhZWM0NWY5Li4yMjA5OWZhYjA0NTZhNTE5YzBmM2NhMTk3OGQ2MDZkMzUxZmVmNWJk
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2h0bWwva2V5Z2VuLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9odG1sL2tleWdlbi5odG1sCkBAIC0xLDUgKzEsNCBAQAogPGh0bWw+CiA8
IS0tPHJkYXI6Ly9wcm9ibGVtLzUwNDE2NjA+IFJFR1JFU1NJT046IDxrZXlnZW4+IGVsZW1lbnQg
YnJva2VuLCBwcmV2ZW50cyB1c2VycyBmcm9tIHNpZ25pbmcgdXAgZm9yIHRoYXd0ZSBlbWFpbCBj
ZXJ0cyAtLT4KLTxrZXlnZW4gaWQ9ImtleWdlbiIgbmFtZT0ic3BrYWMiIGNoYWxsYW5nZT0iOXVY
djhCeHRWRUtBZWQzNCI+ICAgICAgICAgICAgCis8a2V5Z2VuIGlkPSJrZXlnZW4iIG5hbWU9InNw
a2FjIiBjaGFsbGVuZ2U9Ijl1WHY4Qnh0VkVLQWVkMzQiPgogPC9odG1sPgotCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5
cGkKaW5kZXggODNlNTVkNDZkN2M5NjkzNzNhNjFhYjg3NWU5MThlMDQ4MTc1ZjY5MC4uNWRhOTUz
MDkyMzU5YWRiMmIzNGM4NWFhNjYyYmNjODk4YTJjMzhjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAt
MTU5LDYgKzE1OSw3IEBACiAgICAgICAgICAgICAnaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbCcs
CiAgICAgICAgICAgICAnaHRtbC9IVE1MSW5wdXRFbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAn
aHRtbC9IVE1MSXNJbmRleEVsZW1lbnQuaWRsJywKKyAgICAgICAgICAgICdodG1sL0hUTUxLZXln
ZW5FbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9IVE1MTElFbGVtZW50LmlkbCcsCiAg
ICAgICAgICAgICAnaHRtbC9IVE1MTGFiZWxFbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRt
bC9IVE1MTGVnZW5kRWxlbWVudC5pZGwnLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvZ29iamVjdC9XZWJLaXRIVE1MRWxlbWVudFdyYXBwZXJGYWN0b3J5LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2dvYmplY3QvV2ViS2l0SFRNTEVsZW1lbnRXcmFwcGVyRmFjdG9y
eS5jcHAKaW5kZXggZGE0MjBhZWZjY2E0MmVlZWQ1ZDlhYzc3ZTUzMGY0MjVhOGUyYWVjYi4uYzIw
ZGQyMGNlNTY2YTA5YTU3ZGQzN2MxNGI0MTRlZWQ4NjFlMTg0YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvZ29iamVjdC9XZWJLaXRIVE1MRWxlbWVudFdyYXBwZXJGYWN0b3J5
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nb2JqZWN0L1dlYktpdEhUTUxFbGVt
ZW50V3JhcHBlckZhY3RvcnkuY3BwCkBAIC0zMjIsNiArMzIyLDExIEBAIHN0YXRpYyBncG9pbnRl
ciBjcmVhdGVJc0luZGV4V3JhcHBlcihQYXNzUmVmUHRyPEhUTUxFbGVtZW50PiBlbGVtZW50KQog
ICAgIHJldHVybiB3cmFwSFRNTElzSW5kZXhFbGVtZW50KHN0YXRpY19jYXN0PEhUTUxJc0luZGV4
RWxlbWVudCo+KGVsZW1lbnQuZ2V0KCkpKTsKIH0KIAorc3RhdGljIGdwb2ludGVyIGNyZWF0ZUtl
eWdlbldyYXBwZXIoUGFzc1JlZlB0cjxIVE1MRWxlbWVudD4gZWxlbWVudCkKK3sKKyAgICByZXR1
cm4gd3JhcEhUTUxLZXlnZW5FbGVtZW50KHN0YXRpY19jYXN0PEhUTUxLZXlnZW5FbGVtZW50Kj4o
ZWxlbWVudC5nZXQoKSkpOworfQorCiBzdGF0aWMgZ3BvaW50ZXIgY3JlYXRlTGFiZWxXcmFwcGVy
KFBhc3NSZWZQdHI8SFRNTEVsZW1lbnQ+IGVsZW1lbnQpCiB7CiAgICAgcmV0dXJuIHdyYXBIVE1M
TGFiZWxFbGVtZW50KHN0YXRpY19jYXN0PEhUTUxMYWJlbEVsZW1lbnQqPihlbGVtZW50LmdldCgp
KSk7CkBAIC01MjMsNyArNTI4LDcgQEAgZ3BvaW50ZXIgY3JlYXRlSFRNTEVsZW1lbnRXcmFwcGVy
KFBhc3NSZWZQdHI8V2ViQ29yZTo6SFRNTEVsZW1lbnQ+IGVsZW1lbnQpCiAgICAgICAgbWFwLnNl
dChoNlRhZy5sb2NhbE5hbWUoKS5pbXBsKCksIGNyZWF0ZUhlYWRpbmdXcmFwcGVyKTsKICAgICAg
ICBtYXAuc2V0KGltYWdlVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgY3JlYXRlSW1hZ2VXcmFwcGVy
KTsKICAgICAgICBtYXAuc2V0KGluc1RhZy5sb2NhbE5hbWUoKS5pbXBsKCksIGNyZWF0ZU1vZFdy
YXBwZXIpOwotICAgICAgIG1hcC5zZXQoa2V5Z2VuVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgY3Jl
YXRlU2VsZWN0V3JhcHBlcik7CisgICAgICAgbWFwLnNldChrZXlnZW5UYWcubG9jYWxOYW1lKCku
aW1wbCgpLCBjcmVhdGVLZXlnZW5XcmFwcGVyKTsKICAgICAgICBtYXAuc2V0KGxpc3RpbmdUYWcu
bG9jYWxOYW1lKCkuaW1wbCgpLCBjcmVhdGVQcmVXcmFwcGVyKTsKICAgICAgICBtYXAuc2V0KHRm
b290VGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgY3JlYXRlVGFibGVTZWN0aW9uV3JhcHBlcik7CiAg
ICAgICAgbWFwLnNldCh0aFRhZy5sb2NhbE5hbWUoKS5pbXBsKCksIGNyZWF0ZVRhYmxlQ2VsbFdy
YXBwZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvb2JqYy9ET00ubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTS5tbQppbmRleCA0NGJkNjUzYzZmNGVk
ZGZlZTBjZDUxYTZkNDQyYTY1MjlhMDA3NTMwLi4xZTUyN2NhNzEwYjU3MzcwY2VmZjQyMWYyYzdm
OGU1Y2E2N2JkMmNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RP
TS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTS5tbQpAQCAtMTMxLDcg
KzEzMSw3IEBAIHN0YXRpYyB2b2lkIGNyZWF0ZUVsZW1lbnRDbGFzc01hcCgpCiAgICAgYWRkRWxl
bWVudENsYXNzKEhUTUxOYW1lczo6cHJlVGFnLCBbRE9NSFRNTFByZUVsZW1lbnQgY2xhc3NdKTsK
ICAgICBhZGRFbGVtZW50Q2xhc3MoSFRNTE5hbWVzOjpxVGFnLCBbRE9NSFRNTFF1b3RlRWxlbWVu
dCBjbGFzc10pOwogICAgIGFkZEVsZW1lbnRDbGFzcyhIVE1MTmFtZXM6OnNjcmlwdFRhZywgW0RP
TUhUTUxTY3JpcHRFbGVtZW50IGNsYXNzXSk7Ci0gICAgYWRkRWxlbWVudENsYXNzKEhUTUxOYW1l
czo6a2V5Z2VuVGFnLCBbRE9NSFRNTFNlbGVjdEVsZW1lbnQgY2xhc3NdKTsKKyAgICBhZGRFbGVt
ZW50Q2xhc3MoSFRNTE5hbWVzOjprZXlnZW5UYWcsIFtET01IVE1MS2V5Z2VuRWxlbWVudCBjbGFz
c10pOwogICAgIGFkZEVsZW1lbnRDbGFzcyhIVE1MTmFtZXM6OnNlbGVjdFRhZywgW0RPTUhUTUxT
ZWxlY3RFbGVtZW50IGNsYXNzXSk7CiAgICAgYWRkRWxlbWVudENsYXNzKEhUTUxOYW1lczo6c3R5
bGVUYWcsIFtET01IVE1MU3R5bGVFbGVtZW50IGNsYXNzXSk7CiAgICAgYWRkRWxlbWVudENsYXNz
KEhUTUxOYW1lczo6dGFibGVUYWcsIFtET01IVE1MVGFibGVFbGVtZW50IGNsYXNzXSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vU2VsZWN0RWxlbWVudC5jcHAKaW5kZXggNjYxYmE4ODZjNGVjNTk4N2Q5MDU4ZjIw
YzYyMmRkNWM4YTM0ODEzMS4uYWZmYzZiMTMzZDJmMjJmNDgxNTZkYjZkODVjMTYzMjI1NzU3MDNm
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NlbGVjdEVsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9TZWxlY3RFbGVtZW50LmNwcApAQCAtMzEsNyArMzEsNiBAQAog
I2luY2x1ZGUgIkZvcm1EYXRhTGlzdC5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAi
SFRNTEZvcm1FbGVtZW50LmgiCi0jaW5jbHVkZSAiSFRNTEtleWdlbkVsZW1lbnQuaCIKICNpbmNs
dWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJIVE1MU2VsZWN0RWxlbWVudC5oIgogI2luY2x1
ZGUgIktleWJvYXJkRXZlbnQuaCIKQEAgLTEwMjcsOCArMTAyNiw2IEBAIFNlbGVjdEVsZW1lbnQq
IHRvU2VsZWN0RWxlbWVudChFbGVtZW50KiBlbGVtZW50KQogICAgIGlmIChlbGVtZW50LT5pc0hU
TUxFbGVtZW50KCkpIHsKICAgICAgICAgaWYgKGVsZW1lbnQtPmhhc1RhZ05hbWUoSFRNTE5hbWVz
OjpzZWxlY3RUYWcpKQogICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PEhUTUxTZWxlY3RF
bGVtZW50Kj4oZWxlbWVudCk7Ci0gICAgICAgIGlmIChlbGVtZW50LT5oYXNUYWdOYW1lKEhUTUxO
YW1lczo6a2V5Z2VuVGFnKSkKLSAgICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxIVE1MS2V5
Z2VuRWxlbWVudCo+KGVsZW1lbnQpOwogICAgIH0KIAogI2lmIEVOQUJMRShXTUwpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmgKaW5kZXggODBmOTRiNTVmNmIwYzQ1MjY5ODY4
M2VlNGNhZGI5ZGU2NzFlNTdhZS4uZDMxNDYwZTcyNWZiMjVhMzU5YzA4NmFmNTQ2MGQ0MzNiNjJk
NWViYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEtleWdlbkVsZW1lbnQuaApAQCAtMzIsMTQg
KzMyLDE0IEBAIGNsYXNzIEhUTUxLZXlnZW5FbGVtZW50IDogcHVibGljIEhUTUxTZWxlY3RFbGVt
ZW50IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxIVE1MS2V5Z2VuRWxlbWVudD4g
Y3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCosIEhUTUxGb3JtRWxlbWVudCop
OwogCisgICAgdmlydHVhbCBib29sIHdpbGxWYWxpZGF0ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNl
OyB9CisKIHByaXZhdGU6CiAgICAgSFRNTEtleWdlbkVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFt
ZSYsIERvY3VtZW50KiwgSFRNTEZvcm1FbGVtZW50Kik7CiAKICAgICB2aXJ0dWFsIGNvbnN0IEF0
b21pY1N0cmluZyYgZm9ybUNvbnRyb2xUeXBlKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIHBh
cnNlTWFwcGVkQXR0cmlidXRlKEF0dHJpYnV0ZSopOwogICAgIHZpcnR1YWwgYm9vbCBhcHBlbmRG
b3JtRGF0YShGb3JtRGF0YUxpc3QmLCBib29sKTsKLQotICAgIHZpcnR1YWwgYm9vbCB3aWxsVmFs
aWRhdGUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1YWwgYm9vbCBpc09wdGlv
bmFsRm9ybUNvbnRyb2woKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCiAgICAgQXRvbWljU3Ry
aW5nIG1fY2hhbGxlbmdlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5
Z2VuRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50Lmlk
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi44N2Q2ZmVlZGQwNTYxNGVlYjIyNTFiMGI5ZWRiNWNkZDk2NGQwOTQwCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5p
ZGwKQEAgLTAsMCArMSw1MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFy
ZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRo
ZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRv
cnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisg
KiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKK21vZHVsZSBodG1sIHsKKworICAgIGludGVyZmFjZSBIVE1MS2V5
Z2VuRWxlbWVudCA6IEhUTUxFbGVtZW50IHsKKyAgICAgICAgYXR0cmlidXRlIFtSZWZsZWN0XSBi
b29sZWFuIGF1dG9mb2N1czsKKyAgICAgICAgYXR0cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcg
Y2hhbGxlbmdlOworICAgICAgICBhdHRyaWJ1dGUgW1JlZmxlY3RdIGJvb2xlYW4gZGlzYWJsZWQ7
CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBIVE1MRm9ybUVsZW1lbnQgZm9ybTsKKyAgICAg
ICAgLy8gRklYTUU6ICJsaW1pdGVkIHRvIG9ubHkga25vd24gdmFsdWVzIiwgaWUgInJzYSIKKyAg
ICAgICAgYXR0cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcga2V5dHlwZTsKKyAgICAgICAgYXR0
cmlidXRlIERPTVN0cmluZyBuYW1lOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3Ry
aW5nIHR5cGU7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIHdpbGxWYWxpZGF0
ZTsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFZhbGlkaXR5U3RhdGUgdmFsaWRpdHk7Cisg
ICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgdmFsaWRhdGlvbk1lc3NhZ2U7Cisg
ICAgICAgIGJvb2xlYW4gY2hlY2tWYWxpZGl0eSgpOworICAgICAgICB2b2lkIHNldEN1c3RvbVZh
bGlkaXR5KGluIFtDb252ZXJ0VW5kZWZpbmVkT3JOdWxsVG9OdWxsU3RyaW5nXSBET01TdHJpbmcg
ZXJyb3IpOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgTm9kZUxpc3QgbGFiZWxzOworICAg
IH07CisKK30K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81042</attachid>
            <date>2011-02-03 01:33:37 -0800</date>
            <delta_ts>2011-02-04 01:15:29 -0800</delta_ts>
            <desc>WIP—moves select into shadow DOM</desc>
            <filename>bug-51379-20110203183335.patch</filename>
            <type>text/plain</type>
            <size>6679</size>
            <attacher name="Dominic Cooney">dominicc</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9odG1sLmNzcyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9odG1sLmNzcwppbmRleCA3OWZkZTg4MGNjY2Y4YTU1NDNiMWQ3YmEwNWEyNTJkZjhiOWQz
YzExLi4xZWIxZWJlN2Q3NDczMTUyMWE2MWZmODMwYjk4OGIwNGJhZmY2OGNiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvaHRtbC5jc3MKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL2h0
bWwuY3NzCkBAIC01MzUsNyArNTM1LDcgQEAgaW5wdXRbdHlwZT0icmFkaW8iXSB7CiAgICAgLXdl
YmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OwogfQogCi1rZXlnZW4sIHNlbGVjdCB7CitzZWxl
Y3QgewogICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbWVudWxpc3Q7CiAgICAgLXdlYmtpdC1ib3gt
c2l6aW5nOiBib3JkZXItYm94OwogICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdGhlbWVXaW4uY3NzIGIvU291cmNlL1dlYkNvcmUv
Y3NzL3RoZW1lV2luLmNzcwppbmRleCAwODM4YjExMjY2MWU2MmU5OGU1NDY0YTYxMmM1YmNkNjNk
ZTY2Y2QzLi5lNGRlN2M4ZDkzYTg5OThiNTRlZmFmYTEyMjE5ZGU4NmViZDFhNDQ3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdGhlbWVXaW4uY3NzCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy90aGVtZVdpbi5jc3MKQEAgLTEwOCw3ICsxMDgsNiBAQCBpbnB1dFt0eXBlPSJidXR0b24i
XSwgaW5wdXRbdHlwZT0ic3VibWl0Il0sIGlucHV0W3R5cGU9InJlc2V0Il0sIGlucHV0W3R5cGU9
ImZpbAogfQogCiAvKiBXaW5kb3dzIHNlbGVjdHMgYXJlIG5vdCByb3VuZGVkLiBDdXN0b20gYm9y
ZGVycyBmb3IgdGhlbSBzaG91bGRuJ3QgYmUgZWl0aGVyLiAqLwota2V5Z2VuLCAKIHNlbGVjdCwg
CiBzZWxlY3Rbc2l6ZT0iMCJdLAogc2VsZWN0W3NpemU9IjEiXSB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2Vs
ZWN0RWxlbWVudC5jcHAKaW5kZXggYTY2ZDgwMzBhMzNkYjVjMjQzODFlYjVmNGIzYjE0MDFlZDlh
Zjg1Ni4uYTRkYTBhZWRhMjZiMTZhMWQxNTRkMzE4MDFhNGQ4ZjNhZTFlMDNhZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL1NlbGVjdEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9TZWxlY3RFbGVtZW50LmNwcApAQCAtMzAsNyArMzAsNiBAQAogI2luY2x1ZGUgIkZv
cm1EYXRhTGlzdC5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAiSFRNTEZvcm1FbGVt
ZW50LmgiCi0jaW5jbHVkZSAiSFRNTEtleWdlbkVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFt
ZXMuaCIKICNpbmNsdWRlICJIVE1MU2VsZWN0RWxlbWVudC5oIgogI2luY2x1ZGUgIktleWJvYXJk
RXZlbnQuaCIKQEAgLTEwMjcsMTIgKzEwMjYsOCBAQCBjb25zdCBWZWN0b3I8RWxlbWVudCo+JiBT
ZWxlY3RFbGVtZW50RGF0YTo6bGlzdEl0ZW1zKGNvbnN0IEVsZW1lbnQqIGVsZW1lbnQpIGNvbgog
CiBTZWxlY3RFbGVtZW50KiB0b1NlbGVjdEVsZW1lbnQoRWxlbWVudCogZWxlbWVudCkKIHsKLSAg
ICBpZiAoZWxlbWVudC0+aXNIVE1MRWxlbWVudCgpKSB7Ci0gICAgICAgIGlmIChlbGVtZW50LT5o
YXNUYWdOYW1lKEhUTUxOYW1lczo6c2VsZWN0VGFnKSkKLSAgICAgICAgICAgIHJldHVybiBzdGF0
aWNfY2FzdDxIVE1MU2VsZWN0RWxlbWVudCo+KGVsZW1lbnQpOwotICAgICAgICBpZiAoZWxlbWVu
dC0+aGFzVGFnTmFtZShIVE1MTmFtZXM6OmtleWdlblRhZykpCi0gICAgICAgICAgICByZXR1cm4g
c3RhdGljX2Nhc3Q8SFRNTEtleWdlbkVsZW1lbnQqPihlbGVtZW50KTsKLSAgICB9CisgICAgaWYg
KGVsZW1lbnQtPmlzSFRNTEVsZW1lbnQoKSAmJiBlbGVtZW50LT5oYXNUYWdOYW1lKEhUTUxOYW1l
czo6c2VsZWN0VGFnKSkKKyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PEhUTUxTZWxlY3RFbGVt
ZW50Kj4oZWxlbWVudCk7CiAKICNpZiBFTkFCTEUoV01MKQogICAgIGlmIChlbGVtZW50LT5pc1dN
TEVsZW1lbnQoKSAmJiBlbGVtZW50LT5oYXNUYWdOYW1lKFdNTE5hbWVzOjpzZWxlY3RUYWcpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmNwcAppbmRleCA4ODFhMGE4MjEz
N2RlMDVhYmRlNjJiZDIyOWQ0NGE3MGZlY2E0MWQ0Li4xYzhlOWNjYmNlZGUxM2ZiNzI3ODhkOWQ0
NjM3M2VlOTM4OTNiMDllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXln
ZW5FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50
LmNwcApAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAi
Rm9ybURhdGFMaXN0LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCisjaW5jbHVkZSAiSFRNTFNl
bGVjdEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MT3B0aW9uRWxlbWVudC5oIgogI2luY2x1ZGUg
IlNTTEtleUdlbmVyYXRvci5oIgogI2luY2x1ZGUgIlRleHQuaCIKQEAgLTQxLDE5ICs0MiwyMCBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiB1c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwogCiBpbmxp
bmUgSFRNTEtleWdlbkVsZW1lbnQ6OkhUTUxLZXlnZW5FbGVtZW50KGNvbnN0IFF1YWxpZmllZE5h
bWUmIHRhZ05hbWUsIERvY3VtZW50KiBkb2N1bWVudCwgSFRNTEZvcm1FbGVtZW50KiBmb3JtKQot
ICAgIDogSFRNTFNlbGVjdEVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQsIGZvcm0pCisgICAgOiBI
VE1MRm9ybUNvbnRyb2xFbGVtZW50V2l0aFN0YXRlKHRhZ05hbWUsIGRvY3VtZW50LCBmb3JtKQog
ewogICAgIEFTU0VSVChoYXNUYWdOYW1lKGtleWdlblRhZykpOwogCi0gICAgLy8gRklYTUU6IFRo
aXMgbWFya3VwIHNob3VsZCBnbyBpbiB0aGUgc2hhZG93IHRyZWUuCi0gICAgLy8gQWRkIG9uZSBv
cHRpb24gZWxlbWVudCBmb3IgZWFjaCBrZXkgc2l6ZS4KKyAgICAvLyBDcmVhdGUgYSBzZWxlY3Qg
ZWxlbWVudCB3aXRoIG9uZSBvcHRpb24gZWxlbWVudCBmb3IgZWFjaCBrZXkgc2l6ZS4KKyAgICBS
ZWZQdHI8SFRNTFNlbGVjdEVsZW1lbnQ+IHNlbGVjdCA9IEhUTUxTZWxlY3RFbGVtZW50OjpjcmVh
dGUoc2VsZWN0VGFnLCBkb2N1bWVudCwgMCk7CiAgICAgVmVjdG9yPFN0cmluZz4ga2V5czsKICAg
ICBnZXRTdXBwb3J0ZWRLZXlTaXplcyhrZXlzKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8
IGtleXMuc2l6ZSgpOyArK2kpIHsKICAgICAgICAgUmVmUHRyPEhUTUxPcHRpb25FbGVtZW50PiBv
cHRpb24gPSBIVE1MT3B0aW9uRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50LCB0aGlzLT5mb3JtKCkp
OwotICAgICAgICBwYXJzZXJBZGRDaGlsZChvcHRpb24pOworICAgICAgICBzZWxlY3QtPnBhcnNl
ckFkZENoaWxkKG9wdGlvbik7CiAgICAgICAgIG9wdGlvbi0+cGFyc2VyQWRkQ2hpbGQoVGV4dDo6
Y3JlYXRlKGRvY3VtZW50LCBrZXlzW2ldKSk7CiAgICAgfQorICAgIHNldFNoYWRvd1Jvb3Qoc2Vs
ZWN0KTsKIH0KIAogUGFzc1JlZlB0cjxIVE1MS2V5Z2VuRWxlbWVudD4gSFRNTEtleWdlbkVsZW1l
bnQ6OmNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCogZG9jdW1l
bnQsIEhUTUxGb3JtRWxlbWVudCogZm9ybSkKQEAgLTc0LDcgKzc2LDYgQEAgdm9pZCBIVE1MS2V5
Z2VuRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUoQXR0cmlidXRlKiBhdHRyKQogICAgIGVs
c2UgaWYgKGF0dHItPm5hbWUoKSA9PSBrZXl0eXBlQXR0cikKICAgICAgICAgbV9rZXlUeXBlID0g
YXR0ci0+dmFsdWUoKTsKICAgICBlbHNlIHsKLSAgICAgICAgLy8gU2tpcCBIVE1MU2VsZWN0RWxl
bWVudCBwYXJzaW5nLgogICAgICAgICBIVE1MRm9ybUNvbnRyb2xFbGVtZW50OjpwYXJzZU1hcHBl
ZEF0dHJpYnV0ZShhdHRyKTsKICAgICB9CiB9CkBAIC05MSw0ICs5Miw5IEBAIGJvb2wgSFRNTEtl
eWdlbkVsZW1lbnQ6OmFwcGVuZEZvcm1EYXRhKEZvcm1EYXRhTGlzdCYgZW5jb2RlZF92YWx1ZXMs
IGJvb2wpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2ludCBIVE1MS2V5Z2VuRWxlbWVudDo6c2Vs
ZWN0ZWRJbmRleCgpCit7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PEhUTUxTZWxlY3RFbGVtZW50
Kj4oc2hhZG93Um9vdCgpKS0+c2VsZWN0ZWRJbmRleCgpOworfQorCiB9IC8vIG5hbWVzcGFjZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5oCmluZGV4IDNkYzRhZDJmZmM1ZjMz
NmE0ZmQ5MjVkNGVkOGRlMmExZDljMTI0YmYuLmM2MTQ4YTU2YzBlOTc3YzNiMjQzOWI5ZDk1OTli
ODExYmUzZDRlYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEtleWdlbkVs
ZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmgKQEAg
LTI0LDExICsyNCwxMSBAQAogI2lmbmRlZiBIVE1MS2V5Z2VuRWxlbWVudF9oCiAjZGVmaW5lIEhU
TUxLZXlnZW5FbGVtZW50X2gKIAotI2luY2x1ZGUgIkhUTUxTZWxlY3RFbGVtZW50LmgiCisjaW5j
bHVkZSAiSFRNTEZvcm1Db250cm9sRWxlbWVudC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LWNsYXNzIEhUTUxLZXlnZW5FbGVtZW50IDogcHVibGljIEhUTUxTZWxlY3RFbGVtZW50IHsKK2Ns
YXNzIEhUTUxLZXlnZW5FbGVtZW50IDogcHVibGljIEhUTUxGb3JtQ29udHJvbEVsZW1lbnRXaXRo
U3RhdGUgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPEhUTUxLZXlnZW5FbGVtZW50
PiBjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50KiwgSFRNTEZvcm1FbGVtZW50
Kik7CiAKQEAgLTQ0LDYgKzQ0LDggQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIGJvb2wgYXBwZW5k
Rm9ybURhdGEoRm9ybURhdGFMaXN0JiwgYm9vbCk7CiAgICAgdmlydHVhbCBib29sIGlzT3B0aW9u
YWxGb3JtQ29udHJvbCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAKKyAgICBpbnQgc2VsZWN0
ZWRJbmRleCgpOworCiAgICAgQXRvbWljU3RyaW5nIG1fY2hhbGxlbmdlOwogICAgIEF0b21pY1N0
cmluZyBtX2tleVR5cGU7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
T3B0aW9uRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRpb25FbGVtZW50
LmNwcAppbmRleCBiYzU3ODhkODUxYjcwMDljMGUyZjFlNjg4ZmMzMGRiN2IzNzZiZWI2Li45NjZm
ODM3NGUzMzE5YmQyMmEzYWIyMDUwNWRlMjY5ZTI4MmEzMWIzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxPcHRpb25FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxPcHRpb25FbGVtZW50LmNwcApAQCAtMTk0LDcgKzE5NCw3IEBAIHZvaWQgSFRNTE9w
dGlvbkVsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciwgTm9kZSog
YmVmb3JlQ2hhbmdlCiBIVE1MU2VsZWN0RWxlbWVudCogSFRNTE9wdGlvbkVsZW1lbnQ6Om93bmVy
U2VsZWN0RWxlbWVudCgpIGNvbnN0CiB7CiAgICAgQ29udGFpbmVyTm9kZSogc2VsZWN0ID0gcGFy
ZW50Tm9kZSgpOwotICAgIHdoaWxlIChzZWxlY3QgJiYgIShzZWxlY3QtPmhhc1RhZ05hbWUoc2Vs
ZWN0VGFnKSB8fCBzZWxlY3QtPmhhc1RhZ05hbWUoa2V5Z2VuVGFnKSkpCisgICAgd2hpbGUgKHNl
bGVjdCAmJiAhc2VsZWN0LT5oYXNUYWdOYW1lKHNlbGVjdFRhZykpCiAgICAgICAgIHNlbGVjdCA9
IHNlbGVjdC0+cGFyZW50Tm9kZSgpOwogCiAgICAgaWYgKCFzZWxlY3QpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTZWxlY3RFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFNlbGVjdEVsZW1lbnQuY3BwCmluZGV4IGRhNzJhYTliMmMwOTViNzViNjEwYjgx
YTM2NmQzMjI5ZTdiNDZmN2YuLjkxZjg2MGJkODZkYTI3Y2M0MzYyZWY4YmRmNjAyYWEyNmExYjlj
ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNlbGVjdEVsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNlbGVjdEVsZW1lbnQuY3BwCkBAIC00OSw3
ICs0OSw3IEBAIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBtYXhTZWxlY3RJdGVtcyA9IDEwMDAwOwog
SFRNTFNlbGVjdEVsZW1lbnQ6OkhUTUxTZWxlY3RFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUm
IHRhZ05hbWUsIERvY3VtZW50KiBkb2N1bWVudCwgSFRNTEZvcm1FbGVtZW50KiBmb3JtKQogICAg
IDogSFRNTEZvcm1Db250cm9sRWxlbWVudFdpdGhTdGF0ZSh0YWdOYW1lLCBkb2N1bWVudCwgZm9y
bSkKIHsKLSAgICBBU1NFUlQoaGFzVGFnTmFtZShzZWxlY3RUYWcpIHx8IGhhc1RhZ05hbWUoa2V5
Z2VuVGFnKSk7CisgICAgQVNTRVJUKGhhc1RhZ05hbWUoc2VsZWN0VGFnKSk7CiB9CiAKIFBhc3NS
ZWZQdHI8SFRNTFNlbGVjdEVsZW1lbnQ+IEhUTUxTZWxlY3RFbGVtZW50OjpjcmVhdGUoY29uc3Qg
UXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50LCBIVE1MRm9ybUVsZW1l
bnQqIGZvcm0pCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81197</attachid>
            <date>2011-02-04 01:15:29 -0800</date>
            <delta_ts>2011-02-06 01:36:02 -0800</delta_ts>
            <desc>Patch.</desc>
            <filename>0001-WIP.patch</filename>
            <type>text/plain</type>
            <size>16172</size>
            <attacher name="Dominic Cooney">dominicc</attacher>
            
              <data encoding="base64">RnJvbSBlYzQ0ODI2N2JkMjUxODlkOTQ2YmI3MmZkZWVjM2VlN2FlNmFjODZkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBEb21pbmljIENvb25leSA8ZG9taW5pY2NAZ29vZ2xlLmNvbT4K
RGF0ZTogVGh1LCAzIEZlYiAyMDExIDE4OjMwOjA1ICswOTAwClN1YmplY3Q6IFtQQVRDSF0gV0lQ
CgotLS0KIExheW91dFRlc3RzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAxMSArKysrCiBMYXlvdXRUZXN0cy9odG1sNWxpYi9ydW5uZXItZXhwZWN0ZWQudHh0ICAg
ICAgICAgICB8ICAgNDUgKy0tLS0tLS0tLS0tLS0tCiAuLi4vcGxhdGZvcm0vbWFjL2Zhc3QvaHRt
bC9rZXlnZW4tZXhwZWN0ZWQudHh0ICAgICB8ICAgIDkgKystCiAuLi4vbWFjL2Zhc3QvaW52YWxp
ZC9yZXNpZHVhbC1zdHlsZS1leHBlY3RlZC50eHQgICB8ICAgIDkgKystCiBTb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzYgKysrKysrKysrKysK
IFNvdXJjZS9XZWJDb3JlL2Nzcy9odG1sLmNzcyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAx
MyArKystCiBTb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudC5jcHAgICAgICAgICAgICAg
ICB8ICAgIDkgKy0tCiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmNwcCAg
ICAgICAgICB8ICAgNjIgKysrKysrKysrKysrKysrLS0tLS0KIFNvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEtleWdlbkVsZW1lbnQuaCAgICAgICAgICAgIHwgICAxOCArKysrKy0KIFNvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE9wdGlvbkVsZW1lbnQuY3BwICAgICAgICAgIHwgICAgMiArLQogU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MU2VsZWN0RWxlbWVudC5jcHAgICAgICAgICAgfCAgICAyICstCiAx
MSBmaWxlcyBjaGFuZ2VkLCAxMzQgaW5zZXJ0aW9ucygrKSwgODIgZGVsZXRpb25zKC0pCgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDNiMWYyMDguLjJlYTJjODUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMS0wMi0wMyAg
RG9taW5pYyBDb29uZXkgIDxkb21pbmljY0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENvbnZlcnQgPGtleWdlbj4gb3B0aW9uIGVs
ZW1lbnRzIHRvIGEgc2hhZG93IERPTQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NTEzNzkKKworICAgICAgICAqIGh0bWw1bGliL3J1bm5lci1leHBlY3Rl
ZC50eHQ6IFR3byBtb3JlIHRlc3RzIHBhc3MuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3Qv
aHRtbC9rZXlnZW4tZXhwZWN0ZWQudHh0OiBTaGFkb3cgcmVuZGVyIHRyZWUuCisgICAgICAgICog
cGxhdGZvcm0vbWFjL2Zhc3QvaW52YWxpZC9yZXNpZHVhbC1zdHlsZS1leHBlY3RlZC50eHQ6CisK
IDIwMTEtMDItMDMgIEphbWVzIEtvemlhbnNraSAgPGtvekBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgRGltaXRyaSBHbGF6a292LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHRtbDVsaWIvcnVubmVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0bWw1bGliL3J1bm5l
ci1leHBlY3RlZC50eHQKaW5kZXggMWRkOTVhMS4uYTM4NzJlYyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaHRtbDVsaWIvcnVubmVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odG1s
NWxpYi9ydW5uZXItZXhwZWN0ZWQudHh0CkBAIC0yNywyOSArMjcsOCBAQCByZXNvdXJjZXMvdGVz
dHM1LmRhdDogUEFTUwogCiByZXNvdXJjZXMvdGVzdHM2LmRhdDogUEFTUwogCi1yZXNvdXJjZXMv
dGVzdHM3LmRhdDoKLTMwCityZXNvdXJjZXMvdGVzdHM3LmRhdDogUEFTUwogCi1UZXN0IDMwIG9m
IDMwIGluIHJlc291cmNlcy90ZXN0czcuZGF0IGZhaWxlZC4gSW5wdXQ6Ci08c2VsZWN0PjxrZXln
ZW4+Ci1Hb3Q6Ci18IDxodG1sPgotfCAgIDxoZWFkPgotfCAgIDxib2R5PgotfCAgICAgPHNlbGVj
dD4KLXwgICAgIDxrZXlnZW4+Ci18ICAgICAgIDxvcHRpb24+Ci18ICAgICAgICAgIjIwNDggKEhp
Z2ggR3JhZGUpIgotfCAgICAgICA8b3B0aW9uPgotfCAgICAgICAgICIxMDI0IChNZWRpdW0gR3Jh
ZGUpIgotfCAgICAgICA8b3B0aW9uPgotfCAgICAgICAgICI1MTIgKExvdyBHcmFkZSkiCi1FeHBl
Y3RlZDoKLXwgPGh0bWw+Ci18ICAgPGhlYWQ+Ci18ICAgPGJvZHk+Ci18ICAgICA8c2VsZWN0Pgot
fCAgICAgPGtleWdlbj4KIHJlc291cmNlcy90ZXN0czguZGF0OiBQQVNTCiAKIHJlc291cmNlcy90
ZXN0czkuZGF0OgpAQCAtMjQ5LDcgKzIyOCw2IEBAIHJlc291cmNlcy90ZXN0czE4LmRhdDogUEFT
UwogcmVzb3VyY2VzL3Rlc3RzMTkuZGF0OgogMzEKIDMyCi02MwogNzgKIAogVGVzdCAzMSBvZiA5
NyBpbiByZXNvdXJjZXMvdGVzdHMxOS5kYXQgZmFpbGVkLiBJbnB1dDoKQEAgLTI5OCwyNyArMjc2
LDYgQEAgRXhwZWN0ZWQ6CiB8ICAgICA8cD4KIHwgICAgIDxoMT4KIAotVGVzdCA2MyBvZiA5NyBp
biByZXNvdXJjZXMvdGVzdHMxOS5kYXQgZmFpbGVkLiBJbnB1dDoKLTwhZG9jdHlwZSBodG1sPjxr
ZXlnZW4+PGZyYW1lc2V0PgotR290OgotfCA8IURPQ1RZUEUgaHRtbD4KLXwgPGh0bWw+Ci18ICAg
PGhlYWQ+Ci18ICAgPGJvZHk+Ci18ICAgICA8a2V5Z2VuPgotfCAgICAgICA8b3B0aW9uPgotfCAg
ICAgICAgICIyMDQ4IChIaWdoIEdyYWRlKSIKLXwgICAgICAgPG9wdGlvbj4KLXwgICAgICAgICAi
MTAyNCAoTWVkaXVtIEdyYWRlKSIKLXwgICAgICAgPG9wdGlvbj4KLXwgICAgICAgICAiNTEyIChM
b3cgR3JhZGUpIgotRXhwZWN0ZWQ6Ci18IDwhRE9DVFlQRSBodG1sPgotfCA8aHRtbD4KLXwgICA8
aGVhZD4KLXwgICA8Ym9keT4KLXwgICAgIDxrZXlnZW4+Ci0KIFRlc3QgNzggb2YgOTcgaW4gcmVz
b3VyY2VzL3Rlc3RzMTkuZGF0IGZhaWxlZC4gSW5wdXQ6CiA8IWRvY3R5cGUgaHRtbD48cD48bWF0
aD48bW4+PHNwYW4+PC9wPmEKIEdvdDoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9mYXN0L2h0bWwva2V5Z2VuLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9mYXN0L2h0bWwva2V5Z2VuLWV4cGVjdGVkLnR4dAppbmRleCA4MTUwNGJlLi42ZGE4M2U1
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9odG1sL2tleWdlbi1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvaHRtbC9rZXln
ZW4tZXhwZWN0ZWQudHh0CkBAIC0zLDggKzMsOSBAQCBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2
MDAKIGxheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAogICBSZW5kZXJCbG9jayB7SFRNTH0gYXQg
KDAsMCkgc2l6ZSA4MDB4NjAwCiAgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsOCkgc2l6ZSA3
ODR4NTg0Ci0gICAgICBSZW5kZXJNZW51TGlzdCB7S0VZR0VOfSBhdCAoMiwyKSBzaXplIDE0OHgx
OCBbYmdjb2xvcj0jRkZGRkZGXQotICAgICAgICBSZW5kZXJCbG9jayAoYW5vbnltb3VzKSBhdCAo
MCwwKSBzaXplIDE0OHgxOAotICAgICAgICAgIFJlbmRlclRleHQgYXQgKDgsMikgc2l6ZSA5OXgx
MwotICAgICAgICAgICAgdGV4dCBydW4gYXQgKDgsMikgd2lkdGggOTk6ICIyMDQ4IChIaWdoIEdy
YWRlKSIKKyAgICAgIFJlbmRlckJsb2NrIHtLRVlHRU59IGF0ICgyLDIpIHNpemUgMTQ4eDE4Cisg
ICAgICAgIFJlbmRlck1lbnVMaXN0IHtTRUxFQ1R9IGF0ICgwLDApIHNpemUgMTQ4eDE4IFtiZ2Nv
bG9yPSNGRkZGRkZdCisgICAgICAgICAgUmVuZGVyQmxvY2sgKGFub255bW91cykgYXQgKDAsMCkg
c2l6ZSAxNDh4MTgKKyAgICAgICAgICAgIFJlbmRlclRleHQgYXQgKDgsMikgc2l6ZSA5OXgxMwor
ICAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoOCwyKSB3aWR0aCA5OTogIjIwNDggKEhpZ2ggR3Jh
ZGUpIgogICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMHgwCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9pbnZhbGlkL3Jlc2lkdWFsLXN0eWxl
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2ludmFsaWQvcmVz
aWR1YWwtc3R5bGUtZXhwZWN0ZWQudHh0CmluZGV4IGMzYWViYjYuLjVlMTg1MWYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2ludmFsaWQvcmVzaWR1YWwtc3R5bGUt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2ludmFsaWQv
cmVzaWR1YWwtc3R5bGUtZXhwZWN0ZWQudHh0CkBAIC00NDQsMTAgKzQ0NCwxMSBAQCBsYXllciBh
dCAoMCwwKSBzaXplIDc4NXgzNDQxCiAgICAgICBSZW5kZXJCbG9jayAoYW5vbnltb3VzKSBhdCAo
MCwxOTExKSBzaXplIDc2OXgyMgogICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMSkg
c2l6ZSA3NngxOAogICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDEpIHdpZHRoIDc2OiAiS0VZR0VO
OiAiCi0gICAgICAgIFJlbmRlck1lbnVMaXN0IHtLRVlHRU59IGF0ICg3OCwyKSBzaXplIDE0OHgx
OCBbYmdjb2xvcj0jRkZGRkZGXQotICAgICAgICAgIFJlbmRlckJsb2NrIChhbm9ueW1vdXMpIGF0
ICgwLDApIHNpemUgMTQ4eDE4Ci0gICAgICAgICAgICBSZW5kZXJUZXh0IGF0ICg4LDIpIHNpemUg
OTl4MTMKLSAgICAgICAgICAgICAgdGV4dCBydW4gYXQgKDgsMikgd2lkdGggOTk6ICIyMDQ4IChI
aWdoIEdyYWRlKSIKKyAgICAgICAgUmVuZGVyQmxvY2sge0tFWUdFTn0gYXQgKDc4LDIpIHNpemUg
MTQ4eDE4CisgICAgICAgICAgUmVuZGVyTWVudUxpc3Qge1NFTEVDVH0gYXQgKDAsMCkgc2l6ZSAx
NDh4MTggW2JnY29sb3I9I0ZGRkZGRl0KKyAgICAgICAgICAgIFJlbmRlckJsb2NrIChhbm9ueW1v
dXMpIGF0ICgwLDApIHNpemUgMTQ4eDE4CisgICAgICAgICAgICAgIFJlbmRlclRleHQgYXQgKDgs
Mikgc2l6ZSA5OXgxMworICAgICAgICAgICAgICAgIHRleHQgcnVuIGF0ICg4LDIpIHdpZHRoIDk5
OiAiMjA0OCAoSGlnaCBHcmFkZSkiCiAgICAgICAgIFJlbmRlcklubGluZSB7Rk9OVH0gYXQgKDAs
MCkgc2l6ZSAxNzF4MTggW2NvbG9yPSMwMDgwMDBdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3Rl
eHR9IGF0ICgyMjgsMSkgc2l6ZSAxNzF4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgyMjgs
MSkgd2lkdGggMTcxOiAiQWxsIG9mIHRoaXMgc2hvdWxkIGJlIGdyZWVuLiIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRl
eCAwNzVhNWRmLi41YjY4YjRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzkgQEAKK2wyMDExLTAy
LTAzICBEb21pbmljIENvb25leSAgPGRvbWluaWNjQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29udmVydCA8a2V5Z2VuPiBvcHRp
b24gZWxlbWVudHMgdG8gYSBzaGFkb3cgRE9NCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD01MTM3OQorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3Rpbmcg
dGVzdHMgZS5nLiBmYXN0L2h0bWwva2V5Z2VuLmh0bWwsCisgICAgICAgIGh0bWw1bGliL3J1bm5l
ci5odG1sLCBldGMuCisKKyAgICAgICAgKiBjc3MvaHRtbC5jc3M6CisgICAgICAgIChmb3JtKTog
Q2xlYW51cC4KKyAgICAgICAgKGtleWdlbiwgc2VsZWN0KTogQm9yZGVyIHJhZGlpIHNob3VsZCBt
YXRjaCBzbyBmb2N1cyByaW5nIGxvb2tzIGdvb2QuCisgICAgICAgIChrZXlnZW46Oi13ZWJraXQt
a2V5Z2VuLXNlbGVjdCk6IE5vIG1hcmdpbiBvbiB0aGUgc2hhZG93IGVsZW1lbnQuCisgICAgICAg
IChzZWxlY3QpOiBIb2lzdGluZyBib3JkZXIgcmFkaXVzIHRvIGtleWdlbiwgc2VsZWN0IHJ1bGUu
CisgICAgICAgICogZG9tL1NlbGVjdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6dG9T
ZWxlY3RFbGVtZW50KToga2V5Z2VuIGlzIG5vIGxvbmdlciBhIHNlbGVjdCBlbGVtZW50LgorICAg
ICAgICAqIGh0bWwvSFRNTEtleWdlbkVsZW1lbnQuY3BwOiBJbXBsZW1lbnRzIGtleWdlbiBzaGFk
b3cuCisgICAgICAgIChXZWJDb3JlOjpLZXlnZW5TZWxlY3RFbGVtZW50OjpjcmVhdGUpOgorICAg
ICAgICAoV2ViQ29yZTo6S2V5Z2VuU2VsZWN0RWxlbWVudDo6c2hhZG93UHNldWRvSWQpOgorICAg
ICAgICAoV2ViQ29yZTo6S2V5Z2VuU2VsZWN0RWxlbWVudDo6S2V5Z2VuU2VsZWN0RWxlbWVudCk6
CisgICAgICAgIChXZWJDb3JlOjpIVE1MS2V5Z2VuRWxlbWVudDo6SFRNTEtleWdlbkVsZW1lbnQp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTEtleWdlbkVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmli
dXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxLZXlnZW5FbGVtZW50OjphcHBlbmRGb3JtRGF0
YSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MS2V5Z2VuRWxlbWVudDo6Zm9ybUNvbnRyb2xUeXBl
KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxLZXlnZW5FbGVtZW50OjpyZXNldCk6CisgICAgICAg
IChXZWJDb3JlOjpIVE1MS2V5Z2VuRWxlbWVudDo6c2VsZWN0U2hhZG93KToKKyAgICAgICAgKiBo
dG1sL0hUTUxLZXlnZW5FbGVtZW50Lmg6IGtleWdlbiBpcyBubyBsb25nZXIgYSBzZWxlY3Qgb24g
QysrIHNpZGUuCisgICAgICAgIChXZWJDb3JlOjpIVE1MS2V5Z2VuRWxlbWVudDo6Y2FuU3RhcnRT
ZWxlY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEtleWdlbkVsZW1lbnQ6OmlzRW51bWVy
YXRhYmxlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxLZXlnZW5FbGVtZW50Ojppc1Jlc2V0dGFi
bGUpOgorICAgICAgICAqIGh0bWwvSFRNTE9wdGlvbkVsZW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTE9wdGlvbkVsZW1lbnQ6Om93bmVyU2VsZWN0RWxlbWVudCk6IE9ubHkgb3duZWQg
Ynkgc2VsZWN0cy4KKyAgICAgICAgKiBodG1sL0hUTUxTZWxlY3RFbGVtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxTZWxlY3RFbGVtZW50OjpIVE1MU2VsZWN0RWxlbWVudCk6IE9ubHkg
J3NlbGVjdCcgdGFnIG5hbWUuCisKIDIwMTEtMDItMDMgIEFudG9uIE11aGluICA8YW50b25tQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL2h0bWwuY3NzIGIvU291cmNlL1dlYkNvcmUvY3NzL2h0bWwu
Y3NzCmluZGV4IDc5ZmRlODguLjhlMDAwMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9odG1sLmNzcworKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvaHRtbC5jc3MKQEAgLTMyMyw3ICsz
MjMsNyBAQCBvbCB1bCwgdWwgb2wsIHVsIHVsLCBvbCBvbCB7CiAKIGZvcm0gewogICAgIGRpc3Bs
YXk6IGJsb2NrOwotICAgIG1hcmdpbi10b3A6IDBfX3FlbQorICAgIG1hcmdpbi10b3A6IDBfX3Fl
bTsKIH0KIAogbGFiZWwgewpAQCAtNDMzLDYgKzQzMywxNCBAQCBpbnB1dDo6LXdlYmtpdC1pbnB1
dC1zcGVlY2gtYnV0dG9uIHsKICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiB9CiAKK2tleWdl
biwgc2VsZWN0IHsKKyAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDsKK30KKwora2V5Z2Vu
Ojotd2Via2l0LWtleWdlbi1zZWxlY3QgeworICAgIG1hcmdpbjogMHB4OworfQorCiB0ZXh0YXJl
YSB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0YXJlYTsKICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiB3aGl0ZTsKQEAgLTUzNSwxMiArNTQzLDExIEBAIGlucHV0W3R5cGU9InJhZGlvIl0gewog
ICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsKIH0KIAota2V5Z2VuLCBzZWxlY3Qg
eworc2VsZWN0IHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lbnVsaXN0OwogICAgIC13ZWJr
aXQtYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVy
OwogICAgIGJvcmRlcjogMXB4IHNvbGlkOwotICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4
OwogICAgIHdoaXRlLXNwYWNlOiBwcmU7CiAgICAgLXdlYmtpdC1ydGwtb3JkZXJpbmc6IGxvZ2lj
YWw7CiAgICAgY29sb3I6IGJsYWNrOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1Nl
bGVjdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL1NlbGVjdEVsZW1lbnQuY3BwCmlu
ZGV4IGE2NmQ4MDMuLmE0ZGEwYWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TZWxl
Y3RFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudC5jcHAK
QEAgLTMwLDcgKzMwLDYgQEAKICNpbmNsdWRlICJGb3JtRGF0YUxpc3QuaCIKICNpbmNsdWRlICJG
cmFtZS5oIgogI2luY2x1ZGUgIkhUTUxGb3JtRWxlbWVudC5oIgotI2luY2x1ZGUgIkhUTUxLZXln
ZW5FbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiSFRNTFNlbGVj
dEVsZW1lbnQuaCIKICNpbmNsdWRlICJLZXlib2FyZEV2ZW50LmgiCkBAIC0xMDI3LDEyICsxMDI2
LDggQEAgY29uc3QgVmVjdG9yPEVsZW1lbnQqPiYgU2VsZWN0RWxlbWVudERhdGE6Omxpc3RJdGVt
cyhjb25zdCBFbGVtZW50KiBlbGVtZW50KSBjb24KIAogU2VsZWN0RWxlbWVudCogdG9TZWxlY3RF
bGVtZW50KEVsZW1lbnQqIGVsZW1lbnQpCiB7Ci0gICAgaWYgKGVsZW1lbnQtPmlzSFRNTEVsZW1l
bnQoKSkgewotICAgICAgICBpZiAoZWxlbWVudC0+aGFzVGFnTmFtZShIVE1MTmFtZXM6OnNlbGVj
dFRhZykpCi0gICAgICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8SFRNTFNlbGVjdEVsZW1lbnQq
PihlbGVtZW50KTsKLSAgICAgICAgaWYgKGVsZW1lbnQtPmhhc1RhZ05hbWUoSFRNTE5hbWVzOjpr
ZXlnZW5UYWcpKQotICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PEhUTUxLZXlnZW5FbGVt
ZW50Kj4oZWxlbWVudCk7Ci0gICAgfQorICAgIGlmIChlbGVtZW50LT5pc0hUTUxFbGVtZW50KCkg
JiYgZWxlbWVudC0+aGFzVGFnTmFtZShIVE1MTmFtZXM6OnNlbGVjdFRhZykpCisgICAgICAgIHJl
dHVybiBzdGF0aWNfY2FzdDxIVE1MU2VsZWN0RWxlbWVudCo+KGVsZW1lbnQpOwogCiAjaWYgRU5B
QkxFKFdNTCkKICAgICBpZiAoZWxlbWVudC0+aXNXTUxFbGVtZW50KCkgJiYgZWxlbWVudC0+aGFz
VGFnTmFtZShXTUxOYW1lczo6c2VsZWN0VGFnKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEtleWdlbkVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5
Z2VuRWxlbWVudC5jcHAKaW5kZXggODgxYTBhOC4uYjkwMzM1ZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJE
b2N1bWVudC5oIgogI2luY2x1ZGUgIkZvcm1EYXRhTGlzdC5oIgogI2luY2x1ZGUgIkhUTUxOYW1l
cy5oIgorI2luY2x1ZGUgIkhUTUxTZWxlY3RFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE9wdGlv
bkVsZW1lbnQuaCIKICNpbmNsdWRlICJTU0xLZXlHZW5lcmF0b3IuaCIKICNpbmNsdWRlICJUZXh0
LmgiCkBAIC00MCwyMCArNDEsNDEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1l
c3BhY2UgSFRNTE5hbWVzOwogCitjbGFzcyBLZXlnZW5TZWxlY3RFbGVtZW50IDogcHVibGljIEhU
TUxTZWxlY3RFbGVtZW50IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxLZXlnZW5T
ZWxlY3RFbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQqIGRvY3VtZW50KQorICAgIHsKKyAgICAgICAg
cmV0dXJuIGFkb3B0UmVmKG5ldyBLZXlnZW5TZWxlY3RFbGVtZW50KGRvY3VtZW50KSk7CisgICAg
fQorCisgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIHNoYWRvd1BzZXVkb0lkKCkgY29u
c3QKKyAgICB7CisgICAgICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBwc2V1
ZG9JZCwgKCItd2Via2l0LWtleWdlbi1zZWxlY3QiKSk7CisgICAgICAgIHJldHVybiBwc2V1ZG9J
ZDsKKyAgICB9CisKK3Byb3RlY3RlZDoKKyAgICBLZXlnZW5TZWxlY3RFbGVtZW50KERvY3VtZW50
KiBkb2N1bWVudCkKKyAgICAgICAgOiBIVE1MU2VsZWN0RWxlbWVudChzZWxlY3RUYWcsIGRvY3Vt
ZW50LCAwKQorICAgIHsKKyAgICB9Cit9OworCiBpbmxpbmUgSFRNTEtleWdlbkVsZW1lbnQ6OkhU
TUxLZXlnZW5FbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50KiBk
b2N1bWVudCwgSFRNTEZvcm1FbGVtZW50KiBmb3JtKQotICAgIDogSFRNTFNlbGVjdEVsZW1lbnQo
dGFnTmFtZSwgZG9jdW1lbnQsIGZvcm0pCisgICAgOiBIVE1MRm9ybUNvbnRyb2xFbGVtZW50V2l0
aFN0YXRlKHRhZ05hbWUsIGRvY3VtZW50LCBmb3JtKQogewogICAgIEFTU0VSVChoYXNUYWdOYW1l
KGtleWdlblRhZykpOwogCi0gICAgLy8gRklYTUU6IFRoaXMgbWFya3VwIHNob3VsZCBnbyBpbiB0
aGUgc2hhZG93IHRyZWUuCi0gICAgLy8gQWRkIG9uZSBvcHRpb24gZWxlbWVudCBmb3IgZWFjaCBr
ZXkgc2l6ZS4KKyAgICAvLyBDcmVhdGUgYSBzZWxlY3QgZWxlbWVudCB3aXRoIG9uZSBvcHRpb24g
ZWxlbWVudCBmb3IgZWFjaCBrZXkgc2l6ZS4KKyAgICBSZWZQdHI8SFRNTFNlbGVjdEVsZW1lbnQ+
IHNlbGVjdCA9IEtleWdlblNlbGVjdEVsZW1lbnQ6OmNyZWF0ZShkb2N1bWVudCk7CiAgICAgVmVj
dG9yPFN0cmluZz4ga2V5czsKICAgICBnZXRTdXBwb3J0ZWRLZXlTaXplcyhrZXlzKTsKICAgICBm
b3IgKHNpemVfdCBpID0gMDsgaSA8IGtleXMuc2l6ZSgpOyArK2kpIHsKICAgICAgICAgUmVmUHRy
PEhUTUxPcHRpb25FbGVtZW50PiBvcHRpb24gPSBIVE1MT3B0aW9uRWxlbWVudDo6Y3JlYXRlKGRv
Y3VtZW50LCB0aGlzLT5mb3JtKCkpOwotICAgICAgICBwYXJzZXJBZGRDaGlsZChvcHRpb24pOwor
ICAgICAgICBzZWxlY3QtPnBhcnNlckFkZENoaWxkKG9wdGlvbik7CiAgICAgICAgIG9wdGlvbi0+
cGFyc2VyQWRkQ2hpbGQoVGV4dDo6Y3JlYXRlKGRvY3VtZW50LCBrZXlzW2ldKSk7CiAgICAgfQor
ICAgIHNldFNoYWRvd1Jvb3Qoc2VsZWN0KTsKIH0KIAogUGFzc1JlZlB0cjxIVE1MS2V5Z2VuRWxl
bWVudD4gSFRNTEtleWdlbkVsZW1lbnQ6OmNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdO
YW1lLCBEb2N1bWVudCogZG9jdW1lbnQsIEhUTUxGb3JtRWxlbWVudCogZm9ybSkKQEAgLTYxLDIy
ICs4MywxOCBAQCBQYXNzUmVmUHRyPEhUTUxLZXlnZW5FbGVtZW50PiBIVE1MS2V5Z2VuRWxlbWVu
dDo6Y3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZwogICAgIHJldHVybiBhZG9wdFJlZihu
ZXcgSFRNTEtleWdlbkVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQsIGZvcm0pKTsKIH0KIAotY29u
c3QgQXRvbWljU3RyaW5nJiBIVE1MS2V5Z2VuRWxlbWVudDo6Zm9ybUNvbnRyb2xUeXBlKCkgY29u
c3QKLXsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21pY1N0cmluZywga2V5Z2Vu
LCAoImtleWdlbiIpKTsKLSAgICByZXR1cm4ga2V5Z2VuOwotfQotCiB2b2lkIEhUTUxLZXlnZW5F
bGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRyaWJ1dGUqIGF0dHIpCiB7CisgICAgLy8g
UmVmbGVjdCBkaXNhYmxlZCBhdHRyaWJ1dGUgb24gdGhlIHNoYWRvdyBzZWxlY3QgZWxlbWVudAor
ICAgIGlmIChhdHRyLT5uYW1lKCkgPT0gZGlzYWJsZWRBdHRyKQorICAgICAgICBzZWxlY3RTaGFk
b3coKS0+c2V0QXR0cmlidXRlKGF0dHItPm5hbWUoKSwgYXR0ci0+dmFsdWUoKSk7CisKICAgICBp
ZiAoYXR0ci0+bmFtZSgpID09IGNoYWxsZW5nZUF0dHIpCiAgICAgICAgIG1fY2hhbGxlbmdlID0g
YXR0ci0+dmFsdWUoKTsKICAgICBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0ga2V5dHlwZUF0dHIp
CiAgICAgICAgIG1fa2V5VHlwZSA9IGF0dHItPnZhbHVlKCk7Ci0gICAgZWxzZSB7Ci0gICAgICAg
IC8vIFNraXAgSFRNTFNlbGVjdEVsZW1lbnQgcGFyc2luZy4KKyAgICBlbHNlCiAgICAgICAgIEhU
TUxGb3JtQ29udHJvbEVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKGF0dHIpOwotICAgIH0K
IH0KIAogYm9vbCBIVE1MS2V5Z2VuRWxlbWVudDo6YXBwZW5kRm9ybURhdGEoRm9ybURhdGFMaXN0
JiBlbmNvZGVkX3ZhbHVlcywgYm9vbCkKQEAgLTg0LDExICsxMDIsMjcgQEAgYm9vbCBIVE1MS2V5
Z2VuRWxlbWVudDo6YXBwZW5kRm9ybURhdGEoRm9ybURhdGFMaXN0JiBlbmNvZGVkX3ZhbHVlcywg
Ym9vbCkKICAgICAvLyBPbmx5IFJTQSBpcyBzdXBwb3J0ZWQgYXQgdGhpcyB0aW1lLgogICAgIGlm
ICghbV9rZXlUeXBlLmlzTnVsbCgpICYmICFlcXVhbElnbm9yaW5nQ2FzZShtX2tleVR5cGUsICJy
c2EiKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIFN0cmluZyB2YWx1ZSA9IHNpZ25lZFB1
YmxpY0tleUFuZENoYWxsZW5nZVN0cmluZyhzZWxlY3RlZEluZGV4KCksIG1fY2hhbGxlbmdlLCBk
b2N1bWVudCgpLT5iYXNlVVJMKCkpOworICAgIFN0cmluZyB2YWx1ZSA9IHNpZ25lZFB1YmxpY0tl
eUFuZENoYWxsZW5nZVN0cmluZyhzZWxlY3RTaGFkb3coKS0+c2VsZWN0ZWRJbmRleCgpLCBtX2No
YWxsZW5nZSwgZG9jdW1lbnQoKS0+YmFzZVVSTCgpKTsKICAgICBpZiAodmFsdWUuaXNOdWxsKCkp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBlbmNvZGVkX3ZhbHVlcy5hcHBlbmREYXRhKG5h
bWUoKSwgdmFsdWUudXRmOCgpKTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorY29uc3QgQXRvbWlj
U3RyaW5nJiBIVE1MS2V5Z2VuRWxlbWVudDo6Zm9ybUNvbnRyb2xUeXBlKCkgY29uc3QKK3sKKyAg
ICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21pY1N0cmluZywga2V5Z2VuLCAoImtleWdl
biIpKTsKKyAgICByZXR1cm4ga2V5Z2VuOworfQorCit2b2lkIEhUTUxLZXlnZW5FbGVtZW50Ojpy
ZXNldCgpCit7CisgICAgc3RhdGljX2Nhc3Q8SFRNTEZvcm1Db250cm9sRWxlbWVudCo+KHNlbGVj
dFNoYWRvdygpKS0+cmVzZXQoKTsKK30KKworSFRNTFNlbGVjdEVsZW1lbnQqIEhUTUxLZXlnZW5F
bGVtZW50OjpzZWxlY3RTaGFkb3coKQoreworICAgIHJldHVybiBzdGF0aWNfY2FzdDxIVE1MU2Vs
ZWN0RWxlbWVudCo+KHNoYWRvd1Jvb3QoKSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmgKaW5kZXggM2RjNGFkMi4uYTdhOGE2NCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEtleWdlbkVsZW1lbnQuaApAQCAtMjQsMTEgKzI0LDEzIEBA
CiAjaWZuZGVmIEhUTUxLZXlnZW5FbGVtZW50X2gKICNkZWZpbmUgSFRNTEtleWdlbkVsZW1lbnRf
aAogCi0jaW5jbHVkZSAiSFRNTFNlbGVjdEVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MRm9ybUNv
bnRyb2xFbGVtZW50LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgSFRNTEtleWdl
bkVsZW1lbnQgOiBwdWJsaWMgSFRNTFNlbGVjdEVsZW1lbnQgeworY2xhc3MgSFRNTFNlbGVjdEVs
ZW1lbnQ7CisKK2NsYXNzIEhUTUxLZXlnZW5FbGVtZW50IDogcHVibGljIEhUTUxGb3JtQ29udHJv
bEVsZW1lbnRXaXRoU3RhdGUgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPEhUTUxL
ZXlnZW5FbGVtZW50PiBjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50KiwgSFRN
TEZvcm1FbGVtZW50Kik7CiAKQEAgLTM3LDEzICszOSwyMSBAQCBwdWJsaWM6CiBwcml2YXRlOgog
ICAgIEhUTUxLZXlnZW5FbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCosIEhU
TUxGb3JtRWxlbWVudCopOwogCi0gICAgdmlydHVhbCBib29sIGlzUmVzZXR0YWJsZSgpIGNvbnN0
IHsgcmV0dXJuIHRydWU7IH0KKyAgICB2aXJ0dWFsIGJvb2wgY2FuU3RhcnRTZWxlY3Rpb24oKSBj
b25zdCB7IHJldHVybiBmYWxzZTsgfQogCi0gICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcm
IGZvcm1Db250cm9sVHlwZSgpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBwYXJzZU1hcHBlZEF0
dHJpYnV0ZShBdHRyaWJ1dGUqKTsKKwogICAgIHZpcnR1YWwgYm9vbCBhcHBlbmRGb3JtRGF0YShG
b3JtRGF0YUxpc3QmLCBib29sKTsKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgZm9y
bUNvbnRyb2xUeXBlKCkgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIGlzT3B0aW9uYWxGb3JtQ29u
dHJvbCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAKKyAgICB2aXJ0dWFsIGJvb2wgaXNFbnVt
ZXJhdGFibGUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CisKKyAgICB2aXJ0dWFsIGJvb2wgaXNS
ZXNldHRhYmxlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHZpcnR1YWwgdm9pZCByZXNl
dCgpOworCisgICAgSFRNTFNlbGVjdEVsZW1lbnQqIHNlbGVjdFNoYWRvdygpOworCiAgICAgQXRv
bWljU3RyaW5nIG1fY2hhbGxlbmdlOwogICAgIEF0b21pY1N0cmluZyBtX2tleVR5cGU7CiB9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3B0aW9uRWxlbWVudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRpb25FbGVtZW50LmNwcAppbmRleCBiYzU3ODhkLi45
NjZmODM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRpb25FbGVtZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRpb25FbGVtZW50LmNwcApAQCAt
MTk0LDcgKzE5NCw3IEBAIHZvaWQgSFRNTE9wdGlvbkVsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChi
b29sIGNoYW5nZWRCeVBhcnNlciwgTm9kZSogYmVmb3JlQ2hhbmdlCiBIVE1MU2VsZWN0RWxlbWVu
dCogSFRNTE9wdGlvbkVsZW1lbnQ6Om93bmVyU2VsZWN0RWxlbWVudCgpIGNvbnN0CiB7CiAgICAg
Q29udGFpbmVyTm9kZSogc2VsZWN0ID0gcGFyZW50Tm9kZSgpOwotICAgIHdoaWxlIChzZWxlY3Qg
JiYgIShzZWxlY3QtPmhhc1RhZ05hbWUoc2VsZWN0VGFnKSB8fCBzZWxlY3QtPmhhc1RhZ05hbWUo
a2V5Z2VuVGFnKSkpCisgICAgd2hpbGUgKHNlbGVjdCAmJiAhc2VsZWN0LT5oYXNUYWdOYW1lKHNl
bGVjdFRhZykpCiAgICAgICAgIHNlbGVjdCA9IHNlbGVjdC0+cGFyZW50Tm9kZSgpOwogCiAgICAg
aWYgKCFzZWxlY3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTZWxlY3RF
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNlbGVjdEVsZW1lbnQuY3BwCmlu
ZGV4IGRhNzJhYTkuLjkxZjg2MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TFNlbGVjdEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNlbGVjdEVs
ZW1lbnQuY3BwCkBAIC00OSw3ICs0OSw3IEBAIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBtYXhTZWxl
Y3RJdGVtcyA9IDEwMDAwOwogSFRNTFNlbGVjdEVsZW1lbnQ6OkhUTUxTZWxlY3RFbGVtZW50KGNv
bnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50KiBkb2N1bWVudCwgSFRNTEZvcm1F
bGVtZW50KiBmb3JtKQogICAgIDogSFRNTEZvcm1Db250cm9sRWxlbWVudFdpdGhTdGF0ZSh0YWdO
YW1lLCBkb2N1bWVudCwgZm9ybSkKIHsKLSAgICBBU1NFUlQoaGFzVGFnTmFtZShzZWxlY3RUYWcp
IHx8IGhhc1RhZ05hbWUoa2V5Z2VuVGFnKSk7CisgICAgQVNTRVJUKGhhc1RhZ05hbWUoc2VsZWN0
VGFnKSk7CiB9CiAKIFBhc3NSZWZQdHI8SFRNTFNlbGVjdEVsZW1lbnQ+IEhUTUxTZWxlY3RFbGVt
ZW50OjpjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvY3Vt
ZW50LCBIVE1MRm9ybUVsZW1lbnQqIGZvcm0pCi0tIAoxLjcuMi4xCgo=
</data>
<flag name="review"
          id="72754"
          type_id="1"
          status="+"
          setter="dglazkov"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81395</attachid>
            <date>2011-02-06 01:36:02 -0800</date>
            <delta_ts>2011-02-06 11:09:34 -0800</delta_ts>
            <desc>Unskips html5lib/runner.html for Qt and GTK</desc>
            <filename>0001-Un-skips-html5lib-runner.html-for-Qt-and-GTK.patch</filename>
            <type>text/plain</type>
            <size>17562</size>
            <attacher name="Dominic Cooney">dominicc</attacher>
            
              <data encoding="base64">RnJvbSA0ZTk5ZTA3ZmNiY2YyZThhNDdkYzQxNjc5MjQ0NmY5MjQ5MTVmOTQ3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBEb21pbmljIENvb25leSA8ZG9taW5pY2NAZ29vZ2xlLmNvbT4K
RGF0ZTogU3VuLCA2IEZlYiAyMDExIDE4OjMxOjQ3ICswOTAwClN1YmplY3Q6IFtQQVRDSF0gVW4t
c2tpcHMgaHRtbDVsaWIvcnVubmVyLmh0bWwgZm9yIFF0IGFuZCBHVEsuCgotLS0KIExheW91dFRl
c3RzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMSArKysrCiBM
YXlvdXRUZXN0cy9odG1sNWxpYi9ydW5uZXItZXhwZWN0ZWQudHh0ICAgICAgICAgICB8ICAgNDUg
Ky0tLS0tLS0tLS0tLS0tCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZCAgICAgICAg
ICAgICAgICAgICB8ICAgIDQgLQogLi4uL3BsYXRmb3JtL21hYy9mYXN0L2h0bWwva2V5Z2VuLWV4
cGVjdGVkLnR4dCAgICAgfCAgICA5ICsrLQogLi4uL21hYy9mYXN0L2ludmFsaWQvcmVzaWR1YWwt
c3R5bGUtZXhwZWN0ZWQudHh0ICAgfCAgICA5ICsrLQogTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQv
U2tpcHBlZCAgICAgICAgICAgICAgICAgICAgfCAgICA0IC0KIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzNiArKysrKysrKysrKwogU291cmNl
L1dlYkNvcmUvY3NzL2h0bWwuY3NzICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEzICsrKy0K
IFNvdXJjZS9XZWJDb3JlL2RvbS9TZWxlY3RFbGVtZW50LmNwcCAgICAgICAgICAgICAgIHwgICAg
OSArLS0KIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEtleWdlbkVsZW1lbnQuY3BwICAgICAgICAg
IHwgICA2MiArKysrKysrKysrKysrKystLS0tLQogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5
Z2VuRWxlbWVudC5oICAgICAgICAgICAgfCAgIDE4ICsrKysrLQogU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MT3B0aW9uRWxlbWVudC5jcHAgICAgICAgICAgfCAgICAyICstCiBTb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxTZWxlY3RFbGVtZW50LmNwcCAgICAgICAgICB8ICAgIDIgKy0KIDEzIGZpbGVz
IGNoYW5nZWQsIDEzNCBpbnNlcnRpb25zKCspLCA5MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZjk1
ZDU2MS4uODVlZjMwNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDExLTAyLTA2ICBEb21pbmlj
IENvb25leSAgPGRvbWluaWNjQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGlt
aXRyaSBHbGF6a292LgorCisgICAgICAgIENvbnZlcnQgPGtleWdlbj4gb3B0aW9uIGVsZW1lbnRz
IHRvIGEgc2hhZG93IERPTQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTEzNzkKKworICAgICAgICAqIGh0bWw1bGliL3J1bm5lci1leHBlY3RlZC50eHQ6
IFR3byBtb3JlIHRlc3RzIHBhc3MuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvaHRtbC9r
ZXlnZW4tZXhwZWN0ZWQudHh0OiBTaGFkb3cgcmVuZGVyIHRyZWUuCisgICAgICAgICogcGxhdGZv
cm0vbWFjL2Zhc3QvaW52YWxpZC9yZXNpZHVhbC1zdHlsZS1leHBlY3RlZC50eHQ6CisKIDIwMTEt
MDItMDUgIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBbQ2hyb21pdW1dIEFkZCBiYXNlbGluZXMgZm9yIHRoZSB0ZXN0IGFkZGVkIGluIHI3NzY5MC4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0bWw1bGliL3J1bm5lci1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9odG1sNWxpYi9ydW5uZXItZXhwZWN0ZWQudHh0CmluZGV4IDFkZDk1YTEuLmEz
ODcyZWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0bWw1bGliL3J1bm5lci1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaHRtbDVsaWIvcnVubmVyLWV4cGVjdGVkLnR4dApAQCAtMjcs
MjkgKzI3LDggQEAgcmVzb3VyY2VzL3Rlc3RzNS5kYXQ6IFBBU1MKIAogcmVzb3VyY2VzL3Rlc3Rz
Ni5kYXQ6IFBBU1MKIAotcmVzb3VyY2VzL3Rlc3RzNy5kYXQ6Ci0zMAorcmVzb3VyY2VzL3Rlc3Rz
Ny5kYXQ6IFBBU1MKIAotVGVzdCAzMCBvZiAzMCBpbiByZXNvdXJjZXMvdGVzdHM3LmRhdCBmYWls
ZWQuIElucHV0OgotPHNlbGVjdD48a2V5Z2VuPgotR290OgotfCA8aHRtbD4KLXwgICA8aGVhZD4K
LXwgICA8Ym9keT4KLXwgICAgIDxzZWxlY3Q+Ci18ICAgICA8a2V5Z2VuPgotfCAgICAgICA8b3B0
aW9uPgotfCAgICAgICAgICIyMDQ4IChIaWdoIEdyYWRlKSIKLXwgICAgICAgPG9wdGlvbj4KLXwg
ICAgICAgICAiMTAyNCAoTWVkaXVtIEdyYWRlKSIKLXwgICAgICAgPG9wdGlvbj4KLXwgICAgICAg
ICAiNTEyIChMb3cgR3JhZGUpIgotRXhwZWN0ZWQ6Ci18IDxodG1sPgotfCAgIDxoZWFkPgotfCAg
IDxib2R5PgotfCAgICAgPHNlbGVjdD4KLXwgICAgIDxrZXlnZW4+CiByZXNvdXJjZXMvdGVzdHM4
LmRhdDogUEFTUwogCiByZXNvdXJjZXMvdGVzdHM5LmRhdDoKQEAgLTI0OSw3ICsyMjgsNiBAQCBy
ZXNvdXJjZXMvdGVzdHMxOC5kYXQ6IFBBU1MKIHJlc291cmNlcy90ZXN0czE5LmRhdDoKIDMxCiAz
MgotNjMKIDc4CiAKIFRlc3QgMzEgb2YgOTcgaW4gcmVzb3VyY2VzL3Rlc3RzMTkuZGF0IGZhaWxl
ZC4gSW5wdXQ6CkBAIC0yOTgsMjcgKzI3Niw2IEBAIEV4cGVjdGVkOgogfCAgICAgPHA+CiB8ICAg
ICA8aDE+CiAKLVRlc3QgNjMgb2YgOTcgaW4gcmVzb3VyY2VzL3Rlc3RzMTkuZGF0IGZhaWxlZC4g
SW5wdXQ6Ci08IWRvY3R5cGUgaHRtbD48a2V5Z2VuPjxmcmFtZXNldD4KLUdvdDoKLXwgPCFET0NU
WVBFIGh0bWw+Ci18IDxodG1sPgotfCAgIDxoZWFkPgotfCAgIDxib2R5PgotfCAgICAgPGtleWdl
bj4KLXwgICAgICAgPG9wdGlvbj4KLXwgICAgICAgICAiMjA0OCAoSGlnaCBHcmFkZSkiCi18ICAg
ICAgIDxvcHRpb24+Ci18ICAgICAgICAgIjEwMjQgKE1lZGl1bSBHcmFkZSkiCi18ICAgICAgIDxv
cHRpb24+Ci18ICAgICAgICAgIjUxMiAoTG93IEdyYWRlKSIKLUV4cGVjdGVkOgotfCA8IURPQ1RZ
UEUgaHRtbD4KLXwgPGh0bWw+Ci18ICAgPGhlYWQ+Ci18ICAgPGJvZHk+Ci18ICAgICA8a2V5Z2Vu
PgotCiBUZXN0IDc4IG9mIDk3IGluIHJlc291cmNlcy90ZXN0czE5LmRhdCBmYWlsZWQuIElucHV0
OgogPCFkb2N0eXBlIGh0bWw+PHA+PG1hdGg+PG1uPjxzcGFuPjwvcD5hCiBHb3Q6CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL2d0ay9Ta2lwcGVkCmluZGV4IDM1YzQ4MDguLjJiOGQzNWUgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0
ay9Ta2lwcGVkCkBAIC00MzkyLDEwICs0MzkyLDYgQEAgc3ZnL2RvbS9wYXRoLXBhcnNlci5odG1s
CiBodHRwL3Rlc3RzL3NlY3VyaXR5LzQwMS1sb2dvdXQvNDAxLWxvZ291dC5waHAKIGh0dHAvdGVz
dHMveG1saHR0cHJlcXVlc3QvcmVtZW1iZXItYmFkLXBhc3N3b3JkLmh0bWwKIAotIyBUaGVyZSdz
IHNvbWV0aGlnbiBzdHJhbmdlIGdvaW5nIG9uIHdpdGggPGtleWdlbj4gdGhhdCBjYXVzZXMgYQot
IyBkaWZmZXJlbnQgRE9NIHRvIGJlIGNyZWF0ZWQuCi1odG1sNWxpYi9ydW5uZXIuaHRtbAotCiAj
IFN0aWxsIGZhaWxpbmcsIGxvb2tzIGxpa2UgYSBidWcgaW4gdGhlIEV2ZW50U2VuZGVyIGRyYWct
YW5kLWRyb3AKIGZhc3QvY3NzL3VzZXItZHJhZy1ub25lLmh0bWwKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvaHRtbC9rZXlnZW4tZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvaHRtbC9rZXlnZW4tZXhwZWN0ZWQudHh0CmluZGV4
IDgxNTA0YmUuLjZkYTgzZTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9m
YXN0L2h0bWwva2V5Z2VuLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvZmFzdC9odG1sL2tleWdlbi1leHBlY3RlZC50eHQKQEAgLTMsOCArMyw5IEBAIGxheWVyIGF0
ICgwLDApIHNpemUgODAweDYwMAogbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgIFJlbmRl
ckJsb2NrIHtIVE1MfSBhdCAoMCwwKSBzaXplIDgwMHg2MDAKICAgICBSZW5kZXJCb2R5IHtCT0RZ
fSBhdCAoOCw4KSBzaXplIDc4NHg1ODQKLSAgICAgIFJlbmRlck1lbnVMaXN0IHtLRVlHRU59IGF0
ICgyLDIpIHNpemUgMTQ4eDE4IFtiZ2NvbG9yPSNGRkZGRkZdCi0gICAgICAgIFJlbmRlckJsb2Nr
IChhbm9ueW1vdXMpIGF0ICgwLDApIHNpemUgMTQ4eDE4Ci0gICAgICAgICAgUmVuZGVyVGV4dCBh
dCAoOCwyKSBzaXplIDk5eDEzCi0gICAgICAgICAgICB0ZXh0IHJ1biBhdCAoOCwyKSB3aWR0aCA5
OTogIjIwNDggKEhpZ2ggR3JhZGUpIgorICAgICAgUmVuZGVyQmxvY2sge0tFWUdFTn0gYXQgKDIs
Mikgc2l6ZSAxNDh4MTgKKyAgICAgICAgUmVuZGVyTWVudUxpc3Qge1NFTEVDVH0gYXQgKDAsMCkg
c2l6ZSAxNDh4MTggW2JnY29sb3I9I0ZGRkZGRl0KKyAgICAgICAgICBSZW5kZXJCbG9jayAoYW5v
bnltb3VzKSBhdCAoMCwwKSBzaXplIDE0OHgxOAorICAgICAgICAgICAgUmVuZGVyVGV4dCBhdCAo
OCwyKSBzaXplIDk5eDEzCisgICAgICAgICAgICAgIHRleHQgcnVuIGF0ICg4LDIpIHdpZHRoIDk5
OiAiMjA0OCAoSGlnaCBHcmFkZSkiCiAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkg
c2l6ZSAweDAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2ludmFs
aWQvcmVzaWR1YWwtc3R5bGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2Zhc3QvaW52YWxpZC9yZXNpZHVhbC1zdHlsZS1leHBlY3RlZC50eHQKaW5kZXggYzNhZWJiNi4u
NWUxODUxZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvaW52YWxp
ZC9yZXNpZHVhbC1zdHlsZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL2Zhc3QvaW52YWxpZC9yZXNpZHVhbC1zdHlsZS1leHBlY3RlZC50eHQKQEAgLTQ0NCwxMCAr
NDQ0LDExIEBAIGxheWVyIGF0ICgwLDApIHNpemUgNzg1eDM0NDEKICAgICAgIFJlbmRlckJsb2Nr
IChhbm9ueW1vdXMpIGF0ICgwLDE5MTEpIHNpemUgNzY5eDIyCiAgICAgICAgIFJlbmRlclRleHQg
eyN0ZXh0fSBhdCAoMCwxKSBzaXplIDc2eDE4CiAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMSkg
d2lkdGggNzY6ICJLRVlHRU46ICIKLSAgICAgICAgUmVuZGVyTWVudUxpc3Qge0tFWUdFTn0gYXQg
KDc4LDIpIHNpemUgMTQ4eDE4IFtiZ2NvbG9yPSNGRkZGRkZdCi0gICAgICAgICAgUmVuZGVyQmxv
Y2sgKGFub255bW91cykgYXQgKDAsMCkgc2l6ZSAxNDh4MTgKLSAgICAgICAgICAgIFJlbmRlclRl
eHQgYXQgKDgsMikgc2l6ZSA5OXgxMwotICAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoOCwyKSB3
aWR0aCA5OTogIjIwNDggKEhpZ2ggR3JhZGUpIgorICAgICAgICBSZW5kZXJCbG9jayB7S0VZR0VO
fSBhdCAoNzgsMikgc2l6ZSAxNDh4MTgKKyAgICAgICAgICBSZW5kZXJNZW51TGlzdCB7U0VMRUNU
fSBhdCAoMCwwKSBzaXplIDE0OHgxOCBbYmdjb2xvcj0jRkZGRkZGXQorICAgICAgICAgICAgUmVu
ZGVyQmxvY2sgKGFub255bW91cykgYXQgKDAsMCkgc2l6ZSAxNDh4MTgKKyAgICAgICAgICAgICAg
UmVuZGVyVGV4dCBhdCAoOCwyKSBzaXplIDk5eDEzCisgICAgICAgICAgICAgICAgdGV4dCBydW4g
YXQgKDgsMikgd2lkdGggOTk6ICIyMDQ4IChIaWdoIEdyYWRlKSIKICAgICAgICAgUmVuZGVySW5s
aW5lIHtGT05UfSBhdCAoMCwwKSBzaXplIDE3MXgxOCBbY29sb3I9IzAwODAwMF0KICAgICAgICAg
ICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDIyOCwxKSBzaXplIDE3MXgxOAogICAgICAgICAgICAg
dGV4dCBydW4gYXQgKDIyOCwxKSB3aWR0aCAxNzE6ICJBbGwgb2YgdGhpcyBzaG91bGQgYmUgZ3Jl
ZW4uIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKaW5kZXggMTQ4YTYwZS4uMTEwMmNkOSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9xdC9Ta2lwcGVkCkBAIC00ODI0LDEwICs0ODI0LDYgQEAgaHR0cC90ZXN0cy9taXNj
L3dlYnRpbWluZy1zbG93LWxvYWQucGhwCiBodHRwL3Rlc3RzL3NlY3VyaXR5LzQwMS1sb2dvdXQv
NDAxLWxvZ291dC5waHAKIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVtZW1iZXItYmFkLXBh
c3N3b3JkLmh0bWwKIAotIyBUaGVyZSdzIHNvbWV0aGlnbiBzdHJhbmdlIGdvaW5nIG9uIHdpdGgg
PGtleWdlbj4gdGhhdCBjYXVzZXMgYQotIyBkaWZmZXJlbnQgRE9NIHRvIGJlIGNyZWF0ZWQuCi1o
dG1sNWxpYi9ydW5uZXIuaHRtbAotCiAjIFRoZSBmZWF0dXJlIHdhcyBkaXNhYmxlZCBkdWUgdG8g
YSBjb21wYXRpYmlsaXR5IGlzc3VlLgogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NDA1MjAKIGZhc3QvZm9ybXMvaW50ZXJhY3RpdmUtdmFsaWRhdGlvbi1sb3N0LWZv
Y3VzYWJsZS5odG1sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjFiOTIxMC4uYWFkYTRhMCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDM5IEBACitsMjAxMS0wMi0wMyAgRG9taW5pYyBDb29uZXkgIDxkb21pbmljY0Bn
b29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IERpbWl0cmkgR2xhemtvdi4KKworICAg
ICAgICBDb252ZXJ0IDxrZXlnZW4+IG9wdGlvbiBlbGVtZW50cyB0byBhIHNoYWRvdyBET00KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUxMzc5CisKKyAg
ICAgICAgQ292ZXJlZCBieSBleGlzdGluZyB0ZXN0cyBlLmcuIGZhc3QvaHRtbC9rZXlnZW4uaHRt
bCwKKyAgICAgICAgaHRtbDVsaWIvcnVubmVyLmh0bWwsIGV0Yy4KKworICAgICAgICAqIGNzcy9o
dG1sLmNzczoKKyAgICAgICAgKGZvcm0pOiBDbGVhbnVwLgorICAgICAgICAoa2V5Z2VuLCBzZWxl
Y3QpOiBCb3JkZXIgcmFkaWkgc2hvdWxkIG1hdGNoIHNvIGZvY3VzIHJpbmcgbG9va3MgZ29vZC4K
KyAgICAgICAgKGtleWdlbjo6LXdlYmtpdC1rZXlnZW4tc2VsZWN0KTogTm8gbWFyZ2luIG9uIHRo
ZSBzaGFkb3cgZWxlbWVudC4KKyAgICAgICAgKHNlbGVjdCk6IEhvaXN0aW5nIGJvcmRlciByYWRp
dXMgdG8ga2V5Z2VuLCBzZWxlY3QgcnVsZS4KKyAgICAgICAgKiBkb20vU2VsZWN0RWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjp0b1NlbGVjdEVsZW1lbnQpOiBrZXlnZW4gaXMgbm8gbG9u
Z2VyIGEgc2VsZWN0IGVsZW1lbnQuCisgICAgICAgICogaHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5j
cHA6IEltcGxlbWVudHMga2V5Z2VuIHNoYWRvdy4KKyAgICAgICAgKFdlYkNvcmU6OktleWdlblNl
bGVjdEVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpLZXlnZW5TZWxlY3RFbGVt
ZW50OjpzaGFkb3dQc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpLZXlnZW5TZWxlY3RFbGVt
ZW50OjpLZXlnZW5TZWxlY3RFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxLZXlnZW5F
bGVtZW50OjpIVE1MS2V5Z2VuRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MS2V5Z2Vu
RWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEtl
eWdlbkVsZW1lbnQ6OmFwcGVuZEZvcm1EYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxLZXln
ZW5FbGVtZW50Ojpmb3JtQ29udHJvbFR5cGUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEtleWdl
bkVsZW1lbnQ6OnJlc2V0KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxLZXlnZW5FbGVtZW50Ojpz
ZWxlY3RTaGFkb3cpOgorICAgICAgICAqIGh0bWwvSFRNTEtleWdlbkVsZW1lbnQuaDoga2V5Z2Vu
IGlzIG5vIGxvbmdlciBhIHNlbGVjdCBvbiBDKysgc2lkZS4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxLZXlnZW5FbGVtZW50OjpjYW5TdGFydFNlbGVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MS2V5Z2VuRWxlbWVudDo6aXNFbnVtZXJhdGFibGUpOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TEtleWdlbkVsZW1lbnQ6OmlzUmVzZXR0YWJsZSk6CisgICAgICAgICogaHRtbC9IVE1MT3B0aW9u
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MT3B0aW9uRWxlbWVudDo6b3duZXJT
ZWxlY3RFbGVtZW50KTogT25seSBvd25lZCBieSBzZWxlY3RzLgorICAgICAgICAqIGh0bWwvSFRN
TFNlbGVjdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNlbGVjdEVsZW1lbnQ6
OkhUTUxTZWxlY3RFbGVtZW50KTogT25seSAnc2VsZWN0JyB0YWcgbmFtZS4KKwogMjAxMS0wMi0w
NSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IEVyaWMgU2VpZGVsLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL2h0bWwuY3NzIGIv
U291cmNlL1dlYkNvcmUvY3NzL2h0bWwuY3NzCmluZGV4IGJjN2E0NDUuLjBmMTNmY2IgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9odG1sLmNzcworKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvaHRtbC5jc3MKQEAgLTMyMyw3ICszMjMsNyBAQCBvbCB1bCwgdWwgb2wsIHVsIHVsLCBvbCBv
bCB7CiAKIGZvcm0gewogICAgIGRpc3BsYXk6IGJsb2NrOwotICAgIG1hcmdpbi10b3A6IDBfX3Fl
bQorICAgIG1hcmdpbi10b3A6IDBfX3FlbTsKIH0KIAogbGFiZWwgewpAQCAtNDMzLDYgKzQzMywx
NCBAQCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1zcGVlY2gtYnV0dG9uIHsKICAgICBkaXNwbGF5OiBp
bmxpbmUtYmxvY2s7CiB9CiAKK2tleWdlbiwgc2VsZWN0IHsKKyAgICAtd2Via2l0LWJvcmRlci1y
YWRpdXM6IDVweDsKK30KKwora2V5Z2VuOjotd2Via2l0LWtleWdlbi1zZWxlY3QgeworICAgIG1h
cmdpbjogMHB4OworfQorCiB0ZXh0YXJlYSB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0
YXJlYTsKICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsKQEAgLTUzNSwxMiArNTQzLDExIEBA
IGlucHV0W3R5cGU9InJhZGlvIl0gewogICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJv
eDsKIH0KIAota2V5Z2VuLCBzZWxlY3Qgeworc2VsZWN0IHsKICAgICAtd2Via2l0LWFwcGVhcmFu
Y2U6IG1lbnVsaXN0OwogICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAt
d2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgIGJvcmRlcjogMXB4IHNvbGlkOwotICAgIC13
ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4OwogICAgIHdoaXRlLXNwYWNlOiBwcmU7CiAgICAgLXdl
YmtpdC1ydGwtb3JkZXJpbmc6IGxvZ2ljYWw7CiAgICAgY29sb3I6IGJsYWNrOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL1NlbGVjdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZG9tL1NlbGVjdEVsZW1lbnQuY3BwCmluZGV4IGE2NmQ4MDMuLmE0ZGEwYWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9TZWxlY3RFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vU2VsZWN0RWxlbWVudC5jcHAKQEAgLTMwLDcgKzMwLDYgQEAKICNpbmNsdWRlICJGb3Jt
RGF0YUxpc3QuaCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkhUTUxGb3JtRWxlbWVu
dC5oIgotI2luY2x1ZGUgIkhUTUxLZXlnZW5FbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVz
LmgiCiAjaW5jbHVkZSAiSFRNTFNlbGVjdEVsZW1lbnQuaCIKICNpbmNsdWRlICJLZXlib2FyZEV2
ZW50LmgiCkBAIC0xMDI3LDEyICsxMDI2LDggQEAgY29uc3QgVmVjdG9yPEVsZW1lbnQqPiYgU2Vs
ZWN0RWxlbWVudERhdGE6Omxpc3RJdGVtcyhjb25zdCBFbGVtZW50KiBlbGVtZW50KSBjb24KIAog
U2VsZWN0RWxlbWVudCogdG9TZWxlY3RFbGVtZW50KEVsZW1lbnQqIGVsZW1lbnQpCiB7Ci0gICAg
aWYgKGVsZW1lbnQtPmlzSFRNTEVsZW1lbnQoKSkgewotICAgICAgICBpZiAoZWxlbWVudC0+aGFz
VGFnTmFtZShIVE1MTmFtZXM6OnNlbGVjdFRhZykpCi0gICAgICAgICAgICByZXR1cm4gc3RhdGlj
X2Nhc3Q8SFRNTFNlbGVjdEVsZW1lbnQqPihlbGVtZW50KTsKLSAgICAgICAgaWYgKGVsZW1lbnQt
Pmhhc1RhZ05hbWUoSFRNTE5hbWVzOjprZXlnZW5UYWcpKQotICAgICAgICAgICAgcmV0dXJuIHN0
YXRpY19jYXN0PEhUTUxLZXlnZW5FbGVtZW50Kj4oZWxlbWVudCk7Ci0gICAgfQorICAgIGlmIChl
bGVtZW50LT5pc0hUTUxFbGVtZW50KCkgJiYgZWxlbWVudC0+aGFzVGFnTmFtZShIVE1MTmFtZXM6
OnNlbGVjdFRhZykpCisgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxIVE1MU2VsZWN0RWxlbWVu
dCo+KGVsZW1lbnQpOwogCiAjaWYgRU5BQkxFKFdNTCkKICAgICBpZiAoZWxlbWVudC0+aXNXTUxF
bGVtZW50KCkgJiYgZWxlbWVudC0+aGFzVGFnTmFtZShXTUxOYW1lczo6c2VsZWN0VGFnKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEtleWdlbkVsZW1lbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5jcHAKaW5kZXggODgxYTBhOC4uYjkw
MzM1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MS2V5Z2VuRWxlbWVudC5jcHAKQEAgLTI5
LDYgKzI5LDcgQEAKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkZvcm1EYXRhTGlz
dC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUgIkhUTUxTZWxlY3RFbGVtZW50
LmgiCiAjaW5jbHVkZSAiSFRNTE9wdGlvbkVsZW1lbnQuaCIKICNpbmNsdWRlICJTU0xLZXlHZW5l
cmF0b3IuaCIKICNpbmNsdWRlICJUZXh0LmgiCkBAIC00MCwyMCArNDEsNDEgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwogCitjbGFzcyBLZXlnZW5T
ZWxlY3RFbGVtZW50IDogcHVibGljIEhUTUxTZWxlY3RFbGVtZW50IHsKK3B1YmxpYzoKKyAgICBz
dGF0aWMgUGFzc1JlZlB0cjxLZXlnZW5TZWxlY3RFbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQqIGRv
Y3VtZW50KQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBLZXlnZW5TZWxlY3RF
bGVtZW50KGRvY3VtZW50KSk7CisgICAgfQorCisgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJp
bmcmIHNoYWRvd1BzZXVkb0lkKCkgY29uc3QKKyAgICB7CisgICAgICAgIERFRklORV9TVEFUSUNf
TE9DQUwoQXRvbWljU3RyaW5nLCBwc2V1ZG9JZCwgKCItd2Via2l0LWtleWdlbi1zZWxlY3QiKSk7
CisgICAgICAgIHJldHVybiBwc2V1ZG9JZDsKKyAgICB9CisKK3Byb3RlY3RlZDoKKyAgICBLZXln
ZW5TZWxlY3RFbGVtZW50KERvY3VtZW50KiBkb2N1bWVudCkKKyAgICAgICAgOiBIVE1MU2VsZWN0
RWxlbWVudChzZWxlY3RUYWcsIGRvY3VtZW50LCAwKQorICAgIHsKKyAgICB9Cit9OworCiBpbmxp
bmUgSFRNTEtleWdlbkVsZW1lbnQ6OkhUTUxLZXlnZW5FbGVtZW50KGNvbnN0IFF1YWxpZmllZE5h
bWUmIHRhZ05hbWUsIERvY3VtZW50KiBkb2N1bWVudCwgSFRNTEZvcm1FbGVtZW50KiBmb3JtKQot
ICAgIDogSFRNTFNlbGVjdEVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQsIGZvcm0pCisgICAgOiBI
VE1MRm9ybUNvbnRyb2xFbGVtZW50V2l0aFN0YXRlKHRhZ05hbWUsIGRvY3VtZW50LCBmb3JtKQog
ewogICAgIEFTU0VSVChoYXNUYWdOYW1lKGtleWdlblRhZykpOwogCi0gICAgLy8gRklYTUU6IFRo
aXMgbWFya3VwIHNob3VsZCBnbyBpbiB0aGUgc2hhZG93IHRyZWUuCi0gICAgLy8gQWRkIG9uZSBv
cHRpb24gZWxlbWVudCBmb3IgZWFjaCBrZXkgc2l6ZS4KKyAgICAvLyBDcmVhdGUgYSBzZWxlY3Qg
ZWxlbWVudCB3aXRoIG9uZSBvcHRpb24gZWxlbWVudCBmb3IgZWFjaCBrZXkgc2l6ZS4KKyAgICBS
ZWZQdHI8SFRNTFNlbGVjdEVsZW1lbnQ+IHNlbGVjdCA9IEtleWdlblNlbGVjdEVsZW1lbnQ6OmNy
ZWF0ZShkb2N1bWVudCk7CiAgICAgVmVjdG9yPFN0cmluZz4ga2V5czsKICAgICBnZXRTdXBwb3J0
ZWRLZXlTaXplcyhrZXlzKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGtleXMuc2l6ZSgp
OyArK2kpIHsKICAgICAgICAgUmVmUHRyPEhUTUxPcHRpb25FbGVtZW50PiBvcHRpb24gPSBIVE1M
T3B0aW9uRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50LCB0aGlzLT5mb3JtKCkpOwotICAgICAgICBw
YXJzZXJBZGRDaGlsZChvcHRpb24pOworICAgICAgICBzZWxlY3QtPnBhcnNlckFkZENoaWxkKG9w
dGlvbik7CiAgICAgICAgIG9wdGlvbi0+cGFyc2VyQWRkQ2hpbGQoVGV4dDo6Y3JlYXRlKGRvY3Vt
ZW50LCBrZXlzW2ldKSk7CiAgICAgfQorICAgIHNldFNoYWRvd1Jvb3Qoc2VsZWN0KTsKIH0KIAog
UGFzc1JlZlB0cjxIVE1MS2V5Z2VuRWxlbWVudD4gSFRNTEtleWdlbkVsZW1lbnQ6OmNyZWF0ZShj
b25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCogZG9jdW1lbnQsIEhUTUxGb3Jt
RWxlbWVudCogZm9ybSkKQEAgLTYxLDIyICs4MywxOCBAQCBQYXNzUmVmUHRyPEhUTUxLZXlnZW5F
bGVtZW50PiBIVE1MS2V5Z2VuRWxlbWVudDo6Y3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIHRh
ZwogICAgIHJldHVybiBhZG9wdFJlZihuZXcgSFRNTEtleWdlbkVsZW1lbnQodGFnTmFtZSwgZG9j
dW1lbnQsIGZvcm0pKTsKIH0KIAotY29uc3QgQXRvbWljU3RyaW5nJiBIVE1MS2V5Z2VuRWxlbWVu
dDo6Zm9ybUNvbnRyb2xUeXBlKCkgY29uc3QKLXsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNv
bnN0IEF0b21pY1N0cmluZywga2V5Z2VuLCAoImtleWdlbiIpKTsKLSAgICByZXR1cm4ga2V5Z2Vu
OwotfQotCiB2b2lkIEhUTUxLZXlnZW5FbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRy
aWJ1dGUqIGF0dHIpCiB7CisgICAgLy8gUmVmbGVjdCBkaXNhYmxlZCBhdHRyaWJ1dGUgb24gdGhl
IHNoYWRvdyBzZWxlY3QgZWxlbWVudAorICAgIGlmIChhdHRyLT5uYW1lKCkgPT0gZGlzYWJsZWRB
dHRyKQorICAgICAgICBzZWxlY3RTaGFkb3coKS0+c2V0QXR0cmlidXRlKGF0dHItPm5hbWUoKSwg
YXR0ci0+dmFsdWUoKSk7CisKICAgICBpZiAoYXR0ci0+bmFtZSgpID09IGNoYWxsZW5nZUF0dHIp
CiAgICAgICAgIG1fY2hhbGxlbmdlID0gYXR0ci0+dmFsdWUoKTsKICAgICBlbHNlIGlmIChhdHRy
LT5uYW1lKCkgPT0ga2V5dHlwZUF0dHIpCiAgICAgICAgIG1fa2V5VHlwZSA9IGF0dHItPnZhbHVl
KCk7Ci0gICAgZWxzZSB7Ci0gICAgICAgIC8vIFNraXAgSFRNTFNlbGVjdEVsZW1lbnQgcGFyc2lu
Zy4KKyAgICBlbHNlCiAgICAgICAgIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OnBhcnNlTWFwcGVk
QXR0cmlidXRlKGF0dHIpOwotICAgIH0KIH0KIAogYm9vbCBIVE1MS2V5Z2VuRWxlbWVudDo6YXBw
ZW5kRm9ybURhdGEoRm9ybURhdGFMaXN0JiBlbmNvZGVkX3ZhbHVlcywgYm9vbCkKQEAgLTg0LDEx
ICsxMDIsMjcgQEAgYm9vbCBIVE1MS2V5Z2VuRWxlbWVudDo6YXBwZW5kRm9ybURhdGEoRm9ybURh
dGFMaXN0JiBlbmNvZGVkX3ZhbHVlcywgYm9vbCkKICAgICAvLyBPbmx5IFJTQSBpcyBzdXBwb3J0
ZWQgYXQgdGhpcyB0aW1lLgogICAgIGlmICghbV9rZXlUeXBlLmlzTnVsbCgpICYmICFlcXVhbEln
bm9yaW5nQ2FzZShtX2tleVR5cGUsICJyc2EiKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAg
IFN0cmluZyB2YWx1ZSA9IHNpZ25lZFB1YmxpY0tleUFuZENoYWxsZW5nZVN0cmluZyhzZWxlY3Rl
ZEluZGV4KCksIG1fY2hhbGxlbmdlLCBkb2N1bWVudCgpLT5iYXNlVVJMKCkpOworICAgIFN0cmlu
ZyB2YWx1ZSA9IHNpZ25lZFB1YmxpY0tleUFuZENoYWxsZW5nZVN0cmluZyhzZWxlY3RTaGFkb3co
KS0+c2VsZWN0ZWRJbmRleCgpLCBtX2NoYWxsZW5nZSwgZG9jdW1lbnQoKS0+YmFzZVVSTCgpKTsK
ICAgICBpZiAodmFsdWUuaXNOdWxsKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBlbmNv
ZGVkX3ZhbHVlcy5hcHBlbmREYXRhKG5hbWUoKSwgdmFsdWUudXRmOCgpKTsKICAgICByZXR1cm4g
dHJ1ZTsKIH0KIAorY29uc3QgQXRvbWljU3RyaW5nJiBIVE1MS2V5Z2VuRWxlbWVudDo6Zm9ybUNv
bnRyb2xUeXBlKCkgY29uc3QKK3sKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21p
Y1N0cmluZywga2V5Z2VuLCAoImtleWdlbiIpKTsKKyAgICByZXR1cm4ga2V5Z2VuOworfQorCit2
b2lkIEhUTUxLZXlnZW5FbGVtZW50OjpyZXNldCgpCit7CisgICAgc3RhdGljX2Nhc3Q8SFRNTEZv
cm1Db250cm9sRWxlbWVudCo+KHNlbGVjdFNoYWRvdygpKS0+cmVzZXQoKTsKK30KKworSFRNTFNl
bGVjdEVsZW1lbnQqIEhUTUxLZXlnZW5FbGVtZW50OjpzZWxlY3RTaGFkb3coKQoreworICAgIHJl
dHVybiBzdGF0aWNfY2FzdDxIVE1MU2VsZWN0RWxlbWVudCo+KHNoYWRvd1Jvb3QoKSk7Cit9CisK
IH0gLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXln
ZW5FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmgKaW5k
ZXggM2RjNGFkMi4uYTdhOGE2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
S2V5Z2VuRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEtleWdlbkVsZW1l
bnQuaApAQCAtMjQsMTEgKzI0LDEzIEBACiAjaWZuZGVmIEhUTUxLZXlnZW5FbGVtZW50X2gKICNk
ZWZpbmUgSFRNTEtleWdlbkVsZW1lbnRfaAogCi0jaW5jbHVkZSAiSFRNTFNlbGVjdEVsZW1lbnQu
aCIKKyNpbmNsdWRlICJIVE1MRm9ybUNvbnRyb2xFbGVtZW50LmgiCiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotY2xhc3MgSFRNTEtleWdlbkVsZW1lbnQgOiBwdWJsaWMgSFRNTFNlbGVjdEVsZW1l
bnQgeworY2xhc3MgSFRNTFNlbGVjdEVsZW1lbnQ7CisKK2NsYXNzIEhUTUxLZXlnZW5FbGVtZW50
IDogcHVibGljIEhUTUxGb3JtQ29udHJvbEVsZW1lbnRXaXRoU3RhdGUgewogcHVibGljOgogICAg
IHN0YXRpYyBQYXNzUmVmUHRyPEhUTUxLZXlnZW5FbGVtZW50PiBjcmVhdGUoY29uc3QgUXVhbGlm
aWVkTmFtZSYsIERvY3VtZW50KiwgSFRNTEZvcm1FbGVtZW50Kik7CiAKQEAgLTM3LDEzICszOSwy
MSBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIEhUTUxLZXlnZW5FbGVtZW50KGNvbnN0IFF1YWxp
ZmllZE5hbWUmLCBEb2N1bWVudCosIEhUTUxGb3JtRWxlbWVudCopOwogCi0gICAgdmlydHVhbCBi
b29sIGlzUmVzZXR0YWJsZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KKyAgICB2aXJ0dWFsIGJv
b2wgY2FuU3RhcnRTZWxlY3Rpb24oKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCi0gICAgdmly
dHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGZvcm1Db250cm9sVHlwZSgpIGNvbnN0OwogICAgIHZp
cnR1YWwgdm9pZCBwYXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRyaWJ1dGUqKTsKKwogICAgIHZpcnR1
YWwgYm9vbCBhcHBlbmRGb3JtRGF0YShGb3JtRGF0YUxpc3QmLCBib29sKTsKKyAgICB2aXJ0dWFs
IGNvbnN0IEF0b21pY1N0cmluZyYgZm9ybUNvbnRyb2xUeXBlKCkgY29uc3Q7CiAgICAgdmlydHVh
bCBib29sIGlzT3B0aW9uYWxGb3JtQ29udHJvbCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAK
KyAgICB2aXJ0dWFsIGJvb2wgaXNFbnVtZXJhdGFibGUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9
CisKKyAgICB2aXJ0dWFsIGJvb2wgaXNSZXNldHRhYmxlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsg
fQorICAgIHZpcnR1YWwgdm9pZCByZXNldCgpOworCisgICAgSFRNTFNlbGVjdEVsZW1lbnQqIHNl
bGVjdFNoYWRvdygpOworCiAgICAgQXRvbWljU3RyaW5nIG1fY2hhbGxlbmdlOwogICAgIEF0b21p
Y1N0cmluZyBtX2tleVR5cGU7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MT3B0aW9uRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRpb25FbGVt
ZW50LmNwcAppbmRleCBiYzU3ODhkLi45NjZmODM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxPcHRpb25FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxPcHRpb25FbGVtZW50LmNwcApAQCAtMTk0LDcgKzE5NCw3IEBAIHZvaWQgSFRNTE9wdGlvbkVs
ZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciwgTm9kZSogYmVmb3Jl
Q2hhbmdlCiBIVE1MU2VsZWN0RWxlbWVudCogSFRNTE9wdGlvbkVsZW1lbnQ6Om93bmVyU2VsZWN0
RWxlbWVudCgpIGNvbnN0CiB7CiAgICAgQ29udGFpbmVyTm9kZSogc2VsZWN0ID0gcGFyZW50Tm9k
ZSgpOwotICAgIHdoaWxlIChzZWxlY3QgJiYgIShzZWxlY3QtPmhhc1RhZ05hbWUoc2VsZWN0VGFn
KSB8fCBzZWxlY3QtPmhhc1RhZ05hbWUoa2V5Z2VuVGFnKSkpCisgICAgd2hpbGUgKHNlbGVjdCAm
JiAhc2VsZWN0LT5oYXNUYWdOYW1lKHNlbGVjdFRhZykpCiAgICAgICAgIHNlbGVjdCA9IHNlbGVj
dC0+cGFyZW50Tm9kZSgpOwogCiAgICAgaWYgKCFzZWxlY3QpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxTZWxlY3RFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFNlbGVjdEVsZW1lbnQuY3BwCmluZGV4IGRhNzJhYTkuLjkxZjg2MGIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNlbGVjdEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFNlbGVjdEVsZW1lbnQuY3BwCkBAIC00OSw3ICs0OSw3IEBAIHN0YXRp
YyBjb25zdCB1bnNpZ25lZCBtYXhTZWxlY3RJdGVtcyA9IDEwMDAwOwogSFRNTFNlbGVjdEVsZW1l
bnQ6OkhUTUxTZWxlY3RFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3Vt
ZW50KiBkb2N1bWVudCwgSFRNTEZvcm1FbGVtZW50KiBmb3JtKQogICAgIDogSFRNTEZvcm1Db250
cm9sRWxlbWVudFdpdGhTdGF0ZSh0YWdOYW1lLCBkb2N1bWVudCwgZm9ybSkKIHsKLSAgICBBU1NF
UlQoaGFzVGFnTmFtZShzZWxlY3RUYWcpIHx8IGhhc1RhZ05hbWUoa2V5Z2VuVGFnKSk7CisgICAg
QVNTRVJUKGhhc1RhZ05hbWUoc2VsZWN0VGFnKSk7CiB9CiAKIFBhc3NSZWZQdHI8SFRNTFNlbGVj
dEVsZW1lbnQ+IEhUTUxTZWxlY3RFbGVtZW50OjpjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYg
dGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50LCBIVE1MRm9ybUVsZW1lbnQqIGZvcm0pCi0tIAox
LjYuNgoK
</data>
<flag name="review"
          id="72961"
          type_id="1"
          status="+"
          setter="eric"
    />
    <flag name="commit-queue"
          id="72962"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>