<?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>27827</bug_id>
          
          <creation_ts>2009-07-30 00:19:12 -0700</creation_ts>
          <short_desc>[Chromium] Functions Keys don&apos;t work in google spreadsheet.</short_desc>
          <delta_ts>2009-08-24 23:53: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>WebKit Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</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="Hironori Bono">hbono</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>estade</cc>
    
    <cc>evan</cc>
    
    <cc>levin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>135791</commentid>
    <comment_count>0</comment_count>
    <who name="Hironori Bono">hbono</who>
    <bug_when>2009-07-30 00:19:12 -0700</bug_when>
    <thetext>(Copied from &lt;http://crbug.com/14821&gt;.)

Chrome Version : r22038
OS + version : Ubuntu 8.04
CPU architecture (32-bit / 64-bit): 64
window manager : gnome
URLs (if applicable) : &lt;http://docs.google.com/&gt;
Behavior in Firefox 3.x (if applicable):
Behavior in Chrome for Windows (optional):

What steps will reproduce the problem?
1. open spreadsheet em doc.google.com
2. enter data in cell
3. return to cell and press f2 to edit
4. previously entered data disappears and cell is empty.

What is the expected result?

What happens instead?

Please provide any additional information below. Attach a screenshot
and backtrace if possible.

WebCore::windowsKeyCodeForKeyEvent() (in &quot;WebCore/platform/chromium/KeyCodeConversionGtk.cpp&quot;) doesn&apos;t have mappings for GDK Function keys (i.e. GDK_F1...,GDK_F24) and cannot send function-key events to a web page. We need to copy the mappings from &quot;WebCore/platform/gtk/KeyEventGdk.cpp&quot;.

Also, it may be good to change &quot;WebKitTools/DumpRenderTree/mac/EventSendingController.mm&quot; so that we can send a function-key event through a eventSender.keyDown(&quot;F1&quot;) call and write layout tests for this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>136139</commentid>
    <comment_count>1</comment_count>
      <attachid>33871</attachid>
    <who name="Hironori Bono">hbono</who>
    <bug_when>2009-07-31 04:27:15 -0700</bug_when>
    <thetext>Created attachment 33871
A quick fix

The attached layout test fails on platforms whose eventSender.keyDown() cannot send function-key events.
I&apos;m wondering which is the better option: moving this layout test to &quot;LayoutTest/platform&quot; or changing &quot;Skipped&quot; files?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>136267</commentid>
    <comment_count>2</comment_count>
      <attachid>33871</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-31 15:16:40 -0700</bug_when>
    <thetext>Comment on attachment 33871
A quick fix

Woh woh.  Please end the copy-pasted insanity in DumpRenderTree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138624</commentid>
    <comment_count>3</comment_count>
      <attachid>34443</attachid>
    <who name="Hironori Bono">hbono</who>
    <bug_when>2009-08-10 03:41:23 -0700</bug_when>
    <thetext>Created attachment 34443
The second quick fix

Thank you for your review and sorry for my slow update.
I updated EventSendingController.mm to avoid copy-and-pastes. Also, this change moves the new layout test to &quot;platform/mac&quot; because I don&apos;t have any development environment of WebKit except Mac, i.e. I can verify this test works only on Mac (Leopard).

Regards,</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138625</commentid>
    <comment_count>4</comment_count>
      <attachid>34444</attachid>
    <who name="Hironori Bono">hbono</who>
    <bug_when>2009-08-10 03:42:44 -0700</bug_when>
    <thetext>Created attachment 34444
The third quick fix.

Sorry, I attached a wrong patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>139736</commentid>
    <comment_count>5</comment_count>
      <attachid>34444</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-12 23:08:42 -0700</bug_when>
    <thetext>Comment on attachment 34444
The third quick fix.

Looks fine.  Except the results should not be in platform/mac, but rather right next to the test.  At least I don&apos;t think this test is platform specific, is it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>139753</commentid>
    <comment_count>6</comment_count>
      <attachid>34721</attachid>
    <who name="Hironori Bono">hbono</who>
    <bug_when>2009-08-13 01:50:47 -0700</bug_when>
    <thetext>Created attachment 34721
The fourth quick fix

Thank you for your review and comments.
I have moved the new layout test &quot;keydown-function-keys.html&quot; from &quot;LayoutTests/platform/mac/fast/event&quot; to &quot;LayoutTests/fast/event&quot;. Also, I added this test to &quot;LayoutTests/platform/{gtk,qt,win}/Skipped&quot; files because eventSender.keyDown() cannot send function-key events on the platforms. (I don&apos;t have any idea how to support them since I don&apos;t have build environments for these platforms.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141422</commentid>
    <comment_count>7</comment_count>
      <attachid>34721</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-19 00:06:50 -0700</bug_when>
    <thetext>Comment on attachment 34721
The fourth quick fix

I would have just inlined the &quot;runScript()&quot; stuff in the second script tag. :)  But this looks totally fine as is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141426</commentid>
    <comment_count>8</comment_count>
      <attachid>34721</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-19 00:20:13 -0700</bug_when>
    <thetext>Comment on attachment 34721
The fourth quick fix

Rejecting patch 34721 from commit-queue.  This patch will require manual commit.

Patch https://bugs.webkit.org/attachment.cgi?id=34721 from bug 27827 failed to download and apply.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141427</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-19 00:33:08 -0700</bug_when>
    <thetext>patching file LayoutTests/platform/gtk/Skipped
Hunk #1 FAILED at 5979.
1 out of 1 hunk FAILED -- saving rejects to file LayoutTests/platform/gtk/Skipped.rej
patch -p0 &quot;LayoutTests/platform/gtk/Skipped&quot; returned 1.  Pass --force to ignore patch failures.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142434</commentid>
    <comment_count>10</comment_count>
    <who name="Evan Martin">evan</who>
    <bug_when>2009-08-24 16:03:12 -0700</bug_when>
    <thetext>Ping.  Who needs to do something here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142445</commentid>
    <comment_count>11</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-08-24 16:30:16 -0700</bug_when>
    <thetext>Looks like either someone needs to update the patch so it applies cleanly to TOT or some need to land this manually.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142505</commentid>
    <comment_count>12</comment_count>
      <attachid>38522</attachid>
    <who name="Hironori Bono">hbono</who>
    <bug_when>2009-08-24 21:56:28 -0700</bug_when>
    <thetext>Created attachment 38522
The fifth quick fix

I have updated this change to fix a conflict in &quot;LayoutTests/platform/gtk/Skipped&quot; and move the code in runScript() into the second &lt;script&gt; element.
I wish this fix can be landed without conflicts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142515</commentid>
    <comment_count>13</comment_count>
      <attachid>38522</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-08-24 23:06:01 -0700</bug_when>
    <thetext>Comment on attachment 38522
The fifth quick fix

Forwarding Eric&apos;s review+ to the updated patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142530</commentid>
    <comment_count>14</comment_count>
      <attachid>38522</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-08-24 23:53:40 -0700</bug_when>
    <thetext>Comment on attachment 38522
The fifth quick fix

Clearing flags on attachment: 38522

Committed r47741: &lt;http://trac.webkit.org/changeset/47741&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142531</commentid>
    <comment_count>15</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-08-24 23:53:44 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33871</attachid>
            <date>2009-07-31 04:27:15 -0700</date>
            <delta_ts>2009-08-10 03:41:23 -0700</delta_ts>
            <desc>A quick fix</desc>
            <filename>issue27827-patch0.txt</filename>
            <type>text/plain</type>
            <size>13358</size>
            <attacher name="Hironori Bono">hbono</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NjYyNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjUgQEAKKzIwMDktMDctMzEgIEhpcm9ub3JpIEJvbm8gIDxoYm9ub0BjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
Rml4IEJ1ZyAyNzgyNyAiW0Nocm9taXVtXSBGdW5jdGlvbnMgS2V5cyBkb24ndCB3b3JrIGluIGdv
b2dsZSBzcHJlYWRzaGVldCIuCisgICAgICAgIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mjc4Mjc+LgorCisgICAgICAgIEJlY2F1c2Ugb2YgdGhlIGxhY2sgb2YgbWFw
cGluZ3MgZnJvbSBHREsga2V5LWNvZGVzIHRvIFdlYktpdCBrZXktY29kZXMsCisgICAgICAgIENo
cm9taXVtIGNhbm5vdCBzZW5kIHZhbGlkIGtleS1jb2RlcyB0byBKYXZhU2NyaXB0IHdoZW4gYSB1
c2VyIHR5cGVzCisgICAgICAgIGZ1bmN0aW9uIGtleXMuIFRoaXMgY2hhbmdlIGp1c3QgY29waWVz
IHRoZSBtYXBwaW5ncyBmcm9tICdLZXlFdmVudEd0ay5jcHAnLgorCisgICAgICAgIFRvIHdyaXRl
IGxheW91dCB0ZXN0cyBmb3IgdGhpcyBpc3N1ZSwgYWRkZWQgbWFwcGluZ3MgZnJvbSBmdW5jdGlv
bi1rZXkKKyAgICAgICAgbmFtZXMgdG8gcGxhdGZvcm0tc3BlY2lmaWMga2V5LWNvZGVzIHRvIEV2
ZW50U2VuZGluZ0NvbnRyb2xsZXIgb2JqZWN0cworICAgICAgICBzbyB0aGF0IGV2ZW50U2VuZGVy
LmtleURvd24oKSBjYW4gc2VuZCBmdW5jdGlvbi1rZXkgZXZlbnRzIHdpdGhvdXQgdXNpbmcKKyAg
ICAgICAgcGxhdGZvcm0tc3BlY2lmaWMga2V5IGNvZGVzLgorCisgICAgICAgIFRlc3Q6IGZhc3Qv
ZXZlbnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9j
aHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkd0ay5jcHA6IEFkZCBtYXBwaW5ncyBmcm9tIEdESyBr
ZXktY29kZXMKKyAgICAgICAgdG8gV2ViS2l0IGtleS1jb2RlIGZvciBmdW5jdGlvbiBrZXlzLgor
ICAgICAgICAoV2ViQ29yZTo6d2luZG93c0tleUNvZGVGb3JLZXlFdmVudCk6CisKIDIwMDktMDct
MzAgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IE1hcmsgUm93ZSwgYnV0IERhbiBCZXJuc3RlaW4gYWxzbyByZXZpZXdlZCBhbmQgYXNrZWQg
dGhvdWdodGZ1bCBxdWVzdGlvbnMuCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0tl
eUNvZGVDb252ZXJzaW9uR3RrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2No
cm9taXVtL0tleUNvZGVDb252ZXJzaW9uR3RrLmNwcAkocmV2aXNpb24gNDY2MjUpCisrKyBXZWJD
b3JlL3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVDb252ZXJzaW9uR3RrLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMzU3LDYgKzM1NywzMSBAQCBpbnQgd2luZG93c0tleUNvZGVGb3JLZXlFdmVudCh1
bnNpZ25lZCBrCiAgICAgICAgIC8vIFZLRVlfTk9OQU1FIChGQykgUmVzZXJ2ZWQgZm9yIGZ1dHVy
ZSB1c2UKICAgICAgICAgLy8gVktFWV9QQTEgKEZEKSBQQTEga2V5CiAgICAgICAgIC8vIFZLRVlf
T0VNX0NMRUFSIChGRSkgQ2xlYXIga2V5CisgICAgY2FzZSBHREtfRjE6CisgICAgY2FzZSBHREtf
RjI6CisgICAgY2FzZSBHREtfRjM6CisgICAgY2FzZSBHREtfRjQ6CisgICAgY2FzZSBHREtfRjU6
CisgICAgY2FzZSBHREtfRjY6CisgICAgY2FzZSBHREtfRjc6CisgICAgY2FzZSBHREtfRjg6Cisg
ICAgY2FzZSBHREtfRjk6CisgICAgY2FzZSBHREtfRjEwOgorICAgIGNhc2UgR0RLX0YxMToKKyAg
ICBjYXNlIEdES19GMTI6CisgICAgY2FzZSBHREtfRjEzOgorICAgIGNhc2UgR0RLX0YxNDoKKyAg
ICBjYXNlIEdES19GMTU6CisgICAgY2FzZSBHREtfRjE2OgorICAgIGNhc2UgR0RLX0YxNzoKKyAg
ICBjYXNlIEdES19GMTg6CisgICAgY2FzZSBHREtfRjE5OgorICAgIGNhc2UgR0RLX0YyMDoKKyAg
ICBjYXNlIEdES19GMjE6CisgICAgY2FzZSBHREtfRjIyOgorICAgIGNhc2UgR0RLX0YyMzoKKyAg
ICBjYXNlIEdES19GMjQ6CisgICAgICAgIHJldHVybiBWS0VZX0YxICsgKGtleWNvZGUgLSBHREtf
RjEpOwogICAgIGRlZmF1bHQ6CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KSW5kZXg6IFdlYktp
dFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDQ2NjI1KQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMDktMDctMzEgIEhpcm9ub3JpIEJvbm8gIDxoYm9ub0BjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
Rml4IEJ1ZyAyNzgyNyAiW0Nocm9taXVtXSBGdW5jdGlvbnMgS2V5cyBkb24ndCB3b3JrIGluIGdv
b2dsZSBzcHJlYWRzaGVldCIuCisgICAgICAgIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mjc4Mjc+LgorCisgICAgICAgIEJlY2F1c2Ugb2YgdGhlIGxhY2sgb2YgbWFw
cGluZ3MgZnJvbSBHREsga2V5LWNvZGVzIHRvIFdlYktpdCBrZXktY29kZXMsCisgICAgICAgIENo
cm9taXVtIGNhbm5vdCBzZW5kIHZhbGlkIGtleS1jb2RlcyB0byBKYXZhU2NyaXB0IHdoZW4gYSB1
c2VyIHR5cGVzCisgICAgICAgIGZ1bmN0aW9uIGtleXMuIFRoaXMgY2hhbmdlIGp1c3QgY29waWVz
IHRoZSBtYXBwaW5ncyBmcm9tICdLZXlFdmVudEd0ay5jcHAnLgorCisgICAgICAgIFRvIHdyaXRl
IGxheW91dCB0ZXN0cyBmb3IgdGhpcyBpc3N1ZSwgYWRkZWQgbWFwcGluZ3MgZnJvbSBmdW5jdGlv
bi1rZXkKKyAgICAgICAgbmFtZXMgdG8gcGxhdGZvcm0tc3BlY2lmaWMga2V5LWNvZGVzIHRvIEV2
ZW50U2VuZGluZ0NvbnRyb2xsZXIgb2JqZWN0cworICAgICAgICBzbyB0aGF0IGV2ZW50U2VuZGVy
LmtleURvd24oKSBjYW4gc2VuZCBmdW5jdGlvbi1rZXkgZXZlbnRzIHdpdGhvdXQgdXNpbmcKKyAg
ICAgICAgcGxhdGZvcm0tc3BlY2lmaWMga2V5IGNvZGVzLgorCisgICAgICAgICogRHVtcFJlbmRl
clRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIubW06CisgICAgICAgICgtW0V2ZW50U2Vu
ZGluZ0NvbnRyb2xsZXIga2V5RG93bjp3aXRoTW9kaWZpZXJzOl0pOgorICAgICAgICAqIER1bXBS
ZW5kZXJUcmVlL3dpbi9FdmVudFNlbmRlci5jcHA6CisgICAgICAgIChrZXlEb3duQ2FsbGJhY2sp
OgorCiAyMDA5LTA3LTMwICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgQ2FtZXJvbiBad2FyaWNoLgpJbmRleDogV2ViS2l0VG9vbHMvRHVtcFJlbmRl
clRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIubW0JKHJldmlz
aW9uIDQ2NjI1KQorKysgV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGlu
Z0NvbnRyb2xsZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTUwNCw2ICs1MDQsNDIgQEAgc3RhdGlj
IE5TRXZlbnRUeXBlIGV2ZW50VHlwZUZvck1vdXNlQnV0dAogICAgIH0gZWxzZSBpZiAoW2NoYXJh
Y3RlciBpc0VxdWFsVG9TdHJpbmc6QCJkZWxldGUiXSkgewogICAgICAgICBjb25zdCB1bmljaGFy
IGNoID0gMHg3ZjsKICAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0
aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNF
cXVhbFRvU3RyaW5nOkAiRjEiXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNGMUZ1
bmN0aW9uS2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJpbmdXaXRo
Q2hhcmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBpc0Vx
dWFsVG9TdHJpbmc6QCJGMiJdKSB7CisgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU0YyRnVu
Y3Rpb25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhD
aGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1
YWxUb1N0cmluZzpAIkYzIl0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TRjNGdW5j
dGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENo
YXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVh
bFRvU3RyaW5nOkAiRjQiXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNGNEZ1bmN0
aW9uS2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ2hh
cmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFs
VG9TdHJpbmc6QCJGNSJdKSB7CisgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU0Y1RnVuY3Rp
b25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFy
YWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxU
b1N0cmluZzpAIkY2Il0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TRjZGdW5jdGlv
bktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJh
Y3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRv
U3RyaW5nOkAiRjciXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNGN0Z1bmN0aW9u
S2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ2hhcmFj
dGVyczomY2ggbGVuZ3RoOjFdOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9T
dHJpbmc6QCJGOCJdKSB7CisgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU0Y4RnVuY3Rpb25L
ZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0
ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0
cmluZzpAIkY5Il0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TRjlGdW5jdGlvbktl
eTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3Rl
cnM6JmNoIGxlbmd0aDoxXTsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3Ry
aW5nOkAiRjEwIl0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TRjEwRnVuY3Rpb25L
ZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0
ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0
cmluZzpAIkYxMSJdKSB7CisgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU0YxMUZ1bmN0aW9u
S2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ2hhcmFj
dGVyczomY2ggbGVuZ3RoOjFdOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9T
dHJpbmc6QCJGMTIiXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNGMTJGdW5jdGlv
bktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJh
Y3RlcnM6JmNoIGxlbmd0aDoxXTsKICAgICB9CiAKICAgICBOU1N0cmluZyAqY2hhcmFjdGVyc0ln
bm9yaW5nTW9kaWZpZXJzID0gZXZlbnRDaGFyYWN0ZXI7CkluZGV4OiBXZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS93aW4vRXZlbnRTZW5kZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL3dpbi9FdmVudFNlbmRlci5jcHAJKHJldmlzaW9uIDQ2NjI1KQorKysg
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0V2ZW50U2VuZGVyLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMzgwLDYgKzM4MCwzMCBAQCBzdGF0aWMgSlNWYWx1ZVJlZiBrZXlEb3duQ2FsbGJh
Y2soSlNDb250CiAgICAgICAgIHZpcnR1YWxLZXlDb2RlID0gVktfRU5EOwogICAgIGVsc2UgaWYg
KEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiZGVsZXRlIikpCiAgICAg
ICAgIHZpcnR1YWxLZXlDb2RlID0gVktfQkFDSzsKKyAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1
YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkYxIikpCisgICAgICAgIHZpcnR1YWxLZXlDb2Rl
ID0gVktfRjE7CisgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFy
YWN0ZXIsICJGMiIpKQorICAgICAgICB2aXJ0dWFsS2V5Q29kZSA9IFZLX0YyOworICAgIGVsc2Ug
aWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjMiKSkKKyAgICAg
ICAgdmlydHVhbEtleUNvZGUgPSBWS19GMzsKKyAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxU
b1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkY0IikpCisgICAgICAgIHZpcnR1YWxLZXlDb2RlID0g
VktfRjQ7CisgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0
ZXIsICJGNSIpKQorICAgICAgICB2aXJ0dWFsS2V5Q29kZSA9IFZLX0Y1OworICAgIGVsc2UgaWYg
KEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjYiKSkKKyAgICAgICAg
dmlydHVhbEtleUNvZGUgPSBWS19GNjsKKyAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VU
RjhDU3RyaW5nKGNoYXJhY3RlciwgIkY3IikpCisgICAgICAgIHZpcnR1YWxLZXlDb2RlID0gVktf
Rjc7CisgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIs
ICJGOCIpKQorICAgICAgICB2aXJ0dWFsS2V5Q29kZSA9IFZLX0Y4OworICAgIGVsc2UgaWYgKEpT
U3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjkiKSkKKyAgICAgICAgdmly
dHVhbEtleUNvZGUgPSBWS19GOTsKKyAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhD
U3RyaW5nKGNoYXJhY3RlciwgIkYxMCIpKQorICAgICAgICB2aXJ0dWFsS2V5Q29kZSA9IFZLX0Yx
MDsKKyAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3Rlciwg
IkYxMSIpKQorICAgICAgICB2aXJ0dWFsS2V5Q29kZSA9IFZLX0YxMTsKKyAgICBlbHNlIGlmIChK
U1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkYxMiIpKQorICAgICAgICB2
aXJ0dWFsS2V5Q29kZSA9IFZLX0YxMjsKICAgICBlbHNlIHsKICAgICAgICAgY2hhckNvZGUgPSBK
U1N0cmluZ0dldENoYXJhY3RlcnNQdHIoY2hhcmFjdGVyKVswXTsKICAgICAgICAgdmlydHVhbEtl
eUNvZGUgPSBMT0JZVEUoVmtLZXlTY2FuKGNoYXJDb2RlKSk7CkluZGV4OiBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA0
NjYyNSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDIyIEBACisyMDA5LTA3LTMxICBIaXJvbm9yaSBCb25vICA8aGJvbm9AY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCBCdWcg
Mjc4MjcgIltDaHJvbWl1bV0gRnVuY3Rpb25zIEtleXMgZG9uJ3Qgd29yayBpbiBnb29nbGUgc3By
ZWFkc2hlZXQiLgorICAgICAgICA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTI3ODI3Pi4KKworICAgICAgICBCZWNhdXNlIG9mIHRoZSBsYWNrIG9mIG1hcHBpbmdzIGZy
b20gR0RLIGtleS1jb2RlcyB0byBXZWJLaXQga2V5LWNvZGVzLAorICAgICAgICBDaHJvbWl1bSBj
YW5ub3Qgc2VuZCB2YWxpZCBrZXktY29kZXMgdG8gSmF2YVNjcmlwdCB3aGVuIGEgdXNlciB0eXBl
cworICAgICAgICBmdW5jdGlvbiBrZXlzLiBUaGlzIGNoYW5nZSBqdXN0IGNvcGllcyB0aGUgbWFw
cGluZ3MgZnJvbSAnS2V5RXZlbnRHdGsuY3BwJy4KKworICAgICAgICBUbyB3cml0ZSBsYXlvdXQg
dGVzdHMgZm9yIHRoaXMgaXNzdWUsIGFkZGVkIG1hcHBpbmdzIGZyb20gZnVuY3Rpb24ta2V5Cisg
ICAgICAgIG5hbWVzIHRvIHBsYXRmb3JtLXNwZWNpZmljIGtleS1jb2RlcyB0byBFdmVudFNlbmRp
bmdDb250cm9sbGVyIG9iamVjdHMKKyAgICAgICAgc28gdGhhdCBldmVudFNlbmRlci5rZXlEb3du
KCkgY2FuIHNlbmQgZnVuY3Rpb24ta2V5IGV2ZW50cyB3aXRob3V0IHVzaW5nCisgICAgICAgIHBs
YXRmb3JtLXNwZWNpZmljIGtleSBjb2Rlcy4KKworICAgICAgICAqIGZhc3QvZXZlbnRzL2tleWRv
d24tZnVuY3Rpb24ta2V5cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZl
bnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy5odG1sOiBBZGRlZC4KKwogMjAwOS0wNy0zMSAgTWFy
ayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgogCiAgICAgICAgIEZpeCB0aGUgdGVzdCBjYXNlIHRo
YXQgd2FzIGxhbmRlZCBpbiByNDY2MjQuCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9r
ZXlkb3duLWZ1bmN0aW9uLWtleXMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2Zhc3QvZXZlbnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9rZXlkb3duLWZ1bmN0aW9uLWtleXMt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI3IEBACitUaGlzIHRlc3QgdmVy
aWZpZXMgdGhlIGtleWNvZGVzIHNlbnQgd2hlbiB3ZSBwcmVzcyBmdW5jdGlvbiBrZXlzLgorCisK
K1R5cGU9a2V5ZG93bixrZXlDb2RlPTExMixjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFs
dEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTEyLGN0cmxLZXk9
ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5
ZG93bixrZXlDb2RlPTExMyxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxz
ZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTEzLGN0cmxLZXk9ZmFsc2Usc2hp
ZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlD
b2RlPTExNCxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5
PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTE0LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFs
c2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExNSxj
dHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitU
eXBlPWtleXVwLGtleUNvZGU9MTE1LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5
PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExNixjdHJsS2V5PWZh
bHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVw
LGtleUNvZGU9MTE2LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1l
dGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExNyxjdHJsS2V5PWZhbHNlLHNoaWZ0
S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9
MTE3LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFs
c2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExOCxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNl
LGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTE4LGN0cmxL
ZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9
a2V5ZG93bixrZXlDb2RlPTExOSxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1m
YWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTE5LGN0cmxLZXk9ZmFsc2Us
c2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixr
ZXlDb2RlPTEyMCxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRh
S2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTIwLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9
ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTEy
MSxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNl
CitUeXBlPWtleXVwLGtleUNvZGU9MTIxLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0
S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTEyMixjdHJsS2V5
PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtl
eXVwLGtleUNvZGU9MTIyLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNl
LG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTEyMyxjdHJsS2V5PWZhbHNlLHNo
aWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNv
ZGU9MTIzLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9
ZmFsc2UKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2tleWRvd24tZnVuY3Rpb24ta2V5
cy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2tleWRvd24tZnVu
Y3Rpb24ta2V5cy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
a2V5ZG93bi1mdW5jdGlvbi1rZXlzLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDkgQEAK
KzxodG1sPgorPGhlYWQ+Cis8dGl0bGU+RWRpdGluZyBUZXN0IChJbnNlcnRpbmcgYSBUaGFpIGNo
YXJhY3RlciBhZnRlciBhIFRoYWkgcHJlcGVuZCBjaGFyYWN0ZXIpPC90aXRsZT4KKzxzY3JpcHQg
c3JjPSIuLi9lZGl0aW5nLmpzIiBsYW5ndWFnZT0iamF2YXNjcmlwdCIgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij48L3NjcmlwdD4KKzxzY3JpcHQgbGFuZ3VhZ2U9ImphdmFzY3JpcHQiIHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiBsb2coc3RyKSB7CisgICAgdmFyIGxpID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgibGkiKTsKKyAgICBsaS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVh
dGVUZXh0Tm9kZShzdHIpKTsKKyAgICB2YXIgY29uc29sZSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJjb25zb2xlIik7CisgICAgY29uc29sZS5hcHBlbmRDaGlsZChsaSk7Cit9CitmdW5jdGlv
biBvbktleUV2ZW50KGV2KSB7CisJICBldiA9IGV2IHx8IGV2ZW50OworICAgIGxvZygnVHlwZT0n
ICsgZXYudHlwZSArICcsJyArCisgICAgICAgICdrZXlDb2RlPScgKyAoZXYud2hpY2ggfHwgZXYu
a2V5Q29kZSkgKyAnLCcgKworICAgICAgICAnY3RybEtleT0nICsgZXYuY3RybEtleSArICcsJyAr
CisgICAgICAgICdzaGlmdEtleT0nICsgZXYuc2hpZnRLZXkgKyAnLCcgKworICAgICAgICAnYWx0
S2V5PScgKyBldi5hbHRLZXkgKyAnLCcgKworICAgICAgICAnbWV0YUtleT0nICsgZXYubWV0YUtl
eSk7Cit9CitmdW5jdGlvbiBydW5UZXN0KCkgeworICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENv
bnRyb2xsZXIpCisgICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0
KCk7CisgICAgdmFyIHRleHRhcmVhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3QiKTsK
KyAgICB0ZXh0YXJlYS5mb2N1cygpOworICAgIGV2ZW50U2VuZGVyLmtleURvd24oIkYxIik7Cisg
ICAgZXZlbnRTZW5kZXIua2V5RG93bigiRjIiKTsKKyAgICBldmVudFNlbmRlci5rZXlEb3duKCJG
MyIpOworICAgIGV2ZW50U2VuZGVyLmtleURvd24oIkY0Iik7CisgICAgZXZlbnRTZW5kZXIua2V5
RG93bigiRjUiKTsKKyAgICBldmVudFNlbmRlci5rZXlEb3duKCJGNiIpOworICAgIGV2ZW50U2Vu
ZGVyLmtleURvd24oIkY3Iik7CisgICAgZXZlbnRTZW5kZXIua2V5RG93bigiRjgiKTsKKyAgICBl
dmVudFNlbmRlci5rZXlEb3duKCJGOSIpOworICAgIGV2ZW50U2VuZGVyLmtleURvd24oIkYxMCIp
OworICAgIGV2ZW50U2VuZGVyLmtleURvd24oIkYxMSIpOworICAgIGV2ZW50U2VuZGVyLmtleURv
d24oIkYxMiIpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlRoaXMgdGVzdCB2
ZXJpZmllcyB0aGUga2V5Y29kZXMgc2VudCB3aGVuIHdlIHByZXNzIGZ1bmN0aW9uIGtleXMuPC9w
PgorPHRleHRhcmVhIGlkPSJ0ZXN0IiByb3dzPSIxIiBjb2xzPSI0MCIgb25rZXlkb3duPSJyZXR1
cm4gb25LZXlFdmVudChldmVudCk7IiBvbmtleXVwPSJyZXR1cm4gb25LZXlFdmVudChldmVudCk7
Ij48L3RleHRhcmVhPgorPHVsIGlkPSJjb25zb2xlIj48L3VsPgorPHNjcmlwdCBsYW5ndWFnZT0i
amF2YXNjcmlwdCIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK3J1blRlc3QoKTsKKzwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="review"
          id="18060"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>34443</attachid>
            <date>2009-08-10 03:41:23 -0700</date>
            <delta_ts>2009-08-10 03:42:44 -0700</delta_ts>
            <desc>The second quick fix</desc>
            <filename>issue25061-patch1.txt</filename>
            <type>text/plain</type>
            <size>8337</size>
            <attacher name="Hironori Bono">hbono</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
IChyZXZpc2lvbiA0NTI0NykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nICh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjggQEAKKzIwMDktMDYtMjUgIEhpcm9ub3JpIEJvbm8gIDxoYm9ub0BjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
TWFrZSB1bmNvbmZpcm1lZCBJTUUgdGV4dCBhZmZlY3QgdGV4dGFyZWEncyB2YWx1ZS4KKyAgICAg
ICAgVGhpcyBtYXRjaGVzIGlucHV0IGFuZCBjb250ZW50RWRpdGFibGUgZWxlbWVudHMgYXMgd2Vs
bAorICAgICAgICBJRSBhbmQgRmlyZWZveC4KKworICAgICAgICBUaGlzIGZpeGVzIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNTA2MS4KKworICAgICAgICBJbnB1dCBl
bGVtZW50cyB3b3VsZCBnbyBkb3duIHRoaXMgY29kZSBwYXRoIGJlY2F1c2UgaXQKKyAgICAgICAg
d291bGQgYWx3YXlzIGdldCBhIG51bGwgY29tcG9zaXRpb25Ob2RlIGZyb20gZnJhbWUtPmVkaXRv
cigpLgorICAgICAgICBTcGVjaWFsIGNhc2luZyBjb21wb3NpdGlvbk5vZGVzIGlzIHdyb25nIGJl
Y2F1c2Ugd2UgZXhwbGljaXRseQorICAgICAgICB3YW50IHVuY29uZmlybWVkIElNRSBpbnB1dCBp
biB0aGUgdGV4dGFyZWEncyB2YWx1ZSAoYXNzdW1pbmcgd2UKKyAgICAgICAgd2FudCB0byBtYXRj
aCBJRSBhbmQgRmlyZWZveCBoZXJlKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBpcyBvcmlnaW5h
bGx5IGNyZWF0ZWQgYnkgT2phbiBWYWZhaSA8b2phbkBjaHJvbWl1bS5vcmc+IGFuZAorICAgICAg
ICBJIGp1c3QgY2hhbmdlZCBpdHMgbWFudWFsIHRlc3RzIHdpdGggYW4gYXV0b21hdGVkIHRlc3Qg
b24gaGlzIGJlaGFsZi4KKworICAgICAgICBUZXN0OiBwbGF0Zm9ybS9tYWMvZWRpdGluZy9pbnB1
dC90ZXh0LWNvbnRyb2wtaW1lLWlucHV0Lmh0bWwKKworICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJUZXh0Q29udHJvbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUZXh0Q29udHJvbDo6
dGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUZXh0Q29udHJvbDo6dGV4dFdpdGhIYXJk
TGluZUJyZWFrcyk6CisKIDIwMDktMDYtMjUgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEB3ZWJr
aXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpJbmRleDogV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2wuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNwcCAocmV2aXNpb24gNDUyNDQpCisrKyBXZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbC5jcHAgKHdvcmtpbmcgY29weSkKQEAgLTMy
NSwyNiArMzI1LDE0IEBAIFN0cmluZyBSZW5kZXJUZXh0Q29udHJvbDo6dGV4dCgpCiAgICAgaWYg
KCFtX2lubmVyVGV4dCkKICAgICAgICAgcmV0dXJuICIiOwogIAotICAgIEZyYW1lKiBmcmFtZSA9
IGRvY3VtZW50KCktPmZyYW1lKCk7Ci0gICAgVGV4dCogY29tcG9zaXRpb25Ob2RlID0gZnJhbWUg
PyBmcmFtZS0+ZWRpdG9yKCktPmNvbXBvc2l0aW9uTm9kZSgpIDogMDsKLQogICAgIFZlY3RvcjxV
Q2hhcj4gcmVzdWx0OwogCiAgICAgZm9yIChOb2RlKiBuID0gbV9pbm5lclRleHQuZ2V0KCk7IG47
IG4gPSBuLT50cmF2ZXJzZU5leHROb2RlKG1faW5uZXJUZXh0LmdldCgpKSkgewogICAgICAgICBp
ZiAobi0+aGFzVGFnTmFtZShiclRhZykpCiAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCZuZXds
aW5lQ2hhcmFjdGVyLCAxKTsKICAgICAgICAgZWxzZSBpZiAobi0+aXNUZXh0Tm9kZSgpKSB7Ci0g
ICAgICAgICAgICBUZXh0KiB0ZXh0ID0gc3RhdGljX2Nhc3Q8VGV4dCo+KG4pOwotICAgICAgICAg
ICAgU3RyaW5nIGRhdGEgPSB0ZXh0LT5kYXRhKCk7Ci0gICAgICAgICAgICB1bnNpZ25lZCBsZW5n
dGggPSBkYXRhLmxlbmd0aCgpOwotICAgICAgICAgICAgaWYgKHRleHQgIT0gY29tcG9zaXRpb25O
b2RlKQotICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoZGF0YS5jaGFyYWN0ZXJzKCksIGxl
bmd0aCk7Ci0gICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICB1bnNpZ25lZCBjb21w
b3NpdGlvblN0YXJ0ID0gbWluKGZyYW1lLT5lZGl0b3IoKS0+Y29tcG9zaXRpb25TdGFydCgpLCBs
ZW5ndGgpOwotICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNvbXBvc2l0aW9uRW5kID0gbWluKG1h
eChjb21wb3NpdGlvblN0YXJ0LCBmcmFtZS0+ZWRpdG9yKCktPmNvbXBvc2l0aW9uRW5kKCkpLCBs
ZW5ndGgpOwotICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoZGF0YS5jaGFyYWN0ZXJzKCks
IGNvbXBvc2l0aW9uU3RhcnQpOwotICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoZGF0YS5j
aGFyYWN0ZXJzKCkgKyBjb21wb3NpdGlvbkVuZCwgbGVuZ3RoIC0gY29tcG9zaXRpb25FbmQpOwot
ICAgICAgICAgICAgfQorICAgICAgICAgICAgU3RyaW5nIGRhdGEgPSBzdGF0aWNfY2FzdDxUZXh0
Kj4obiktPmRhdGEoKTsKKyAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoZGF0YS5jaGFyYWN0ZXJz
KCksIGRhdGEubGVuZ3RoKCkpOwogICAgICAgICB9CiAgICAgfQogCkBAIC0zODYsOSArMzc0LDYg
QEAgU3RyaW5nIFJlbmRlclRleHRDb250cm9sOjp0ZXh0V2l0aEhhcmRMaQogICAgIGlmICghYm94
KQogICAgICAgICByZXR1cm4gIiI7CiAKLSAgICBGcmFtZSogZnJhbWUgPSBkb2N1bWVudCgpLT5m
cmFtZSgpOwotICAgIFRleHQqIGNvbXBvc2l0aW9uTm9kZSA9IGZyYW1lID8gZnJhbWUtPmVkaXRv
cigpLT5jb21wb3NpdGlvbk5vZGUoKSA6IDA7Ci0KICAgICBOb2RlKiBicmVha05vZGU7CiAgICAg
dW5zaWduZWQgYnJlYWtPZmZzZXQ7CiAgICAgUm9vdElubGluZUJveCogbGluZSA9IGJveC0+cm9v
dCgpOwpAQCAtNDAzLDE5ICszODgsNyBAQCBTdHJpbmcgUmVuZGVyVGV4dENvbnRyb2w6OnRleHRX
aXRoSGFyZExpCiAgICAgICAgICAgICBUZXh0KiB0ZXh0ID0gc3RhdGljX2Nhc3Q8VGV4dCo+KG4p
OwogICAgICAgICAgICAgU3RyaW5nIGRhdGEgPSB0ZXh0LT5kYXRhKCk7CiAgICAgICAgICAgICB1
bnNpZ25lZCBsZW5ndGggPSBkYXRhLmxlbmd0aCgpOwotICAgICAgICAgICAgdW5zaWduZWQgY29t
cG9zaXRpb25TdGFydCA9ICh0ZXh0ID09IGNvbXBvc2l0aW9uTm9kZSkKLSAgICAgICAgICAgICAg
ICA/IG1pbihmcmFtZS0+ZWRpdG9yKCktPmNvbXBvc2l0aW9uU3RhcnQoKSwgbGVuZ3RoKSA6IDA7
Ci0gICAgICAgICAgICB1bnNpZ25lZCBjb21wb3NpdGlvbkVuZCA9ICh0ZXh0ID09IGNvbXBvc2l0
aW9uTm9kZSkKLSAgICAgICAgICAgICAgICA/IG1pbihtYXgoY29tcG9zaXRpb25TdGFydCwgZnJh
bWUtPmVkaXRvcigpLT5jb21wb3NpdGlvbkVuZCgpKSwgbGVuZ3RoKSA6IDA7CiAgICAgICAgICAg
ICB1bnNpZ25lZCBwb3NpdGlvbiA9IDA7Ci0gICAgICAgICAgICB3aGlsZSAoYnJlYWtOb2RlID09
IG4gJiYgYnJlYWtPZmZzZXQgPCBjb21wb3NpdGlvblN0YXJ0KSB7Ci0gICAgICAgICAgICAgICAg
cmVzdWx0LmFwcGVuZChkYXRhLmNoYXJhY3RlcnMoKSArIHBvc2l0aW9uLCBicmVha09mZnNldCAt
IHBvc2l0aW9uKTsKLSAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IGJyZWFrT2Zmc2V0OwotICAg
ICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJm5ld2xpbmVDaGFyYWN0ZXIsIDEpOwotICAgICAg
ICAgICAgICAgIGdldE5leHRTb2Z0QnJlYWsobGluZSwgYnJlYWtOb2RlLCBicmVha09mZnNldCk7
Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICByZXN1bHQuYXBwZW5kKGRhdGEuY2hhcmFjdGVy
cygpICsgcG9zaXRpb24sIGNvbXBvc2l0aW9uU3RhcnQgLSBwb3NpdGlvbik7Ci0gICAgICAgICAg
ICBwb3NpdGlvbiA9IGNvbXBvc2l0aW9uRW5kOwogICAgICAgICAgICAgd2hpbGUgKGJyZWFrTm9k
ZSA9PSBuICYmIGJyZWFrT2Zmc2V0IDw9IGxlbmd0aCkgewogICAgICAgICAgICAgICAgIGlmIChi
cmVha09mZnNldCA+IHBvc2l0aW9uKSB7CiAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBl
bmQoZGF0YS5jaGFyYWN0ZXJzKCkgKyBwb3NpdGlvbiwgYnJlYWtPZmZzZXQgLSBwb3NpdGlvbik7
CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIChyZXZpc2lvbiA0NTI0NykKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZyAod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBACisyMDA5LTA2LTI1ICBIaXJvbm9yaSBCb25vICA8
aGJvbm9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIE1ha2UgdW5jb25maXJtZWQgSU1FIHRleHQgYWZmZWN0IHRleHRhcmVhJ3Mg
dmFsdWUuCisgICAgICAgIFRoaXMgbWF0Y2hlcyBpbnB1dCBhbmQgY29udGVudEVkaXRhYmxlIGVs
ZW1lbnRzIGFzIHdlbGwKKyAgICAgICAgSUUgYW5kIEZpcmVmb3guCisKKyAgICAgICAgVGhpcyBm
aXhlcyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjUwNjEuCisKKyAg
ICAgICAgSW5wdXQgZWxlbWVudHMgd291bGQgZ28gZG93biB0aGlzIGNvZGUgcGF0aCBiZWNhdXNl
IGl0CisgICAgICAgIHdvdWxkIGFsd2F5cyBnZXQgYSBudWxsIGNvbXBvc2l0aW9uTm9kZSBmcm9t
IGZyYW1lLT5lZGl0b3IoKS4KKyAgICAgICAgU3BlY2lhbCBjYXNpbmcgY29tcG9zaXRpb25Ob2Rl
cyBpcyB3cm9uZyBiZWNhdXNlIHdlIGV4cGxpY2l0bHkKKyAgICAgICAgd2FudCB1bmNvbmZpcm1l
ZCBJTUUgaW5wdXQgaW4gdGhlIHRleHRhcmVhJ3MgdmFsdWUgKGFzc3VtaW5nIHdlCisgICAgICAg
IHdhbnQgdG8gbWF0Y2ggSUUgYW5kIEZpcmVmb3ggaGVyZSkuCisKKyAgICAgICAgVGhpcyBjaGFu
Z2UgaXMgb3JpZ2luYWxseSBjcmVhdGVkIGJ5IE9qYW4gVmFmYWkgPG9qYW5AY2hyb21pdW0ub3Jn
PiBhbmQKKyAgICAgICAgSSBqdXN0IGNoYW5nZWQgaXRzIG1hbnVhbCB0ZXN0cyB3aXRoIGFuIGF1
dG9tYXRlZCB0ZXN0IG9uIGhpcyBiZWhhbGYuCisgCisgICAgICAgICogcGxhdGZvcm0vbWFjL2Vk
aXRpbmcvaW5wdXQvdGV4dC1jb250cm9sLWltZS1pbnB1dC1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIHBsYXRmb3JtL21hYy9lZGl0aW5nL2lucHV0L3RleHQtY29udHJvbC1pbWUtaW5w
dXQuaHRtbDogQWRkZWQuCisKIDIwMDktMDYtMjUgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEB3
ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpJbmRleDogTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvaW5wdXQvdGV4dC1jb250cm9sLWltZS1pbnB1
dC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Vk
aXRpbmcvaW5wdXQvdGV4dC1jb250cm9sLWltZS1pbnB1dC1leHBlY3RlZC50eHQgIChyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvaW5wdXQvdGV4dC1jb250
cm9sLWltZS1pbnB1dC1leHBlY3RlZC50eHQgIChyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDcgQEAK
K1RoaXMgdGVzdHMgdGhhdCBJTUUga2V5cHJlc3NlcyBtb2RpZnkgdGV4dGFyZWEgYW5kIGlucHV0
IHZhbHVlcyBiZWZvcmUgYW5kIGFmdGVyIHRoZXkgYXJlIGNvbmZpcm1lZC4gVG8gdGVzdCwgc3dp
dGNoIHRvIGFuIElNRS4gVHlwZSBzb21lIHRleHQgYW5kIHNlZSB0aGF0IHRoZSB1bmRlcmxpbmVk
IHRleHQgc2hvd3MgdXAgaW4gdGhlIHRleHRhcmVhJ3MgYW5kIGlucHV0J3MgdmFsdWVzLgorCisK
K1NVQ0NFRURFRAorU1VDQ0VFREVECitTVUNDRUVERUQKK1NVQ0NFRURFRApJbmRleDogTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvaW5wdXQvdGV4dC1jb250cm9sLWltZS1pbnB1dC5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL2lucHV0
L3RleHQtY29udHJvbC1pbWUtaW5wdXQuaHRtbCAgKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9pbnB1dC90ZXh0LWNvbnRyb2wtaW1lLWlucHV0Lmh0bWwg
IChyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDUzIEBACis8aHRtbD4KKzxoZWFkPgorPHRpdGxlPjwv
dGl0bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlRoaXMgdGVzdHMgdGhhdCBJTUUga2V5cHJlc3Nl
cyBtb2RpZnkgdGV4dGFyZWEgYW5kIGlucHV0IHZhbHVlcyBiZWZvcmUgYW5kIGFmdGVyIHRoZXkg
YXJlIGNvbmZpcm1lZC4KK1RvIHRlc3QsIHN3aXRjaCB0byBhbiBJTUUuIFR5cGUgc29tZSB0ZXh0
IGFuZCBzZWUgdGhhdCB0aGUgdW5kZXJsaW5lZCB0ZXh0IHNob3dzIHVwIGluIHRoZSB0ZXh0YXJl
YSdzIGFuZAoraW5wdXQncyB2YWx1ZXMuPC9wPgorCis8dGV4dGFyZWEgaWQ9InRleHRhcmVhIiBj
b2xzPSI0MCIgcm93cz0iMTAiPjwvdGV4dGFyZWE+Cis8dWwgaWQ9ImNvbnNvbGUiPjwvdWw+CisK
KzxzY3JpcHQgbGFuZ3VhZ2U9ImphdmFzY3JpcHQiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+Citm
dW5jdGlvbiBsb2coc3RyKSB7CisgICB2YXIgbGkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCds
aScpOworICAgbGkuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoc3RyKSk7Cisg
ICB2YXIgY29uc29sZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjb25zb2xlJyk7CisgICBj
b25zb2xlLmFwcGVuZENoaWxkKGxpKTsKK30KKworZnVuY3Rpb24gc2V0TWFya2VkVGV4dCh0ZXh0
YXJlYSwgdGV4dCwgc3RhcnQsIGVuZCkgeworICAgIC8vIFVwZGF0ZSB0aGUgdGV4dCBvZiBhIGNv
bXBvc2l0aW9uIG5vZGUsIGkuZS4gY2FsbCBFZGl0b3I6OnNldENvbXBvc2l0aW9uKCkuCisgICAg
dGV4dElucHV0Q29udHJvbGxlci5zZXRNYXJrZWRUZXh0KHRleHQsIHN0YXJ0LCBlbmQpOworICAg
IC8vIFZlcmlmeSB0aGUgdmFsdWUgb2YgdGhlIDx0ZXh0YXJlYT4gZWxlbWVudCBpcyB0aGUgc2Ft
ZSBhcyB0aGUgZ2l2ZW4gdGV4dC4KKyAgICBpZiAodGV4dGFyZWEudmFsdWUgPT0gdGV4dCkKKyAg
ICAgICAgbG9nKCdTVUNDRUVERUQnKTsKKyAgICBlbHNlCisgICAgICAgIGxvZygnRkFJTEVEOiBl
eHBlY3RlZD0iJyArIHRleHQgKyAnIiwgYWN0dWFsPSInICsgdGV4dGFyZWEudmFsdWUgKyAnIicp
OworfQorCitmdW5jdGlvbiBpbnNlcnRUZXh0KHRleHRhcmVhLCB0ZXh0KSB7CisgICAgLy8gVXBk
YXRlIHRoZSB0ZXh0IG9mIGEgY29tcG9zaXRpb24gbm9kZSBhbmQgZmluaXNoIGFuIG9uZ29pbmcg
Y29tcG9zaXRpb24sIGkuZS4gY2FsbAorICAgIC8vIEVkaXRvcjo6Y29tcGxldGVDb21wb3NpdGlv
bigpLgorICAgIHRleHRJbnB1dENvbnRyb2xsZXIuaW5zZXJ0VGV4dCh0ZXh0KTsKKyAgICAvLyBW
ZXJpZnkgdGhlIHZhbHVlIG9mIHRoZSA8dGV4dGFyZWE+IGVsZW1lbnQgaXMgdGhlIHNhbWUgYXMg
dGhlIGdpdmVuIHRleHQuCisgICAgaWYgKHRleHRhcmVhLnZhbHVlID09IHRleHQpCisgICAgICAg
IGxvZygnU1VDQ0VFREVEJyk7CisgICAgZWxzZQorICAgICAgICBsb2coJ0ZBSUxFRDogZXhwZWN0
ZWQ9IicgKyB0ZXh0ICsgJyIsIGFjdHVhbD0iJyArIHRleHRhcmVhLnZhbHVlICsgJyInKTsKK30K
KwordmFyIHRleHRhcmVhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RleHRhcmVhJyk7Cit0
ZXh0YXJlYS5mb2N1cygpOworaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAg
IGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBzZXRNYXJrZWRUZXh0KHRl
eHRhcmVhLCAnXHUzMTRFJywgMCwgMSk7CisgICAgc2V0TWFya2VkVGV4dCh0ZXh0YXJlYSwgJ1x1
RDYzOCcsIDAsIDEpOworICAgIHNldE1hcmtlZFRleHQodGV4dGFyZWEsICdcdUQ2NEQnLCAwLCAx
KTsKKyAgICBpbnNlcnRUZXh0KHRleHRhcmVhLCAnXHVENjREJyk7Cit9Cis8L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>34444</attachid>
            <date>2009-08-10 03:42:44 -0700</date>
            <delta_ts>2009-08-13 01:50:47 -0700</delta_ts>
            <desc>The third quick fix.</desc>
            <filename>issue27827-patch1.txt</filename>
            <type>text/plain</type>
            <size>9933</size>
            <attacher name="Hironori Bono">hbono</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0Njk3MikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjUgQEAKKzIwMDktMDgtMTAgIEhpcm9ub3JpIEJvbm8gIDxoYm9ub0BjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
Rml4IEJ1ZyAyNzgyNyAiW0Nocm9taXVtXSBGdW5jdGlvbnMgS2V5cyBkb24ndCB3b3JrIGluIGdv
b2dsZSBzcHJlYWRzaGVldCIuCisgICAgICAgIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mjc4Mjc+LgorCisgICAgICAgIEJlY2F1c2Ugb2YgdGhlIGxhY2sgb2YgbWFw
cGluZ3MgZnJvbSBHREsga2V5LWNvZGVzIHRvIFdlYktpdCBrZXktY29kZXMsCisgICAgICAgIENo
cm9taXVtIGNhbm5vdCBzZW5kIHZhbGlkIGtleS1jb2RlcyB0byBKYXZhU2NyaXB0IHdoZW4gYSB1
c2VyIHR5cGVzCisgICAgICAgIGZ1bmN0aW9uIGtleXMuIFRoaXMgY2hhbmdlIGp1c3QgY29waWVz
IHRoZSBtYXBwaW5ncyBmcm9tICdLZXlFdmVudEd0ay5jcHAnLgorICAgICAgICAKKyAgICAgICAg
VG8gd3JpdGUgbGF5b3V0IHRlc3RzIGZvciB0aGlzIGlzc3VlLCBhZGRlZCBtYXBwaW5ncyBmcm9t
IGZ1bmN0aW9uLWtleQorICAgICAgICBuYW1lcyB0byBwbGF0Zm9ybS1zcGVjaWZpYyBrZXktY29k
ZXMgdG8gRXZlbnRTZW5kaW5nQ29udHJvbGxlciBvYmplY3RzCisgICAgICAgIHNvIHRoYXQgZXZl
bnRTZW5kZXIua2V5RG93bigpIGNhbiBzZW5kIGZ1bmN0aW9uLWtleSBldmVudHMgd2l0aG91dCB1
c2luZworICAgICAgICBwbGF0Zm9ybS1zcGVjaWZpYyBrZXkgY29kZXMuCisKKyAgICAgICAgVGVz
dDogZmFzdC9ldmVudHMva2V5ZG93bi1mdW5jdGlvbi1rZXlzLmh0bWwKKworICAgICAgICAqIHBs
YXRmb3JtL2Nocm9taXVtL0tleUNvZGVDb252ZXJzaW9uR3RrLmNwcDogQWRkIG1hcHBpbmdzIGZy
b20gR0RLIGtleS1jb2RlcworICAgICAgICB0byBXZWJLaXQga2V5LWNvZGUgZm9yIGZ1bmN0aW9u
IGtleXMuCisgICAgICAgIChXZWJDb3JlOjp3aW5kb3dzS2V5Q29kZUZvcktleUV2ZW50KToKKwog
MjAwOS0wOC0xMCAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBUaW1vdGh5IEhhdGNoZXIuCkluZGV4OiBXZWJDb3JlL3BsYXRmb3Jt
L2Nocm9taXVtL0tleUNvZGVDb252ZXJzaW9uR3RrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVDb252ZXJzaW9uR3RrLmNwcAkocmV2aXNpb24gNDY5
NzEpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVDb252ZXJzaW9uR3RrLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzU3LDYgKzM1NywzMSBAQCBpbnQgd2luZG93c0tleUNvZGVG
b3JLZXlFdmVudCh1bnNpZ25lZCBrCiAgICAgICAgIC8vIFZLRVlfTk9OQU1FIChGQykgUmVzZXJ2
ZWQgZm9yIGZ1dHVyZSB1c2UKICAgICAgICAgLy8gVktFWV9QQTEgKEZEKSBQQTEga2V5CiAgICAg
ICAgIC8vIFZLRVlfT0VNX0NMRUFSIChGRSkgQ2xlYXIga2V5CisgICAgY2FzZSBHREtfRjE6Cisg
ICAgY2FzZSBHREtfRjI6CisgICAgY2FzZSBHREtfRjM6CisgICAgY2FzZSBHREtfRjQ6CisgICAg
Y2FzZSBHREtfRjU6CisgICAgY2FzZSBHREtfRjY6CisgICAgY2FzZSBHREtfRjc6CisgICAgY2Fz
ZSBHREtfRjg6CisgICAgY2FzZSBHREtfRjk6CisgICAgY2FzZSBHREtfRjEwOgorICAgIGNhc2Ug
R0RLX0YxMToKKyAgICBjYXNlIEdES19GMTI6CisgICAgY2FzZSBHREtfRjEzOgorICAgIGNhc2Ug
R0RLX0YxNDoKKyAgICBjYXNlIEdES19GMTU6CisgICAgY2FzZSBHREtfRjE2OgorICAgIGNhc2Ug
R0RLX0YxNzoKKyAgICBjYXNlIEdES19GMTg6CisgICAgY2FzZSBHREtfRjE5OgorICAgIGNhc2Ug
R0RLX0YyMDoKKyAgICBjYXNlIEdES19GMjE6CisgICAgY2FzZSBHREtfRjIyOgorICAgIGNhc2Ug
R0RLX0YyMzoKKyAgICBjYXNlIEdES19GMjQ6CisgICAgICAgIHJldHVybiBWS0VZX0YxICsgKGtl
eWNvZGUgLSBHREtfRjEpOwogICAgIGRlZmF1bHQ6CiAgICAgICAgIHJldHVybiAwOwogICAgIH0K
SW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDQ2OTcyKQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMDktMDgtMTAgIEhpcm9ub3JpIEJvbm8gIDxo
Ym9ub0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgRml4IEJ1ZyAyNzgyNyAiW0Nocm9taXVtXSBGdW5jdGlvbnMgS2V5cyBkb24n
dCB3b3JrIGluIGdvb2dsZSBzcHJlYWRzaGVldCIuCisgICAgICAgIDxodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc4Mjc+LgorCisgICAgICAgIEJlY2F1c2Ugb2YgdGhl
IGxhY2sgb2YgbWFwcGluZ3MgZnJvbSBHREsga2V5LWNvZGVzIHRvIFdlYktpdCBrZXktY29kZXMs
CisgICAgICAgIENocm9taXVtIGNhbm5vdCBzZW5kIHZhbGlkIGtleS1jb2RlcyB0byBKYXZhU2Ny
aXB0IHdoZW4gYSB1c2VyIHR5cGVzCisgICAgICAgIGZ1bmN0aW9uIGtleXMuIFRoaXMgY2hhbmdl
IGp1c3QgY29waWVzIHRoZSBtYXBwaW5ncyBmcm9tICdLZXlFdmVudEd0ay5jcHAnLgorCisgICAg
ICAgIFRvIHdyaXRlIGxheW91dCB0ZXN0cyBmb3IgdGhpcyBpc3N1ZSwgYWRkZWQgbWFwcGluZ3Mg
ZnJvbSBmdW5jdGlvbi1rZXkKKyAgICAgICAgbmFtZXMgdG8gcGxhdGZvcm0tc3BlY2lmaWMga2V5
LWNvZGVzIHRvIEV2ZW50U2VuZGluZ0NvbnRyb2xsZXIgb2JqZWN0cworICAgICAgICBzbyB0aGF0
IGV2ZW50U2VuZGVyLmtleURvd24oKSBjYW4gc2VuZCBmdW5jdGlvbi1rZXkgZXZlbnRzIHdpdGhv
dXQgdXNpbmcKKyAgICAgICAgcGxhdGZvcm0tc3BlY2lmaWMga2V5IGNvZGVzLgorCisgICAgICAg
ICogRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIubW06CisgICAgICAg
ICgtW0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIga2V5RG93bjp3aXRoTW9kaWZpZXJzOl0pOgorICAg
ICAgICAqIER1bXBSZW5kZXJUcmVlL3dpbi9FdmVudFNlbmRlci5jcHA6CisgICAgICAgIChrZXlE
b3duQ2FsbGJhY2spOgorCiAyMDA5LTA4LTA4ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCkluZGV4OiBXZWJLaXRUb29s
cy9EdW1wUmVuZGVyVHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5tbQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29udHJvbGxl
ci5tbQkocmV2aXNpb24gNDY5NzEpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMv
RXZlbnRTZW5kaW5nQ29udHJvbGxlci5tbQkod29ya2luZyBjb3B5KQpAQCAtNTA2LDYgKzUwNiwx
NSBAQCBzdGF0aWMgTlNFdmVudFR5cGUgZXZlbnRUeXBlRm9yTW91c2VCdXR0CiAgICAgICAgIGV2
ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6
MV07CiAgICAgfQogCisgICAgLy8gQ29tcGFyZSB0aGUgaW5wdXQgc3RyaW5nIHdpdGggdGhlIGZ1
bmN0aW9uLWtleSBuYW1lcyBkZWZpbmVkIGJ5IHRoZSBET00gc3BlYyAoaS5lLiAiRjEiLC4uLiwi
RjI0IikuCisgICAgLy8gSWYgdGhlIGlucHV0IHN0cmluZyBpcyBhIGZ1bmN0aW9uLWtleSBuYW1l
LCBzZXQgaXRzIGtleSBjb2RlLgorICAgIGZvciAodW5zaWduZWQgaSA9IDE7IGkgPD0gMjQ7IGkr
KykgeworICAgICAgICBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6W05TU3RyaW5nIHN0
cmluZ1dpdGhGb3JtYXQ6QCJGJXUiLCBpXV0pIHsKKyAgICAgICAgICAgIGNvbnN0IHVuaWNoYXIg
Y2ggPSBOU0YxRnVuY3Rpb25LZXkgKyAoaSAtIDEpOworICAgICAgICAgICAgZXZlbnRDaGFyYWN0
ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAg
ICAgfQorICAgIH0KKwogICAgIE5TU3RyaW5nICpjaGFyYWN0ZXJzSWdub3JpbmdNb2RpZmllcnMg
PSBldmVudENoYXJhY3RlcjsKIAogICAgIGludCBtb2RpZmllckZsYWdzID0gMDsKSW5kZXg6IExh
eW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJ
KHJldmlzaW9uIDQ2OTcyKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDMgKzEsMjIgQEAKKzIwMDktMDgtMTAgIEhpcm9ub3JpIEJvbm8gIDxoYm9ub0BjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRml4IEJ1ZyAyNzgyNyAiW0Nocm9taXVtXSBGdW5jdGlvbnMgS2V5cyBkb24ndCB3b3JrIGlu
IGdvb2dsZSBzcHJlYWRzaGVldCIuCisgICAgICAgIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9Mjc4Mjc+LgorCisgICAgICAgIEJlY2F1c2Ugb2YgdGhlIGxhY2sgb2Yg
bWFwcGluZ3MgZnJvbSBHREsga2V5LWNvZGVzIHRvIFdlYktpdCBrZXktY29kZXMsCisgICAgICAg
IENocm9taXVtIGNhbm5vdCBzZW5kIHZhbGlkIGtleS1jb2RlcyB0byBKYXZhU2NyaXB0IHdoZW4g
YSB1c2VyIHR5cGVzCisgICAgICAgIGZ1bmN0aW9uIGtleXMuIFRoaXMgY2hhbmdlIGp1c3QgY29w
aWVzIHRoZSBtYXBwaW5ncyBmcm9tICdLZXlFdmVudEd0ay5jcHAnLgorCisgICAgICAgIFRvIHdy
aXRlIGxheW91dCB0ZXN0cyBmb3IgdGhpcyBpc3N1ZSwgYWRkZWQgbWFwcGluZ3MgZnJvbSBmdW5j
dGlvbi1rZXkKKyAgICAgICAgbmFtZXMgdG8gcGxhdGZvcm0tc3BlY2lmaWMga2V5LWNvZGVzIHRv
IEV2ZW50U2VuZGluZ0NvbnRyb2xsZXIgb2JqZWN0cworICAgICAgICBzbyB0aGF0IGV2ZW50U2Vu
ZGVyLmtleURvd24oKSBjYW4gc2VuZCBmdW5jdGlvbi1rZXkgZXZlbnRzIHdpdGhvdXQgdXNpbmcK
KyAgICAgICAgcGxhdGZvcm0tc3BlY2lmaWMga2V5IGNvZGVzLgorCisgICAgICAgICogcGxhdGZv
cm0vbWFjL2Zhc3QvZXZlbnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L2V2ZW50cy9rZXlkb3duLWZ1bmN0aW9u
LWtleXMuaHRtbDogQWRkZWQuCisKIDIwMDktMDgtMTAgIFNpbW9uIEhhdXNtYW5uICA8c2ltb24u
aGF1c21hbm5Abm9raWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFyaXlhIEhpZGF5YXQu
CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9ldmVudHMva2V5ZG93bi1mdW5j
dGlvbi1rZXlzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvZmFzdC9ldmVudHMva2V5ZG93bi1mdW5jdGlvbi1rZXlzLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2V2ZW50cy9rZXlkb3du
LWZ1bmN0aW9uLWtleXMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI3IEBA
CitUaGlzIHRlc3QgdmVyaWZpZXMgdGhlIGtleWNvZGVzIHNlbnQgd2hlbiB3ZSBwcmVzcyBmdW5j
dGlvbiBrZXlzLgorCisKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExMixjdHJsS2V5PWZhbHNlLHNo
aWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNv
ZGU9MTEyLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9
ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExMyxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZh
bHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTEzLGN0
cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5
cGU9a2V5ZG93bixrZXlDb2RlPTExNCxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtl
eT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTE0LGN0cmxLZXk9ZmFs
c2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93
bixrZXlDb2RlPTExNSxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxt
ZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTE1LGN0cmxLZXk9ZmFsc2Usc2hpZnRL
ZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2Rl
PTExNixjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZh
bHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTE2LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2Us
YWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExNyxjdHJs
S2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBl
PWtleXVwLGtleUNvZGU9MTE3LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZh
bHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExOCxjdHJsS2V5PWZhbHNl
LHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtl
eUNvZGU9MTE4LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFL
ZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExOSxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5
PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTE5
LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UK
K1R5cGU9a2V5ZG93bixrZXlDb2RlPTEyMCxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFs
dEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTIwLGN0cmxLZXk9
ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5
ZG93bixrZXlDb2RlPTEyMSxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxz
ZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTIxLGN0cmxLZXk9ZmFsc2Usc2hp
ZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlD
b2RlPTEyMixjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5
PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTIyLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFs
c2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTEyMyxj
dHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitU
eXBlPWtleXVwLGtleUNvZGU9MTIzLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5
PWZhbHNlLG1ldGFLZXk9ZmFsc2UKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0
L2V2ZW50cy9rZXlkb3duLWZ1bmN0aW9uLWtleXMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9ldmVudHMva2V5ZG93bi1mdW5jdGlvbi1rZXlzLmh0bWwJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9ldmVudHMva2V5
ZG93bi1mdW5jdGlvbi1rZXlzLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDggQEAKKzxo
dG1sPgorPGhlYWQ+Cis8dGl0bGU+RXZlbnQgVGVzdCAoU2VuZGluZyBmdW5jdGlvbi1rZXkgZXZl
bnRzKTwvdGl0bGU+Cis8c2NyaXB0IGxhbmd1YWdlPSJqYXZhc2NyaXB0IiB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiPgorZnVuY3Rpb24gbG9nKHN0cikgeworICAgIHZhciBsaSA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoImxpIik7CisgICAgbGkuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4
dE5vZGUoc3RyKSk7CisgICAgdmFyIGNvbnNvbGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
Y29uc29sZSIpOworICAgIGNvbnNvbGUuYXBwZW5kQ2hpbGQobGkpOworfQorZnVuY3Rpb24gb25L
ZXlFdmVudChldikgeworCSAgZXYgPSBldiB8fCBldmVudDsKKyAgICBsb2coJ1R5cGU9JyArIGV2
LnR5cGUgKyAnLCcgKworICAgICAgICAna2V5Q29kZT0nICsgKGV2LndoaWNoIHx8IGV2LmtleUNv
ZGUpICsgJywnICsKKyAgICAgICAgJ2N0cmxLZXk9JyArIGV2LmN0cmxLZXkgKyAnLCcgKworICAg
ICAgICAnc2hpZnRLZXk9JyArIGV2LnNoaWZ0S2V5ICsgJywnICsKKyAgICAgICAgJ2FsdEtleT0n
ICsgZXYuYWx0S2V5ICsgJywnICsKKyAgICAgICAgJ21ldGFLZXk9JyArIGV2Lm1ldGFLZXkpOwor
fQorZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKQorICAgICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwor
ICAgIHZhciB0ZXh0YXJlYSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0Iik7CisgICAg
dGV4dGFyZWEuZm9jdXMoKTsKKyAgICBldmVudFNlbmRlci5rZXlEb3duKCJGMSIpOworICAgIGV2
ZW50U2VuZGVyLmtleURvd24oIkYyIik7CisgICAgZXZlbnRTZW5kZXIua2V5RG93bigiRjMiKTsK
KyAgICBldmVudFNlbmRlci5rZXlEb3duKCJGNCIpOworICAgIGV2ZW50U2VuZGVyLmtleURvd24o
IkY1Iik7CisgICAgZXZlbnRTZW5kZXIua2V5RG93bigiRjYiKTsKKyAgICBldmVudFNlbmRlci5r
ZXlEb3duKCJGNyIpOworICAgIGV2ZW50U2VuZGVyLmtleURvd24oIkY4Iik7CisgICAgZXZlbnRT
ZW5kZXIua2V5RG93bigiRjkiKTsKKyAgICBldmVudFNlbmRlci5rZXlEb3duKCJGMTAiKTsKKyAg
ICBldmVudFNlbmRlci5rZXlEb3duKCJGMTEiKTsKKyAgICBldmVudFNlbmRlci5rZXlEb3duKCJG
MTIiKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cD5UaGlzIHRlc3QgdmVyaWZp
ZXMgdGhlIGtleWNvZGVzIHNlbnQgd2hlbiB3ZSBwcmVzcyBmdW5jdGlvbiBrZXlzLjwvcD4KKzx0
ZXh0YXJlYSBpZD0idGVzdCIgcm93cz0iMSIgY29scz0iNDAiIG9ua2V5ZG93bj0icmV0dXJuIG9u
S2V5RXZlbnQoZXZlbnQpOyIgb25rZXl1cD0icmV0dXJuIG9uS2V5RXZlbnQoZXZlbnQpOyI+PC90
ZXh0YXJlYT4KKzx1bCBpZD0iY29uc29sZSI+PC91bD4KKzxzY3JpcHQgbGFuZ3VhZ2U9ImphdmFz
Y3JpcHQiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitydW5UZXN0KCk7Cis8L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4K
</data>
<flag name="review"
          id="18626"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>34721</attachid>
            <date>2009-08-13 01:50:47 -0700</date>
            <delta_ts>2009-08-24 21:56:28 -0700</delta_ts>
            <desc>The fourth quick fix</desc>
            <filename>issue27827-patch2.txt</filename>
            <type>text/plain</type>
            <size>12193</size>
            <attacher name="Hironori Bono">hbono</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NzE4NykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjcgQEAKKzIwMDktMDgtMTMgIEhpcm9ub3JpIEJvbm8gIDxoYm9ub0BjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
Rml4IEJ1ZyAyNzgyNyAiW0Nocm9taXVtXSBGdW5jdGlvbnMgS2V5cyBkb24ndCB3b3JrIGluIGdv
b2dsZSBzcHJlYWRzaGVldCIuCisgICAgICAgIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mjc4Mjc+LgorCisgICAgICAgIEJlY2F1c2Ugb2YgdGhlIGxhY2sgb2YgbWFw
cGluZ3MgZnJvbSBHREsga2V5LWNvZGVzIHRvIFdlYktpdCBrZXktY29kZXMsCisgICAgICAgIENo
cm9taXVtIGNhbm5vdCBzZW5kIHZhbGlkIGtleS1jb2RlcyB0byBKYXZhU2NyaXB0IHdoZW4gYSB1
c2VyIHR5cGVzCisgICAgICAgIGZ1bmN0aW9uIGtleXMuIFRoaXMgY2hhbmdlIGp1c3QgY29waWVz
IHRoZSBtYXBwaW5ncyBmcm9tICdLZXlFdmVudEd0ay5jcHAnLgorCisgICAgICAgIFRvIHdyaXRl
IGxheW91dCB0ZXN0cyBmb3IgdGhpcyBpc3N1ZSwgYWRkZWQgbWFwcGluZ3MgZnJvbSBmdW5jdGlv
bi1rZXkKKyAgICAgICAgbmFtZXMgdG8gcGxhdGZvcm0tc3BlY2lmaWMga2V5LWNvZGVzIHRvIEV2
ZW50U2VuZGluZ0NvbnRyb2xsZXIgb2JqZWN0cworICAgICAgICBzbyB0aGF0IGV2ZW50U2VuZGVy
LmtleURvd24oKSBjYW4gc2VuZCBmdW5jdGlvbi1rZXkgZXZlbnRzIHdpdGhvdXQgdXNpbmcKKyAg
ICAgICAgcGxhdGZvcm0tc3BlY2lmaWMga2V5IGNvZGVzLiAoVW5mb3J0dW5hdGVseSwgdGhpcyBl
dmVudFNlbmRlci5rZXlEb3duKCkgY2hhbmdlCisgICAgICAgIGlzIG9ubHkgZm9yIE1hYy4gU28g
dGhpcyBjaGFuZ2UgYWRkcyB0aGlzIG5ldyB0ZXN0IHRvIFNraXBwZWQgdGVzdHMgZm9yIG90aGVy
CisgICAgICAgIHBsYXRmb3JtcyB0byBwcmV2ZW50IHRoaXMgY2hhbmdlIGZyb20gY3Jhc2hpbmcg
dGhlIGJ1aWxkIHRyZWVzLikKKworICAgICAgICBUZXN0OiBmYXN0L2V2ZW50cy9rZXlkb3duLWZ1
bmN0aW9uLWtleXMuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29kZUNv
bnZlcnNpb25HdGsuY3BwOiBBZGQgbWFwcGluZ3MgZnJvbSBHREsga2V5LWNvZGVzCisgICAgICAg
IHRvIFdlYktpdCBrZXktY29kZSBmb3IgZnVuY3Rpb24ga2V5cy4KKyAgICAgICAgKFdlYkNvcmU6
OndpbmRvd3NLZXlDb2RlRm9yS2V5RXZlbnQpOgorCiAyMDA5LTA4LTEyICBKb3NlcGggUGVjb3Jh
cm8gIDxqb2VwZWNrMDJAZ21haWwuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkg
SGF0Y2hlci4KSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29kZUNvbnZlcnNp
b25HdGsuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29k
ZUNvbnZlcnNpb25HdGsuY3BwCShyZXZpc2lvbiA0NzE4NikKKysrIFdlYkNvcmUvcGxhdGZvcm0v
Y2hyb21pdW0vS2V5Q29kZUNvbnZlcnNpb25HdGsuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNTcs
NiArMzU3LDMxIEBAIGludCB3aW5kb3dzS2V5Q29kZUZvcktleUV2ZW50KHVuc2lnbmVkIGsKICAg
ICAgICAgLy8gVktFWV9OT05BTUUgKEZDKSBSZXNlcnZlZCBmb3IgZnV0dXJlIHVzZQogICAgICAg
ICAvLyBWS0VZX1BBMSAoRkQpIFBBMSBrZXkKICAgICAgICAgLy8gVktFWV9PRU1fQ0xFQVIgKEZF
KSBDbGVhciBrZXkKKyAgICBjYXNlIEdES19GMToKKyAgICBjYXNlIEdES19GMjoKKyAgICBjYXNl
IEdES19GMzoKKyAgICBjYXNlIEdES19GNDoKKyAgICBjYXNlIEdES19GNToKKyAgICBjYXNlIEdE
S19GNjoKKyAgICBjYXNlIEdES19GNzoKKyAgICBjYXNlIEdES19GODoKKyAgICBjYXNlIEdES19G
OToKKyAgICBjYXNlIEdES19GMTA6CisgICAgY2FzZSBHREtfRjExOgorICAgIGNhc2UgR0RLX0Yx
MjoKKyAgICBjYXNlIEdES19GMTM6CisgICAgY2FzZSBHREtfRjE0OgorICAgIGNhc2UgR0RLX0Yx
NToKKyAgICBjYXNlIEdES19GMTY6CisgICAgY2FzZSBHREtfRjE3OgorICAgIGNhc2UgR0RLX0Yx
ODoKKyAgICBjYXNlIEdES19GMTk6CisgICAgY2FzZSBHREtfRjIwOgorICAgIGNhc2UgR0RLX0Yy
MToKKyAgICBjYXNlIEdES19GMjI6CisgICAgY2FzZSBHREtfRjIzOgorICAgIGNhc2UgR0RLX0Yy
NDoKKyAgICAgICAgcmV0dXJuIFZLRVlfRjEgKyAoa2V5Y29kZSAtIEdES19GMSk7CiAgICAgZGVm
YXVsdDoKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQpJbmRleDogV2ViS2l0VG9vbHMvQ2hhbmdl
TG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gNDcxODcp
CisrKyBXZWJLaXRUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyNCBA
QAorMjAwOS0wOC0xMyAgSGlyb25vcmkgQm9ubyAgPGhib25vQGNocm9taXVtLm9yZz4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXggQnVnIDI3ODI3
ICJbQ2hyb21pdW1dIEZ1bmN0aW9ucyBLZXlzIGRvbid0IHdvcmsgaW4gZ29vZ2xlIHNwcmVhZHNo
ZWV0Ii4KKyAgICAgICAgPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
NzgyNz4uCisKKyAgICAgICAgQmVjYXVzZSBvZiB0aGUgbGFjayBvZiBtYXBwaW5ncyBmcm9tIEdE
SyBrZXktY29kZXMgdG8gV2ViS2l0IGtleS1jb2RlcywKKyAgICAgICAgQ2hyb21pdW0gY2Fubm90
IHNlbmQgdmFsaWQga2V5LWNvZGVzIHRvIEphdmFTY3JpcHQgd2hlbiBhIHVzZXIgdHlwZXMKKyAg
ICAgICAgZnVuY3Rpb24ga2V5cy4gVGhpcyBjaGFuZ2UganVzdCBjb3BpZXMgdGhlIG1hcHBpbmdz
IGZyb20gJ0tleUV2ZW50R3RrLmNwcCcuCisKKyAgICAgICAgVG8gd3JpdGUgbGF5b3V0IHRlc3Rz
IGZvciB0aGlzIGlzc3VlLCBhZGRlZCBtYXBwaW5ncyBmcm9tIGZ1bmN0aW9uLWtleQorICAgICAg
ICBuYW1lcyB0byBwbGF0Zm9ybS1zcGVjaWZpYyBrZXktY29kZXMgdG8gRXZlbnRTZW5kaW5nQ29u
dHJvbGxlciBvYmplY3RzCisgICAgICAgIHNvIHRoYXQgZXZlbnRTZW5kZXIua2V5RG93bigpIGNh
biBzZW5kIGZ1bmN0aW9uLWtleSBldmVudHMgd2l0aG91dCB1c2luZworICAgICAgICBwbGF0Zm9y
bS1zcGVjaWZpYyBrZXkgY29kZXMuIChVbmZvcnR1bmF0ZWx5LCB0aGlzIGV2ZW50U2VuZGVyLmtl
eURvd24oKSBjaGFuZ2UKKyAgICAgICAgaXMgb25seSBmb3IgTWFjLiBTbyB0aGlzIGNoYW5nZSBh
ZGRzIHRoaXMgbmV3IHRlc3QgdG8gU2tpcHBlZCB0ZXN0cyBmb3Igb3RoZXIKKyAgICAgICAgcGxh
dGZvcm1zIHRvIHByZXZlbnQgdGhpcyBjaGFuZ2UgZnJvbSBjcmFzaGluZyB0aGUgYnVpbGQgdHJl
ZXMuKQorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xs
ZXIubW06CisgICAgICAgICgtW0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIga2V5RG93bjp3aXRoTW9k
aWZpZXJzOl0pOgorCiAyMDA5LTA4LTEyICBHZW9yZ2UgU3RhaWtvcyAgPGdlb3JnZS5zdGFpa29z
QHRvcmNobW9iaWxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIFRyZWF0LgpJbmRl
eDogV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2Vu
ZGluZ0NvbnRyb2xsZXIubW0JKHJldmlzaW9uIDQ3MTg2KQorKysgV2ViS2l0VG9vbHMvRHVtcFJl
bmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIubW0JKHdvcmtpbmcgY29weSkKQEAg
LTUwNiw2ICs1MDYsMTUgQEAgc3RhdGljIE5TRXZlbnRUeXBlIGV2ZW50VHlwZUZvck1vdXNlQnV0
dAogICAgICAgICBldmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ2hhcmFjdGVy
czomY2ggbGVuZ3RoOjFdOwogICAgIH0KIAorICAgIC8vIENvbXBhcmUgdGhlIGlucHV0IHN0cmlu
ZyB3aXRoIHRoZSBmdW5jdGlvbi1rZXkgbmFtZXMgZGVmaW5lZCBieSB0aGUgRE9NIHNwZWMgKGku
ZS4gIkYxIiwuLi4sIkYyNCIpLgorICAgIC8vIElmIHRoZSBpbnB1dCBzdHJpbmcgaXMgYSBmdW5j
dGlvbi1rZXkgbmFtZSwgc2V0IGl0cyBrZXkgY29kZS4KKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAx
OyBpIDw9IDI0OyBpKyspIHsKKyAgICAgICAgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5n
OltOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiRiV1IiwgaV1dKSB7CisgICAgICAgICAgICBj
b25zdCB1bmljaGFyIGNoID0gTlNGMUZ1bmN0aW9uS2V5ICsgKGkgLSAxKTsKKyAgICAgICAgICAg
IGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5n
dGg6MV07CisgICAgICAgIH0KKyAgICB9CisKICAgICBOU1N0cmluZyAqY2hhcmFjdGVyc0lnbm9y
aW5nTW9kaWZpZXJzID0gZXZlbnRDaGFyYWN0ZXI7CiAKICAgICBpbnQgbW9kaWZpZXJGbGFncyA9
IDA7CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA0NzE4NykKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDA5LTA4LTEzICBIaXJvbm9yaSBCb25v
ICA8aGJvbm9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEZpeCBCdWcgMjc4MjcgIltDaHJvbWl1bV0gRnVuY3Rpb25zIEtleXMg
ZG9uJ3Qgd29yayBpbiBnb29nbGUgc3ByZWFkc2hlZXQiLgorICAgICAgICA8aHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3ODI3Pi4KKworICAgICAgICBCZWNhdXNlIG9m
IHRoZSBsYWNrIG9mIG1hcHBpbmdzIGZyb20gR0RLIGtleS1jb2RlcyB0byBXZWJLaXQga2V5LWNv
ZGVzLAorICAgICAgICBDaHJvbWl1bSBjYW5ub3Qgc2VuZCB2YWxpZCBrZXktY29kZXMgdG8gSmF2
YVNjcmlwdCB3aGVuIGEgdXNlciB0eXBlcworICAgICAgICBmdW5jdGlvbiBrZXlzLiBUaGlzIGNo
YW5nZSBqdXN0IGNvcGllcyB0aGUgbWFwcGluZ3MgZnJvbSAnS2V5RXZlbnRHdGsuY3BwJy4KKwor
ICAgICAgICBUbyB3cml0ZSBsYXlvdXQgdGVzdHMgZm9yIHRoaXMgaXNzdWUsIGFkZGVkIG1hcHBp
bmdzIGZyb20gZnVuY3Rpb24ta2V5CisgICAgICAgIG5hbWVzIHRvIHBsYXRmb3JtLXNwZWNpZmlj
IGtleS1jb2RlcyB0byBFdmVudFNlbmRpbmdDb250cm9sbGVyIG9iamVjdHMKKyAgICAgICAgc28g
dGhhdCBldmVudFNlbmRlci5rZXlEb3duKCkgY2FuIHNlbmQgZnVuY3Rpb24ta2V5IGV2ZW50cyB3
aXRob3V0IHVzaW5nCisgICAgICAgIHBsYXRmb3JtLXNwZWNpZmljIGtleSBjb2Rlcy4gKFVuZm9y
dHVuYXRlbHksIHRoaXMgZXZlbnRTZW5kZXIua2V5RG93bigpIGNoYW5nZQorICAgICAgICBpcyBv
bmx5IGZvciBNYWMuIFNvIHRoaXMgY2hhbmdlIGFkZHMgdGhpcyBuZXcgdGVzdCB0byBTa2lwcGVk
IHRlc3RzIGZvciBvdGhlcgorICAgICAgICBwbGF0Zm9ybXMgdG8gcHJldmVudCB0aGlzIGNoYW5n
ZSBmcm9tIGNyYXNoaW5nIHRoZSBidWlsZCB0cmVlcy4pCisKKyAgICAgICAgKiBmYXN0L2V2ZW50
cy9rZXlkb3duLWZ1bmN0aW9uLWtleXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBm
YXN0L2V2ZW50cy9rZXlkb3duLWZ1bmN0aW9uLWtleXMuaHRtbDogQWRkZWQuCisgICAgICAgICog
cGxhdGZvcm0vZ3RrL1NraXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS93aW4vU2tpcHBlZDoKKwogMjAwOS0wOC0xMiAgQWxwaGEgTGFtIDwg
aGNsYW1AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIE5vdCByZXZpZXdlZCwgV2luZG93cyB0ZXN0
IGZpeCBhZnRlciBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC80NzE3MS4KSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMva2V5ZG93bi1mdW5jdGlv
bi1rZXlzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMjcgQEAKK1RoaXMgdGVzdCB2ZXJpZmllcyB0aGUga2V5Y29kZXMgc2VudCB3aGVuIHdl
IHByZXNzIGZ1bmN0aW9uIGtleXMuCisKKworVHlwZT1rZXlkb3duLGtleUNvZGU9MTEyLGN0cmxL
ZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9
a2V5dXAsa2V5Q29kZT0xMTIsY3RybEtleT1mYWxzZSxzaGlmdEtleT1mYWxzZSxhbHRLZXk9ZmFs
c2UsbWV0YUtleT1mYWxzZQorVHlwZT1rZXlkb3duLGtleUNvZGU9MTEzLGN0cmxLZXk9ZmFsc2Us
c2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5dXAsa2V5
Q29kZT0xMTMsY3RybEtleT1mYWxzZSxzaGlmdEtleT1mYWxzZSxhbHRLZXk9ZmFsc2UsbWV0YUtl
eT1mYWxzZQorVHlwZT1rZXlkb3duLGtleUNvZGU9MTE0LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9
ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5dXAsa2V5Q29kZT0xMTQs
Y3RybEtleT1mYWxzZSxzaGlmdEtleT1mYWxzZSxhbHRLZXk9ZmFsc2UsbWV0YUtleT1mYWxzZQor
VHlwZT1rZXlkb3duLGtleUNvZGU9MTE1LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0
S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5dXAsa2V5Q29kZT0xMTUsY3RybEtleT1m
YWxzZSxzaGlmdEtleT1mYWxzZSxhbHRLZXk9ZmFsc2UsbWV0YUtleT1mYWxzZQorVHlwZT1rZXlk
b3duLGtleUNvZGU9MTE2LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNl
LG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5dXAsa2V5Q29kZT0xMTYsY3RybEtleT1mYWxzZSxzaGlm
dEtleT1mYWxzZSxhbHRLZXk9ZmFsc2UsbWV0YUtleT1mYWxzZQorVHlwZT1rZXlkb3duLGtleUNv
ZGU9MTE3LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9
ZmFsc2UKK1R5cGU9a2V5dXAsa2V5Q29kZT0xMTcsY3RybEtleT1mYWxzZSxzaGlmdEtleT1mYWxz
ZSxhbHRLZXk9ZmFsc2UsbWV0YUtleT1mYWxzZQorVHlwZT1rZXlkb3duLGtleUNvZGU9MTE4LGN0
cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5
cGU9a2V5dXAsa2V5Q29kZT0xMTgsY3RybEtleT1mYWxzZSxzaGlmdEtleT1mYWxzZSxhbHRLZXk9
ZmFsc2UsbWV0YUtleT1mYWxzZQorVHlwZT1rZXlkb3duLGtleUNvZGU9MTE5LGN0cmxLZXk9ZmFs
c2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5dXAs
a2V5Q29kZT0xMTksY3RybEtleT1mYWxzZSxzaGlmdEtleT1mYWxzZSxhbHRLZXk9ZmFsc2UsbWV0
YUtleT1mYWxzZQorVHlwZT1rZXlkb3duLGtleUNvZGU9MTIwLGN0cmxLZXk9ZmFsc2Usc2hpZnRL
ZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5dXAsa2V5Q29kZT0x
MjAsY3RybEtleT1mYWxzZSxzaGlmdEtleT1mYWxzZSxhbHRLZXk9ZmFsc2UsbWV0YUtleT1mYWxz
ZQorVHlwZT1rZXlkb3duLGtleUNvZGU9MTIxLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2Us
YWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5dXAsa2V5Q29kZT0xMjEsY3RybEtl
eT1mYWxzZSxzaGlmdEtleT1mYWxzZSxhbHRLZXk9ZmFsc2UsbWV0YUtleT1mYWxzZQorVHlwZT1r
ZXlkb3duLGtleUNvZGU9MTIyLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZh
bHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5dXAsa2V5Q29kZT0xMjIsY3RybEtleT1mYWxzZSxz
aGlmdEtleT1mYWxzZSxhbHRLZXk9ZmFsc2UsbWV0YUtleT1mYWxzZQorVHlwZT1rZXlkb3duLGtl
eUNvZGU9MTIzLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFL
ZXk9ZmFsc2UKK1R5cGU9a2V5dXAsa2V5Q29kZT0xMjMsY3RybEtleT1mYWxzZSxzaGlmdEtleT1m
YWxzZSxhbHRLZXk9ZmFsc2UsbWV0YUtleT1mYWxzZQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMva2V5ZG93bi1mdW5jdGlvbi1rZXlzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZmFzdC9ldmVudHMva2V5ZG93bi1mdW5jdGlvbi1rZXlzLmh0bWwJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9rZXlkb3duLWZ1bmN0aW9uLWtleXMuaHRtbAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSw0OCBAQAorPGh0bWw+Cis8aGVhZD4KKzx0aXRsZT5FdmVudCBU
ZXN0IChTZW5kaW5nIGZ1bmN0aW9uLWtleSBldmVudHMpPC90aXRsZT4KKzxzY3JpcHQgbGFuZ3Vh
Z2U9ImphdmFzY3JpcHQiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiBsb2coc3Ry
KSB7CisgICAgdmFyIGxpID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGkiKTsKKyAgICBsaS5h
cHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShzdHIpKTsKKyAgICB2YXIgY29uc29s
ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xlIik7CisgICAgY29uc29sZS5hcHBl
bmRDaGlsZChsaSk7Cit9CitmdW5jdGlvbiBvbktleUV2ZW50KGV2KSB7CisJICBldiA9IGV2IHx8
IGV2ZW50OworICAgIGxvZygnVHlwZT0nICsgZXYudHlwZSArICcsJyArCisgICAgICAgICdrZXlD
b2RlPScgKyAoZXYud2hpY2ggfHwgZXYua2V5Q29kZSkgKyAnLCcgKworICAgICAgICAnY3RybEtl
eT0nICsgZXYuY3RybEtleSArICcsJyArCisgICAgICAgICdzaGlmdEtleT0nICsgZXYuc2hpZnRL
ZXkgKyAnLCcgKworICAgICAgICAnYWx0S2V5PScgKyBldi5hbHRLZXkgKyAnLCcgKworICAgICAg
ICAnbWV0YUtleT0nICsgZXYubWV0YUtleSk7Cit9CitmdW5jdGlvbiBydW5UZXN0KCkgeworICAg
IGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIHdpbmRvdy5sYXlvdXRU
ZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisgICAgdmFyIHRleHRhcmVhID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInRlc3QiKTsKKyAgICB0ZXh0YXJlYS5mb2N1cygpOworICAgIGV2ZW50
U2VuZGVyLmtleURvd24oIkYxIik7CisgICAgZXZlbnRTZW5kZXIua2V5RG93bigiRjIiKTsKKyAg
ICBldmVudFNlbmRlci5rZXlEb3duKCJGMyIpOworICAgIGV2ZW50U2VuZGVyLmtleURvd24oIkY0
Iik7CisgICAgZXZlbnRTZW5kZXIua2V5RG93bigiRjUiKTsKKyAgICBldmVudFNlbmRlci5rZXlE
b3duKCJGNiIpOworICAgIGV2ZW50U2VuZGVyLmtleURvd24oIkY3Iik7CisgICAgZXZlbnRTZW5k
ZXIua2V5RG93bigiRjgiKTsKKyAgICBldmVudFNlbmRlci5rZXlEb3duKCJGOSIpOworICAgIGV2
ZW50U2VuZGVyLmtleURvd24oIkYxMCIpOworICAgIGV2ZW50U2VuZGVyLmtleURvd24oIkYxMSIp
OworICAgIGV2ZW50U2VuZGVyLmtleURvd24oIkYxMiIpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+
Cis8Ym9keT4KKzxwPlRoaXMgdGVzdCB2ZXJpZmllcyB0aGUga2V5Y29kZXMgc2VudCB3aGVuIHdl
IHByZXNzIGZ1bmN0aW9uIGtleXMuPC9wPgorPHRleHRhcmVhIGlkPSJ0ZXN0IiByb3dzPSIxIiBj
b2xzPSI0MCIgb25rZXlkb3duPSJyZXR1cm4gb25LZXlFdmVudChldmVudCk7IiBvbmtleXVwPSJy
ZXR1cm4gb25LZXlFdmVudChldmVudCk7Ij48L3RleHRhcmVhPgorPHVsIGlkPSJjb25zb2xlIj48
L3VsPgorPHNjcmlwdCBsYW5ndWFnZT0iamF2YXNjcmlwdCIgdHlwZT0idGV4dC9qYXZhc2NyaXB0
Ij4KK3J1blRlc3QoKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL1NraXBwZWQJKHJldmlzaW9uIDQ3MTg2KQorKysgTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTU5NzksMyArNTk3OSw2IEBAIGVkaXRp
bmcvc2VsZWN0aW9uL2ZpbmQtaW4tdGV4dC1jb250cm9sLmgKIGZhc3QvaGFybmVzcy9vdmVycmlk
ZS1wcmVmZXJlbmNlcy5odG1sCiBmYXN0L2hhcm5lc3Mvb3ZlcnJpZGUtcHJlZmVyZW5jZXMtMi5o
dG1sCiBmYXN0L2hhcm5lc3Mvb3ZlcnJpZGUtenp6LXJlc2V0Lmh0bWwKKworIyBBIHRlc3QgdGhh
dCBmYWlsZWQgYmVjYXVzZSBldmVudFNlbmRlciBjYW5ub3Qgc2VuZCBmdW5jdGlvbi1rZXkgZXZl
bnRzLgorZmFzdC9ldmVudHMva2V5ZG93bi1mdW5jdGlvbi1rZXlzLmh0bWwKSW5kZXg6IExheW91
dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxh
dGZvcm0vcXQvU2tpcHBlZAkocmV2aXNpb24gNDcxODYpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9xdC9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC01MTE0LDUgKzUxMTQsOCBAQCBmYXN0L2hh
cm5lc3Mvb3ZlcnJpZGUtcHJlZmVyZW5jZXMuaHRtbAogZmFzdC9oYXJuZXNzL292ZXJyaWRlLXBy
ZWZlcmVuY2VzLTIuaHRtbAogZmFzdC9oYXJuZXNzL292ZXJyaWRlLXp6ei1yZXNldC5odG1sCiAK
KyMgQSB0ZXN0IHRoYXQgZmFpbGVkIGJlY2F1c2UgZXZlbnRTZW5kZXIgY2Fubm90IHNlbmQgZnVu
Y3Rpb24ta2V5IGV2ZW50cy4KK2Zhc3QvZXZlbnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy5odG1s
CisKICMgVGhpcyBwb3J0IGRvZXNuJ3Qgc3VwcG9ydCBHZW9sb2NhdGlvbi4KIGZhc3QvZG9tL0dl
b2xvY2F0aW9uCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAkocmV2aXNpb24gNDcxODYp
CisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAkod29ya2luZyBjb3B5KQpAQCAt
NTc5LDUgKzU3OSw4IEBAIGZhc3QvZm9ybXMvbWVudWxpc3Qtc3R5bGUtY29sb3IuaHRtbAogIyA8
cmRhcjovLzcxMjc5MDI+IGh0dHAvdGVzdHMvbWlzYy9mYXZpY29uLWxvYWRzLXdpdGgtaW1hZ2Vz
LWRpc2FibGVkLmh0bWwgY3Jhc2hlcyBvbiBXaW5kb3dzIGRlYnVnCiBodHRwL3Rlc3RzL21pc2Mv
ZmF2aWNvbi1sb2Fkcy13aXRoLWltYWdlcy1kaXNhYmxlZC5odG1sCiAKKyMgQSB0ZXN0IHRoYXQg
ZmFpbGVkIGJlY2F1c2UgZXZlbnRTZW5kZXIgY2Fubm90IHNlbmQgZnVuY3Rpb24ta2V5IGV2ZW50
cy4KK2Zhc3QvZXZlbnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy5odG1sCisKICMgVGhpcyBwb3J0
IGRvZXNuJ3Qgc3VwcG9ydCBHZW9sb2NhdGlvbi4KIGZhc3QvZG9tL0dlb2xvY2F0aW9uCg==
</data>
<flag name="review"
          id="18916"
          type_id="1"
          status="+"
          setter="eric"
    />
    <flag name="commit-queue"
          id="19295"
          type_id="3"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38522</attachid>
            <date>2009-08-24 21:56:28 -0700</date>
            <delta_ts>2009-08-24 23:53:40 -0700</delta_ts>
            <desc>The fifth quick fix</desc>
            <filename>issue27827-patch4.txt</filename>
            <type>text/plain</type>
            <size>12124</size>
            <attacher name="Hironori Bono">hbono</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0Nzc0MCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjcgQEAKKzIwMDktMDgtMjQgIEhpcm9ub3JpIEJvbm8gIDxoYm9ub0BjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
Rml4IEJ1ZyAyNzgyNyAiW0Nocm9taXVtXSBGdW5jdGlvbnMgS2V5cyBkb24ndCB3b3JrIGluIGdv
b2dsZSBzcHJlYWRzaGVldCIuCisgICAgICAgIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mjc4Mjc+LgorCisgICAgICAgIEJlY2F1c2Ugb2YgdGhlIGxhY2sgb2YgbWFw
cGluZ3MgZnJvbSBHREsga2V5LWNvZGVzIHRvIFdlYktpdCBrZXktY29kZXMsCisgICAgICAgIENo
cm9taXVtIGNhbm5vdCBzZW5kIHZhbGlkIGtleS1jb2RlcyB0byBKYXZhU2NyaXB0IHdoZW4gYSB1
c2VyIHR5cGVzCisgICAgICAgIGZ1bmN0aW9uIGtleXMuIFRoaXMgY2hhbmdlIGp1c3QgY29waWVz
IHRoZSBtYXBwaW5ncyBmcm9tICdLZXlFdmVudEd0ay5jcHAnLgorCisgICAgICAgIFRvIHdyaXRl
IGxheW91dCB0ZXN0cyBmb3IgdGhpcyBpc3N1ZSwgYWRkZWQgbWFwcGluZ3MgZnJvbSBmdW5jdGlv
bi1rZXkKKyAgICAgICAgbmFtZXMgdG8gcGxhdGZvcm0tc3BlY2lmaWMga2V5LWNvZGVzIHRvIEV2
ZW50U2VuZGluZ0NvbnRyb2xsZXIgb2JqZWN0cworICAgICAgICBzbyB0aGF0IGV2ZW50U2VuZGVy
LmtleURvd24oKSBjYW4gc2VuZCBmdW5jdGlvbi1rZXkgZXZlbnRzIHdpdGhvdXQgdXNpbmcKKyAg
ICAgICAgcGxhdGZvcm0tc3BlY2lmaWMga2V5IGNvZGVzLiAoVW5mb3J0dW5hdGVseSwgdGhpcyBl
dmVudFNlbmRlci5rZXlEb3duKCkgY2hhbmdlCisgICAgICAgIGlzIG9ubHkgZm9yIE1hYy4gU28g
dGhpcyBjaGFuZ2UgYWRkcyB0aGlzIG5ldyB0ZXN0IHRvIFNraXBwZWQgdGVzdHMgZm9yIG90aGVy
CisgICAgICAgIHBsYXRmb3JtcyB0byBwcmV2ZW50IHRoaXMgY2hhbmdlIGZyb20gY3Jhc2hpbmcg
dGhlIGJ1aWxkIHRyZWVzLikKKworICAgICAgICBUZXN0OiBmYXN0L2V2ZW50cy9rZXlkb3duLWZ1
bmN0aW9uLWtleXMuaHRtbAorCisgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29u
dmVyc2lvbkd0ay5jcHA6IEFkZCBtYXBwaW5ncyBmcm9tIEdESyBrZXktY29kZXMKKyAgICAgICAg
dG8gV2ViS2l0IGtleS1jb2RlIGZvciBmdW5jdGlvbiBrZXlzLgorICAgICAgICAoV2ViQ29yZTo6
d2luZG93c0tleUNvZGVGb3JLZXlFdmVudCk6CisKIDIwMDktMDgtMjQgIEFudHRpIEtvaXZpc3Rv
ICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4K
SW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29kZUNvbnZlcnNpb25HdGsuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29kZUNvbnZlcnNp
b25HdGsuY3BwCShyZXZpc2lvbiA0NzczOCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0v
S2V5Q29kZUNvbnZlcnNpb25HdGsuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNTcsNiArMzU3LDMx
IEBAIGludCB3aW5kb3dzS2V5Q29kZUZvcktleUV2ZW50KHVuc2lnbmVkIGsKICAgICAgICAgLy8g
VktFWV9OT05BTUUgKEZDKSBSZXNlcnZlZCBmb3IgZnV0dXJlIHVzZQogICAgICAgICAvLyBWS0VZ
X1BBMSAoRkQpIFBBMSBrZXkKICAgICAgICAgLy8gVktFWV9PRU1fQ0xFQVIgKEZFKSBDbGVhciBr
ZXkKKyAgICBjYXNlIEdES19GMToKKyAgICBjYXNlIEdES19GMjoKKyAgICBjYXNlIEdES19GMzoK
KyAgICBjYXNlIEdES19GNDoKKyAgICBjYXNlIEdES19GNToKKyAgICBjYXNlIEdES19GNjoKKyAg
ICBjYXNlIEdES19GNzoKKyAgICBjYXNlIEdES19GODoKKyAgICBjYXNlIEdES19GOToKKyAgICBj
YXNlIEdES19GMTA6CisgICAgY2FzZSBHREtfRjExOgorICAgIGNhc2UgR0RLX0YxMjoKKyAgICBj
YXNlIEdES19GMTM6CisgICAgY2FzZSBHREtfRjE0OgorICAgIGNhc2UgR0RLX0YxNToKKyAgICBj
YXNlIEdES19GMTY6CisgICAgY2FzZSBHREtfRjE3OgorICAgIGNhc2UgR0RLX0YxODoKKyAgICBj
YXNlIEdES19GMTk6CisgICAgY2FzZSBHREtfRjIwOgorICAgIGNhc2UgR0RLX0YyMToKKyAgICBj
YXNlIEdES19GMjI6CisgICAgY2FzZSBHREtfRjIzOgorICAgIGNhc2UgR0RLX0YyNDoKKyAgICAg
ICAgcmV0dXJuIFZLRVlfRjEgKyAoa2V5Y29kZSAtIEdES19GMSk7CiAgICAgZGVmYXVsdDoKICAg
ICAgICAgcmV0dXJuIDA7CiAgICAgfQpJbmRleDogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gNDc3NDApCisrKyBXZWJL
aXRUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyNCBAQAorMjAwOS0w
OC0yNCAgSGlyb25vcmkgQm9ubyAgPGhib25vQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXggQnVnIDI3ODI3ICJbQ2hyb21p
dW1dIEZ1bmN0aW9ucyBLZXlzIGRvbid0IHdvcmsgaW4gZ29vZ2xlIHNwcmVhZHNoZWV0Ii4KKyAg
ICAgICAgPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzgyNz4uCisK
KyAgICAgICAgQmVjYXVzZSBvZiB0aGUgbGFjayBvZiBtYXBwaW5ncyBmcm9tIEdESyBrZXktY29k
ZXMgdG8gV2ViS2l0IGtleS1jb2RlcywKKyAgICAgICAgQ2hyb21pdW0gY2Fubm90IHNlbmQgdmFs
aWQga2V5LWNvZGVzIHRvIEphdmFTY3JpcHQgd2hlbiBhIHVzZXIgdHlwZXMKKyAgICAgICAgZnVu
Y3Rpb24ga2V5cy4gVGhpcyBjaGFuZ2UganVzdCBjb3BpZXMgdGhlIG1hcHBpbmdzIGZyb20gJ0tl
eUV2ZW50R3RrLmNwcCcuCisKKyAgICAgICAgVG8gd3JpdGUgbGF5b3V0IHRlc3RzIGZvciB0aGlz
IGlzc3VlLCBhZGRlZCBtYXBwaW5ncyBmcm9tIGZ1bmN0aW9uLWtleQorICAgICAgICBuYW1lcyB0
byBwbGF0Zm9ybS1zcGVjaWZpYyBrZXktY29kZXMgdG8gRXZlbnRTZW5kaW5nQ29udHJvbGxlciBv
YmplY3RzCisgICAgICAgIHNvIHRoYXQgZXZlbnRTZW5kZXIua2V5RG93bigpIGNhbiBzZW5kIGZ1
bmN0aW9uLWtleSBldmVudHMgd2l0aG91dCB1c2luZworICAgICAgICBwbGF0Zm9ybS1zcGVjaWZp
YyBrZXkgY29kZXMuIChVbmZvcnR1bmF0ZWx5LCB0aGlzIGV2ZW50U2VuZGVyLmtleURvd24oKSBj
aGFuZ2UKKyAgICAgICAgaXMgb25seSBmb3IgTWFjLiBTbyB0aGlzIGNoYW5nZSBhZGRzIHRoaXMg
bmV3IHRlc3QgdG8gU2tpcHBlZCB0ZXN0cyBmb3Igb3RoZXIKKyAgICAgICAgcGxhdGZvcm1zIHRv
IHByZXZlbnQgdGhpcyBjaGFuZ2UgZnJvbSBjcmFzaGluZyB0aGUgYnVpbGQgdHJlZXMuKQorCisg
ICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIubW06Cisg
ICAgICAgICgtW0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIga2V5RG93bjp3aXRoTW9kaWZpZXJzOl0p
OgorCiAyMDA5LTA4LTIzICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B3ZWJraXQub3Jn
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IFhhbiBMb3Blei4KSW5kZXg6IFdlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL21hYy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1t
CShyZXZpc2lvbiA0NzczOCkKKysrIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9FdmVu
dFNlbmRpbmdDb250cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC01MDYsNiArNTA2LDE1IEBA
IHN0YXRpYyBOU0V2ZW50VHlwZSBldmVudFR5cGVGb3JNb3VzZUJ1dHQKICAgICAgICAgZXZlbnRD
aGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsK
ICAgICB9CiAKKyAgICAvLyBDb21wYXJlIHRoZSBpbnB1dCBzdHJpbmcgd2l0aCB0aGUgZnVuY3Rp
b24ta2V5IG5hbWVzIGRlZmluZWQgYnkgdGhlIERPTSBzcGVjIChpLmUuICJGMSIsLi4uLCJGMjQi
KS4KKyAgICAvLyBJZiB0aGUgaW5wdXQgc3RyaW5nIGlzIGEgZnVuY3Rpb24ta2V5IG5hbWUsIHNl
dCBpdHMga2V5IGNvZGUuCisgICAgZm9yICh1bnNpZ25lZCBpID0gMTsgaSA8PSAyNDsgaSsrKSB7
CisgICAgICAgIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpbTlNTdHJpbmcgc3RyaW5n
V2l0aEZvcm1hdDpAIkYldSIsIGldXSkgeworICAgICAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9
IE5TRjFGdW5jdGlvbktleSArIChpIC0gMSk7CisgICAgICAgICAgICBldmVudENoYXJhY3RlciA9
IFtOU1N0cmluZyBzdHJpbmdXaXRoQ2hhcmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAgICAgICB9
CisgICAgfQorCiAgICAgTlNTdHJpbmcgKmNoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVycyA9IGV2
ZW50Q2hhcmFjdGVyOwogCiAgICAgaW50IG1vZGlmaWVyRmxhZ3MgPSAwOwpJbmRleDogTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2
aXNpb24gNDc3NDApCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAg
LTEsMyArMSwyNyBAQAorMjAwOS0wOC0yNCAgSGlyb25vcmkgQm9ubyAgPGhib25vQGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBG
aXggQnVnIDI3ODI3ICJbQ2hyb21pdW1dIEZ1bmN0aW9ucyBLZXlzIGRvbid0IHdvcmsgaW4gZ29v
Z2xlIHNwcmVhZHNoZWV0Ii4KKyAgICAgICAgPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yNzgyNz4uCisKKyAgICAgICAgQmVjYXVzZSBvZiB0aGUgbGFjayBvZiBtYXBw
aW5ncyBmcm9tIEdESyBrZXktY29kZXMgdG8gV2ViS2l0IGtleS1jb2RlcywKKyAgICAgICAgQ2hy
b21pdW0gY2Fubm90IHNlbmQgdmFsaWQga2V5LWNvZGVzIHRvIEphdmFTY3JpcHQgd2hlbiBhIHVz
ZXIgdHlwZXMKKyAgICAgICAgZnVuY3Rpb24ga2V5cy4gVGhpcyBjaGFuZ2UganVzdCBjb3BpZXMg
dGhlIG1hcHBpbmdzIGZyb20gJ0tleUV2ZW50R3RrLmNwcCcuCisKKyAgICAgICAgVG8gd3JpdGUg
bGF5b3V0IHRlc3RzIGZvciB0aGlzIGlzc3VlLCBhZGRlZCBtYXBwaW5ncyBmcm9tIGZ1bmN0aW9u
LWtleQorICAgICAgICBuYW1lcyB0byBwbGF0Zm9ybS1zcGVjaWZpYyBrZXktY29kZXMgdG8gRXZl
bnRTZW5kaW5nQ29udHJvbGxlciBvYmplY3RzCisgICAgICAgIHNvIHRoYXQgZXZlbnRTZW5kZXIu
a2V5RG93bigpIGNhbiBzZW5kIGZ1bmN0aW9uLWtleSBldmVudHMgd2l0aG91dCB1c2luZworICAg
ICAgICBwbGF0Zm9ybS1zcGVjaWZpYyBrZXkgY29kZXMuIChVbmZvcnR1bmF0ZWx5LCB0aGlzIGV2
ZW50U2VuZGVyLmtleURvd24oKSBjaGFuZ2UKKyAgICAgICAgaXMgb25seSBmb3IgTWFjLiBTbyB0
aGlzIGNoYW5nZSBhZGRzIHRoaXMgbmV3IHRlc3QgdG8gU2tpcHBlZCB0ZXN0cyBmb3Igb3RoZXIK
KyAgICAgICAgcGxhdGZvcm1zIHRvIHByZXZlbnQgdGhpcyBjaGFuZ2UgZnJvbSBjcmFzaGluZyB0
aGUgYnVpbGQgdHJlZXMuKQorCisgICAgICAgICogZmFzdC9ldmVudHMva2V5ZG93bi1mdW5jdGlv
bi1rZXlzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMva2V5ZG93
bi1mdW5jdGlvbi1rZXlzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lw
cGVkOgorICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0v
d2luL1NraXBwZWQ6CisKIDIwMDktMDgtMjQgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBs
ZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCkluZGV4OiBMYXlvdXRU
ZXN0cy9mYXN0L2V2ZW50cy9rZXlkb3duLWZ1bmN0aW9uLWtleXMtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9rZXlk
b3duLWZ1bmN0aW9uLWtleXMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI3
IEBACitUaGlzIHRlc3QgdmVyaWZpZXMgdGhlIGtleWNvZGVzIHNlbnQgd2hlbiB3ZSBwcmVzcyBm
dW5jdGlvbiBrZXlzLgorCisKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExMixjdHJsS2V5PWZhbHNl
LHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtl
eUNvZGU9MTEyLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFL
ZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExMyxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5
PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTEz
LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UK
K1R5cGU9a2V5ZG93bixrZXlDb2RlPTExNCxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFs
dEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTE0LGN0cmxLZXk9
ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5
ZG93bixrZXlDb2RlPTExNSxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxz
ZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTE1LGN0cmxLZXk9ZmFsc2Usc2hp
ZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlD
b2RlPTExNixjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5
PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTE2LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFs
c2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExNyxj
dHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitU
eXBlPWtleXVwLGtleUNvZGU9MTE3LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5
PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExOCxjdHJsS2V5PWZh
bHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVw
LGtleUNvZGU9MTE4LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1l
dGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTExOSxjdHJsS2V5PWZhbHNlLHNoaWZ0
S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9
MTE5LGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFs
c2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTEyMCxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNl
LGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTIwLGN0cmxL
ZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9
a2V5ZG93bixrZXlDb2RlPTEyMSxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1m
YWxzZSxtZXRhS2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTIxLGN0cmxLZXk9ZmFsc2Us
c2hpZnRLZXk9ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixr
ZXlDb2RlPTEyMixjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRh
S2V5PWZhbHNlCitUeXBlPWtleXVwLGtleUNvZGU9MTIyLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9
ZmFsc2UsYWx0S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKK1R5cGU9a2V5ZG93bixrZXlDb2RlPTEy
MyxjdHJsS2V5PWZhbHNlLHNoaWZ0S2V5PWZhbHNlLGFsdEtleT1mYWxzZSxtZXRhS2V5PWZhbHNl
CitUeXBlPWtleXVwLGtleUNvZGU9MTIzLGN0cmxLZXk9ZmFsc2Usc2hpZnRLZXk9ZmFsc2UsYWx0
S2V5PWZhbHNlLG1ldGFLZXk9ZmFsc2UKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2tl
eWRvd24tZnVuY3Rpb24ta2V5cy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0
VGVzdHMvZmFzdC9ldmVudHMva2V5ZG93bi1mdW5jdGlvbi1rZXlzLmh0bWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsNDUgQEAKKzxodG1sPgorPGhlYWQ+Cis8dGl0bGU+RXZlbnQgVGVzdCAoU2Vu
ZGluZyBmdW5jdGlvbi1rZXkgZXZlbnRzKTwvdGl0bGU+Cis8c2NyaXB0IGxhbmd1YWdlPSJqYXZh
c2NyaXB0IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gbG9nKHN0cikgeworICAg
IHZhciBsaSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpIik7CisgICAgbGkuYXBwZW5kQ2hp
bGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoc3RyKSk7CisgICAgdmFyIGNvbnNvbGUgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiY29uc29sZSIpOworICAgIGNvbnNvbGUuYXBwZW5kQ2hpbGQo
bGkpOworfQorZnVuY3Rpb24gb25LZXlFdmVudChldikgeworICAgIGV2ID0gZXYgfHwgZXZlbnQ7
CisgICAgbG9nKCdUeXBlPScgKyBldi50eXBlICsgJywnICsKKyAgICAgICAgJ2tleUNvZGU9JyAr
IChldi53aGljaCB8fCBldi5rZXlDb2RlKSArICcsJyArCisgICAgICAgICdjdHJsS2V5PScgKyBl
di5jdHJsS2V5ICsgJywnICsKKyAgICAgICAgJ3NoaWZ0S2V5PScgKyBldi5zaGlmdEtleSArICcs
JyArCisgICAgICAgICdhbHRLZXk9JyArIGV2LmFsdEtleSArICcsJyArCisgICAgICAgICdtZXRh
S2V5PScgKyBldi5tZXRhS2V5KTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cD5U
aGlzIHRlc3QgdmVyaWZpZXMgdGhlIGtleWNvZGVzIHNlbnQgd2hlbiB3ZSBwcmVzcyBmdW5jdGlv
biBrZXlzLjwvcD4KKzx0ZXh0YXJlYSBpZD0idGVzdCIgcm93cz0iMSIgY29scz0iNDAiIG9ua2V5
ZG93bj0icmV0dXJuIG9uS2V5RXZlbnQoZXZlbnQpOyIgb25rZXl1cD0icmV0dXJuIG9uS2V5RXZl
bnQoZXZlbnQpOyI+PC90ZXh0YXJlYT4KKzx1bCBpZD0iY29uc29sZSI+PC91bD4KKzxzY3JpcHQg
bGFuZ3VhZ2U9ImphdmFzY3JpcHQiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitpZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5k
dW1wQXNUZXh0KCk7Cit2YXIgdGV4dGFyZWEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dCIpOwordGV4dGFyZWEuZm9jdXMoKTsKK2V2ZW50U2VuZGVyLmtleURvd24oIkYxIik7CitldmVu
dFNlbmRlci5rZXlEb3duKCJGMiIpOworZXZlbnRTZW5kZXIua2V5RG93bigiRjMiKTsKK2V2ZW50
U2VuZGVyLmtleURvd24oIkY0Iik7CitldmVudFNlbmRlci5rZXlEb3duKCJGNSIpOworZXZlbnRT
ZW5kZXIua2V5RG93bigiRjYiKTsKK2V2ZW50U2VuZGVyLmtleURvd24oIkY3Iik7CitldmVudFNl
bmRlci5rZXlEb3duKCJGOCIpOworZXZlbnRTZW5kZXIua2V5RG93bigiRjkiKTsKK2V2ZW50U2Vu
ZGVyLmtleURvd24oIkYxMCIpOworZXZlbnRTZW5kZXIua2V5RG93bigiRjExIik7CitldmVudFNl
bmRlci5rZXlEb3duKCJGMTIiKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDog
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQJKHJldmlzaW9uIDQ3NzM4KQorKysgTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTU4MzUsNiArNTgzNSw3IEBA
IHdlYmFyY2hpdmUvdGVzdC14bWwtc3R5bGVzaGVldC54bWwKIGVkaXRpbmcvc2VsZWN0aW9uL2V4
dGVuZC1zZWxlY3Rpb24tYWZ0ZXItZG91YmxlLWNsaWNrLmh0bWwKIGZhc3QvZXZlbnRzL2RyYWct
dG8tbmF2aWdhdGUuaHRtbAogZmFzdC9ldmVudHMvcHJldmVudC1kcmFnLXRvLW5hdmlnYXRlLmh0
bWwKK2Zhc3QvZXZlbnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy5odG1sCiBmYXN0L2Zvcm1zL3Nl
YXJjaC1kZWxldGUtd2hpbGUtY2FuY2VsLWJ1dHRvbi1jbGlja2VkLmh0bWwKIGZhc3QvZm9ybXMv
c2xpZGVyLWRlbGV0ZS13aGlsZS1kcmFnZ2luZy10aHVtYi5odG1sCiBodHRwL3Rlc3RzL2xvY2Fs
L2RyYWctb3Zlci1yZW1vdGUtY29udGVudC5odG1sCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9xdC9Ta2lwcGVkCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBw
ZWQJKHJldmlzaW9uIDQ3NzM4KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAko
d29ya2luZyBjb3B5KQpAQCAtNTAzMyw2ICs1MDMzLDkgQEAgZmFzdC9oYXJuZXNzL292ZXJyaWRl
LXp6ei1yZXNldC5odG1sCiBmYXN0L2hhcm5lc3MvdXNlLXBhZ2UtY2FjaGUuaHRtbAogbG9hZGVy
L2dvLWJhY2stdG8tZGlmZmVyZW50LXdpbmRvdy1zaXplLmh0bWwKIAorIyBBIHRlc3QgdGhhdCBm
YWlsZWQgYmVjYXVzZSBldmVudFNlbmRlciBjYW5ub3Qgc2VuZCBmdW5jdGlvbi1rZXkgZXZlbnRz
LgorZmFzdC9ldmVudHMva2V5ZG93bi1mdW5jdGlvbi1rZXlzLmh0bWwKKwogIyBUaGlzIHBvcnQg
ZG9lc24ndCBzdXBwb3J0IEdlb2xvY2F0aW9uLgogZmFzdC9kb20vR2VvbG9jYXRpb24KIApJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQJKHJldmlzaW9uIDQ3NzM4KQorKysgTGF5b3V0VGVz
dHMvcGxhdGZvcm0vd2luL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTYyMSw2ICs2MjEsOSBA
QCBmYXN0L2Zvcm1zL21lbnVsaXN0LXN0eWxlLWNvbG9yLmh0bWwKICMgPHJkYXI6Ly83MTI3OTAy
PiBodHRwL3Rlc3RzL21pc2MvZmF2aWNvbi1sb2Fkcy13aXRoLWltYWdlcy1kaXNhYmxlZC5odG1s
IGNyYXNoZXMgb24gV2luZG93cyBkZWJ1ZwogaHR0cC90ZXN0cy9taXNjL2Zhdmljb24tbG9hZHMt
d2l0aC1pbWFnZXMtZGlzYWJsZWQuaHRtbAogCisjIEEgdGVzdCB0aGF0IGZhaWxlZCBiZWNhdXNl
IGV2ZW50U2VuZGVyIGNhbm5vdCBzZW5kIGZ1bmN0aW9uLWtleSBldmVudHMuCitmYXN0L2V2ZW50
cy9rZXlkb3duLWZ1bmN0aW9uLWtleXMuaHRtbAorCiAjIFRoaXMgcG9ydCBkb2Vzbid0IHN1cHBv
cnQgR2VvbG9jYXRpb24uCiBmYXN0L2RvbS9HZW9sb2NhdGlvbgogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>