<?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>13529</bug_id>
          
          <creation_ts>2007-04-27 17:15:24 -0700</creation_ts>
          <short_desc>DOM3 keyIdentifier text is incorrect</short_desc>
          <delta_ts>2007-05-13 07:23:09 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Fisher (:fishd, Google)">fishd</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>11985</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2007-04-27 17:15:24 -0700</bug_when>
    <thetext>DOM3 keyIdentifier text is incorrect

When pressing the &apos;A&apos; key, Safari produces &apos;U+000041&apos; instead of &apos;U+0041&apos; as specified here:
http://www.w3.org/TR/DOM-Level-3-Events/keyset.html#KeySet-Set

Maciej suggested that this is either a bug or behavior that was based on an earlier version of the DOM3 events spec.  In any case, it seems like a bug, and since no other major browsers (IE, FF, Opera) seem to support the keyIdentifier property, it is probably something that can be fixed without breaking existing pages.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11986</commentid>
    <comment_count>1</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2007-04-27 17:18:14 -0700</bug_when>
    <thetext>Indeed, this version of the spec says &apos;U+000041&apos;:
http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/keyset.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11988</commentid>
    <comment_count>2</comment_count>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2007-04-27 18:13:38 -0700</bug_when>
    <thetext>I suggest we update it to what the latest draft says.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10196</commentid>
    <comment_count>3</comment_count>
      <attachid>14518</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2007-05-12 08:30:24 -0700</bug_when>
    <thetext>Created attachment 14518
First attempt

This causes no regressions on my mac build, I wasn&apos;t able to test others (Qt run-webkit-tests is broken here, I don&apos;t (yet) have access to the other builds).
Cheers,

Rob.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10205</commentid>
    <comment_count>4</comment_count>
      <attachid>14518</attachid>
    <who name="">mitz</who>
    <bug_when>2007-05-12 14:41:45 -0700</bug_when>
    <thetext>Comment on attachment 14518
First attempt

Based on the ChangeLog, the patch appears to be incomplete.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10105</commentid>
    <comment_count>5</comment_count>
      <attachid>14532</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2007-05-13 01:02:24 -0700</bug_when>
    <thetext>Created attachment 14532
Now with complete source code

Mitz was right, this one should be complete. I blame it on multiple patches in the local tree :/
Cheers,

Rob.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10106</commentid>
    <comment_count>6</comment_count>
      <attachid>14532</attachid>
    <who name="">mitz</who>
    <bug_when>2007-05-13 01:11:32 -0700</bug_when>
    <thetext>Comment on attachment 14532
Now with complete source code

Still missing a few?

+        * platform/gdk/KeyEventGdk.cpp:
+        (WebCore::keyIdentifierForGdkKeyCode):

+        * platform/win/KeyEventWin.cpp:
+        (WebCore::keyIdentifierForWindowsKeyCode):
+        * platform/wx/KeyEventWin.cpp:
+        (WebCore::keyIdentifierForWindowsKeyCode):
e</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10099</commentid>
    <comment_count>7</comment_count>
      <attachid>14532</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-05-13 06:09:18 -0700</bug_when>
    <thetext>Comment on attachment 14532
Now with complete source code

I am worried about compatibility, but lets just get this change in and track the DOM 3 events standard.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10090</commentid>
    <comment_count>8</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2007-05-13 07:23:09 -0700</bug_when>
    <thetext>Landed in r21445.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>14518</attachid>
            <date>2007-05-12 08:30:24 -0700</date>
            <delta_ts>2007-05-13 01:02:24 -0700</delta_ts>
            <desc>First attempt</desc>
            <filename>13529.diff</filename>
            <type>text/plain</type>
            <size>12065</size>
            <attacher name="Rob Buis">rwlbuis</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIxNDI3KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMDctMDUtMTIgIFJvYiBCdWlzICA8YnVpc0Br
ZGUub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNTI5CisgICAgICAgIERP
TTMga2V5SWRlbnRpZmllciB0ZXh0IGlzIGluY29ycmVjdAorCisgICAgICAgIEFkanVzdGVkIHRl
c3RzIGFuZCB0ZXN0IHJlc3VsdHMuCisKKyAgICAgICAgKiBmYXN0L2V2ZW50cy9mcmFtZS10YWIt
Zm9jdXMuaHRtbDoKKyAgICAgICAgKiBmYXN0L2V2ZW50cy9qcy1rZXlib2FyZC1ldmVudC1jcmVh
dGlvbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9ldmVudHMvb2JqYy1ldmVudC1hcGkt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZXZlbnRzL29wdGlvbi10YWIuaHRtbDoKKyAg
ICAgICAgKiBmYXN0L2Zvcm1zL2ZvY3VzMi5odG1sOgorICAgICAgICAqIGZhc3QvaHRtbC90YWIt
b3JkZXIuaHRtbDoKKwogMjAwNy0wNS0xMSAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29t
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IEh5YXR0LgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvZnJhbWUtdGFiLWZvY3VzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvZnJhbWUtdGFiLWZvY3VzLmh0bWwJKHJldmlzaW9uIDIxNDI3KQorKysgTGF5b3V0
VGVzdHMvZmFzdC9ldmVudHMvZnJhbWUtdGFiLWZvY3VzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTg4LDcgKzg4LDcgQEAgZnVuY3Rpb24gc2V0dXBXaW5kb3cod2luKQogZnVuY3Rpb24gZGlzcGF0
Y2hUYWJQcmVzcyhlbGVtZW50LCBzaGlmdEtleSwgYWx0S2V5KQogewogICAgIHZhciBldmVudCA9
IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdLZXlib2FyZEV2ZW50cycpOwotICAgIHZhciB0YWJLZXlJ
ZGVudGlmaWVyID0gJ1UrMDAwMDA5JzsKKyAgICB2YXIgdGFiS2V5SWRlbnRpZmllciA9ICdVKzAw
MDknOwogICAgIGV2ZW50LmluaXRLZXlib2FyZEV2ZW50KCdrZXlwcmVzcycsIHRydWUsIHRydWUs
IGRvY3VtZW50LmRlZmF1bHRWaWV3LCB0YWJLZXlJZGVudGlmaWVyLCAwLCBmYWxzZSwgYWx0S2V5
LCBzaGlmdEtleSwgZmFsc2UsIGZhbHNlKTsKICAgICBlbGVtZW50LmRpc3BhdGNoRXZlbnQoZXZl
bnQpOwogfQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvanMta2V5Ym9hcmQtZXZlbnQt
Y3JlYXRpb24tZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL2pzLWtleWJvYXJkLWV2ZW50LWNyZWF0aW9uLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjE0
MjcpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9qcy1rZXlib2FyZC1ldmVudC1jcmVhdGlv
bi1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsMTIgKzEsMTIgQEAKIAogVGhpcyB0
ZXN0cyB0aGF0IERPTUtleWJvYXJkRXZlbnRzIGFyZSBjcmVhdGVkIGNvcnJlY3RseSBpbiB0aGUg
SmF2YVNjcmlwdCBBUEkuCiAKLWtleWRvd24gLSBrZXk6IFUrMDAwMDA5QDAgKGtleUNvZGUvY2hh
ckNvZGU6IDkvOSkgbW9kaWZpZXJzOiBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZQora2V5ZG93biAt
IGtleTogVSswMDA5QDAgKGtleUNvZGUvY2hhckNvZGU6IDkvOSkgbW9kaWZpZXJzOiBmYWxzZSxm
YWxzZSxmYWxzZSxmYWxzZQogCi1rZXlwcmVzcyAtIGtleTogVSswMDAwMDlAMCAoa2V5Q29kZS9j
aGFyQ29kZTogOS85KSBtb2RpZmllcnM6IGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlCitrZXlwcmVz
cyAtIGtleTogVSswMDA5QDAgKGtleUNvZGUvY2hhckNvZGU6IDkvOSkgbW9kaWZpZXJzOiBmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZQogCi1rZXlkb3duIC0ga2V5OiBVKzAwMDAwOUAwIChrZXlDb2Rl
L2NoYXJDb2RlOiA5LzkpIG1vZGlmaWVyczogZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZQora2V5ZG93
biAtIGtleTogVSswMDA5QDAgKGtleUNvZGUvY2hhckNvZGU6IDkvOSkgbW9kaWZpZXJzOiBmYWxz
ZSxmYWxzZSx0cnVlLGZhbHNlCiAKLWtleXByZXNzIC0ga2V5OiBVKzAwMDAwOUAwIChrZXlDb2Rl
L2NoYXJDb2RlOiA5LzkpIG1vZGlmaWVyczogZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZQora2V5cHJl
c3MgLSBrZXk6IFUrMDAwOUAwIChrZXlDb2RlL2NoYXJDb2RlOiA5LzkpIG1vZGlmaWVyczogZmFs
c2UsZmFsc2UsdHJ1ZSxmYWxzZQogCiAKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL29i
amMtZXZlbnQtYXBpLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0
L2V2ZW50cy9vYmpjLWV2ZW50LWFwaS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIxNDI3KQorKysg
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvb2JqYy1ldmVudC1hcGktZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC03NSw3ICs3NSw3IEBAIGV2ZW50IHR5cGU6ICAgICAga2V5ZG93bgogICBj
YW5jZWxhYmxlOiAgICAxCiAgIGRldGFpbDogICAgICAgIDAKICAgdmlldzogICAgICAgICAgT0sg
KGRvY3VtZW50OiBPSykKLSAga2V5SWRlbnRpZmllcjogVSswMDAwNDEKKyAga2V5SWRlbnRpZmll
cjogVSswMDQxCiAgIGtleUxvY2F0aW9uOiAgIDAKICAgbW9kaWZpZXIga2V5czogYzowIHM6MCBh
OjAgbTowCiAgIGtleUNvZGU6ICAgICAgIDY1CkBAIC04Nyw3ICs4Nyw3IEBAIGV2ZW50IHR5cGU6
ICAgICAga2V5cHJlc3MKICAgY2FuY2VsYWJsZTogICAgMQogICBkZXRhaWw6ICAgICAgICAwCiAg
IHZpZXc6ICAgICAgICAgIE9LIChkb2N1bWVudDogT0spCi0gIGtleUlkZW50aWZpZXI6IFUrMDAw
MDQxCisgIGtleUlkZW50aWZpZXI6IFUrMDA0MQogICBrZXlMb2NhdGlvbjogICAwCiAgIG1vZGlm
aWVyIGtleXM6IGM6MCBzOjAgYTowIG06MAogICBrZXlDb2RlOiAgICAgICA5NwpAQCAtOTksNyAr
OTksNyBAQCBldmVudCB0eXBlOiAgICAgIGtleWRvd24KICAgY2FuY2VsYWJsZTogICAgMQogICBk
ZXRhaWw6ICAgICAgICAwCiAgIHZpZXc6ICAgICAgICAgIE9LIChkb2N1bWVudDogT0spCi0gIGtl
eUlkZW50aWZpZXI6IFUrMDAwMDQyCisgIGtleUlkZW50aWZpZXI6IFUrMDA0MgogICBrZXlMb2Nh
dGlvbjogICAwCiAgIG1vZGlmaWVyIGtleXM6IGM6MSBzOjAgYTowIG06MAogICBrZXlDb2RlOiAg
ICAgICA2NgpAQCAtMTExLDcgKzExMSw3IEBAIGV2ZW50IHR5cGU6ICAgICAga2V5cHJlc3MKICAg
Y2FuY2VsYWJsZTogICAgMQogICBkZXRhaWw6ICAgICAgICAwCiAgIHZpZXc6ICAgICAgICAgIE9L
IChkb2N1bWVudDogT0spCi0gIGtleUlkZW50aWZpZXI6IFUrMDAwMDQyCisgIGtleUlkZW50aWZp
ZXI6IFUrMDA0MgogICBrZXlMb2NhdGlvbjogICAwCiAgIG1vZGlmaWVyIGtleXM6IGM6MSBzOjAg
YTowIG06MAogICBrZXlDb2RlOiAgICAgICA5OApAQCAtMTIzLDcgKzEyMyw3IEBAIGV2ZW50IHR5
cGU6ICAgICAga2V5ZG93bgogICBjYW5jZWxhYmxlOiAgICAxCiAgIGRldGFpbDogICAgICAgIDAK
ICAgdmlldzogICAgICAgICAgT0sgKGRvY3VtZW50OiBPSykKLSAga2V5SWRlbnRpZmllcjogVSsw
MDAwNDQKKyAga2V5SWRlbnRpZmllcjogVSswMDQ0CiAgIGtleUxvY2F0aW9uOiAgIDAKICAgbW9k
aWZpZXIga2V5czogYzowIHM6MSBhOjAgbTowCiAgIGtleUNvZGU6ICAgICAgIDY4CkBAIC0xMzUs
NyArMTM1LDcgQEAgZXZlbnQgdHlwZTogICAgICBrZXlwcmVzcwogICBjYW5jZWxhYmxlOiAgICAx
CiAgIGRldGFpbDogICAgICAgIDAKICAgdmlldzogICAgICAgICAgT0sgKGRvY3VtZW50OiBPSykK
LSAga2V5SWRlbnRpZmllcjogVSswMDAwNDQKKyAga2V5SWRlbnRpZmllcjogVSswMDQ0CiAgIGtl
eUxvY2F0aW9uOiAgIDAKICAgbW9kaWZpZXIga2V5czogYzowIHM6MSBhOjAgbTowCiAgIGtleUNv
ZGU6ICAgICAgIDEwMApAQCAtMTQ3LDcgKzE0Nyw3IEBAIGV2ZW50IHR5cGU6ICAgICAga2V5ZG93
bgogICBjYW5jZWxhYmxlOiAgICAxCiAgIGRldGFpbDogICAgICAgIDAKICAgdmlldzogICAgICAg
ICAgT0sgKGRvY3VtZW50OiBPSykKLSAga2V5SWRlbnRpZmllcjogVSswMDAwNDUKKyAga2V5SWRl
bnRpZmllcjogVSswMDQ1CiAgIGtleUxvY2F0aW9uOiAgIDAKICAgbW9kaWZpZXIga2V5czogYzow
IHM6MCBhOjEgbToxCiAgIGtleUNvZGU6ICAgICAgIDY5CkBAIC0xNTksNyArMTU5LDcgQEAgZXZl
bnQgdHlwZTogICAgICBrZXlwcmVzcwogICBjYW5jZWxhYmxlOiAgICAxCiAgIGRldGFpbDogICAg
ICAgIDAKICAgdmlldzogICAgICAgICAgT0sgKGRvY3VtZW50OiBPSykKLSAga2V5SWRlbnRpZmll
cjogVSswMDAwNDUKKyAga2V5SWRlbnRpZmllcjogVSswMDQ1CiAgIGtleUxvY2F0aW9uOiAgIDAK
ICAgbW9kaWZpZXIga2V5czogYzowIHM6MCBhOjEgbToxCiAgIGtleUNvZGU6ICAgICAgIDEwMQpJ
bmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvb3B0aW9uLXRhYi5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL29wdGlvbi10YWIuaHRtbAkocmV2aXNpb24gMjE0
MjcpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9vcHRpb24tdGFiLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTE0LDcgKzE0LDcgQEAgZnVuY3Rpb24gdGVzdChmaWVsZElkKQogICAgIHdpbmRv
dy5saW5rRm9jdXNlZCA9IGZhbHNlOwogICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGZpZWxk
SWQpLmZvY3VzKCk7CiAgICAgdmFyIGV2ZW50ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoIktleWJv
YXJkRXZlbnRzIik7Ci0gICAgZXZlbnQuaW5pdEtleWJvYXJkRXZlbnQoImtleXByZXNzIiwgdHJ1
ZSwgdHJ1ZSwgZG9jdW1lbnQuZGVmYXVsdFZpZXcsICJVKzAwMDAwOSIsIDAsIGZhbHNlLCB0cnVl
LCBmYWxzZSwgZmFsc2UsIGZhbHNlKTsKKyAgICBldmVudC5pbml0S2V5Ym9hcmRFdmVudCgia2V5
cHJlc3MiLCB0cnVlLCB0cnVlLCBkb2N1bWVudC5kZWZhdWx0VmlldywgIlUrMDAwOSIsIDAsIGZh
bHNlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIGZhbHNlKTsKICAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZChmaWVsZElkKS5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKICAgICBpZiAod2luZG93LmxpbmtG
b2N1c2VkKQogICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29uc29sZSIpLmlubmVy
SFRNTCArPSAiU1VDQ0VTUzogT3B0aW9uLXRhYiBkaWQgdGFiIHRvIHRoZSBsaW5rICgiICsgZmll
bGRJZCArICIpLlxuIjsKQEAgLTI0LDcgKzI0LDcgQEAgZnVuY3Rpb24gdGVzdChmaWVsZElkKQog
ICAgIHdpbmRvdy5saW5rRm9jdXNlZCA9IGZhbHNlOwogICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKGZpZWxkSWQpLmZvY3VzKCk7CiAgICAgZXZlbnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgi
S2V5Ym9hcmRFdmVudHMiKTsKLSAgICBldmVudC5pbml0S2V5Ym9hcmRFdmVudCgia2V5cHJlc3Mi
LCB0cnVlLCB0cnVlLCBkb2N1bWVudC5kZWZhdWx0VmlldywgIlUrMDAwMDA5IiwgMCwgZmFsc2Us
IGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlKTsKKyAgICBldmVudC5pbml0S2V5Ym9hcmRFdmVu
dCgia2V5cHJlc3MiLCB0cnVlLCB0cnVlLCBkb2N1bWVudC5kZWZhdWx0VmlldywgIlUrMDAwOSIs
IDAsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSk7CiAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoZmllbGRJZCkuZGlzcGF0Y2hFdmVudChldmVudCk7CiAgICAgaWYgKHdpbmRv
dy5saW5rRm9jdXNlZCkKICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnNvbGUi
KS5pbm5lckhUTUwgKz0gIkZBSUw6IFBsYWluIG9sZCB0YWIgZGlkIHRhYiB0byB0aGUgbGluayAo
IiArIGZpZWxkSWQgKyAiKS5cbiI7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2ZvY3Vz
Mi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9jdXMyLmh0bWwJ
KHJldmlzaW9uIDIxNDI3KQorKysgTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb2N1czIuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMTA4LDcgKzEwOCw3IEBAIGZ1bmN0aW9uIGFkZEVsZW1lbnRzKHBh
cmVudEVsZW1lbnQpCiBmdW5jdGlvbiBkaXNwYXRjaE9wdGlvblRhYihlbGVtZW50LCBzaGlmdEtl
eSkKIHsKICAgICB2YXIgZXZlbnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgiS2V5Ym9hcmRFdmVu
dHMiKTsKLSAgICB2YXIgdGFiS2V5SWRlbnRpZmllciA9ICJVKzAwMDAwOSI7CisgICAgdmFyIHRh
YktleUlkZW50aWZpZXIgPSAiVSswMDA5IjsKICAgICBldmVudC5pbml0S2V5Ym9hcmRFdmVudCgi
a2V5cHJlc3MiLCB0cnVlLCB0cnVlLCBkb2N1bWVudC5kZWZhdWx0VmlldywgdGFiS2V5SWRlbnRp
ZmllciwgMCwgZmFsc2UsIHRydWUsIHNoaWZ0S2V5LCBmYWxzZSwgZmFsc2UpOwogICAgIGVsZW1l
bnQuZGlzcGF0Y2hFdmVudChldmVudCk7CiB9CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2h0bWwv
dGFiLW9yZGVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9odG1sL3RhYi1v
cmRlci5odG1sCShyZXZpc2lvbiAyMTQyNykKKysrIExheW91dFRlc3RzL2Zhc3QvaHRtbC90YWIt
b3JkZXIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTgsNyArMTgsNyBAQAogICAgICAgICBmdW5j
dGlvbiBkaXNwYXRjaFRhYlByZXNzKGVsZW1lbnQsIHNoaWZ0S2V5KQogICAgICAgICB7CiAgICAg
ICAgICAgICB2YXIgZXZlbnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgnS2V5Ym9hcmRFdmVudHMn
KTsKLSAgICAgICAgICAgIHZhciB0YWJLZXlJZGVudGlmaWVyID0gJ1UrMDAwMDA5JzsKKyAgICAg
ICAgICAgIHZhciB0YWJLZXlJZGVudGlmaWVyID0gJ1UrMDAwOSc7CiAgICAgICAgICAgICBldmVu
dC5pbml0S2V5Ym9hcmRFdmVudCgna2V5cHJlc3MnLCB0cnVlLCB0cnVlLCBkb2N1bWVudC5kZWZh
dWx0VmlldywgdGFiS2V5SWRlbnRpZmllciwgMCwgZmFsc2UsIGZhbHNlLCBzaGlmdEtleSwgZmFs
c2UsIGZhbHNlKTsKICAgICAgICAgICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChldmVudCk7CiAg
ICAgICAgIH0KSW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
Q2hhbmdlTG9nCShyZXZpc2lvbiAyMTQyNykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsNTQgQEAKKzIwMDctMDUtMTIgIFJvYiBCdWlzICA8YnVpc0BrZGUu
b3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0
dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNTI5CisgICAgICAgIERPTTMg
a2V5SWRlbnRpZmllciB0ZXh0IGlzIGluY29ycmVjdAorCisgICAgICAgIFVzZSA0IGRpZ2l0cyBm
b3IgdGhlIFVuaWNvZGUgYmFzZWQga2V5IGlkZW50aWZpZXJzLgorCisgICAgICAgICogaHRtbC9I
VE1MQnV0dG9uRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MQnV0dG9uRWxlbWVu
dDo6ZGVmYXVsdEV2ZW50SGFuZGxlcik6CisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OmRlZmF1bHRFdmVudEhh
bmRsZXIpOgorICAgICAgICAqIGh0bWwvSFRNTFNlbGVjdEVsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTFNlbGVjdEVsZW1lbnQ6Om1lbnVMaXN0RGVmYXVsdEV2ZW50SGFuZGxlcik6
CisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZl
bnRIYW5kbGVyOjpkZWZhdWx0S2V5Ym9hcmRFdmVudEhhbmRsZXIpOgorICAgICAgICAqIHBhZ2Uv
Z2RrL0V2ZW50SGFuZGxlckdkay5jcHA6CisgICAgICAgIChXZWJDb3JlOjppc0tleWJvYXJkT3B0
aW9uVGFiKToKKyAgICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW06CisgICAgICAg
IChXZWJDb3JlOjppc0tleWJvYXJkT3B0aW9uVGFiKToKKyAgICAgICAgKiBwYWdlL3F0L0V2ZW50
SGFuZGxlclF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmlzS2V5Ym9hcmRPcHRpb25UYWIpOgor
ICAgICAgICAqIHBsYXRmb3JtL2dkay9LZXlFdmVudEdkay5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjprZXlJZGVudGlmaWVyRm9yR2RrS2V5Q29kZSk6CisgICAgICAgICogcGxhdGZvcm0vbWFjL0tl
eUV2ZW50TWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6a2V5SWRlbnRpZmllckZvcktleUV2ZW50
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9QbGF0Zm9ybUtleWJvYXJkRXZlbnRRdC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjprZXlJZGVudGlmaWVyRm9yUXRLZXlDb2RlKToKKyAgICAgICAgKiBw
bGF0Zm9ybS93aW4vS2V5RXZlbnRXaW4uY3BwOgorICAgICAgICAoV2ViQ29yZTo6a2V5SWRlbnRp
ZmllckZvcldpbmRvd3NLZXlDb2RlKToKKyAgICAgICAgKiBwbGF0Zm9ybS93eC9LZXlFdmVudFdp
bi5jcHA6CisgICAgICAgIChXZWJDb3JlOjprZXlJZGVudGlmaWVyRm9yV2luZG93c0tleUNvZGUp
OgorICAgICAgICAqIHBsYXRmb3JtL3d4L0tleWJvYXJkRXZlbnRXeC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjprZXlJZGVudGlmaWVyRm9yV3hLZXlDb2RlKToKKwogMjAwNy0wNS0xMiAgRXJpYyBT
ZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgbWpzLgpJbmRl
eDogV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9w
YWdlL0V2ZW50SGFuZGxlci5jcHAJKHJldmlzaW9uIDIxNDI3KQorKysgV2ViQ29yZS9wYWdlL0V2
ZW50SGFuZGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEzODYsNyArMTM4Niw3IEBAIHZvaWQg
RXZlbnRIYW5kbGVyOjpkZWZhdWx0S2V5Ym9hcmRFdmVudEgKICAgICAgICAgbV9mcmFtZS0+ZWRp
dG9yKCktPmhhbmRsZUtleXByZXNzKGV2ZW50KTsKICAgICAgICAgaWYgKGV2ZW50LT5kZWZhdWx0
SGFuZGxlZCgpKQogICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICBpZiAoZXZlbnQtPmtleUlk
ZW50aWZpZXIoKSA9PSAiVSswMDAwMDkiKQorICAgICAgICBpZiAoZXZlbnQtPmtleUlkZW50aWZp
ZXIoKSA9PSAiVSswMDA5IikKICAgICAgICAgICAgIGRlZmF1bHRUYWJFdmVudEhhbmRsZXIoZXZl
bnQsIGZhbHNlKTsKICAgICB9CiB9CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dkay9LZXlFdmVu
dEdkay5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9nZGsvS2V5RXZlbnRHZGsu
Y3BwCShyZXZpc2lvbiAyMTQyNykKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ2RrL0tleUV2ZW50R2Rr
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTI4LDEzICsxMjgsMTMgQEAgc3RhdGljIFN0cmluZyBr
ZXlJZGVudGlmaWVyRm9yR2RrS2V5Q29kZQogICAgICAgICAgICAgcmV0dXJuICJTZWxlY3QiOwog
ICAgICAgICBjYXNlIEdES19VcDoKICAgICAgICAgICAgIHJldHVybiAiVXAiOwotICAgICAgICAg
ICAgLy8gU3RhbmRhcmQgc2F5cyB0aGF0IERFTCBiZWNvbWVzIFUrMDAwMDdGLgorICAgICAgICAg
ICAgLy8gU3RhbmRhcmQgc2F5cyB0aGF0IERFTCBiZWNvbWVzIFUrMDA3Ri4KICAgICAgICAgY2Fz
ZSBHREtfRGVsZXRlOgotICAgICAgICAgICAgcmV0dXJuICJVKzAwMDA3RiI7CisgICAgICAgICAg
ICByZXR1cm4gIlUrMDA3RiI7CiAgICAgICAgIGNhc2UgR0RLX1RhYjoKLSAgICAgICAgICAgIHJl
dHVybiAiVSswMDAwMDkiOworICAgICAgICAgICAgcmV0dXJuICJVKzAwMDkiOwogICAgICAgICBk
ZWZhdWx0OgotICAgICAgICAgICAgcmV0dXJuIFN0cmluZzo6Zm9ybWF0KCJVKyUwNlgiLCB0b3Vw
cGVyKGtleUNvZGUpKTsKKyAgICAgICAgICAgIHJldHVybiBTdHJpbmc6OmZvcm1hdCgiVSslMDRY
IiwgdG91cHBlcihrZXlDb2RlKSk7CiAgICAgfQogfQogCkluZGV4OiBXZWJDb3JlL3BsYXRmb3Jt
L3dpbi9LZXlFdmVudFdpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS93aW4v
S2V5RXZlbnRXaW4uY3BwCShyZXZpc2lvbiAyMTQyNykKKysrIFdlYkNvcmUvcGxhdGZvcm0vd2lu
L0tleUV2ZW50V2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTI2LDExICsxMjYsMTEgQEAgc3Rh
dGljIFN0cmluZyBrZXlJZGVudGlmaWVyRm9yV2luZG93c0tleQogICAgICAgICAgICAgcmV0dXJu
ICJTZWxlY3QiOwogICAgICAgICBjYXNlIFZLX1VQOgogICAgICAgICAgICAgcmV0dXJuICJVcCI7
Ci0gICAgICAgIC8vIFN0YW5kYXJkIHNheXMgdGhhdCBERUwgYmVjb21lcyBVKzAwMDA3Ri4KKyAg
ICAgICAgLy8gU3RhbmRhcmQgc2F5cyB0aGF0IERFTCBiZWNvbWVzIFUrMDA3Ri4KICAgICAgICAg
Y2FzZSBWS19ERUxFVEU6Ci0gICAgICAgICAgICByZXR1cm4gIlUrMDAwMDdGIjsKKyAgICAgICAg
ICAgIHJldHVybiAiVSswMDdGIjsKICAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIHJldHVy
biBTdHJpbmc6OmZvcm1hdCgiVSslMDZYIiwgdG91cHBlcihrZXlDb2RlKSk7CisgICAgICAgICAg
ICByZXR1cm4gU3RyaW5nOjpmb3JtYXQoIlUrJTA0WCIsIHRvdXBwZXIoa2V5Q29kZSkpOwogICAg
IH0KIH0KIApJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS93eC9LZXlFdmVudFdpbi5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS93eC9LZXlFdmVudFdpbi5jcHAJKHJldmlzaW9uIDIx
NDI3KQorKysgV2ViQ29yZS9wbGF0Zm9ybS93eC9LZXlFdmVudFdpbi5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTEyNiwxMSArMTI2LDExIEBAIHN0YXRpYyBTdHJpbmcga2V5SWRlbnRpZmllckZvcldp
bmRvd3NLZXkKICAgICAgICAgICAgIHJldHVybiAiU2VsZWN0IjsKICAgICAgICAgY2FzZSBWS19V
UDoKICAgICAgICAgICAgIHJldHVybiAiVXAiOwotICAgICAgICAvLyBTdGFuZGFyZCBzYXlzIHRo
YXQgREVMIGJlY29tZXMgVSswMDAwN0YuCisgICAgICAgIC8vIFN0YW5kYXJkIHNheXMgdGhhdCBE
RUwgYmVjb21lcyBVKzAwN0YuCiAgICAgICAgIGNhc2UgVktfREVMRVRFOgotICAgICAgICAgICAg
cmV0dXJuICJVKzAwMDA3RiI7CisgICAgICAgICAgICByZXR1cm4gIlUrMDA3RiI7CiAgICAgICAg
IGRlZmF1bHQ6Ci0gICAgICAgICAgICByZXR1cm4gU3RyaW5nOjpzcHJpbnRmKCJVKyUwNlgiLCB0
b3VwcGVyKGtleUNvZGUpKTsKKyAgICAgICAgICAgIHJldHVybiBTdHJpbmc6OnNwcmludGYoIlUr
JTA0WCIsIHRvdXBwZXIoa2V5Q29kZSkpOwogICAgIH0KIH0KIAo=
</data>
<flag name="review"
          id="5935"
          type_id="1"
          status="-"
          setter="mitz"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>14532</attachid>
            <date>2007-05-13 01:02:24 -0700</date>
            <delta_ts>2007-05-13 06:09:18 -0700</delta_ts>
            <desc>Now with complete source code</desc>
            <filename>13529-3.diff</filename>
            <type>text/plain</type>
            <size>16243</size>
            <attacher name="Rob Buis">rwlbuis</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIxNDQxKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMDctMDUtMTMgIFJvYiBCdWlzICA8YnVpc0Br
ZGUub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNTI5CisgICAgICAgIERP
TTMga2V5SWRlbnRpZmllciB0ZXh0IGlzIGluY29ycmVjdAorCisgICAgICAgIEFkanVzdGVkIHRl
c3RzIGFuZCB0ZXN0IHJlc3VsdHMuCisKKyAgICAgICAgKiBmYXN0L2V2ZW50cy9mcmFtZS10YWIt
Zm9jdXMuaHRtbDoKKyAgICAgICAgKiBmYXN0L2V2ZW50cy9qcy1rZXlib2FyZC1ldmVudC1jcmVh
dGlvbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9ldmVudHMvb2JqYy1ldmVudC1hcGkt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZXZlbnRzL29wdGlvbi10YWIuaHRtbDoKKyAg
ICAgICAgKiBmYXN0L2Zvcm1zL2ZvY3VzMi5odG1sOgorICAgICAgICAqIGZhc3QvaHRtbC90YWIt
b3JkZXIuaHRtbDoKKwogMjAwNy0wNS0xMiAgTWl0eiBQZXR0ZWwgIDxtaXR6QHdlYmtpdC5vcmc+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgSHlhdHQuCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2
ZW50cy9mcmFtZS10YWItZm9jdXMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0
L2V2ZW50cy9mcmFtZS10YWItZm9jdXMuaHRtbAkocmV2aXNpb24gMjE0NDApCisrKyBMYXlvdXRU
ZXN0cy9mYXN0L2V2ZW50cy9mcmFtZS10YWItZm9jdXMuaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
ODgsNyArODgsNyBAQCBmdW5jdGlvbiBzZXR1cFdpbmRvdyh3aW4pCiBmdW5jdGlvbiBkaXNwYXRj
aFRhYlByZXNzKGVsZW1lbnQsIHNoaWZ0S2V5LCBhbHRLZXkpCiB7CiAgICAgdmFyIGV2ZW50ID0g
ZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0tleWJvYXJkRXZlbnRzJyk7Ci0gICAgdmFyIHRhYktleUlk
ZW50aWZpZXIgPSAnVSswMDAwMDknOworICAgIHZhciB0YWJLZXlJZGVudGlmaWVyID0gJ1UrMDAw
OSc7CiAgICAgZXZlbnQuaW5pdEtleWJvYXJkRXZlbnQoJ2tleXByZXNzJywgdHJ1ZSwgdHJ1ZSwg
ZG9jdW1lbnQuZGVmYXVsdFZpZXcsIHRhYktleUlkZW50aWZpZXIsIDAsIGZhbHNlLCBhbHRLZXks
IHNoaWZ0S2V5LCBmYWxzZSwgZmFsc2UpOwogICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChldmVu
dCk7CiB9CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9qcy1rZXlib2FyZC1ldmVudC1j
cmVhdGlvbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVu
dHMvanMta2V5Ym9hcmQtZXZlbnQtY3JlYXRpb24tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyMTQ0
MCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2pzLWtleWJvYXJkLWV2ZW50LWNyZWF0aW9u
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSwxMiArMSwxMiBAQAogCiBUaGlzIHRl
c3RzIHRoYXQgRE9NS2V5Ym9hcmRFdmVudHMgYXJlIGNyZWF0ZWQgY29ycmVjdGx5IGluIHRoZSBK
YXZhU2NyaXB0IEFQSS4KIAota2V5ZG93biAtIGtleTogVSswMDAwMDlAMCAoa2V5Q29kZS9jaGFy
Q29kZTogOS85KSBtb2RpZmllcnM6IGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlCitrZXlkb3duIC0g
a2V5OiBVKzAwMDlAMCAoa2V5Q29kZS9jaGFyQ29kZTogOS85KSBtb2RpZmllcnM6IGZhbHNlLGZh
bHNlLGZhbHNlLGZhbHNlCiAKLWtleXByZXNzIC0ga2V5OiBVKzAwMDAwOUAwIChrZXlDb2RlL2No
YXJDb2RlOiA5LzkpIG1vZGlmaWVyczogZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UKK2tleXByZXNz
IC0ga2V5OiBVKzAwMDlAMCAoa2V5Q29kZS9jaGFyQ29kZTogOS85KSBtb2RpZmllcnM6IGZhbHNl
LGZhbHNlLGZhbHNlLGZhbHNlCiAKLWtleWRvd24gLSBrZXk6IFUrMDAwMDA5QDAgKGtleUNvZGUv
Y2hhckNvZGU6IDkvOSkgbW9kaWZpZXJzOiBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlCitrZXlkb3du
IC0ga2V5OiBVKzAwMDlAMCAoa2V5Q29kZS9jaGFyQ29kZTogOS85KSBtb2RpZmllcnM6IGZhbHNl
LGZhbHNlLHRydWUsZmFsc2UKIAota2V5cHJlc3MgLSBrZXk6IFUrMDAwMDA5QDAgKGtleUNvZGUv
Y2hhckNvZGU6IDkvOSkgbW9kaWZpZXJzOiBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlCitrZXlwcmVz
cyAtIGtleTogVSswMDA5QDAgKGtleUNvZGUvY2hhckNvZGU6IDkvOSkgbW9kaWZpZXJzOiBmYWxz
ZSxmYWxzZSx0cnVlLGZhbHNlCiAKIApJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvb2Jq
Yy1ldmVudC1hcGktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL29iamMtZXZlbnQtYXBpLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjE0NDApCisrKyBM
YXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9vYmpjLWV2ZW50LWFwaS1leHBlY3RlZC50eHQJKHdvcmtp
bmcgY29weSkKQEAgLTc1LDcgKzc1LDcgQEAgZXZlbnQgdHlwZTogICAgICBrZXlkb3duCiAgIGNh
bmNlbGFibGU6ICAgIDEKICAgZGV0YWlsOiAgICAgICAgMAogICB2aWV3OiAgICAgICAgICBPSyAo
ZG9jdW1lbnQ6IE9LKQotICBrZXlJZGVudGlmaWVyOiBVKzAwMDA0MQorICBrZXlJZGVudGlmaWVy
OiBVKzAwNDEKICAga2V5TG9jYXRpb246ICAgMAogICBtb2RpZmllciBrZXlzOiBjOjAgczowIGE6
MCBtOjAKICAga2V5Q29kZTogICAgICAgNjUKQEAgLTg3LDcgKzg3LDcgQEAgZXZlbnQgdHlwZTog
ICAgICBrZXlwcmVzcwogICBjYW5jZWxhYmxlOiAgICAxCiAgIGRldGFpbDogICAgICAgIDAKICAg
dmlldzogICAgICAgICAgT0sgKGRvY3VtZW50OiBPSykKLSAga2V5SWRlbnRpZmllcjogVSswMDAw
NDEKKyAga2V5SWRlbnRpZmllcjogVSswMDQxCiAgIGtleUxvY2F0aW9uOiAgIDAKICAgbW9kaWZp
ZXIga2V5czogYzowIHM6MCBhOjAgbTowCiAgIGtleUNvZGU6ICAgICAgIDk3CkBAIC05OSw3ICs5
OSw3IEBAIGV2ZW50IHR5cGU6ICAgICAga2V5ZG93bgogICBjYW5jZWxhYmxlOiAgICAxCiAgIGRl
dGFpbDogICAgICAgIDAKICAgdmlldzogICAgICAgICAgT0sgKGRvY3VtZW50OiBPSykKLSAga2V5
SWRlbnRpZmllcjogVSswMDAwNDIKKyAga2V5SWRlbnRpZmllcjogVSswMDQyCiAgIGtleUxvY2F0
aW9uOiAgIDAKICAgbW9kaWZpZXIga2V5czogYzoxIHM6MCBhOjAgbTowCiAgIGtleUNvZGU6ICAg
ICAgIDY2CkBAIC0xMTEsNyArMTExLDcgQEAgZXZlbnQgdHlwZTogICAgICBrZXlwcmVzcwogICBj
YW5jZWxhYmxlOiAgICAxCiAgIGRldGFpbDogICAgICAgIDAKICAgdmlldzogICAgICAgICAgT0sg
KGRvY3VtZW50OiBPSykKLSAga2V5SWRlbnRpZmllcjogVSswMDAwNDIKKyAga2V5SWRlbnRpZmll
cjogVSswMDQyCiAgIGtleUxvY2F0aW9uOiAgIDAKICAgbW9kaWZpZXIga2V5czogYzoxIHM6MCBh
OjAgbTowCiAgIGtleUNvZGU6ICAgICAgIDk4CkBAIC0xMjMsNyArMTIzLDcgQEAgZXZlbnQgdHlw
ZTogICAgICBrZXlkb3duCiAgIGNhbmNlbGFibGU6ICAgIDEKICAgZGV0YWlsOiAgICAgICAgMAog
ICB2aWV3OiAgICAgICAgICBPSyAoZG9jdW1lbnQ6IE9LKQotICBrZXlJZGVudGlmaWVyOiBVKzAw
MDA0NAorICBrZXlJZGVudGlmaWVyOiBVKzAwNDQKICAga2V5TG9jYXRpb246ICAgMAogICBtb2Rp
ZmllciBrZXlzOiBjOjAgczoxIGE6MCBtOjAKICAga2V5Q29kZTogICAgICAgNjgKQEAgLTEzNSw3
ICsxMzUsNyBAQCBldmVudCB0eXBlOiAgICAgIGtleXByZXNzCiAgIGNhbmNlbGFibGU6ICAgIDEK
ICAgZGV0YWlsOiAgICAgICAgMAogICB2aWV3OiAgICAgICAgICBPSyAoZG9jdW1lbnQ6IE9LKQot
ICBrZXlJZGVudGlmaWVyOiBVKzAwMDA0NAorICBrZXlJZGVudGlmaWVyOiBVKzAwNDQKICAga2V5
TG9jYXRpb246ICAgMAogICBtb2RpZmllciBrZXlzOiBjOjAgczoxIGE6MCBtOjAKICAga2V5Q29k
ZTogICAgICAgMTAwCkBAIC0xNDcsNyArMTQ3LDcgQEAgZXZlbnQgdHlwZTogICAgICBrZXlkb3du
CiAgIGNhbmNlbGFibGU6ICAgIDEKICAgZGV0YWlsOiAgICAgICAgMAogICB2aWV3OiAgICAgICAg
ICBPSyAoZG9jdW1lbnQ6IE9LKQotICBrZXlJZGVudGlmaWVyOiBVKzAwMDA0NQorICBrZXlJZGVu
dGlmaWVyOiBVKzAwNDUKICAga2V5TG9jYXRpb246ICAgMAogICBtb2RpZmllciBrZXlzOiBjOjAg
czowIGE6MSBtOjEKICAga2V5Q29kZTogICAgICAgNjkKQEAgLTE1OSw3ICsxNTksNyBAQCBldmVu
dCB0eXBlOiAgICAgIGtleXByZXNzCiAgIGNhbmNlbGFibGU6ICAgIDEKICAgZGV0YWlsOiAgICAg
ICAgMAogICB2aWV3OiAgICAgICAgICBPSyAoZG9jdW1lbnQ6IE9LKQotICBrZXlJZGVudGlmaWVy
OiBVKzAwMDA0NQorICBrZXlJZGVudGlmaWVyOiBVKzAwNDUKICAga2V5TG9jYXRpb246ICAgMAog
ICBtb2RpZmllciBrZXlzOiBjOjAgczowIGE6MSBtOjEKICAga2V5Q29kZTogICAgICAgMTAxCklu
ZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9vcHRpb24tdGFiLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvb3B0aW9uLXRhYi5odG1sCShyZXZpc2lvbiAyMTQ0
MCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL29wdGlvbi10YWIuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMTQsNyArMTQsNyBAQCBmdW5jdGlvbiB0ZXN0KGZpZWxkSWQpCiAgICAgd2luZG93
LmxpbmtGb2N1c2VkID0gZmFsc2U7CiAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZmllbGRJ
ZCkuZm9jdXMoKTsKICAgICB2YXIgZXZlbnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgiS2V5Ym9h
cmRFdmVudHMiKTsKLSAgICBldmVudC5pbml0S2V5Ym9hcmRFdmVudCgia2V5cHJlc3MiLCB0cnVl
LCB0cnVlLCBkb2N1bWVudC5kZWZhdWx0VmlldywgIlUrMDAwMDA5IiwgMCwgZmFsc2UsIHRydWUs
IGZhbHNlLCBmYWxzZSwgZmFsc2UpOworICAgIGV2ZW50LmluaXRLZXlib2FyZEV2ZW50KCJrZXlw
cmVzcyIsIHRydWUsIHRydWUsIGRvY3VtZW50LmRlZmF1bHRWaWV3LCAiVSswMDA5IiwgMCwgZmFs
c2UsIHRydWUsIGZhbHNlLCBmYWxzZSwgZmFsc2UpOwogICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKGZpZWxkSWQpLmRpc3BhdGNoRXZlbnQoZXZlbnQpOwogICAgIGlmICh3aW5kb3cubGlua0Zv
Y3VzZWQpCiAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xlIikuaW5uZXJI
VE1MICs9ICJTVUNDRVNTOiBPcHRpb24tdGFiIGRpZCB0YWIgdG8gdGhlIGxpbmsgKCIgKyBmaWVs
ZElkICsgIikuXG4iOwpAQCAtMjQsNyArMjQsNyBAQCBmdW5jdGlvbiB0ZXN0KGZpZWxkSWQpCiAg
ICAgd2luZG93LmxpbmtGb2N1c2VkID0gZmFsc2U7CiAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoZmllbGRJZCkuZm9jdXMoKTsKICAgICBldmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJL
ZXlib2FyZEV2ZW50cyIpOwotICAgIGV2ZW50LmluaXRLZXlib2FyZEV2ZW50KCJrZXlwcmVzcyIs
IHRydWUsIHRydWUsIGRvY3VtZW50LmRlZmF1bHRWaWV3LCAiVSswMDAwMDkiLCAwLCBmYWxzZSwg
ZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UpOworICAgIGV2ZW50LmluaXRLZXlib2FyZEV2ZW50
KCJrZXlwcmVzcyIsIHRydWUsIHRydWUsIGRvY3VtZW50LmRlZmF1bHRWaWV3LCAiVSswMDA5Iiwg
MCwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlKTsKICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZChmaWVsZElkKS5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKICAgICBpZiAod2luZG93
LmxpbmtGb2N1c2VkKQogICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29uc29sZSIp
LmlubmVySFRNTCArPSAiRkFJTDogUGxhaW4gb2xkIHRhYiBkaWQgdGFiIHRvIHRoZSBsaW5rICgi
ICsgZmllbGRJZCArICIpLlxuIjsKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9jdXMy
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb2N1czIuaHRtbAko
cmV2aXNpb24gMjE0NDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2ZvY3VzMi5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0xMDgsNyArMTA4LDcgQEAgZnVuY3Rpb24gYWRkRWxlbWVudHMocGFy
ZW50RWxlbWVudCkKIGZ1bmN0aW9uIGRpc3BhdGNoT3B0aW9uVGFiKGVsZW1lbnQsIHNoaWZ0S2V5
KQogewogICAgIHZhciBldmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJLZXlib2FyZEV2ZW50
cyIpOwotICAgIHZhciB0YWJLZXlJZGVudGlmaWVyID0gIlUrMDAwMDA5IjsKKyAgICB2YXIgdGFi
S2V5SWRlbnRpZmllciA9ICJVKzAwMDkiOwogICAgIGV2ZW50LmluaXRLZXlib2FyZEV2ZW50KCJr
ZXlwcmVzcyIsIHRydWUsIHRydWUsIGRvY3VtZW50LmRlZmF1bHRWaWV3LCB0YWJLZXlJZGVudGlm
aWVyLCAwLCBmYWxzZSwgdHJ1ZSwgc2hpZnRLZXksIGZhbHNlLCBmYWxzZSk7CiAgICAgZWxlbWVu
dC5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKIH0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvaHRtbC90
YWItb3JkZXIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2h0bWwvdGFiLW9y
ZGVyLmh0bWwJKHJldmlzaW9uIDIxNDQwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9odG1sL3RhYi1v
cmRlci5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xOCw3ICsxOCw3IEBACiAgICAgICAgIGZ1bmN0
aW9uIGRpc3BhdGNoVGFiUHJlc3MoZWxlbWVudCwgc2hpZnRLZXkpCiAgICAgICAgIHsKICAgICAg
ICAgICAgIHZhciBldmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdLZXlib2FyZEV2ZW50cycp
OwotICAgICAgICAgICAgdmFyIHRhYktleUlkZW50aWZpZXIgPSAnVSswMDAwMDknOworICAgICAg
ICAgICAgdmFyIHRhYktleUlkZW50aWZpZXIgPSAnVSswMDA5JzsKICAgICAgICAgICAgIGV2ZW50
LmluaXRLZXlib2FyZEV2ZW50KCdrZXlwcmVzcycsIHRydWUsIHRydWUsIGRvY3VtZW50LmRlZmF1
bHRWaWV3LCB0YWJLZXlJZGVudGlmaWVyLCAwLCBmYWxzZSwgZmFsc2UsIHNoaWZ0S2V5LCBmYWxz
ZSwgZmFsc2UpOwogICAgICAgICAgICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKICAg
ICAgICAgfQpJbmRleDogV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIxNDQxKQorKysgV2ViQ29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcg
Y29weSkKQEAgLTEsMyArMSwzOSBAQAorMjAwNy0wNS0xMyAgUm9iIEJ1aXMgIDxidWlzQGtkZS5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0
cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM1MjkKKyAgICAgICAgRE9NMyBr
ZXlJZGVudGlmaWVyIHRleHQgaXMgaW5jb3JyZWN0CisKKyAgICAgICAgVXNlIDQgZGlnaXRzIGZv
ciB0aGUgVW5pY29kZSBiYXNlZCBrZXkgaWRlbnRpZmllcnMuCisKKyAgICAgICAgKiBodG1sL0hU
TUxCdXR0b25FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxCdXR0b25FbGVtZW50
OjpkZWZhdWx0RXZlbnRIYW5kbGVyKToKKyAgICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFu
ZGxlcik6CisgICAgICAgICogaHRtbC9IVE1MU2VsZWN0RWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MU2VsZWN0RWxlbWVudDo6bWVudUxpc3REZWZhdWx0RXZlbnRIYW5kbGVyKToK
KyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVu
dEhhbmRsZXI6OmRlZmF1bHRLZXlib2FyZEV2ZW50SGFuZGxlcik6CisgICAgICAgICogcGFnZS9n
ZGsvRXZlbnRIYW5kbGVyR2RrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmlzS2V5Ym9hcmRPcHRp
b25UYWIpOgorICAgICAgICAqIHBhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbToKKyAgICAgICAg
KFdlYkNvcmU6OmlzS2V5Ym9hcmRPcHRpb25UYWIpOgorICAgICAgICAqIHBhZ2UvcXQvRXZlbnRI
YW5kbGVyUXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6aXNLZXlib2FyZE9wdGlvblRhYik6Cisg
ICAgICAgICogcGxhdGZvcm0vZ2RrL0tleUV2ZW50R2RrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OmtleUlkZW50aWZpZXJGb3JHZGtLZXlDb2RlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvS2V5
RXZlbnRNYWMubW06CisgICAgICAgIChXZWJDb3JlOjprZXlJZGVudGlmaWVyRm9yS2V5RXZlbnQp
OgorICAgICAgICAqIHBsYXRmb3JtL3F0L1BsYXRmb3JtS2V5Ym9hcmRFdmVudFF0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OmtleUlkZW50aWZpZXJGb3JRdEtleUNvZGUpOgorICAgICAgICAqIHBs
YXRmb3JtL3dpbi9LZXlFdmVudFdpbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjprZXlJZGVudGlm
aWVyRm9yV2luZG93c0tleUNvZGUpOgorICAgICAgICAqIHBsYXRmb3JtL3d4L0tleUV2ZW50V2lu
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmtleUlkZW50aWZpZXJGb3JXaW5kb3dzS2V5Q29kZSk6
CisgICAgICAgICogcGxhdGZvcm0vd3gvS2V5Ym9hcmRFdmVudFd4LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OmtleUlkZW50aWZpZXJGb3JXeEtleUNvZGUpOgorCiAyMDA3LTA1LTEyICBSb2IgQnVp
cyAgPGJ1aXNAa2RlLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBPbGl2ZXIuCkluZGV4OiBX
ZWJDb3JlL2h0bWwvSFRNTEJ1dHRvbkVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
aHRtbC9IVE1MQnV0dG9uRWxlbWVudC5jcHAJKHJldmlzaW9uIDIxNDQwKQorKysgV2ViQ29yZS9o
dG1sL0hUTUxCdXR0b25FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTAxLDcgKzEwMSw3
IEBAIHZvaWQgSFRNTEJ1dHRvbkVsZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmQKICAgICAgICAgICAg
IGV2dC0+c2V0RGVmYXVsdEhhbmRsZWQoKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAg
fQotICAgICAgICBpZiAoa2V5ID09ICJFbnRlciIgfHwga2V5ID09ICJVKzAwMDAyMCIpIHsKKyAg
ICAgICAgaWYgKGtleSA9PSAiRW50ZXIiIHx8IGtleSA9PSAiVSswMDIwIikgewogICAgICAgICAg
ICAgZGlzcGF0Y2hTaW11bGF0ZWRDbGljayhldnQpOwogICAgICAgICAgICAgZXZ0LT5zZXREZWZh
dWx0SGFuZGxlZCgpOwogICAgICAgICAgICAgcmV0dXJuOwpJbmRleDogV2ViQ29yZS9odG1sL0hU
TUxJbnB1dEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MSW5wdXRF
bGVtZW50LmNwcAkocmV2aXNpb24gMjE0NDApCisrKyBXZWJDb3JlL2h0bWwvSFRNTElucHV0RWxl
bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExODUsNyArMTE4NSw3IEBAIHZvaWQgSFRNTElu
cHV0RWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGwKIAogICAgICAgICBTdHJpbmcga2V5ID0gc3Rh
dGljX2Nhc3Q8S2V5Ym9hcmRFdmVudCo+KGV2dCktPmtleUlkZW50aWZpZXIoKTsKIAotICAgICAg
ICBpZiAoa2V5ID09ICJVKzAwMDAyMCIpIHsKKyAgICAgICAgaWYgKGtleSA9PSAiVSswMDIwIikg
ewogICAgICAgICAgICAgc3dpdGNoIChpbnB1dFR5cGUoKSkgewogICAgICAgICAgICAgICAgIGNh
c2UgQlVUVE9OOgogICAgICAgICAgICAgICAgIGNhc2UgQ0hFQ0tCT1g6CkluZGV4OiBXZWJDb3Jl
L2h0bWwvSFRNTFNlbGVjdEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9I
VE1MU2VsZWN0RWxlbWVudC5jcHAJKHJldmlzaW9uIDIxNDQwKQorKysgV2ViQ29yZS9odG1sL0hU
TUxTZWxlY3RFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjMyLDcgKzYzMiw3IEBAIHZv
aWQgSFRNTFNlbGVjdEVsZW1lbnQ6Om1lbnVMaXN0RGVmYXVsdEUKICAgICAgICAgICAgICAgICBm
b3JtKCktPnN1Ym1pdENsaWNrKGV2dCk7CiAgICAgICAgICAgICBoYW5kbGVkID0gdHJ1ZTsKICAg
ICAgICAgfQotICAgICAgICBpZiAoa2V5SWRlbnRpZmllciA9PSAiRG93biIgfHwga2V5SWRlbnRp
ZmllciA9PSAiVXAiIHx8IGtleUlkZW50aWZpZXIgPT0gIlUrMDAwMDIwIikgeworICAgICAgICBp
ZiAoa2V5SWRlbnRpZmllciA9PSAiRG93biIgfHwga2V5SWRlbnRpZmllciA9PSAiVXAiIHx8IGtl
eUlkZW50aWZpZXIgPT0gIlUrMDAyMCIpIHsKICAgICAgICAgICAgIGZvY3VzKCk7CiAgICAgICAg
ICAgICAvLyBTYXZlIHRoZSBzZWxlY3Rpb24gc28gaXQgY2FuIGJlIGNvbXBhcmVkIHRvIHRoZSBu
ZXcgc2VsZWN0aW9uIHdoZW4gd2UgY2FsbCBvbkNoYW5nZSBkdXJpbmcgc2V0U2VsZWN0ZWRJbmRl
eCwKICAgICAgICAgICAgIC8vIHdoaWNoIGdldHMgY2FsbGVkIGZyb20gUmVuZGVyTWVudUxpc3Q6
OnZhbHVlQ2hhbmdlZCwgd2hpY2ggZ2V0cyBjYWxsZWQgYWZ0ZXIgdGhlIHVzZXIgbWFrZXMgYSBz
ZWxlY3Rpb24gZnJvbSB0aGUgbWVudS4KSW5kZXg6IFdlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCShyZXZpc2lv
biAyMTQ0MCkKKysrIFdlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xMzg2LDcgKzEzODYsNyBAQCB2b2lkIEV2ZW50SGFuZGxlcjo6ZGVmYXVsdEtleWJvYXJk
RXZlbnRICiAgICAgICAgIG1fZnJhbWUtPmVkaXRvcigpLT5oYW5kbGVLZXlwcmVzcyhldmVudCk7
CiAgICAgICAgIGlmIChldmVudC0+ZGVmYXVsdEhhbmRsZWQoKSkKICAgICAgICAgICAgIHJldHVy
bjsKLSAgICAgICAgaWYgKGV2ZW50LT5rZXlJZGVudGlmaWVyKCkgPT0gIlUrMDAwMDA5IikKKyAg
ICAgICAgaWYgKGV2ZW50LT5rZXlJZGVudGlmaWVyKCkgPT0gIlUrMDAwOSIpCiAgICAgICAgICAg
ICBkZWZhdWx0VGFiRXZlbnRIYW5kbGVyKGV2ZW50LCBmYWxzZSk7CiAgICAgfQogfQpJbmRleDog
V2ViQ29yZS9wYWdlL2dkay9FdmVudEhhbmRsZXJHZGsuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcGFnZS9nZGsvRXZlbnRIYW5kbGVyR2RrLmNwcAkocmV2aXNpb24gMjE0NDApCisrKyBXZWJD
b3JlL3BhZ2UvZ2RrL0V2ZW50SGFuZGxlckdkay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDcg
KzQ4LDcgQEAgc3RhdGljIGJvb2wgaXNLZXlib2FyZE9wdGlvblRhYihLZXlib2FyZAogICAgIHJl
dHVybiBldmVudAogICAgICAgICAmJiAoZXZlbnQtPnR5cGUoKSA9PSBrZXlkb3duRXZlbnQgfHwg
ZXZlbnQtPnR5cGUoKSA9PSBrZXlwcmVzc0V2ZW50KQogICAgICAgICAmJiBldmVudC0+YWx0S2V5
KCkKLSAgICAgICAgJiYgZXZlbnQtPmtleUlkZW50aWZpZXIoKSA9PSAiVSswMDAwMDkiOworICAg
ICAgICAmJiBldmVudC0+a2V5SWRlbnRpZmllcigpID09ICJVKzAwMDkiOwogfQogCiBib29sIEV2
ZW50SGFuZGxlcjo6dGFic1RvQWxsQ29udHJvbHMoS2V5Ym9hcmRFdmVudCogZXZlbnQpIGNvbnN0
CkluZGV4OiBXZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbQkocmV2aXNpb24gMjE0NDApCisr
KyBXZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAt
OTcsNyArOTcsNyBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaXNLZXlib2FyZE9wdGlvblRhYihLCiAg
ICAgcmV0dXJuIGV2ZW50CiAgICAgJiYgKGV2ZW50LT50eXBlKCkgPT0ga2V5ZG93bkV2ZW50IHx8
IGV2ZW50LT50eXBlKCkgPT0ga2V5cHJlc3NFdmVudCkKICAgICAmJiBldmVudC0+YWx0S2V5KCkK
LSAgICAmJiBldmVudC0+a2V5SWRlbnRpZmllcigpID09ICJVKzAwMDAwOSI7ICAgIAorICAgICYm
IGV2ZW50LT5rZXlJZGVudGlmaWVyKCkgPT0gIlUrMDAwOSI7ICAgIAogfQogCiBib29sIEV2ZW50
SGFuZGxlcjo6aW52ZXJ0U2Vuc2VPZlRhYnNUb0xpbmtzKEtleWJvYXJkRXZlbnQqIGV2ZW50KSBj
b25zdApJbmRleDogV2ViQ29yZS9wYWdlL3F0L0V2ZW50SGFuZGxlclF0LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL3BhZ2UvcXQvRXZlbnRIYW5kbGVyUXQuY3BwCShyZXZpc2lvbiAyMTQ0MCkK
KysrIFdlYkNvcmUvcGFnZS9xdC9FdmVudEhhbmRsZXJRdC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTU4LDcgKzU4LDcgQEAgc3RhdGljIGJvb2wgaXNLZXlib2FyZE9wdGlvblRhYihLZXlib2FyZAog
ICAgIHJldHVybiBldmVudAogICAgICAgICAmJiAoZXZlbnQtPnR5cGUoKSA9PSBrZXlkb3duRXZl
bnQgfHwgZXZlbnQtPnR5cGUoKSA9PSBrZXlwcmVzc0V2ZW50KQogICAgICAgICAmJiBldmVudC0+
YWx0S2V5KCkKLSAgICAgICAgJiYgZXZlbnQtPmtleUlkZW50aWZpZXIoKSA9PSAiVSswMDAwMDki
OworICAgICAgICAmJiBldmVudC0+a2V5SWRlbnRpZmllcigpID09ICJVKzAwMDkiOwogfQogCiBi
b29sIEV2ZW50SGFuZGxlcjo6aW52ZXJ0U2Vuc2VPZlRhYnNUb0xpbmtzKEtleWJvYXJkRXZlbnQq
IGV2ZW50KSBjb25zdApJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9tYWMvS2V5RXZlbnRNYWMubW0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9tYWMvS2V5RXZlbnRNYWMubW0JKHJldmlz
aW9uIDIxNDQwKQorKysgV2ViQ29yZS9wbGF0Zm9ybS9tYWMvS2V5RXZlbnRNYWMubW0JKHdvcmtp
bmcgY29weSkKQEAgLTI5NSwxNCArMjk1LDE0IEBAIHN0YXRpYyBTdHJpbmcga2V5SWRlbnRpZmll
ckZvcktleUV2ZW50KE4KIAogICAgICAgICAvLyBUdXJuIDB4N0YgaW50byAweDA4LCBiZWNhdXNl
IGJhY2tzcGFjZSBuZWVkcyB0byBhbHdheXMgYmUgMHgwOC4KICAgICAgICAgY2FzZSAweDdGOgot
ICAgICAgICAgICAgcmV0dXJuICJVKzAwMDAwOCI7Ci0gICAgICAgIC8vIFN0YW5kYXJkIHNheXMg
dGhhdCBERUwgYmVjb21lcyBVKzAwMDA3Ri4KKyAgICAgICAgICAgIHJldHVybiAiVSswMDA4IjsK
KyAgICAgICAgLy8gU3RhbmRhcmQgc2F5cyB0aGF0IERFTCBiZWNvbWVzIFUrMDA3Ri4KICAgICAg
ICAgY2FzZSBOU0RlbGV0ZUZ1bmN0aW9uS2V5OgotICAgICAgICAgICAgcmV0dXJuICJVKzAwMDA3
RiI7CisgICAgICAgICAgICByZXR1cm4gIlUrMDA3RiI7CiAgICAgICAgICAgICAKICAgICAgICAg
Ly8gQWx3YXlzIHVzZSAweDA5IGZvciB0YWIgaW5zdGVhZCBvZiBBcHBLaXQncyBiYWNrdGFiIGNo
YXJhY3Rlci4KICAgICAgICAgY2FzZSBOU0JhY2tUYWJDaGFyYWN0ZXI6Ci0gICAgICAgICAgICBy
ZXR1cm4gIlUrMDAwMDA5IjsKKyAgICAgICAgICAgIHJldHVybiAiVSswMDA5IjsKIAogICAgICAg
ICBjYXNlIE5TQmVnaW5GdW5jdGlvbktleToKICAgICAgICAgY2FzZSBOU0JyZWFrRnVuY3Rpb25L
ZXk6CkBAIC0zMjIsNyArMzIyLDcgQEAgc3RhdGljIFN0cmluZyBrZXlJZGVudGlmaWVyRm9yS2V5
RXZlbnQoTgogICAgICAgICAgICAgLy8gRklYTUU6IFdlIHNob3VsZCB1c2Ugc29tZXRoaW5nIG90
aGVyIHRoYW4gdGhlIHZlbmRvci1hcmVhIFVuaWNvZGUgdmFsdWVzIGZvciB0aGUgYWJvdmUga2V5
cy4KICAgICAgICAgICAgIC8vIEZvciBub3csIGp1c3QgZmFsbCB0aHJvdWdoIHRvIHRoZSBkZWZh
dWx0LgogICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgcmV0dXJuIFN0cmluZzo6Zm9ybWF0
KCJVKyUwNlgiLCB0b3VwcGVyKGMpKTsKKyAgICAgICAgICAgIHJldHVybiBTdHJpbmc6OmZvcm1h
dCgiVSslMDRYIiwgdG91cHBlcihjKSk7CiAgICAgfQogfQogCkluZGV4OiBXZWJDb3JlL3BsYXRm
b3JtL3F0L1BsYXRmb3JtS2V5Ym9hcmRFdmVudFF0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3BsYXRmb3JtL3F0L1BsYXRmb3JtS2V5Ym9hcmRFdmVudFF0LmNwcAkocmV2aXNpb24gMjE0NDAp
CisrKyBXZWJDb3JlL3BsYXRmb3JtL3F0L1BsYXRmb3JtS2V5Ym9hcmRFdmVudFF0LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMTIyLDExICsxMjIsMTEgQEAgc3RhdGljIFN0cmluZyBrZXlJZGVudGlm
aWVyRm9yUXRLZXlDb2RlKAogICAgICAgICAgICAgcmV0dXJuICJTZWxlY3QiOwogICAgICAgICBj
YXNlIFF0OjpLZXlfVXA6CiAgICAgICAgICAgICByZXR1cm4gIlVwIjsKLSAgICAgICAgICAgIC8v
IFN0YW5kYXJkIHNheXMgdGhhdCBERUwgYmVjb21lcyBVKzAwMDA3Ri4KKyAgICAgICAgICAgIC8v
IFN0YW5kYXJkIHNheXMgdGhhdCBERUwgYmVjb21lcyBVKzAwN0YuCiAgICAgICAgIGNhc2UgUXQ6
OktleV9EZWxldGU6Ci0gICAgICAgICAgICByZXR1cm4gIlUrMDAwMDdGIjsKKyAgICAgICAgICAg
IHJldHVybiAiVSswMDdGIjsKICAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIHJldHVybiBT
dHJpbmc6OmZvcm1hdCgiVSslMDZYIiwgdG91cHBlcihrZXlDb2RlKSk7CisgICAgICAgICAgICBy
ZXR1cm4gU3RyaW5nOjpmb3JtYXQoIlUrJTA0WCIsIHRvdXBwZXIoa2V5Q29kZSkpOwogICAgIH0K
IH0KIApJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS93eC9LZXlib2FyZEV2ZW50V3guY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vd3gvS2V5Ym9hcmRFdmVudFd4LmNwcAkocmV2aXNp
b24gMjE0NDApCisrKyBXZWJDb3JlL3BsYXRmb3JtL3d4L0tleWJvYXJkRXZlbnRXeC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTExOCwxMSArMTE4LDExIEBAIHN0YXRpYyBTdHJpbmcga2V5SWRlbnRp
ZmllckZvcld4S2V5Q29kZSgKICAgICAgICAgICAgIHJldHVybiAiU2VsZWN0IjsKICAgICAgICAg
Y2FzZSBXWEtfVVA6CiAgICAgICAgICAgICByZXR1cm4gIlVwIjsKLSAgICAgICAgICAgIC8vIFN0
YW5kYXJkIHNheXMgdGhhdCBERUwgYmVjb21lcyBVKzAwMDA3Ri4KKyAgICAgICAgICAgIC8vIFN0
YW5kYXJkIHNheXMgdGhhdCBERUwgYmVjb21lcyBVKzAwN0YuCiAgICAgICAgIGNhc2UgV1hLX0RF
TEVURToKLSAgICAgICAgICAgIHJldHVybiAiVSswMDAwN0YiOworICAgICAgICAgICAgcmV0dXJu
ICJVKzAwN0YiOwogICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgcmV0dXJuIFN0cmluZzo6
Zm9ybWF0KCJVKyUwNlgiLCB0b3VwcGVyKGtleUNvZGUpKTsKKyAgICAgICAgICAgIHJldHVybiBT
dHJpbmc6OmZvcm1hdCgiVSslMDRYIiwgdG91cHBlcihrZXlDb2RlKSk7CiAgICAgfQogfQogCg==
</data>
<flag name="review"
          id="5943"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>