<?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>14407</bug_id>
          
          <creation_ts>2007-06-26 02:44:54 -0700</creation_ts>
          <short_desc>ALT + DOWN arrow key does not open select</short_desc>
          <delta_ts>2011-08-24 11:12:44 -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>Accessibility</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows XP</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, PlatformOnly</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tore B. Krudtaa">krudtaa</reporter>
          <assigned_to name="Jon Honeycutt">jhoneycutt</assigned_to>
          <cc>anantha</cc>
    
    <cc>ap</cc>
    
    <cc>jhoneycutt</cc>
    
    <cc>mal</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>6235</commentid>
    <comment_count>0</comment_count>
    <who name="Tore B. Krudtaa">krudtaa</who>
    <bug_when>2007-06-26 02:44:54 -0700</bug_when>
    <thetext>ALT + DOWN arrow key does not open select

Likewise I would like ALT + UP arrow key to close the select.

The other browsers handles this well, hope Safari can implement this to work the same way so the endusers kan use what they are familiar with.

In Safari I&apos;m unable to open the select list by using the keyboard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>5379</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-07-06 05:15:56 -0700</bug_when>
    <thetext>Confirmed with r23677.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>5258</commentid>
    <comment_count>2</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2007-07-07 13:08:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/5319507&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>436963</commentid>
    <comment_count>3</comment_count>
      <attachid>100777</attachid>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2011-07-14 00:06:45 -0700</bug_when>
    <thetext>Created attachment 100777
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>436989</commentid>
    <comment_count>4</comment_count>
      <attachid>100777</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-07-14 01:05:16 -0700</bug_when>
    <thetext>Comment on attachment 100777
Patch

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

Please consider implementing F4 as mentioned in bug 22232 comment 6 to end this topic for good.

I&apos;m going to say r=me, but I&apos;m also requesting some non-trivial changes to be made before landing. If you want another quick review round when these changes are made, please feel free to post a new patch for review.

&gt; Source/WebCore/ChangeLog:6
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=14407
&gt; +        &lt;rdar://problem/5319507&gt;

It&apos;s not so obvious why this can&apos;t be tested. Please add a brief explanation to the ChangeLog.

&gt; Source/WebCore/ChangeLog:11
&gt; +        * WebCore.vcproj/WebCore.vcproj:
&gt; +        Add new file to project.

To make this comment more useful, you can name the new file.

&gt; Source/WebCore/ChangeLog:32
&gt; +        * platform/win/PopupMenuWin.cpp:
&gt; +        (WebCore::PopupMenuWin::show):
&gt; +        Forward WM_SYSKEYDOWN to the popup&apos;s HWND.
&gt; +        (WebCore::PopupMenuWin::wndProc):
&gt; +        When handling up or down arrow, if the alt key is pressed, tell the
&gt; +        client that the value changed, and hide the menu.

Please do mention why you are making this change. I assume that you found that it&apos;s how IE behaves when testing it, but the bug didn&apos;t ask for this.

&gt; Source/WebCore/dom/SelectElement.h:109
&gt; +    static bool platformHandleKeyboardEvent(SelectElementData&amp;, Element*, KeyboardEvent*, int&amp; selectedListIndex);

This function&apos;s name makes it sound like it&apos;s a universal override, which it is not - there is a ton of handling that happens regardless of what you do in this function. Is there any more specific name that you could give it?

Also, I think that ARROW_KEYS_POP_MENU code needs to be moved into this function in this patch to avoid having two completely different approaches to customizing behavior. Either that, or Alt-arrows should be implemented with an #if similar to ARROW_KEYS_POP_MENU without adding platform specific files.

&gt; Source/WebCore/dom/SelectElementWin.cpp:40
&gt; +    if (!event-&gt;altKey())
&gt; +        return false;
&gt; +
&gt; +    if (event-&gt;keyIdentifier() == &quot;Down&quot; || event-&gt;keyIdentifier() == &quot;Up&quot;) {

This check is incorrect - we almost certainly don&apos;t want Alt+Shift+Down and such to be handled here. In addition to checking that alt is pressed, you should check that no other modifier (except for possibly Caps Lock) is pressed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>437661</commentid>
    <comment_count>5</comment_count>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2011-07-15 04:19:48 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 100777 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=100777&amp;action=review
&gt; 
&gt; Please consider implementing F4 as mentioned in bug 22232 comment 6 to end this topic for good.

Added.

&gt; 
&gt; I&apos;m going to say r=me, but I&apos;m also requesting some non-trivial changes to be made before landing. If you want another quick review round when these changes are made, please feel free to post a new patch for review.

New patch coming.

&gt; 
&gt; &gt; Source/WebCore/ChangeLog:6
&gt; &gt; +        https://bugs.webkit.org/show_bug.cgi?id=14407
&gt; &gt; +        &lt;rdar://problem/5319507&gt;
&gt; 
&gt; It&apos;s not so obvious why this can&apos;t be tested. Please add a brief explanation to the ChangeLog.

Added a comment.

&gt; 
&gt; &gt; Source/WebCore/ChangeLog:11
&gt; &gt; +        * WebCore.vcproj/WebCore.vcproj:
&gt; &gt; +        Add new file to project.
&gt; 
&gt; To make this comment more useful, you can name the new file.

Done.

&gt; 
&gt; &gt; Source/WebCore/ChangeLog:32
&gt; &gt; +        * platform/win/PopupMenuWin.cpp:
&gt; &gt; +        (WebCore::PopupMenuWin::show):
&gt; &gt; +        Forward WM_SYSKEYDOWN to the popup&apos;s HWND.
&gt; &gt; +        (WebCore::PopupMenuWin::wndProc):
&gt; &gt; +        When handling up or down arrow, if the alt key is pressed, tell the
&gt; &gt; +        client that the value changed, and hide the menu.
&gt; 
&gt; Please do mention why you are making this change. I assume that you found that it&apos;s how IE behaves when testing it, but the bug didn&apos;t ask for this.

Added a comment about matching Firefox.

&gt; 
&gt; &gt; Source/WebCore/dom/SelectElement.h:109
&gt; &gt; +    static bool platformHandleKeyboardEvent(SelectElementData&amp;, Element*, KeyboardEvent*, int&amp; selectedListIndex);
&gt; 
&gt; This function&apos;s name makes it sound like it&apos;s a universal override, which it is not - there is a ton of handling that happens regardless of what you do in this function. Is there any more specific name that you could give it?

Renamed to platformHandleKeydownEvent, and modified so that if the platform function says it handled the event, we return early.

&gt; 
&gt; Also, I think that ARROW_KEYS_POP_MENU code needs to be moved into this function in this patch to avoid having two completely different approaches to customizing behavior. Either that, or Alt-arrows should be implemented with an #if similar to ARROW_KEYS_POP_MENU without adding platform specific files.

Moved it into the function, although I retained the #if rather than moving it to a separate file that those platforms included.

&gt; 
&gt; &gt; Source/WebCore/dom/SelectElementWin.cpp:40
&gt; &gt; +    if (!event-&gt;altKey())
&gt; &gt; +        return false;
&gt; &gt; +
&gt; &gt; +    if (event-&gt;keyIdentifier() == &quot;Down&quot; || event-&gt;keyIdentifier() == &quot;Up&quot;) {
&gt; 
&gt; This check is incorrect - we almost certainly don&apos;t want Alt+Shift+Down and such to be handled here. In addition to checking that alt is pressed, you should check that no other modifier (except for possibly Caps Lock) is pressed.

I did some testing with Firefox and updated the code to match what they allowed (which included Alt+Shift+Down and other modifiers).

Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>437662</commentid>
    <comment_count>6</comment_count>
      <attachid>100956</attachid>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2011-07-15 04:31:58 -0700</bug_when>
    <thetext>Created attachment 100956
Patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>437663</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-15 04:34:50 -0700</bug_when>
    <thetext>Attachment 100956 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebCore/platform/win/PopupMenuWin.cpp:825:  A case label should not be indented, but line up with its switch statement.  [whitespace/indent] [4]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>437770</commentid>
    <comment_count>8</comment_count>
      <attachid>100956</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-07-15 08:51:22 -0700</bug_when>
    <thetext>Comment on attachment 100956
Patch v2

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

&gt; Source/WebCore/dom/SelectElementWin.cpp:37
&gt; +    // Allow (Shift/Command) F4 and (Ctrl/Shift/Command) Alt/AltGr + Up/Down arrow to pop the menu, matching Firefox.

I&apos;m not sure if matching Firefox here is much good. In keyboard event handling, we generally only care about matching IE - and when implementing platform conventions like this one, it seems to be even more appropriate.

The comment is quite helpful explaining why the code does what it does. I don&apos;t think that Windows has a Command key though!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438128</commentid>
    <comment_count>9</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-07-15 22:51:06 -0700</bug_when>
    <thetext>This broke several builds, e.g.
http://build.webkit.org/builders/WinCE%20Release%20%28Build%29/builds/10709/steps/compile-webkit/logs/stdio</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438139</commentid>
    <comment_count>10</comment_count>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2011-07-16 05:41:33 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; This broke several builds, e.g.
&gt; http://build.webkit.org/builders/WinCE%20Release%20%28Build%29/builds/10709/steps/compile-webkit/logs/stdio

Landed in &lt;http://trac.webkit.org/changeset/91129&gt;. Attempted a WinCE build fix in &lt;http://trac.webkit.org/changeset/91149&gt;. I don&apos;t see any other builds broken from this change at the moment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>456226</commentid>
    <comment_count>11</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-08-24 11:12:44 -0700</bug_when>
    <thetext>*** Bug 22232 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>100777</attachid>
            <date>2011-07-14 00:06:45 -0700</date>
            <delta_ts>2011-07-15 04:31:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0002-alt-down-arrow-key-does-not-open-select.patch</filename>
            <type>text/plain</type>
            <size>10724</size>
            <attacher name="Jon Honeycutt">jhoneycutt</attacher>
            
              <data encoding="base64">RnJvbSAzNmVkMmMyZTk4ZmM3YTljN2VhNjYyYjdmMWMwMTI4ZThmNmViZDZlIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKb24gSG9uZXljdXR0IDxqaG9uZXljdXR0QGFwcGxlLmNvbT4K
RGF0ZTogV2VkLCAxMyBKdWwgMjAxMSAwMzowOTowMCAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIEFM
VCArIERPV04gYXJyb3cga2V5IGRvZXMgbm90IG9wZW4gc2VsZWN0CgpodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ0MDcKPHJkYXI6Ly9wcm9ibGVtLzUzMTk1MDc+CgpS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3By
b2o6CkFkZCBuZXcgZmlsZSB0byBwcm9qZWN0LgoKKiBkb20vU2VsZWN0RWxlbWVudC5jcHA6CihX
ZWJDb3JlOjpTZWxlY3RFbGVtZW50OjpwbGF0Zm9ybUhhbmRsZUtleWJvYXJkRXZlbnQpOgpSZXR1
cm4gZmFsc2UgZm9yIGFsbCBub24tV2luZG93cyBwbGF0Zm9ybXMuCihXZWJDb3JlOjpTZWxlY3RF
bGVtZW50OjptZW51TGlzdERlZmF1bHRFdmVudEhhbmRsZXIpOgpBbGxvdyB0aGUgcGxhdGZvcm0g
dGhlIGZpcnN0IGNoYW5jZSBhdCBoYW5kbGluZyB0aGUga2V5Ym9hcmQgZXZlbnQuCgoqIGRvbS9T
ZWxlY3RFbGVtZW50Lmg6CkRlY2xhcmUgcGxhdGZvcm1IYW5kbGVLZXlib2FyZEV2ZW50KCkuCiog
ZG9tL1NlbGVjdEVsZW1lbnRXaW4uY3BwOiBBZGRlZC4KKFdlYkNvcmU6OlNlbGVjdEVsZW1lbnQ6
OnBsYXRmb3JtSGFuZGxlS2V5Ym9hcmRFdmVudCk6CkhhbmRsZSBhbHQgKyBhcnJvdyB1cC9kb3du
IHRvIHNob3cgdGhlIHBvcHVwLiBBZnRlciB0aGUgcG9wdXAgaXMKZGlzbWlzc2VkLCByZWNvcmQg
dGhlIG5ldyBzZWxlY3RlZCBpbmRleCwgYW5kIHJlcG9ydCB0aGF0IHdlIGhhbmRsZWQKdGhlIGV2
ZW50LgoKKiBwbGF0Zm9ybS93aW4vUG9wdXBNZW51V2luLmNwcDoKKFdlYkNvcmU6OlBvcHVwTWVu
dVdpbjo6c2hvdyk6CkZvcndhcmQgV01fU1lTS0VZRE9XTiB0byB0aGUgcG9wdXAncyBIV05ELgoo
V2ViQ29yZTo6UG9wdXBNZW51V2luOjp3bmRQcm9jKToKV2hlbiBoYW5kbGluZyB1cCBvciBkb3du
IGFycm93LCBpZiB0aGUgYWx0IGtleSBpcyBwcmVzc2VkLCB0ZWxsIHRoZQpjbGllbnQgdGhhdCB0
aGUgdmFsdWUgY2hhbmdlZCwgYW5kIGhpZGUgdGhlIG1lbnUuCi0tLQogU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgfCAgIDMzICsrKysrKysrKysrKysrKysKIFNv
dXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIHwgICAgNCArKwogU291
cmNlL1dlYkNvcmUvZG9tL1NlbGVjdEVsZW1lbnQuY3BwICAgICAgICAgfCAgIDEzICsrKysrKy0K
IFNvdXJjZS9XZWJDb3JlL2RvbS9TZWxlY3RFbGVtZW50LmggICAgICAgICAgIHwgICAgMSArCiBT
b3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudFdpbi5jcHAgICAgICB8ICAgNTIgKysrKysr
KysrKysrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Qb3B1cE1l
bnVXaW4uY3BwIHwgICAyMyArKysrKysrKysrKy0KIDYgZmlsZXMgY2hhbmdlZCwgMTI0IGluc2Vy
dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgU291cmNlL1dlYkNv
cmUvZG9tL1NlbGVjdEVsZW1lbnRXaW4uY3BwCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDZjYTUxOGMuLmNjNGE3
NzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAorMjAxMS0wNy0xMyAgSm9uIEhvbmV5Y3V0
dCAgPGpob25leWN1dHRAYXBwbGUuY29tPgorCisgICAgICAgIEFMVCArIERPV04gYXJyb3cga2V5
IGRvZXMgbm90IG9wZW4gc2VsZWN0CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE0NDA3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81MzE5NTA3Pgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViQ29y
ZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6CisgICAgICAgIEFkZCBuZXcgZmlsZSB0byBwcm9qZWN0
LgorCisgICAgICAgICogZG9tL1NlbGVjdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U2VsZWN0RWxlbWVudDo6cGxhdGZvcm1IYW5kbGVLZXlib2FyZEV2ZW50KToKKyAgICAgICAgUmV0
dXJuIGZhbHNlIGZvciBhbGwgbm9uLVdpbmRvd3MgcGxhdGZvcm1zLgorICAgICAgICAoV2ViQ29y
ZTo6U2VsZWN0RWxlbWVudDo6bWVudUxpc3REZWZhdWx0RXZlbnRIYW5kbGVyKToKKyAgICAgICAg
QWxsb3cgdGhlIHBsYXRmb3JtIHRoZSBmaXJzdCBjaGFuY2UgYXQgaGFuZGxpbmcgdGhlIGtleWJv
YXJkIGV2ZW50LgorCisgICAgICAgICogZG9tL1NlbGVjdEVsZW1lbnQuaDoKKyAgICAgICAgRGVj
bGFyZSBwbGF0Zm9ybUhhbmRsZUtleWJvYXJkRXZlbnQoKS4KKyAgICAgICAgKiBkb20vU2VsZWN0
RWxlbWVudFdpbi5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U2VsZWN0RWxlbWVudDo6
cGxhdGZvcm1IYW5kbGVLZXlib2FyZEV2ZW50KToKKyAgICAgICAgSGFuZGxlIGFsdCArIGFycm93
IHVwL2Rvd24gdG8gc2hvdyB0aGUgcG9wdXAuIEFmdGVyIHRoZSBwb3B1cCBpcworICAgICAgICBk
aXNtaXNzZWQsIHJlY29yZCB0aGUgbmV3IHNlbGVjdGVkIGluZGV4LCBhbmQgcmVwb3J0IHRoYXQg
d2UgaGFuZGxlZAorICAgICAgICB0aGUgZXZlbnQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4v
UG9wdXBNZW51V2luLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBvcHVwTWVudVdpbjo6c2hvdyk6
CisgICAgICAgIEZvcndhcmQgV01fU1lTS0VZRE9XTiB0byB0aGUgcG9wdXAncyBIV05ELgorICAg
ICAgICAoV2ViQ29yZTo6UG9wdXBNZW51V2luOjp3bmRQcm9jKToKKyAgICAgICAgV2hlbiBoYW5k
bGluZyB1cCBvciBkb3duIGFycm93LCBpZiB0aGUgYWx0IGtleSBpcyBwcmVzc2VkLCB0ZWxsIHRo
ZQorICAgICAgICBjbGllbnQgdGhhdCB0aGUgdmFsdWUgY2hhbmdlZCwgYW5kIGhpZGUgdGhlIG1l
bnUuCisKIDIwMTEtMDctMTIgIEpvbiBIb25leWN1dHQgIDxqaG9uZXljdXR0QGFwcGxlLmNvbT4K
IAogICAgICAgICBFbnN1cmUgdGhhdCBhIHNpbmdsZSBzZWxlY3QgZWxlbWVudCdzIGNoaWxkIG9w
dGlvbiBlbGVtZW50cyBhcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNw
cm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2oKaW5kZXggMDZhZDZjOC4uZGQxNjkwNyAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTQ3NjMwLDYgKzQ3NjMwLDEwIEBACiAJCQkJ
PgogCQkJPC9GaWxlPgogCQkJPEZpbGUKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxTZWxlY3RF
bGVtZW50V2luLmNwcCIKKwkJCQk+CisJCQk8L0ZpbGU+CisJCQk8RmlsZQogCQkJCVJlbGF0aXZl
UGF0aD0iLi5cZG9tXFNlbGVjdG9yTm9kZUxpc3QuY3BwIgogCQkJCT4KIAkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TZWxlY3RFbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TZWxlY3RFbGVtZW50LmNwcAppbmRleCBhYTliOTI0Li4x
MjIyZDdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NlbGVjdEVsZW1lbnQuY3BwCkBAIC0xLDUgKzEsNiBA
QAogLyoKICAqIENvcHlyaWdodCAoQykgMjAwOSBUb3JjaCBNb2JpbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLiAoaHR0cDovL3d3dy50b3JjaG1vYmlsZS5jb20vKQorICogQ29weXJpZ2h0IChD
KSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBUaGlzIGxpYnJh
cnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAgKiBt
b2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1Ymxp
YwpAQCAtNTU3LDYgKzU1OCwxMyBAQCB2b2lkIFNlbGVjdEVsZW1lbnQ6OnJlc2V0KFNlbGVjdEVs
ZW1lbnREYXRhJiBkYXRhLCBFbGVtZW50KiBlbGVtZW50KQogICAgIGVsZW1lbnQtPnNldE5lZWRz
U3R5bGVSZWNhbGMoKTsKIH0KIAorI2lmICFQTEFURk9STShXSU4pCitib29sIFNlbGVjdEVsZW1l
bnQ6OnBsYXRmb3JtSGFuZGxlS2V5Ym9hcmRFdmVudChTZWxlY3RFbGVtZW50RGF0YSYsIEVsZW1l
bnQqLCBLZXlib2FyZEV2ZW50KiwgaW50JikKK3sKKyAgICByZXR1cm4gZmFsc2U7Cit9CisjZW5k
aWYKKwogdm9pZCBTZWxlY3RFbGVtZW50OjptZW51TGlzdERlZmF1bHRFdmVudEhhbmRsZXIoU2Vs
ZWN0RWxlbWVudERhdGEmIGRhdGEsIEVsZW1lbnQqIGVsZW1lbnQsIEV2ZW50KiBldmVudCwgSFRN
TEZvcm1FbGVtZW50KiBodG1sRm9ybSkKIHsKICAgICBpZiAoZXZlbnQtPnR5cGUoKSA9PSBldmVu
dE5hbWVzKCkua2V5ZG93bkV2ZW50KSB7CkBAIC01OTUsNyArNjAzLDEwIEBAIHZvaWQgU2VsZWN0
RWxlbWVudDo6bWVudUxpc3REZWZhdWx0RXZlbnRIYW5kbGVyKFNlbGVjdEVsZW1lbnREYXRhJiBk
YXRhLCBFbGVtZW50CiAgICAgICAgIGNvbnN0IFZlY3RvcjxFbGVtZW50Kj4mIGxpc3RJdGVtcyA9
IGRhdGEubGlzdEl0ZW1zKGVsZW1lbnQpOwogCiAgICAgICAgIGludCBsaXN0SW5kZXggPSBvcHRp
b25Ub0xpc3RJbmRleChkYXRhLCBlbGVtZW50LCBzZWxlY3RlZEluZGV4KGRhdGEsIGVsZW1lbnQp
KTsKLSAgICAgICAgaWYgKGtleUlkZW50aWZpZXIgPT0gIkRvd24iIHx8IGtleUlkZW50aWZpZXIg
PT0gIlJpZ2h0IikgeworCisgICAgICAgIGlmIChwbGF0Zm9ybUhhbmRsZUtleWJvYXJkRXZlbnQo
ZGF0YSwgZWxlbWVudCwgc3RhdGljX2Nhc3Q8S2V5Ym9hcmRFdmVudCo+KGV2ZW50KSwgbGlzdElu
ZGV4KSkKKyAgICAgICAgICAgIGhhbmRsZWQgPSB0cnVlOworICAgICAgICBlbHNlIGlmIChrZXlJ
ZGVudGlmaWVyID09ICJEb3duIiB8fCBrZXlJZGVudGlmaWVyID09ICJSaWdodCIpIHsKICAgICAg
ICAgICAgIGxpc3RJbmRleCA9IG5leHRWYWxpZEluZGV4KGxpc3RJdGVtcywgbGlzdEluZGV4LCBT
a2lwRm9yd2FyZHMsIDEpOwogICAgICAgICAgICAgaGFuZGxlZCA9IHRydWU7CiAgICAgICAgIH0g
ZWxzZSBpZiAoa2V5SWRlbnRpZmllciA9PSAiVXAiIHx8IGtleUlkZW50aWZpZXIgPT0gIkxlZnQi
KSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudC5oIGIvU291
cmNlL1dlYkNvcmUvZG9tL1NlbGVjdEVsZW1lbnQuaAppbmRleCBjYmExN2Q0Li40MmVkMTE0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9TZWxlY3RFbGVtZW50LmgKQEAgLTEwNiw2ICsxMDYsNyBAQCBwcm90ZWN0
ZWQ6CiAgCiBwcml2YXRlOgogICAgIHN0YXRpYyB2b2lkIG1lbnVMaXN0RGVmYXVsdEV2ZW50SGFu
ZGxlcihTZWxlY3RFbGVtZW50RGF0YSYsIEVsZW1lbnQqLCBFdmVudCosIEhUTUxGb3JtRWxlbWVu
dCopOworICAgIHN0YXRpYyBib29sIHBsYXRmb3JtSGFuZGxlS2V5Ym9hcmRFdmVudChTZWxlY3RF
bGVtZW50RGF0YSYsIEVsZW1lbnQqLCBLZXlib2FyZEV2ZW50KiwgaW50JiBzZWxlY3RlZExpc3RJ
bmRleCk7CiAgICAgc3RhdGljIHZvaWQgbGlzdEJveERlZmF1bHRFdmVudEhhbmRsZXIoU2VsZWN0
RWxlbWVudERhdGEmLCBFbGVtZW50KiwgRXZlbnQqLCBIVE1MRm9ybUVsZW1lbnQqKTsKICAgICBz
dGF0aWMgdm9pZCBzZXRPcHRpb25zQ2hhbmdlZE9uUmVuZGVyZXIoU2VsZWN0RWxlbWVudERhdGEm
LCBFbGVtZW50Kik7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1NlbGVjdEVs
ZW1lbnRXaW4uY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL1NlbGVjdEVsZW1lbnRXaW4uY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg1OTU2ZTAKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudFdpbi5jcHAKQEAgLTAsMCArMSw1
MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJTZWxlY3RF
bGVtZW50LmgiCisKKyNpbmNsdWRlICJFbGVtZW50LmgiCisjaW5jbHVkZSAiS2V5Ym9hcmRFdmVu
dC5oIgorI2luY2x1ZGUgIlJlbmRlck1lbnVMaXN0LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsK
KworYm9vbCBTZWxlY3RFbGVtZW50OjpwbGF0Zm9ybUhhbmRsZUtleWJvYXJkRXZlbnQoU2VsZWN0
RWxlbWVudERhdGEmIGRhdGEsIEVsZW1lbnQqIGVsZW1lbnQsIEtleWJvYXJkRXZlbnQqIGV2ZW50
LCBpbnQmIHNlbGVjdGVkTGlzdEluZGV4KQoreworICAgIGlmICghZXZlbnQtPmFsdEtleSgpKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBpZiAoZXZlbnQtPmtleUlkZW50aWZpZXIoKSA9
PSAiRG93biIgfHwgZXZlbnQtPmtleUlkZW50aWZpZXIoKSA9PSAiVXAiKSB7CisgICAgICAgIC8v
IFNhdmUgdGhlIHNlbGVjdGlvbiBzbyBpdCBjYW4gYmUgY29tcGFyZWQgdG8gdGhlIG5ldyBzZWxl
Y3Rpb24gd2hlbiBkaXNwYXRjaGluZyBjaGFuZ2UgZXZlbnRzIGR1cmluZyBzZXRTZWxlY3RlZElu
ZGV4LAorICAgICAgICAvLyB3aGljaCBnZXRzIGNhbGxlZCBmcm9tIFJlbmRlck1lbnVMaXN0Ojp2
YWx1ZUNoYW5nZWQsIHdoaWNoIGdldHMgY2FsbGVkIGFmdGVyIHRoZSB1c2VyIG1ha2VzIGEgc2Vs
ZWN0aW9uIGZyb20gdGhlIG1lbnUuCisgICAgICAgIHNhdmVMYXN0U2VsZWN0aW9uKGRhdGEsIGVs
ZW1lbnQpOworICAgICAgICBpZiAoUmVuZGVyTWVudUxpc3QqIG1lbnVMaXN0ID0gdG9SZW5kZXJN
ZW51TGlzdChlbGVtZW50LT5yZW5kZXJlcigpKSkKKyAgICAgICAgICAgIG1lbnVMaXN0LT5zaG93
UG9wdXAoKTsKKyAgICAgICAgc2VsZWN0ZWRMaXN0SW5kZXggPSBvcHRpb25Ub0xpc3RJbmRleChk
YXRhLCBlbGVtZW50LCBzZWxlY3RlZEluZGV4KGRhdGEsIGVsZW1lbnQpKTsKKyAgICAgICAgcmV0
dXJuIHRydWU7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKworfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL1BvcHVwTWVudVdpbi5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS93aW4vUG9wdXBNZW51V2luLmNwcAppbmRleCBkMzZhYzU2Li5lYzFlYzIz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUG9wdXBNZW51V2luLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUG9wdXBNZW51V2luLmNwcApAQCAt
MjQ0LDYgKzI0NCw3IEBAIHZvaWQgUG9wdXBNZW51V2luOjpzaG93KGNvbnN0IEludFJlY3QmIHIs
IEZyYW1lVmlldyogdmlldywgaW50IGluZGV4KQogICAgICAgICAgICAgY2FzZSBXTV9LRVlVUDoK
ICAgICAgICAgICAgIGNhc2UgV01fQ0hBUjoKICAgICAgICAgICAgIGNhc2UgV01fREVBRENIQVI6
CisgICAgICAgICAgICBjYXNlIFdNX1NZU0tFWURPV046CiAgICAgICAgICAgICBjYXNlIFdNX1NZ
U0tFWVVQOgogICAgICAgICAgICAgY2FzZSBXTV9TWVNDSEFSOgogICAgICAgICAgICAgY2FzZSBX
TV9TWVNERUFEQ0hBUjoKQEAgLTgwOSwxNyArODEwLDM2IEBAIExSRVNVTFQgUG9wdXBNZW51V2lu
Ojp3bmRQcm9jKEhXTkQgaFduZCwgVUlOVCBtZXNzYWdlLCBXUEFSQU0gd1BhcmFtLCBMUEFSQU0g
bFBhCiAKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0gICAgICAgIGNhc2UgV01fS0VZ
RE9XTjoKKyAgICAgICAgY2FzZSBXTV9TWVNLRVlET1dOOgorICAgICAgICBjYXNlIFdNX0tFWURP
V046IHsKICAgICAgICAgICAgIGlmICghY2xpZW50KCkpCiAgICAgICAgICAgICAgICAgYnJlYWs7
CiAKKyAgICAgICAgICAgIGJvb2wgYWx0S2V5UHJlc3NlZCA9IG1lc3NhZ2UgPT0gV01fU1lTS0VZ
RE9XTjsKKwogICAgICAgICAgICAgbFJlc3VsdCA9IDA7CiAgICAgICAgICAgICBzd2l0Y2ggKExP
V09SRCh3UGFyYW0pKSB7CiAgICAgICAgICAgICAgICAgY2FzZSBWS19ET1dOOgorICAgICAgICAg
ICAgICAgICAgICBpZiAoYWx0S2V5UHJlc3NlZCkgeworICAgICAgICAgICAgICAgICAgICAgICAg
aW50IGluZGV4ID0gZm9jdXNlZEluZGV4KCk7CisgICAgICAgICAgICAgICAgICAgICAgICBBU1NF
UlQoaW5kZXggPj0gMCk7CisgICAgICAgICAgICAgICAgICAgICAgICBjbGllbnQoKS0+dmFsdWVD
aGFuZ2VkKGluZGV4KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGhpZGUoKTsKKyAgICAgICAg
ICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICBkb3duKCk7CisgICAg
ICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIGNhc2UgVktfUklHSFQ6CiAg
ICAgICAgICAgICAgICAgICAgIGRvd24oKTsKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgICAgICAgICAgY2FzZSBWS19VUDoKKyAgICAgICAgICAgICAgICAgICAgaWYgKGFsdEtl
eVByZXNzZWQpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGludCBpbmRleCA9IGZvY3VzZWRJ
bmRleCgpOworICAgICAgICAgICAgICAgICAgICAgICAgQVNTRVJUKGluZGV4ID49IDApOworICAg
ICAgICAgICAgICAgICAgICAgICAgY2xpZW50KCktPnZhbHVlQ2hhbmdlZChpbmRleCk7CisgICAg
ICAgICAgICAgICAgICAgICAgICBoaWRlKCk7CisgICAgICAgICAgICAgICAgICAgIH0gZWxzZQor
ICAgICAgICAgICAgICAgICAgICAgICAgdXAoKTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgICAgICAgICAgY2FzZSBWS19MRUZUOgogICAgICAgICAgICAgICAgICAgICB1cCgp
OwogICAgICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTg2OSw2ICs4ODksNyBAQCBMUkVTVUxU
IFBvcHVwTWVudVdpbjo6d25kUHJvYyhIV05EIGhXbmQsIFVJTlQgbWVzc2FnZSwgV1BBUkFNIHdQ
YXJhbSwgTFBBUkFNIGxQYQogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAg
IH0KICAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CiAgICAgICAgIGNhc2UgV01fQ0hBUjog
ewogICAgICAgICAgICAgaWYgKCFjbGllbnQoKSkKICAgICAgICAgICAgICAgICBicmVhazsKLS0g
CjEuNy40Cgo=
</data>
<flag name="review"
          id="95520"
          type_id="1"
          status="+"
          setter="ap"
    />
    <flag name="commit-queue"
          id="95531"
          type_id="3"
          status="-"
          setter="ap"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>100956</attachid>
            <date>2011-07-15 04:31:58 -0700</date>
            <delta_ts>2011-07-15 08:51:22 -0700</delta_ts>
            <desc>Patch v2</desc>
            <filename>0002-alt-down-arrow-key-does-not-open-select.patch</filename>
            <type>text/plain</type>
            <size>14644</size>
            <attacher name="Jon Honeycutt">jhoneycutt</attacher>
            
              <data encoding="base64">RnJvbSBkNzllYzU1MGE3OTEwNmNkNzUxNjI5OTRmMGNmMTA0YTYzYzBlNDQwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKb24gSG9uZXljdXR0IDxqaG9uZXljdXR0QGFwcGxlLmNvbT4K
RGF0ZTogV2VkLCAxMyBKdWwgMjAxMSAwMzowOTowMCAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIEFM
VCArIERPV04gYXJyb3cga2V5IGRvZXMgbm90IG9wZW4gc2VsZWN0CgpodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ0MDcKPHJkYXI6Ly9wcm9ibGVtLzUzMTk1MDc+CgpS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCk5vIHRlc3QsIGJlY2F1c2UgZXZlbnRTZW5kZXIg
c2VuZHMgZXZlbnRzIHRvIHRoZSBXZWJWaWV3LCByYXRoZXIgdGhhbgp0aGUgcG9wdXAgbWVudSwg
c28gdGhlIHBvcHVwIGlzbid0IGNsb3NlZC4KCiogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3By
b2o6CkFkZCBTZWxlY3RFbGVtZW50V2luLmNwcCB0byBwcm9qZWN0LgoKKiBkb20vU2VsZWN0RWxl
bWVudC5jcHA6CihXZWJDb3JlOjpTZWxlY3RFbGVtZW50OjpwbGF0Zm9ybUhhbmRsZUtleWRvd25F
dmVudCk6Ck1vdmVkIEFSUk9XX0tFWVNfUE9QX01FTlUgY29kZSBoZXJlLiBVcGRhdGVkIHRvIHJl
dHVybiB3aGV0aGVyIHRoZQpmdW5jdGlvbiBoYXMgaGFuZGxlZCB0aGUga2V5LCBvciB3aGV0aGVy
IHRoZSBjYWxsZXIgbmVlZHMgdG8gcHJvY2VzcyBpdApmdXJ0aGVyLgooV2ViQ29yZTo6U2VsZWN0
RWxlbWVudDo6bWVudUxpc3REZWZhdWx0RXZlbnRIYW5kbGVyKToKQWxsb3cgdGhlIHBsYXRmb3Jt
IHRoZSBmaXJzdCBjaGFuY2UgYXQgaGFuZGxpbmcgdGhlIGtleWJvYXJkIGV2ZW50LgoKKiBkb20v
U2VsZWN0RWxlbWVudC5oOgpEZWNsYXJlIHBsYXRmb3JtSGFuZGxlS2V5ZG93bkV2ZW50KCkuCiog
ZG9tL1NlbGVjdEVsZW1lbnRXaW4uY3BwOiBBZGRlZC4KKFdlYkNvcmU6OlNlbGVjdEVsZW1lbnQ6
OnBsYXRmb3JtSGFuZGxlS2V5Ym9hcmRFdmVudCk6CkFsbG93IChTaGlmdC9Db21tYW5kKSBGNCBh
bmQgKEN0cmwvU2hpZnQvQ29tbWFuZCkgQWx0L0FsdEdyICsgVXAvRG93bgphcnJvdyB0byBzaG93
IHRoZSBwb3B1cC4gQWZ0ZXIgdGhlIHBvcHVwIGlzIGRpc21pc3NlZCwgY2FsbApzZXRTZWxlY3Rl
ZEluZGV4KCksIGFuZCByZXBvcnQgdGhhdCB3ZSBoYW5kbGVkIHRoZSBldmVudC4KCiogcGxhdGZv
cm0vd2luL1BvcHVwTWVudVdpbi5jcHA6CkRlY2xhcmUgSElHSF9CSVRfTUFTS19TSE9SVC4KKFdl
YkNvcmU6OlBvcHVwTWVudVdpbjo6c2hvdyk6CkZvcndhcmQgV01fU1lTS0VZRE9XTiB0byB0aGUg
cG9wdXAncyBIV05ELgooV2ViQ29yZTo6UG9wdXBNZW51V2luOjp3bmRQcm9jKToKQWxsb3cgdGhl
IHNhbWUgc2hvcnRjdXRzIHRoYXQgc2hvdyB0aGUgbWVudSB0byBoaWRlIGl0LCBtYXRjaGluZwpG
aXJlZm94LgotLS0KIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAg
IHwgICAzOSArKysrKysrKysrKysrKysrKwogU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ov
V2ViQ29yZS52Y3Byb2ogfCAgICA0ICsrCiBTb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVu
dC5jcHAgICAgICAgICB8ICAgNTggKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KIFNvdXJjZS9X
ZWJDb3JlL2RvbS9TZWxlY3RFbGVtZW50LmggICAgICAgICAgIHwgICAgMSArCiBTb3VyY2UvV2Vi
Q29yZS9kb20vU2VsZWN0RWxlbWVudFdpbi5jcHAgICAgICB8ICAgNTcgKysrKysrKysrKysrKysr
KysrKysrKysrKwogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL1BvcHVwTWVudVdpbi5jcHAg
fCAgIDM1ICsrKysrKysrKysrKysrKy0KIDYgZmlsZXMgY2hhbmdlZCwgMTcxIGluc2VydGlvbnMo
KyksIDIzIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IFNvdXJjZS9XZWJDb3JlL2Rv
bS9TZWxlY3RFbGVtZW50V2luLmNwcAoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2Y2E1MThjLi5lNDE3ZmMwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDctMTMgIEpvbiBIb25leWN1dHQgIDxq
aG9uZXljdXR0QGFwcGxlLmNvbT4KKworICAgICAgICBBTFQgKyBET1dOIGFycm93IGtleSBkb2Vz
IG5vdCBvcGVuIHNlbGVjdAorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNDQwNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTMxOTUwNz4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyB0ZXN0LCBiZWNh
dXNlIGV2ZW50U2VuZGVyIHNlbmRzIGV2ZW50cyB0byB0aGUgV2ViVmlldywgcmF0aGVyIHRoYW4K
KyAgICAgICAgdGhlIHBvcHVwIG1lbnUsIHNvIHRoZSBwb3B1cCBpc24ndCBjbG9zZWQuCisKKyAg
ICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgQWRkIFNlbGVj
dEVsZW1lbnRXaW4uY3BwIHRvIHByb2plY3QuCisKKyAgICAgICAgKiBkb20vU2VsZWN0RWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTZWxlY3RFbGVtZW50OjpwbGF0Zm9ybUhhbmRsZUtl
eWRvd25FdmVudCk6CisgICAgICAgIE1vdmVkIEFSUk9XX0tFWVNfUE9QX01FTlUgY29kZSBoZXJl
LiBVcGRhdGVkIHRvIHJldHVybiB3aGV0aGVyIHRoZQorICAgICAgICBmdW5jdGlvbiBoYXMgaGFu
ZGxlZCB0aGUga2V5LCBvciB3aGV0aGVyIHRoZSBjYWxsZXIgbmVlZHMgdG8gcHJvY2VzcyBpdAor
ICAgICAgICBmdXJ0aGVyLgorICAgICAgICAoV2ViQ29yZTo6U2VsZWN0RWxlbWVudDo6bWVudUxp
c3REZWZhdWx0RXZlbnRIYW5kbGVyKToKKyAgICAgICAgQWxsb3cgdGhlIHBsYXRmb3JtIHRoZSBm
aXJzdCBjaGFuY2UgYXQgaGFuZGxpbmcgdGhlIGtleWJvYXJkIGV2ZW50LgorCisgICAgICAgICog
ZG9tL1NlbGVjdEVsZW1lbnQuaDoKKyAgICAgICAgRGVjbGFyZSBwbGF0Zm9ybUhhbmRsZUtleWRv
d25FdmVudCgpLgorICAgICAgICAqIGRvbS9TZWxlY3RFbGVtZW50V2luLmNwcDogQWRkZWQuCisg
ICAgICAgIChXZWJDb3JlOjpTZWxlY3RFbGVtZW50OjpwbGF0Zm9ybUhhbmRsZUtleWJvYXJkRXZl
bnQpOgorICAgICAgICBBbGxvdyAoU2hpZnQvQ29tbWFuZCkgRjQgYW5kIChDdHJsL1NoaWZ0L0Nv
bW1hbmQpIEFsdC9BbHRHciArIFVwL0Rvd24KKyAgICAgICAgYXJyb3cgdG8gc2hvdyB0aGUgcG9w
dXAuIEFmdGVyIHRoZSBwb3B1cCBpcyBkaXNtaXNzZWQsIGNhbGwKKyAgICAgICAgc2V0U2VsZWN0
ZWRJbmRleCgpLCBhbmQgcmVwb3J0IHRoYXQgd2UgaGFuZGxlZCB0aGUgZXZlbnQuCisKKyAgICAg
ICAgKiBwbGF0Zm9ybS93aW4vUG9wdXBNZW51V2luLmNwcDoKKyAgICAgICAgRGVjbGFyZSBISUdI
X0JJVF9NQVNLX1NIT1JULgorICAgICAgICAoV2ViQ29yZTo6UG9wdXBNZW51V2luOjpzaG93KToK
KyAgICAgICAgRm9yd2FyZCBXTV9TWVNLRVlET1dOIHRvIHRoZSBwb3B1cCdzIEhXTkQuCisgICAg
ICAgIChXZWJDb3JlOjpQb3B1cE1lbnVXaW46OnduZFByb2MpOgorICAgICAgICBBbGxvdyB0aGUg
c2FtZSBzaG9ydGN1dHMgdGhhdCBzaG93IHRoZSBtZW51IHRvIGhpZGUgaXQsIG1hdGNoaW5nCisg
ICAgICAgIEZpcmVmb3guCisKIDIwMTEtMDctMTIgIEpvbiBIb25leWN1dHQgIDxqaG9uZXljdXR0
QGFwcGxlLmNvbT4KIAogICAgICAgICBFbnN1cmUgdGhhdCBhIHNpbmdsZSBzZWxlY3QgZWxlbWVu
dCdzIGNoaWxkIG9wdGlvbiBlbGVtZW50cyBhcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52
Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggMDZhZDZjOC4uZGQxNjkwNyAxMDA3NTUKLS0tIGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTQ3NjMwLDYgKzQ3NjMw
LDEwIEBACiAJCQkJPgogCQkJPC9GaWxlPgogCQkJPEZpbGUKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4u
XGRvbVxTZWxlY3RFbGVtZW50V2luLmNwcCIKKwkJCQk+CisJCQk8L0ZpbGU+CisJCQk8RmlsZQog
CQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXFNlbGVjdG9yTm9kZUxpc3QuY3BwIgogCQkJCT4KIAkJ
CQk8RmlsZUNvbmZpZ3VyYXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TZWxl
Y3RFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TZWxlY3RFbGVtZW50LmNwcAppbmRl
eCBhYTliOTI0Li5lODE4ZDYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NlbGVjdEVsZW1lbnQuY3BwCkBA
IC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAwOSBUb3JjaCBNb2JpbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLiAoaHR0cDovL3d3dy50b3JjaG1vYmlsZS5jb20vKQorICog
Q29weXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAg
KiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg
YW5kL29yCiAgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBH
ZW5lcmFsIFB1YmxpYwpAQCAtNTU3LDQ0ICs1NTgsNTcgQEAgdm9pZCBTZWxlY3RFbGVtZW50Ojpy
ZXNldChTZWxlY3RFbGVtZW50RGF0YSYgZGF0YSwgRWxlbWVudCogZWxlbWVudCkKICAgICBlbGVt
ZW50LT5zZXROZWVkc1N0eWxlUmVjYWxjKCk7CiB9CiAKKyNpZiAhUExBVEZPUk0oV0lOKQorYm9v
bCBTZWxlY3RFbGVtZW50OjpwbGF0Zm9ybUhhbmRsZUtleWRvd25FdmVudChTZWxlY3RFbGVtZW50
RGF0YSYgZGF0YSwgRWxlbWVudCogZWxlbWVudCwgS2V5Ym9hcmRFdmVudCogZXZlbnQpCit7Cisj
aWYgQVJST1dfS0VZU19QT1BfTUVOVQorICAgIGlmICghaXNTcGF0aWFsTmF2aWdhdGlvbkVuYWJs
ZWQoZWxlbWVudC0+ZG9jdW1lbnQoKS0+ZnJhbWUoKSkpIHsKKyAgICAgICAgaWYgKGV2ZW50LT5r
ZXlJZGVudGlmaWVyKCkgPT0gIkRvd24iIHx8IGV2ZW50LT5rZXlJZGVudGlmaWVyKCkgPT0gIlVw
IikgeworICAgICAgICAgICAgZWxlbWVudC0+Zm9jdXMoKTsKKworICAgICAgICAgICAgLy8gQ2Fs
bGluZyBmb2N1cygpIG1heSBjYXVzZSB1cyB0byBsb3NlIG91ciByZW5kZXJlci4gUmV0dXJuIHRy
dWUgc28gdGhhdCBvdXIgY2FsbGVyIGRvZXNuJ3QgcHJvY2VzcyB0aGUgZXZlbnQKKyAgICAgICAg
ICAgIC8vIGZ1cnRoZXIsIGJ1dCBkb24ndCBzZXQgdGhlIGV2ZW50IGFzIGhhbmRsZWQuCisgICAg
ICAgICAgICBpZiAoIWVsZW1lbnQtPnJlbmRlcmVyKCkpCisgICAgICAgICAgICAgICAgcmV0dXJu
IHRydWU7CisKKyAgICAgICAgICAgIC8vIFNhdmUgdGhlIHNlbGVjdGlvbiBzbyBpdCBjYW4gYmUg
Y29tcGFyZWQgdG8gdGhlIG5ldyBzZWxlY3Rpb24gd2hlbiBkaXNwYXRjaGluZyBjaGFuZ2UgZXZl
bnRzIGR1cmluZyBzZXRTZWxlY3RlZEluZGV4LAorICAgICAgICAgICAgLy8gd2hpY2ggZ2V0cyBj
YWxsZWQgZnJvbSBSZW5kZXJNZW51TGlzdDo6dmFsdWVDaGFuZ2VkLCB3aGljaCBnZXRzIGNhbGxl
ZCBhZnRlciB0aGUgdXNlciBtYWtlcyBhIHNlbGVjdGlvbiBmcm9tIHRoZSBtZW51LgorICAgICAg
ICAgICAgc2F2ZUxhc3RTZWxlY3Rpb24oZGF0YSwgZWxlbWVudCk7CisgICAgICAgICAgICBpZiAo
UmVuZGVyTWVudUxpc3QqIG1lbnVMaXN0ID0gdG9SZW5kZXJNZW51TGlzdChlbGVtZW50LT5yZW5k
ZXJlcigpKSkKKyAgICAgICAgICAgICAgICBtZW51TGlzdC0+c2hvd1BvcHVwKCk7CisgICAgICAg
ICAgICBldmVudC0+c2V0RGVmYXVsdEhhbmRsZWQoKTsKKyAgICAgICAgfQorICAgICAgICByZXR1
cm4gdHJ1ZTsKKyAgICB9CisjZW5kaWYKKyAgICByZXR1cm4gZmFsc2U7Cit9CisjZW5kaWYKKwog
dm9pZCBTZWxlY3RFbGVtZW50OjptZW51TGlzdERlZmF1bHRFdmVudEhhbmRsZXIoU2VsZWN0RWxl
bWVudERhdGEmIGRhdGEsIEVsZW1lbnQqIGVsZW1lbnQsIEV2ZW50KiBldmVudCwgSFRNTEZvcm1F
bGVtZW50KiBodG1sRm9ybSkKIHsKICAgICBpZiAoZXZlbnQtPnR5cGUoKSA9PSBldmVudE5hbWVz
KCkua2V5ZG93bkV2ZW50KSB7CiAgICAgICAgIGlmICghZWxlbWVudC0+cmVuZGVyZXIoKSB8fCAh
ZXZlbnQtPmlzS2V5Ym9hcmRFdmVudCgpKQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAg
IGNvbnN0IFN0cmluZyYga2V5SWRlbnRpZmllciA9IHN0YXRpY19jYXN0PEtleWJvYXJkRXZlbnQq
PihldmVudCktPmtleUlkZW50aWZpZXIoKTsKLSAgICAgICAgYm9vbCBoYW5kbGVkID0gZmFsc2U7
Ci0KLSNpZiBBUlJPV19LRVlTX1BPUF9NRU5VCi0gICAgICAgIGlmICghaXNTcGF0aWFsTmF2aWdh
dGlvbkVuYWJsZWQoZWxlbWVudC0+ZG9jdW1lbnQoKS0+ZnJhbWUoKSkpIHsKLSAgICAgICAgICAg
IGlmIChrZXlJZGVudGlmaWVyID09ICJEb3duIiB8fCBrZXlJZGVudGlmaWVyID09ICJVcCIpIHsK
LSAgICAgICAgICAgICAgICBlbGVtZW50LT5mb2N1cygpOwotCi0gICAgICAgICAgICAgICAgaWYg
KCFlbGVtZW50LT5yZW5kZXJlcigpKSAvLyBDYWxsaW5nIGZvY3VzKCkgbWF5IGNhdXNlIHVzIHRv
IGxvc2Ugb3VyIHJlbmRlcmVyLCBpbiB3aGljaCBjYXNlIGRvIG5vdCB3YW50IHRvIGhhbmRsZSB0
aGUgZXZlbnQuCi0gICAgICAgICAgICAgICAgICAgIHJldHVybjsKLQotICAgICAgICAgICAgICAg
IC8vIFNhdmUgdGhlIHNlbGVjdGlvbiBzbyBpdCBjYW4gYmUgY29tcGFyZWQgdG8gdGhlIG5ldyBz
ZWxlY3Rpb24gd2hlbiBkaXNwYXRjaGluZyBjaGFuZ2UgZXZlbnRzIGR1cmluZyBzZXRTZWxlY3Rl
ZEluZGV4LAotICAgICAgICAgICAgICAgIC8vIHdoaWNoIGdldHMgY2FsbGVkIGZyb20gUmVuZGVy
TWVudUxpc3Q6OnZhbHVlQ2hhbmdlZCwgd2hpY2ggZ2V0cyBjYWxsZWQgYWZ0ZXIgdGhlIHVzZXIg
bWFrZXMgYSBzZWxlY3Rpb24gZnJvbSB0aGUgbWVudS4KLSAgICAgICAgICAgICAgICBzYXZlTGFz
dFNlbGVjdGlvbihkYXRhLCBlbGVtZW50KTsKLSAgICAgICAgICAgICAgICBpZiAoUmVuZGVyTWVu
dUxpc3QqIG1lbnVMaXN0ID0gdG9SZW5kZXJNZW51TGlzdChlbGVtZW50LT5yZW5kZXJlcigpKSkK
LSAgICAgICAgICAgICAgICAgICAgbWVudUxpc3QtPnNob3dQb3B1cCgpOwotCi0gICAgICAgICAg
ICAgICAgZXZlbnQtPnNldERlZmF1bHRIYW5kbGVkKCk7Ci0gICAgICAgICAgICB9CisgICAgICAg
IGlmIChwbGF0Zm9ybUhhbmRsZUtleWRvd25FdmVudChkYXRhLCBlbGVtZW50LCBzdGF0aWNfY2Fz
dDxLZXlib2FyZEV2ZW50Kj4oZXZlbnQpKSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAg
fQotI2VuZGlmCisKICAgICAgICAgLy8gV2hlbiB1c2luZyBzcGF0aWFsIG5hdmlnYXRpb24sIHdl
IHdhbnQgdG8gYmUgYWJsZSB0byBuYXZpZ2F0ZSBhd2F5IGZyb20gdGhlIHNlbGVjdCBlbGVtZW50
CiAgICAgICAgIC8vIHdoZW4gdGhlIHVzZXIgaGl0cyBhbnkgb2YgdGhlIGFycm93IGtleXMsIGlu
c3RlYWQgb2YgY2hhbmdpbmcgdGhlIHNlbGVjdGlvbi4KLSAgICAgICAgaWYgKGlzU3BhdGlhbE5h
dmlnYXRpb25FbmFibGVkKGVsZW1lbnQtPmRvY3VtZW50KCktPmZyYW1lKCkpKQorICAgICAgICBp
ZiAoaXNTcGF0aWFsTmF2aWdhdGlvbkVuYWJsZWQoZWxlbWVudC0+ZG9jdW1lbnQoKS0+ZnJhbWUo
KSkpIHsKICAgICAgICAgICAgIGlmICghZGF0YS5hY3RpdmVTZWxlY3Rpb25TdGF0ZSgpKQogICAg
ICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIGNvbnN0IFN0cmluZyYg
a2V5SWRlbnRpZmllciA9IHN0YXRpY19jYXN0PEtleWJvYXJkRXZlbnQqPihldmVudCktPmtleUlk
ZW50aWZpZXIoKTsKKyAgICAgICAgYm9vbCBoYW5kbGVkID0gZmFsc2U7CiAKICAgICAgICAgVU5V
U0VEX1BBUkFNKGh0bWxGb3JtKTsKICAgICAgICAgY29uc3QgVmVjdG9yPEVsZW1lbnQqPiYgbGlz
dEl0ZW1zID0gZGF0YS5saXN0SXRlbXMoZWxlbWVudCk7CiAKICAgICAgICAgaW50IGxpc3RJbmRl
eCA9IG9wdGlvblRvTGlzdEluZGV4KGRhdGEsIGVsZW1lbnQsIHNlbGVjdGVkSW5kZXgoZGF0YSwg
ZWxlbWVudCkpOworCiAgICAgICAgIGlmIChrZXlJZGVudGlmaWVyID09ICJEb3duIiB8fCBrZXlJ
ZGVudGlmaWVyID09ICJSaWdodCIpIHsKICAgICAgICAgICAgIGxpc3RJbmRleCA9IG5leHRWYWxp
ZEluZGV4KGxpc3RJdGVtcywgbGlzdEluZGV4LCBTa2lwRm9yd2FyZHMsIDEpOwogICAgICAgICAg
ICAgaGFuZGxlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0
RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1NlbGVjdEVsZW1lbnQuaAppbmRleCBjYmEx
N2Q0Li43YTI2Y2MwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TZWxlY3RFbGVtZW50LmgKQEAgLTEwNiw2ICsx
MDYsNyBAQCBwcm90ZWN0ZWQ6CiAgCiBwcml2YXRlOgogICAgIHN0YXRpYyB2b2lkIG1lbnVMaXN0
RGVmYXVsdEV2ZW50SGFuZGxlcihTZWxlY3RFbGVtZW50RGF0YSYsIEVsZW1lbnQqLCBFdmVudCos
IEhUTUxGb3JtRWxlbWVudCopOworICAgIHN0YXRpYyBib29sIHBsYXRmb3JtSGFuZGxlS2V5ZG93
bkV2ZW50KFNlbGVjdEVsZW1lbnREYXRhJiwgRWxlbWVudCosIEtleWJvYXJkRXZlbnQqKTsKICAg
ICBzdGF0aWMgdm9pZCBsaXN0Qm94RGVmYXVsdEV2ZW50SGFuZGxlcihTZWxlY3RFbGVtZW50RGF0
YSYsIEVsZW1lbnQqLCBFdmVudCosIEhUTUxGb3JtRWxlbWVudCopOwogICAgIHN0YXRpYyB2b2lk
IHNldE9wdGlvbnNDaGFuZ2VkT25SZW5kZXJlcihTZWxlY3RFbGVtZW50RGF0YSYsIEVsZW1lbnQq
KTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudFdpbi5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudFdpbi5jcHAKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTc4MmQ4YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9TZWxlY3RFbGVtZW50V2luLmNwcApAQCAtMCwwICsxLDU3IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlNlbGVjdEVsZW1lbnQuaCIK
KworI2luY2x1ZGUgIkVsZW1lbnQuaCIKKyNpbmNsdWRlICJLZXlib2FyZEV2ZW50LmgiCisjaW5j
bHVkZSAiUmVuZGVyTWVudUxpc3QuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitib29sIFNl
bGVjdEVsZW1lbnQ6OnBsYXRmb3JtSGFuZGxlS2V5ZG93bkV2ZW50KFNlbGVjdEVsZW1lbnREYXRh
JiBkYXRhLCBFbGVtZW50KiBlbGVtZW50LCBLZXlib2FyZEV2ZW50KiBldmVudCkKK3sKKyAgICAv
LyBBbGxvdyAoU2hpZnQvQ29tbWFuZCkgRjQgYW5kIChDdHJsL1NoaWZ0L0NvbW1hbmQpIEFsdC9B
bHRHciArIFVwL0Rvd24gYXJyb3cgdG8gcG9wIHRoZSBtZW51LCBtYXRjaGluZyBGaXJlZm94Lgor
ICAgIGJvb2wgZXZlbnRTaG93c01lbnUgPSAoIWV2ZW50LT5hbHRLZXkoKSAmJiAhZXZlbnQtPmN0
cmxLZXkoKSAmJiBldmVudC0+a2V5SWRlbnRpZmllcigpID09ICJGNCIpCisgICAgICAgIHx8ICgo
ZXZlbnQtPmFsdEdyYXBoS2V5KCkgfHwgZXZlbnQtPmFsdEtleSgpKSAmJiAoZXZlbnQtPmtleUlk
ZW50aWZpZXIoKSA9PSAiRG93biIgfHwgZXZlbnQtPmtleUlkZW50aWZpZXIoKSA9PSAiVXAiKSk7
CisgICAgaWYgKCFldmVudFNob3dzTWVudSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAg
Ly8gU2F2ZSB0aGUgc2VsZWN0aW9uIHNvIGl0IGNhbiBiZSBjb21wYXJlZCB0byB0aGUgbmV3IHNl
bGVjdGlvbiB3aGVuIGRpc3BhdGNoaW5nIGNoYW5nZSBldmVudHMgZHVyaW5nIHNldFNlbGVjdGVk
SW5kZXgsCisgICAgLy8gd2hpY2ggZ2V0cyBjYWxsZWQgZnJvbSBSZW5kZXJNZW51TGlzdDo6dmFs
dWVDaGFuZ2VkLCB3aGljaCBnZXRzIGNhbGxlZCBhZnRlciB0aGUgdXNlciBtYWtlcyBhIHNlbGVj
dGlvbiBmcm9tIHRoZSBtZW51LgorICAgIHNhdmVMYXN0U2VsZWN0aW9uKGRhdGEsIGVsZW1lbnQp
OworICAgIGlmIChSZW5kZXJNZW51TGlzdCogbWVudUxpc3QgPSB0b1JlbmRlck1lbnVMaXN0KGVs
ZW1lbnQtPnJlbmRlcmVyKCkpKQorICAgICAgICBtZW51TGlzdC0+c2hvd1BvcHVwKCk7CisKKyAg
ICBpbnQgaW5kZXggPSBzZWxlY3RlZEluZGV4KGRhdGEsIGVsZW1lbnQpOworICAgIEFTU0VSVChp
bmRleCA+PSAwKTsKKyAgICBBU1NFUlQoaW5kZXggPCBkYXRhLmxpc3RJdGVtcyhlbGVtZW50KS5z
aXplKCkpOworICAgIHNldFNlbGVjdGVkSW5kZXgoZGF0YSwgZWxlbWVudCwgaW5kZXgpOworICAg
IGV2ZW50LT5zZXREZWZhdWx0SGFuZGxlZCgpOworICAgIHJldHVybiB0cnVlOworfQorCit9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUG9wdXBNZW51V2luLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Qb3B1cE1lbnVXaW4uY3BwCmluZGV4IGQzNmFj
NTYuLjQ0YTg5NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Qb3B1
cE1lbnVXaW4uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Qb3B1cE1lbnVX
aW4uY3BwCkBAIC00OSw2ICs0OSw4IEBACiAjZGVmaW5lIE1BS0VQT0lOVFMobCkgKCooKFBPSU5U
UyBGQVIgKikmKGwpKSkKICNlbmRpZgogCisjZGVmaW5lIEhJR0hfQklUX01BU0tfU0hPUlQgMHg4
MDAwCisKIHVzaW5nIHN0ZDo6bWluOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0yNDQsNiAr
MjQ2LDcgQEAgdm9pZCBQb3B1cE1lbnVXaW46OnNob3coY29uc3QgSW50UmVjdCYgciwgRnJhbWVW
aWV3KiB2aWV3LCBpbnQgaW5kZXgpCiAgICAgICAgICAgICBjYXNlIFdNX0tFWVVQOgogICAgICAg
ICAgICAgY2FzZSBXTV9DSEFSOgogICAgICAgICAgICAgY2FzZSBXTV9ERUFEQ0hBUjoKKyAgICAg
ICAgICAgIGNhc2UgV01fU1lTS0VZRE9XTjoKICAgICAgICAgICAgIGNhc2UgV01fU1lTS0VZVVA6
CiAgICAgICAgICAgICBjYXNlIFdNX1NZU0NIQVI6CiAgICAgICAgICAgICBjYXNlIFdNX1NZU0RF
QURDSEFSOgpAQCAtODA5LDE3ICs4MTIsNDYgQEAgTFJFU1VMVCBQb3B1cE1lbnVXaW46OnduZFBy
b2MoSFdORCBoV25kLCBVSU5UIG1lc3NhZ2UsIFdQQVJBTSB3UGFyYW0sIExQQVJBTSBsUGEKIAog
ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSAgICAgICAgY2FzZSBXTV9LRVlET1dOOgor
ICAgICAgICBjYXNlIFdNX1NZU0tFWURPV046CisgICAgICAgIGNhc2UgV01fS0VZRE9XTjogewog
ICAgICAgICAgICAgaWYgKCFjbGllbnQoKSkKICAgICAgICAgICAgICAgICBicmVhazsKIAorICAg
ICAgICAgICAgYm9vbCBhbHRLZXlQcmVzc2VkID0gR2V0S2V5U3RhdGUoVktfTUVOVSkgJiBISUdI
X0JJVF9NQVNLX1NIT1JUOworICAgICAgICAgICAgYm9vbCBjdHJsS2V5UHJlc3NlZCA9IEdldEtl
eVN0YXRlKFZLX0NPTlRST0wpICYgSElHSF9CSVRfTUFTS19TSE9SVDsKKwogICAgICAgICAgICAg
bFJlc3VsdCA9IDA7CiAgICAgICAgICAgICBzd2l0Y2ggKExPV09SRCh3UGFyYW0pKSB7CisgICAg
ICAgICAgICAgICAgY2FzZSBWS19GNDogeworICAgICAgICAgICAgICAgICAgICBpZiAoIWFsdEtl
eVByZXNzZWQgJiYgIWN0cmxLZXlQcmVzc2VkKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBp
bnQgaW5kZXggPSBmb2N1c2VkSW5kZXgoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFTU0VS
VChpbmRleCA+PSAwKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudCgpLT52YWx1ZUNo
YW5nZWQoaW5kZXgpOworICAgICAgICAgICAgICAgICAgICAgICAgaGlkZSgpOworICAgICAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAg
IH0KICAgICAgICAgICAgICAgICBjYXNlIFZLX0RPV046CisgICAgICAgICAgICAgICAgICAgIGlm
IChhbHRLZXlQcmVzc2VkKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBpbnQgaW5kZXggPSBm
b2N1c2VkSW5kZXgoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFTU0VSVChpbmRleCA+PSAw
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudCgpLT52YWx1ZUNoYW5nZWQoaW5kZXgp
OworICAgICAgICAgICAgICAgICAgICAgICAgaGlkZSgpOworICAgICAgICAgICAgICAgICAgICB9
IGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvd24oKTsKKyAgICAgICAgICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgY2FzZSBWS19SSUdIVDoKICAgICAgICAgICAgICAg
ICAgICAgZG93bigpOwogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAg
ICBjYXNlIFZLX1VQOgorICAgICAgICAgICAgICAgICAgICBpZiAoYWx0S2V5UHJlc3NlZCkgewor
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IGluZGV4ID0gZm9jdXNlZEluZGV4KCk7CisgICAg
ICAgICAgICAgICAgICAgICAgICBBU1NFUlQoaW5kZXggPj0gMCk7CisgICAgICAgICAgICAgICAg
ICAgICAgICBjbGllbnQoKS0+dmFsdWVDaGFuZ2VkKGluZGV4KTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGhpZGUoKTsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAg
ICAgICAgICAgICB1cCgpOworICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAg
ICAgICBjYXNlIFZLX0xFRlQ6CiAgICAgICAgICAgICAgICAgICAgIHVwKCk7CiAgICAgICAgICAg
ICAgICAgICAgIGJyZWFrOwpAQCAtODY5LDYgKzkwMSw3IEBAIExSRVNVTFQgUG9wdXBNZW51V2lu
Ojp3bmRQcm9jKEhXTkQgaFduZCwgVUlOVCBtZXNzYWdlLCBXUEFSQU0gd1BhcmFtLCBMUEFSQU0g
bFBhCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQogICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIH0KICAgICAgICAgY2FzZSBXTV9DSEFSOiB7CiAgICAgICAgICAg
ICBpZiAoIWNsaWVudCgpKQogICAgICAgICAgICAgICAgIGJyZWFrOwotLSAKMS43LjQKCg==
</data>
<flag name="review"
          id="95742"
          type_id="1"
          status="+"
          setter="ap"
    />
          </attachment>
      

    </bug>

</bugzilla>