<?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>28247</bug_id>
          
          <creation_ts>2009-08-12 22:49:01 -0700</creation_ts>
          <short_desc>[Chromium] Numpad keys and a manu key don&apos;t work in render view</short_desc>
          <delta_ts>2010-01-27 11:01:53 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>0</everconfirmed>
          <reporter name="Hironori Bono">hbono</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ahilliard</cc>
    
    <cc>commit-queue</cc>
    
    <cc>estade</cc>
    
    <cc>evan</cc>
    
    <cc>mbk</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>139731</commentid>
    <comment_count>0</comment_count>
    <who name="Hironori Bono">hbono</who>
    <bug_when>2009-08-12 22:49:01 -0700</bug_when>
    <thetext>(Copied from &lt;http://crbug.com/19106&gt;.)

Chrome Version       : 3.0.197.11-r22553
OS + version : Debian Lenny
CPU architecture (32-bit / 64-bit): 32
window manager : KDE
URLs (if applicable) :
Behavior in Firefox 3.x (if applicable): Numpad arrow keys work
Behavior in Chrome for Windows (optional): Numpad arrow keys work

Goto to any page and just try to use the numpad keys to navigate (with the NumLock off). They don&apos;t work. They DO however work in the address bar. 

The numpad arrows work in all other applications, including GTK ones (e.g. Firefox).

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 many numpad keys (e.g. GDK_KP_Up, GDK_KP_Down, etc.) and cannot send numpad-key events to a web page. Neither does &quot;WebCore/platform/gtk/KeyEventGdk.cpp&quot; have them.

Also, they map GDK_Menu to VKEY_MENU, which is a virtual key-code for alt keys. To improve compatibility with Windows, it is better to map GDK_Menu to VKEY_APPS, which is a virtual key-code for a menu key.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>170476</commentid>
    <comment_count>1</comment_count>
    <who name="">mbk</who>
    <bug_when>2009-12-10 11:31:47 -0800</bug_when>
    <thetext>I can confirm the problem on Ubuntu Karmic Koala (32bit PAE) for chromium version 4.0.262.0 (33602).  Load any page and try to use the numpad arrows/pgdn/pgup/home/end and nothing happens.

I made changes to KeyCodeConversionGtk.cpp and it fixed the problem for my system.  I&apos;ve put the diff below.

Index: KeyCodeConversionGtk.cpp
===================================================================
--- KeyCodeConversionGtk.cpp	(revision 51589)
+++ KeyCodeConversionGtk.cpp	(working copy)
@@ -72,6 +72,24 @@
     case GDK_KP_Divide:
         return VKEY_DIVIDE; // (6F) Divide key
 
+    case GDK_KP_Page_Up:
+	 return VKEY_PRIOR; // (21) PAGE UP key
+    case GDK_KP_Page_Down:
+	 return VKEY_NEXT; // (22) PAGE DOWN key
+    case GDK_KP_End:
+        return VKEY_END; // (23) END key
+    case GDK_KP_Home:
+        return VKEY_HOME; // (24) HOME key
+    case GDK_KP_Left:
+        return VKEY_LEFT; // (25) LEFT ARROW key
+    case GDK_KP_Up:
+        return VKEY_UP; // (26) UP ARROW key
+    case GDK_KP_Right:
+        return VKEY_RIGHT; // (27) RIGHT ARROW key
+    case GDK_KP_Down:
+        return VKEY_DOWN; // (28) DOWN ARROW key
+ 	 
+
     case GDK_BackSpace:
         return VKEY_BACK; // (08) BACKSPACE key
     case GDK_ISO_Left_Tab:</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172240</commentid>
    <comment_count>2</comment_count>
      <attachid>44960</attachid>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2009-12-16 02:25:09 -0800</bug_when>
    <thetext>Created attachment 44960
Add numpad key mappings (based on mbk&apos;s code snippet)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172242</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-16 02:28:12 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 44960 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172408</commentid>
    <comment_count>4</comment_count>
      <attachid>44960</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2009-12-16 10:56:00 -0800</bug_when>
    <thetext>Comment on attachment 44960
Add numpad key mappings (based on mbk&apos;s code snippet)

&gt; +2009-12-15  Kinuko Yasuda  &lt;kinuko@chromium.com&gt;

^^^ this should be @chromium.org, right? :-)

otherwise, r=me  (r- for this one change)


was there no way to use the eventSender to write an automated layout test?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172604</commentid>
    <comment_count>5</comment_count>
    <who name="Hironori Bono">hbono</who>
    <bug_when>2009-12-16 17:49:40 -0800</bug_when>
    <thetext>(In reply to comment #4)

&gt; was there no way to use the eventSender to write an automated layout test?

Sorry for the lack of detailed explanation about this issue.
As you know, when we call eventSender.keyDown(&quot;0&quot;, modifiers), eventSender sends a key event for VKEY_0, not VKEY_NUMPAD_0.
To be able to send a numpad-key event through an eventSender.keyDown() call, I would like to add another parameter &quot;location&quot; to EventSendingController.mm (and also our event_sending_controller.cc). This new &quot;location&quot; parameter is the same as the &quot;locationArg&quot; parameter of initKeyboardEvent() and declares the key location code introduced in the &quot;DOM 3 Event&quot; specification (*1). The possible values for the parameters are listed below. This is WebKit Bug 32602 (*2).

  DOM_KEY_LOCATION_STANDARD      = 0x00;
  DOM_KEY_LOCATION_LEFT          = 0x01;
  DOM_KEY_LOCATION_RIGHT         = 0x02;
  DOM_KEY_LOCATION_NUMPAD        = 0x03;
  DOM_KEY_LOCATION_MOBILE        = 0x04;
  DOM_KEY_LOCATION_JOYSTICK      = 0x05;

Unfortunately, I have been busy these days and cannot afford to work for this Bug 32602 now. After a talk with estade about this issue, I decided to let Kinuko-san land this fix with a manual test before my change for WebKit Bug 32602, and land another change for WebKit Bug 32602 to replace the manual test with an automated layout test.

(*1) &lt;http://www.w3.org/TR/DOM-Level-3-Events/&gt;
(*2) &lt;https://bugs.webkit.org/show_bug.cgi?id=32602&gt;

Regards,

Hironori Bono</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172636</commentid>
    <comment_count>6</comment_count>
      <attachid>45036</attachid>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2009-12-16 21:32:31 -0800</bug_when>
    <thetext>Created attachment 45036
Add numpad key mappings (fixed the email address in ChangeLog!)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172637</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-16 21:34:31 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45036 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174462</commentid>
    <comment_count>8</comment_count>
      <attachid>45036</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-12-22 16:22:15 -0800</bug_when>
    <thetext>Comment on attachment 45036
Add numpad key mappings (fixed the email address in ChangeLog!)

I don&apos;t see why the rush.  We should have a automated test for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177078</commentid>
    <comment_count>9</comment_count>
      <attachid>45870</attachid>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-01-05 01:11:57 -0800</bug_when>
    <thetext>Created attachment 45870
Numpad key fix for gtk with automated test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177080</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-01-05 01:15:53 -0800</bug_when>
    <thetext>Attachment 45870 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
WebKitTools/DumpRenderTree/gtk/EventSender.cpp:464:  One line control clauses should not use braces.  [whitespace/braces] [4]
Total errors found: 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177081</commentid>
    <comment_count>11</comment_count>
      <attachid>45871</attachid>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-01-05 01:15:54 -0800</bug_when>
    <thetext>Created attachment 45871
Numpad key fix for gtk with automated test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177082</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-01-05 01:16:30 -0800</bug_when>
    <thetext>Attachment 45871 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
WebKitTools/DumpRenderTree/gtk/EventSender.cpp:464:  One line control clauses should not use braces.  [whitespace/braces] [4]
Total errors found: 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177085</commentid>
    <comment_count>13</comment_count>
      <attachid>45873</attachid>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-01-05 01:18:34 -0800</bug_when>
    <thetext>Created attachment 45873
Numpad key fix for gtk with automated test (style fixed)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177086</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-01-05 01:23:00 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45873 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184737</commentid>
    <comment_count>15</comment_count>
      <attachid>45873</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-26 14:27:13 -0800</bug_when>
    <thetext>Comment on attachment 45873
Numpad key fix for gtk with automated test (style fixed)

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>185150</commentid>
    <comment_count>16</comment_count>
      <attachid>45873</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-01-27 11:01:45 -0800</bug_when>
    <thetext>Comment on attachment 45873
Numpad key fix for gtk with automated test (style fixed)

Clearing flags on attachment: 45873

Committed r53942: &lt;http://trac.webkit.org/changeset/53942&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>185151</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-01-27 11:01:53 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>44960</attachid>
            <date>2009-12-16 02:25:09 -0800</date>
            <delta_ts>2009-12-16 21:32:31 -0800</delta_ts>
            <desc>Add numpad key mappings (based on mbk&apos;s code snippet)</desc>
            <filename>bug-28247-20091216192507.patch</filename>
            <type>text/plain</type>
            <size>5103</size>
            <attacher name="Kinuko Yasuda">kinuko</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NDc4OGNjNi4uNjNkM2NmZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAwOS0xMi0xNSAgS2ludWtvIFlhc3Vk
YSAgPGtpbnVrb0BjaHJvbWl1bS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkIGtleSBldmVudCBtYXBwaW5ncyBmb3IgbnVtcGFkIGtleXMg
Zm9yIEd0ayBhbmQgQ2hyb21pdW0vR3RrLgorICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yODI0NworCisgICAgICAgIFRlc3Q6IG1hbnVhbC10ZXN0cy9rZXli
b2FyZC1udW1wYWQtZXZlbnQuaHRtbAorICAgICAgICBOZXcgbGF5b3V0IHRlc3RzIGFyZSBwbGFu
bmVkIHRvIGJlIGFkZGVkLgorICAgICAgICAoaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MzI2MDIpCisKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29u
dmVyc2lvbkd0ay5jcHA6CisgICAgICAgIChXZWJDb3JlOjp3aW5kb3dzS2V5Q29kZUZvcktleUV2
ZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvS2V5RXZlbnRHdGsuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6d2luZG93c0tleUNvZGVGb3JLZXlFdmVudCk6CisKIDIwMDktMTItMTUgIE5hdGUg
Q2hhcGluICA8amFwaGV0QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJp
biBBZGxlci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvbWFudWFsLXRlc3RzL2tleWJvYXJkLW51bXBh
ZC1ldmVudC5odG1sIGIvV2ViQ29yZS9tYW51YWwtdGVzdHMva2V5Ym9hcmQtbnVtcGFkLWV2ZW50
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWRkZjViYgotLS0gL2Rl
di9udWxsCisrKyBiL1dlYkNvcmUvbWFudWFsLXRlc3RzL2tleWJvYXJkLW51bXBhZC1ldmVudC5o
dG1sCkBAIC0wLDAgKzEsNTcgQEAKKzxodG1sIGxhbmc9ImVuIj4KKyAgPGhlYWQ+CisgICAgPE1F
VEEgSFRUUC1FUVVJVj0iQ09OVEVOVC1UWVBFIiBDT05URU5UPSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9
VVRGLTgiPgorICAgIDx0aXRsZT5NZW51IGtleSB0ZXN0aW5nPC90aXRsZT4KKyAgICA8c2NyaXB0
IGxhbmd1YWdlPSJqYXZhc2NyaXB0IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgZnVu
Y3Rpb24gbG9nKHN0cikgeworICAgICAgICAgIHZhciBsaSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImxpIik7CisgICAgICAgICAgbGkuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5v
ZGUoc3RyKSk7CisgICAgICAgICAgdmFyIHJlc3VsdHMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicmVzdWx0cyIpOworICAgICAgICAgIHJlc3VsdHMuYXBwZW5kQ2hpbGQobGkpOworICAgICAg
fQorICAgICAgZnVuY3Rpb24ga2V5Y2hlY2soKSB7CisgICAgICAgICAgdmFyIGtleWNvZGUgPSBl
dmVudC5rZXlDb2RlOworICAgICAgICAgIHN3aXRjaCAoa2V5Y29kZSkgeworICAgICAgICAgICAg
ICBjYXNlIDMzOgorICAgICAgICAgICAgICAgICAgbG9nKCdQQVNTOiBQYWdlIFVwJyk7CisgICAg
ICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgY2FzZSAzNDoKKyAgICAgICAgICAg
ICAgICAgIGxvZygnUEFTUzogUGFnZSBEb3duJyk7CisgICAgICAgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgICAgICAgY2FzZSAzNToKKyAgICAgICAgICAgICAgICAgIGxvZygnUEFTUzogRW5k
Jyk7CisgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgY2FzZSAzNjoKKyAg
ICAgICAgICAgICAgICAgIGxvZygnUEFTUzogSG9tZScpOworICAgICAgICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgICAgICAgIGNhc2UgMzc6CisgICAgICAgICAgICAgICAgICBsb2coJ1BBU1M6
IEFycm93IExlZnQnKTsKKyAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICBj
YXNlIDM4OgorICAgICAgICAgICAgICAgICAgbG9nKCdQQVNTOiBBcnJvdyBVcCcpOworICAgICAg
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgIGNhc2UgMzk6CisgICAgICAgICAgICAg
ICAgICBsb2coJ1BBU1M6IEFycm93IFJpZ2h0Jyk7CisgICAgICAgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgICAgICAgY2FzZSA0MDoKKyAgICAgICAgICAgICAgICAgIGxvZygnUEFTUzogQXJy
b3cgRG93bicpOworICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICAgICAgICBsb2coJ0VSUk9SOiB1bmtub3duIGtleSBldmVudDogJyAr
IGtleWNvZGUpOworICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgfQorICAgICAg
fQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ua2V5ZG93bj0ia2V5Y2hlY2so
KSI+CisgICAgPHA+CisgICAgU2VlIGJ1ZzogPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTI4MjQ3Ij4yODI0NzwvYT4uCisgICAgPGJyIC8+CisgICAgRm9j
dXMgb24gdGhlIHBhZ2UgYm9keSBhbmQgcHVzaCBmb2xsb3dpbmcgbnVtcGFkIGFycm93IGtleXMK
KyAgICB3aXRob3V0IGxvY2tpbmcgTnVtTG9jazogUGdVcCwgUGdEbiwgSG9tZSwgRW5kIGFuZCBm
b3VyIGFycm93IGtleXMKKyAgICA8YnIgLz4KKyAgICBUaGUgdGVzdCBwYXNzZXMgaWYgeW91IHNl
ZSAnUEFTUycgYW5kIGtleSBjb2RlIGRlc2NyaXB0aW9uIChlLmcuICJQYWdlIFVwIikKKyAgICBh
Y2NvcmRpbmdseS4KKyAgICA8dWwgaWQ9InJlc3VsdHMiPjwvdWw+CisgIDwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29kZUNvbnZlcnNp
b25HdGsuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkd0
ay5jcHAKaW5kZXggZTNkNWY2MS4uYTcwOWYzZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9y
bS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkd0ay5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9y
bS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkd0ay5jcHAKQEAgLTcyLDYgKzcyLDIzIEBAIGlu
dCB3aW5kb3dzS2V5Q29kZUZvcktleUV2ZW50KHVuc2lnbmVkIGtleWNvZGUpCiAgICAgY2FzZSBH
REtfS1BfRGl2aWRlOgogICAgICAgICByZXR1cm4gVktFWV9ESVZJREU7IC8vICg2RikgRGl2aWRl
IGtleQogCisgICAgY2FzZSBHREtfS1BfUGFnZV9VcDoKKyAgICAgICAgcmV0dXJuIFZLRVlfUFJJ
T1I7IC8vICgyMSkgUEFHRSBVUCBrZXkKKyAgICBjYXNlIEdES19LUF9QYWdlX0Rvd246CisgICAg
ICAgIHJldHVybiBWS0VZX05FWFQ7IC8vICgyMikgUEFHRSBET1dOIGtleQorICAgIGNhc2UgR0RL
X0tQX0VuZDoKKyAgICAgICAgcmV0dXJuIFZLRVlfRU5EOyAvLyAoMjMpIEVORCBrZXkKKyAgICBj
YXNlIEdES19LUF9Ib21lOgorICAgICAgICByZXR1cm4gVktFWV9IT01FOyAvLyAoMjQpIEhPTUUg
a2V5CisgICAgY2FzZSBHREtfS1BfTGVmdDoKKyAgICAgICAgcmV0dXJuIFZLRVlfTEVGVDsgLy8g
KDI1KSBMRUZUIEFSUk9XIGtleQorICAgIGNhc2UgR0RLX0tQX1VwOgorICAgICAgICByZXR1cm4g
VktFWV9VUDsgLy8gKDI2KSBVUCBBUlJPVyBrZXkKKyAgICBjYXNlIEdES19LUF9SaWdodDoKKyAg
ICAgICAgcmV0dXJuIFZLRVlfUklHSFQ7IC8vICgyNykgUklHSFQgQVJST1cga2V5CisgICAgY2Fz
ZSBHREtfS1BfRG93bjoKKyAgICAgICAgcmV0dXJuIFZLRVlfRE9XTjsgLy8gKDI4KSBET1dOIEFS
Uk9XIGtleQorCiAgICAgY2FzZSBHREtfQmFja1NwYWNlOgogICAgICAgICByZXR1cm4gVktFWV9C
QUNLOyAvLyAoMDgpIEJBQ0tTUEFDRSBrZXkKICAgICBjYXNlIEdES19JU09fTGVmdF9UYWI6CmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9LZXlFdmVudEd0ay5jcHAgYi9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9LZXlFdmVudEd0ay5jcHAKaW5kZXggMTFlYTk1Ni4uMGEzZGE3NyAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvS2V5RXZlbnRHdGsuY3BwCisrKyBiL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL0tleUV2ZW50R3RrLmNwcApAQCAtMTgxLDYgKzE4MSwyMyBAQCBzdGF0
aWMgaW50IHdpbmRvd3NLZXlDb2RlRm9yS2V5RXZlbnQodW5zaWduZWQgaW50IGtleWNvZGUpCiAg
ICAgICAgIGNhc2UgR0RLX0tQX0RpdmlkZToKICAgICAgICAgICAgIHJldHVybiBWS19ESVZJREU7
IC8vICg2RikgRGl2aWRlIGtleQogCisgICAgICAgIGNhc2UgR0RLX0tQX1BhZ2VfVXA6CisgICAg
ICAgICAgICByZXR1cm4gVktFWV9QUklPUjsgLy8gKDIxKSBQQUdFIFVQIGtleQorICAgICAgICBj
YXNlIEdES19LUF9QYWdlX0Rvd246CisgICAgICAgICAgICByZXR1cm4gVktFWV9ORVhUOyAvLyAo
MjIpIFBBR0UgRE9XTiBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfRW5kOgorICAgICAgICAgICAg
cmV0dXJuIFZLRVlfRU5EOyAvLyAoMjMpIEVORCBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfSG9t
ZToKKyAgICAgICAgICAgIHJldHVybiBWS0VZX0hPTUU7IC8vICgyNCkgSE9NRSBrZXkKKyAgICAg
ICAgY2FzZSBHREtfS1BfTGVmdDoKKyAgICAgICAgICAgIHJldHVybiBWS0VZX0xFRlQ7IC8vICgy
NSkgTEVGVCBBUlJPVyBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfVXA6CisgICAgICAgICAgICBy
ZXR1cm4gVktFWV9VUDsgLy8gKDI2KSBVUCBBUlJPVyBrZXkKKyAgICAgICAgY2FzZSBHREtfS1Bf
UmlnaHQ6CisgICAgICAgICAgICByZXR1cm4gVktFWV9SSUdIVDsgLy8gKDI3KSBSSUdIVCBBUlJP
VyBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfRG93bjoKKyAgICAgICAgICAgIHJldHVybiBWS0VZ
X0RPV047IC8vICgyOCkgRE9XTiBBUlJPVyBrZXkKKwogICAgICAgICBjYXNlIEdES19CYWNrU3Bh
Y2U6CiAgICAgICAgICAgICByZXR1cm4gVktfQkFDSzsgLy8gKDA4KSBCQUNLU1BBQ0Uga2V5CiAg
ICAgICAgIGNhc2UgR0RLX0lTT19MZWZ0X1RhYjoK
</data>
<flag name="review"
          id="26898"
          type_id="1"
          status="-"
          setter="fishd"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45036</attachid>
            <date>2009-12-16 21:32:31 -0800</date>
            <delta_ts>2010-01-05 01:11:51 -0800</delta_ts>
            <desc>Add numpad key mappings (fixed the email address in ChangeLog!)</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>5103</size>
            <attacher name="Kinuko Yasuda">kinuko</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NDc4OGNjNi4uNmZiZWI3ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAwOS0xMi0xNSAgS2ludWtvIFlhc3Vk
YSAgPGtpbnVrb0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkIGtleSBldmVudCBtYXBwaW5ncyBmb3IgbnVtcGFkIGtleXMg
Zm9yIEd0ayBhbmQgQ2hyb21pdW0vR3RrLgorICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yODI0NworCisgICAgICAgIFRlc3Q6IG1hbnVhbC10ZXN0cy9rZXli
b2FyZC1udW1wYWQtZXZlbnQuaHRtbAorICAgICAgICBOZXcgbGF5b3V0IHRlc3RzIGFyZSBwbGFu
bmVkIHRvIGJlIGFkZGVkLgorICAgICAgICAoaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MzI2MDIpCisKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29u
dmVyc2lvbkd0ay5jcHA6CisgICAgICAgIChXZWJDb3JlOjp3aW5kb3dzS2V5Q29kZUZvcktleUV2
ZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvS2V5RXZlbnRHdGsuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6d2luZG93c0tleUNvZGVGb3JLZXlFdmVudCk6CisKIDIwMDktMTItMTUgIE5hdGUg
Q2hhcGluICA8amFwaGV0QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJp
biBBZGxlci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvbWFudWFsLXRlc3RzL2tleWJvYXJkLW51bXBh
ZC1ldmVudC5odG1sIGIvV2ViQ29yZS9tYW51YWwtdGVzdHMva2V5Ym9hcmQtbnVtcGFkLWV2ZW50
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWRkZjViYgotLS0gL2Rl
di9udWxsCisrKyBiL1dlYkNvcmUvbWFudWFsLXRlc3RzL2tleWJvYXJkLW51bXBhZC1ldmVudC5o
dG1sCkBAIC0wLDAgKzEsNTcgQEAKKzxodG1sIGxhbmc9ImVuIj4KKyAgPGhlYWQ+CisgICAgPE1F
VEEgSFRUUC1FUVVJVj0iQ09OVEVOVC1UWVBFIiBDT05URU5UPSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9
VVRGLTgiPgorICAgIDx0aXRsZT5NZW51IGtleSB0ZXN0aW5nPC90aXRsZT4KKyAgICA8c2NyaXB0
IGxhbmd1YWdlPSJqYXZhc2NyaXB0IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgZnVu
Y3Rpb24gbG9nKHN0cikgeworICAgICAgICAgIHZhciBsaSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImxpIik7CisgICAgICAgICAgbGkuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5v
ZGUoc3RyKSk7CisgICAgICAgICAgdmFyIHJlc3VsdHMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicmVzdWx0cyIpOworICAgICAgICAgIHJlc3VsdHMuYXBwZW5kQ2hpbGQobGkpOworICAgICAg
fQorICAgICAgZnVuY3Rpb24ga2V5Y2hlY2soKSB7CisgICAgICAgICAgdmFyIGtleWNvZGUgPSBl
dmVudC5rZXlDb2RlOworICAgICAgICAgIHN3aXRjaCAoa2V5Y29kZSkgeworICAgICAgICAgICAg
ICBjYXNlIDMzOgorICAgICAgICAgICAgICAgICAgbG9nKCdQQVNTOiBQYWdlIFVwJyk7CisgICAg
ICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgY2FzZSAzNDoKKyAgICAgICAgICAg
ICAgICAgIGxvZygnUEFTUzogUGFnZSBEb3duJyk7CisgICAgICAgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgICAgICAgY2FzZSAzNToKKyAgICAgICAgICAgICAgICAgIGxvZygnUEFTUzogRW5k
Jyk7CisgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgY2FzZSAzNjoKKyAg
ICAgICAgICAgICAgICAgIGxvZygnUEFTUzogSG9tZScpOworICAgICAgICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgICAgICAgIGNhc2UgMzc6CisgICAgICAgICAgICAgICAgICBsb2coJ1BBU1M6
IEFycm93IExlZnQnKTsKKyAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICBj
YXNlIDM4OgorICAgICAgICAgICAgICAgICAgbG9nKCdQQVNTOiBBcnJvdyBVcCcpOworICAgICAg
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgIGNhc2UgMzk6CisgICAgICAgICAgICAg
ICAgICBsb2coJ1BBU1M6IEFycm93IFJpZ2h0Jyk7CisgICAgICAgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgICAgICAgY2FzZSA0MDoKKyAgICAgICAgICAgICAgICAgIGxvZygnUEFTUzogQXJy
b3cgRG93bicpOworICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICAgICAgICBsb2coJ0VSUk9SOiB1bmtub3duIGtleSBldmVudDogJyAr
IGtleWNvZGUpOworICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgfQorICAgICAg
fQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ua2V5ZG93bj0ia2V5Y2hlY2so
KSI+CisgICAgPHA+CisgICAgU2VlIGJ1ZzogPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTI4MjQ3Ij4yODI0NzwvYT4uCisgICAgPGJyIC8+CisgICAgRm9j
dXMgb24gdGhlIHBhZ2UgYm9keSBhbmQgcHVzaCBmb2xsb3dpbmcgbnVtcGFkIGFycm93IGtleXMK
KyAgICB3aXRob3V0IGxvY2tpbmcgTnVtTG9jazogUGdVcCwgUGdEbiwgSG9tZSwgRW5kIGFuZCBm
b3VyIGFycm93IGtleXMKKyAgICA8YnIgLz4KKyAgICBUaGUgdGVzdCBwYXNzZXMgaWYgeW91IHNl
ZSAnUEFTUycgYW5kIGtleSBjb2RlIGRlc2NyaXB0aW9uIChlLmcuICJQYWdlIFVwIikKKyAgICBh
Y2NvcmRpbmdseS4KKyAgICA8dWwgaWQ9InJlc3VsdHMiPjwvdWw+CisgIDwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29kZUNvbnZlcnNp
b25HdGsuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkd0
ay5jcHAKaW5kZXggZTNkNWY2MS4uYTcwOWYzZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9y
bS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkd0ay5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9y
bS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkd0ay5jcHAKQEAgLTcyLDYgKzcyLDIzIEBAIGlu
dCB3aW5kb3dzS2V5Q29kZUZvcktleUV2ZW50KHVuc2lnbmVkIGtleWNvZGUpCiAgICAgY2FzZSBH
REtfS1BfRGl2aWRlOgogICAgICAgICByZXR1cm4gVktFWV9ESVZJREU7IC8vICg2RikgRGl2aWRl
IGtleQogCisgICAgY2FzZSBHREtfS1BfUGFnZV9VcDoKKyAgICAgICAgcmV0dXJuIFZLRVlfUFJJ
T1I7IC8vICgyMSkgUEFHRSBVUCBrZXkKKyAgICBjYXNlIEdES19LUF9QYWdlX0Rvd246CisgICAg
ICAgIHJldHVybiBWS0VZX05FWFQ7IC8vICgyMikgUEFHRSBET1dOIGtleQorICAgIGNhc2UgR0RL
X0tQX0VuZDoKKyAgICAgICAgcmV0dXJuIFZLRVlfRU5EOyAvLyAoMjMpIEVORCBrZXkKKyAgICBj
YXNlIEdES19LUF9Ib21lOgorICAgICAgICByZXR1cm4gVktFWV9IT01FOyAvLyAoMjQpIEhPTUUg
a2V5CisgICAgY2FzZSBHREtfS1BfTGVmdDoKKyAgICAgICAgcmV0dXJuIFZLRVlfTEVGVDsgLy8g
KDI1KSBMRUZUIEFSUk9XIGtleQorICAgIGNhc2UgR0RLX0tQX1VwOgorICAgICAgICByZXR1cm4g
VktFWV9VUDsgLy8gKDI2KSBVUCBBUlJPVyBrZXkKKyAgICBjYXNlIEdES19LUF9SaWdodDoKKyAg
ICAgICAgcmV0dXJuIFZLRVlfUklHSFQ7IC8vICgyNykgUklHSFQgQVJST1cga2V5CisgICAgY2Fz
ZSBHREtfS1BfRG93bjoKKyAgICAgICAgcmV0dXJuIFZLRVlfRE9XTjsgLy8gKDI4KSBET1dOIEFS
Uk9XIGtleQorCiAgICAgY2FzZSBHREtfQmFja1NwYWNlOgogICAgICAgICByZXR1cm4gVktFWV9C
QUNLOyAvLyAoMDgpIEJBQ0tTUEFDRSBrZXkKICAgICBjYXNlIEdES19JU09fTGVmdF9UYWI6CmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9LZXlFdmVudEd0ay5jcHAgYi9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9LZXlFdmVudEd0ay5jcHAKaW5kZXggMTFlYTk1Ni4uMGEzZGE3NyAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvS2V5RXZlbnRHdGsuY3BwCisrKyBiL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL0tleUV2ZW50R3RrLmNwcApAQCAtMTgxLDYgKzE4MSwyMyBAQCBzdGF0
aWMgaW50IHdpbmRvd3NLZXlDb2RlRm9yS2V5RXZlbnQodW5zaWduZWQgaW50IGtleWNvZGUpCiAg
ICAgICAgIGNhc2UgR0RLX0tQX0RpdmlkZToKICAgICAgICAgICAgIHJldHVybiBWS19ESVZJREU7
IC8vICg2RikgRGl2aWRlIGtleQogCisgICAgICAgIGNhc2UgR0RLX0tQX1BhZ2VfVXA6CisgICAg
ICAgICAgICByZXR1cm4gVktFWV9QUklPUjsgLy8gKDIxKSBQQUdFIFVQIGtleQorICAgICAgICBj
YXNlIEdES19LUF9QYWdlX0Rvd246CisgICAgICAgICAgICByZXR1cm4gVktFWV9ORVhUOyAvLyAo
MjIpIFBBR0UgRE9XTiBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfRW5kOgorICAgICAgICAgICAg
cmV0dXJuIFZLRVlfRU5EOyAvLyAoMjMpIEVORCBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfSG9t
ZToKKyAgICAgICAgICAgIHJldHVybiBWS0VZX0hPTUU7IC8vICgyNCkgSE9NRSBrZXkKKyAgICAg
ICAgY2FzZSBHREtfS1BfTGVmdDoKKyAgICAgICAgICAgIHJldHVybiBWS0VZX0xFRlQ7IC8vICgy
NSkgTEVGVCBBUlJPVyBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfVXA6CisgICAgICAgICAgICBy
ZXR1cm4gVktFWV9VUDsgLy8gKDI2KSBVUCBBUlJPVyBrZXkKKyAgICAgICAgY2FzZSBHREtfS1Bf
UmlnaHQ6CisgICAgICAgICAgICByZXR1cm4gVktFWV9SSUdIVDsgLy8gKDI3KSBSSUdIVCBBUlJP
VyBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfRG93bjoKKyAgICAgICAgICAgIHJldHVybiBWS0VZ
X0RPV047IC8vICgyOCkgRE9XTiBBUlJPVyBrZXkKKwogICAgICAgICBjYXNlIEdES19CYWNrU3Bh
Y2U6CiAgICAgICAgICAgICByZXR1cm4gVktfQkFDSzsgLy8gKDA4KSBCQUNLU1BBQ0Uga2V5CiAg
ICAgICAgIGNhc2UgR0RLX0lTT19MZWZ0X1RhYjoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45870</attachid>
            <date>2010-01-05 01:11:57 -0800</date>
            <delta_ts>2010-01-05 01:15:42 -0800</delta_ts>
            <desc>Numpad key fix for gtk with automated test</desc>
            <filename>bug-28247-20100105181155.patch</filename>
            <type>text/plain</type>
            <size>12120</size>
            <attacher name="Kinuko Yasuda">kinuko</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlZDkxZjkzLi5jZDYwZWY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTEgQEAKKzIwMTAtMDEt
MDUgIEtpbnVrbyBZYXN1ZGEgIDxraW51a29AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBmYXN0L2V2ZW50cy9rZXlk
b3duLW51bXBhZC1rZXlzLmh0bWwgZnJvbSBndGsncyBTa2lwcGVkIGxpc3QuCisKKyAgICAgICAg
KiBwbGF0Zm9ybS9ndGsvU2tpcHBlZDoKKwogMjAxMC0wMS0wNCAgU2ltb24gRnJhc2VyICA8c2lt
b24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYW4gQmVybnN0ZWlu
LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAppbmRleCA4NmUyMjMxLi4xYjgxN2IxIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9ndGsvU2tpcHBlZApAQCAtMjI1OSw3ICsyMjU5LDYgQEAgZmFzdC9ldmVudHMvZXZl
bnQtbGlzdGVuZXItb24tbGluay5odG1sCiBmYXN0L2V2ZW50cy9ldmVudC1zZW5kZXItbW91c2Ut
bW92ZWQuaHRtbAogZmFzdC9ldmVudHMvZm9jdXNpbmdVbmxvYWRlZEZyYW1lLmh0bWwKIGZhc3Qv
ZXZlbnRzL2tleWRvd24tMS5odG1sCi1mYXN0L2V2ZW50cy9rZXlkb3duLW51bXBhZC1rZXlzLmh0
bWwKIGZhc3QvZXZlbnRzL2xhYmVsLWZvY3VzLmh0bWwKIGZhc3QvZXZlbnRzL21vdXNlb3V0LWRl
YWQtbm9kZS5odG1sCiBmYXN0L2V2ZW50cy9vbmxvYWQtcmUtZW50cnkuaHRtbApkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2NDBiZWNhLi5k
ZjFlNzg2IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEwLTAxLTA1ICBLaW51a28gWWFzdWRhICA8a2ludWtv
QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBBZGQga2V5IGV2ZW50IG1hcHBpbmdzIGZvciBudW1wYWQga2V5cyBmb3IgR3RrIGFu
ZCBDaHJvbWl1bS9HdGsuCisgICAgICAgIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTI4MjQ3CisKKyAgICAgICAgVGVzdDogZmFzdC9ldmVudHMva2V5ZG93bi1udW1wYWQt
a2V5cy5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lv
bkd0ay5jcHA6CisgICAgICAgIChXZWJDb3JlOjp3aW5kb3dzS2V5Q29kZUZvcktleUV2ZW50KToK
KyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvS2V5RXZlbnRHdGsuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6d2luZG93c0tleUNvZGVGb3JLZXlFdmVudCk6CisKIDIwMTAtMDEtMDQgIEtldmluIE9sbGl2
aWVyICA8a2V2aW5vQHRoZW9sbGl2aWVycy5jb20+CiAKICAgICAgICAgW3d4XSBCdWlsZCBmaXgs
IGFkZCBhIGNvdXBsZSBpbmNsdWRlIGRpcnMgdG8gdGhlIGJ1aWxkLgpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkd0ay5jcHAgYi9XZWJDb3Jl
L3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVDb252ZXJzaW9uR3RrLmNwcAppbmRleCBlM2Q1ZjYx
Li5hNzA5ZjNlIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVD
b252ZXJzaW9uR3RrLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVD
b252ZXJzaW9uR3RrLmNwcApAQCAtNzIsNiArNzIsMjMgQEAgaW50IHdpbmRvd3NLZXlDb2RlRm9y
S2V5RXZlbnQodW5zaWduZWQga2V5Y29kZSkKICAgICBjYXNlIEdES19LUF9EaXZpZGU6CiAgICAg
ICAgIHJldHVybiBWS0VZX0RJVklERTsgLy8gKDZGKSBEaXZpZGUga2V5CiAKKyAgICBjYXNlIEdE
S19LUF9QYWdlX1VwOgorICAgICAgICByZXR1cm4gVktFWV9QUklPUjsgLy8gKDIxKSBQQUdFIFVQ
IGtleQorICAgIGNhc2UgR0RLX0tQX1BhZ2VfRG93bjoKKyAgICAgICAgcmV0dXJuIFZLRVlfTkVY
VDsgLy8gKDIyKSBQQUdFIERPV04ga2V5CisgICAgY2FzZSBHREtfS1BfRW5kOgorICAgICAgICBy
ZXR1cm4gVktFWV9FTkQ7IC8vICgyMykgRU5EIGtleQorICAgIGNhc2UgR0RLX0tQX0hvbWU6Cisg
ICAgICAgIHJldHVybiBWS0VZX0hPTUU7IC8vICgyNCkgSE9NRSBrZXkKKyAgICBjYXNlIEdES19L
UF9MZWZ0OgorICAgICAgICByZXR1cm4gVktFWV9MRUZUOyAvLyAoMjUpIExFRlQgQVJST1cga2V5
CisgICAgY2FzZSBHREtfS1BfVXA6CisgICAgICAgIHJldHVybiBWS0VZX1VQOyAvLyAoMjYpIFVQ
IEFSUk9XIGtleQorICAgIGNhc2UgR0RLX0tQX1JpZ2h0OgorICAgICAgICByZXR1cm4gVktFWV9S
SUdIVDsgLy8gKDI3KSBSSUdIVCBBUlJPVyBrZXkKKyAgICBjYXNlIEdES19LUF9Eb3duOgorICAg
ICAgICByZXR1cm4gVktFWV9ET1dOOyAvLyAoMjgpIERPV04gQVJST1cga2V5CisKICAgICBjYXNl
IEdES19CYWNrU3BhY2U6CiAgICAgICAgIHJldHVybiBWS0VZX0JBQ0s7IC8vICgwOCkgQkFDS1NQ
QUNFIGtleQogICAgIGNhc2UgR0RLX0lTT19MZWZ0X1RhYjoKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL0tleUV2ZW50R3RrLmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0tleUV2
ZW50R3RrLmNwcAppbmRleCAxMWVhOTU2Li5lMDBlYTQzIDEwMDY0NAotLS0gYS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9LZXlFdmVudEd0ay5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvS2V5
RXZlbnRHdGsuY3BwCkBAIC0xODEsNiArMTgxLDIzIEBAIHN0YXRpYyBpbnQgd2luZG93c0tleUNv
ZGVGb3JLZXlFdmVudCh1bnNpZ25lZCBpbnQga2V5Y29kZSkKICAgICAgICAgY2FzZSBHREtfS1Bf
RGl2aWRlOgogICAgICAgICAgICAgcmV0dXJuIFZLX0RJVklERTsgLy8gKDZGKSBEaXZpZGUga2V5
CiAKKyAgICAgICAgY2FzZSBHREtfS1BfUGFnZV9VcDoKKyAgICAgICAgICAgIHJldHVybiBWS19Q
UklPUjsgLy8gKDIxKSBQQUdFIFVQIGtleQorICAgICAgICBjYXNlIEdES19LUF9QYWdlX0Rvd246
CisgICAgICAgICAgICByZXR1cm4gVktfTkVYVDsgLy8gKDIyKSBQQUdFIERPV04ga2V5CisgICAg
ICAgIGNhc2UgR0RLX0tQX0VuZDoKKyAgICAgICAgICAgIHJldHVybiBWS19FTkQ7IC8vICgyMykg
RU5EIGtleQorICAgICAgICBjYXNlIEdES19LUF9Ib21lOgorICAgICAgICAgICAgcmV0dXJuIFZL
X0hPTUU7IC8vICgyNCkgSE9NRSBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfTGVmdDoKKyAgICAg
ICAgICAgIHJldHVybiBWS19MRUZUOyAvLyAoMjUpIExFRlQgQVJST1cga2V5CisgICAgICAgIGNh
c2UgR0RLX0tQX1VwOgorICAgICAgICAgICAgcmV0dXJuIFZLX1VQOyAvLyAoMjYpIFVQIEFSUk9X
IGtleQorICAgICAgICBjYXNlIEdES19LUF9SaWdodDoKKyAgICAgICAgICAgIHJldHVybiBWS19S
SUdIVDsgLy8gKDI3KSBSSUdIVCBBUlJPVyBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfRG93bjoK
KyAgICAgICAgICAgIHJldHVybiBWS19ET1dOOyAvLyAoMjgpIERPV04gQVJST1cga2V5CisKICAg
ICAgICAgY2FzZSBHREtfQmFja1NwYWNlOgogICAgICAgICAgICAgcmV0dXJuIFZLX0JBQ0s7IC8v
ICgwOCkgQkFDS1NQQUNFIGtleQogICAgICAgICBjYXNlIEdES19JU09fTGVmdF9UYWI6CmRpZmYg
LS1naXQgYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKaW5k
ZXggMDRkZmUwMS4uZWQyOTY5MyAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCisr
KyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEwLTAxLTA1ICBL
aW51a28gWWFzdWRhICA8a2ludWtvQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb3JyZWN0bHkgaGFuZGxlIHRoZSBLZXlMb2Nh
dGlvbiBhcmd1bWVudCB0aGF0IGhhcyBiZWVuIGludHJvZHVjZWQKKyAgICAgICAgcmVjZW50bHkg
dG8gdGVzdCBsb2NhdGlvbi1kZXBlbmRlbnQga2V5IGV2ZW50cyBpbiBFdmVudFNlbmRlci5rZXlE
b3duLgorICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODI0
NworCisgICAgICAgIFRlc3Q6IGZhc3QvZXZlbnRzL2tleWRvd24tbnVtcGFkLWtleXMuaHRtbAor
CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZ3RrL0V2ZW50U2VuZGVyLmNwcDoKKyAgICAgICAg
KGtleURvd25DYWxsYmFjayk6CisKIDIwMTAtMDEtMDQgIEFkYW0gQmFydGggIDxhYmFydGhAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KZGlmZiAtLWdpdCBh
L1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9FdmVudFNlbmRlci5jcHAgYi9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9ndGsvRXZlbnRTZW5kZXIuY3BwCmluZGV4IDNiNzMxMWIuLmQ2
MjkzODAgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9FdmVudFNl
bmRlci5jcHAKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL0V2ZW50U2VuZGVy
LmNwcApAQCAtNzYsNiArNzYsMTQgQEAgc3RhdGljIHVuc2lnbmVkIHN0YXJ0T2ZRdWV1ZTsKIAog
c3RhdGljIGNvbnN0IGZsb2F0IHpvb21NdWx0aXBsaWVyUmF0aW8gPSAxLjJmOwogCisvLyBLZXkg
ZXZlbnQgbG9jYXRpb24gY29kZSBkZWZpbmVkIGluIERPTSBMZXZlbCAzLgorZW51bSBLZXlMb2Nh
dGlvbkNvZGUgeworICAgIERPTV9LRVlfTE9DQVRJT05fU1RBTkRBUkQgICAgICA9IDB4MDAsCisg
ICAgRE9NX0tFWV9MT0NBVElPTl9MRUZUICAgICAgICAgID0gMHgwMSwKKyAgICBET01fS0VZX0xP
Q0FUSU9OX1JJR0hUICAgICAgICAgPSAweDAyLAorICAgIERPTV9LRVlfTE9DQVRJT05fTlVNUEFE
ICAgICAgICA9IDB4MDMKK307CisKIHN0YXRpYyBKU1ZhbHVlUmVmIGdldERyYWdNb2RlQ2FsbGJh
Y2soSlNDb250ZXh0UmVmIGNvbnRleHQsIEpTT2JqZWN0UmVmIG9iamVjdCwgSlNTdHJpbmdSZWYg
cHJvcGVydHlOYW1lLCBKU1ZhbHVlUmVmKiBleGNlcHRpb24pCiB7CiAgICAgcmV0dXJuIEpTVmFs
dWVNYWtlQm9vbGVhbihjb250ZXh0LCBkcmFnTW9kZSk7CkBAIC00NDksNjYgKzQ1Nyw5NCBAQCBz
dGF0aWMgSlNWYWx1ZVJlZiBrZXlEb3duQ2FsbGJhY2soSlNDb250ZXh0UmVmIGNvbnRleHQsIEpT
T2JqZWN0UmVmIGZ1bmN0aW9uLCBKUwogICAgICAgICB9CiAgICAgfQogCisgICAgLy8gaGFuZGxl
IGxvY2F0aW9uIGFyZ3VtZW50LgorICAgIGludCBsb2NhdGlvbiA9IDA7CisgICAgaWYgKGFyZ3Vt
ZW50Q291bnQgPiAyKSB7CisgICAgICAgIGxvY2F0aW9uID0gKGludClKU1ZhbHVlVG9OdW1iZXIo
Y29udGV4dCwgYXJndW1lbnRzWzJdLCBleGNlcHRpb24pOworICAgIH0KKwogICAgIEpTU3RyaW5n
UmVmIGNoYXJhY3RlciA9IEpTVmFsdWVUb1N0cmluZ0NvcHkoY29udGV4dCwgYXJndW1lbnRzWzBd
LCBleGNlcHRpb24pOwogICAgIGdfcmV0dXJuX3ZhbF9pZl9mYWlsKCghZXhjZXB0aW9uIHx8ICEq
ZXhjZXB0aW9uKSwgSlNWYWx1ZU1ha2VVbmRlZmluZWQoY29udGV4dCkpOwotICAgIGludCBnZGtL
ZXlTeW07Ci0gICAgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAi
bGVmdEFycm93IikpCi0gICAgICAgIGdka0tleVN5bSA9IEdES19MZWZ0OwotICAgIGVsc2UgaWYg
KEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAicmlnaHRBcnJvdyIpKQot
ICAgICAgICBnZGtLZXlTeW0gPSBHREtfUmlnaHQ7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0Vx
dWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJ1cEFycm93IikpCi0gICAgICAgIGdka0tleVN5
bSA9IEdES19VcDsKLSAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNo
YXJhY3RlciwgImRvd25BcnJvdyIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRG93bjsKLSAg
ICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgInBhZ2VV
cCIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfUGFnZV9VcDsKLSAgICBlbHNlIGlmIChKU1N0
cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgInBhZ2VEb3duIikpCi0gICAgICAg
IGdka0tleVN5bSA9IEdES19QYWdlX0Rvd247Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFs
VG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJob21lIikpCi0gICAgICAgIGdka0tleVN5bSA9IEdE
S19Ib21lOwotICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFj
dGVyLCAiZW5kIikpCi0gICAgICAgIGdka0tleVN5bSA9IEdES19FbmQ7Ci0gICAgZWxzZSBpZiAo
SlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJkZWxldGUiKSkKLSAgICAg
ICAgZ2RrS2V5U3ltID0gR0RLX0JhY2tTcGFjZTsKLSAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1
YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkYxIikpCi0gICAgICAgIGdka0tleVN5bSA9IEdE
S19GMTsKLSAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3Rl
ciwgIkYyIikpCi0gICAgICAgIGdka0tleVN5bSA9IEdES19GMjsKLSAgICBlbHNlIGlmIChKU1N0
cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkYzIikpCi0gICAgICAgIGdka0tl
eVN5bSA9IEdES19GMzsKLSAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5n
KGNoYXJhY3RlciwgIkY0IikpCi0gICAgICAgIGdka0tleVN5bSA9IEdES19GNDsKLSAgICBlbHNl
IGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkY1IikpCi0gICAg
ICAgIGdka0tleVN5bSA9IEdES19GNTsKLSAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VU
RjhDU3RyaW5nKGNoYXJhY3RlciwgIkY2IikpCi0gICAgICAgIGdka0tleVN5bSA9IEdES19GNjsK
LSAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkY3
IikpCi0gICAgICAgIGdka0tleVN5bSA9IEdES19GNzsKLSAgICBlbHNlIGlmIChKU1N0cmluZ0lz
RXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkY4IikpCi0gICAgICAgIGdka0tleVN5bSA9
IEdES19GODsKLSAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJh
Y3RlciwgIkY5IikpCi0gICAgICAgIGdka0tleVN5bSA9IEdES19GOTsKLSAgICBlbHNlIGlmIChK
U1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkYxMCIpKQotICAgICAgICBn
ZGtLZXlTeW0gPSBHREtfRjEwOwotICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENT
dHJpbmcoY2hhcmFjdGVyLCAiRjExIikpCi0gICAgICAgIGdka0tleVN5bSA9IEdES19GMTE7Ci0g
ICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGMTIi
KSkKLSAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0YxMjsKLSAgICBlbHNlIHsKLSAgICAgICAgaW50
IGNoYXJDb2RlID0gSlNTdHJpbmdHZXRDaGFyYWN0ZXJzUHRyKGNoYXJhY3RlcilbMF07Ci0gICAg
ICAgIGlmIChjaGFyQ29kZSA9PSAnXG4nIHx8IGNoYXJDb2RlID09ICdccicpCi0gICAgICAgICAg
ICBnZGtLZXlTeW0gPSBHREtfUmV0dXJuOwotICAgICAgICBlbHNlIGlmIChjaGFyQ29kZSA9PSAn
XHQnKQotICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX1RhYjsKLSAgICAgICAgZWxzZSBpZiAo
Y2hhckNvZGUgPT0gJ1x4OCcpCisgICAgaW50IGdka0tleVN5bSA9IEdES19Wb2lkU3ltYm9sOwor
ICAgIGlmIChsb2NhdGlvbiA9PSBET01fS0VZX0xPQ0FUSU9OX05VTVBBRCkgeworICAgICAgICBp
ZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJsZWZ0QXJyb3ciKSkK
KyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19LUF9MZWZ0OworICAgICAgICBlbHNlIGlmIChK
U1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgInJpZ2h0QXJyb3ciKSkKKyAg
ICAgICAgICAgIGdka0tleVN5bSA9IEdES19LUF9SaWdodDsKKyAgICAgICAgZWxzZSBpZiAoSlNT
dHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJ1cEFycm93IikpCisgICAgICAg
ICAgICBnZGtLZXlTeW0gPSBHREtfS1BfVXA7CisgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNF
cXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiZG93bkFycm93IikpCisgICAgICAgICAgICBn
ZGtLZXlTeW0gPSBHREtfS1BfRG93bjsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFs
VG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJwYWdlVXAiKSkKKyAgICAgICAgICAgIGdka0tleVN5
bSA9IEdES19LUF9QYWdlX1VwOworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VU
RjhDU3RyaW5nKGNoYXJhY3RlciwgInBhZ2VEb3duIikpCisgICAgICAgICAgICBnZGtLZXlTeW0g
PSBHREtfS1BfUGFnZV9Eb3duOworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VU
RjhDU3RyaW5nKGNoYXJhY3RlciwgImhvbWUiKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdE
S19LUF9Ib21lOworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5n
KGNoYXJhY3RlciwgImVuZCIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0tQX0VuZDsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgLy8gQXNzdW1lIHdlIG9ubHkgZ2V0IGFycm93L3Bn
VXAvcGdEbi9ob21lL2VuZCBrZXlzIHdpdGgKKyAgICAgICAgICAgIC8vIGxvY2F0aW9uPU5VTVBB
RCBmb3Igbm93LgorICAgICAgICAgICAgZ19hc3NlcnRfbm90X3JlYWNoZWQoKTsKKyAgICB9IGVs
c2UgeworICAgICAgICBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIs
ICJsZWZ0QXJyb3ciKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19MZWZ0OworICAgICAg
ICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgInJpZ2h0
QXJyb3ciKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19SaWdodDsKKyAgICAgICAgZWxz
ZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJ1cEFycm93Iikp
CisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfVXA7CisgICAgICAgIGVsc2UgaWYgKEpTU3Ry
aW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiZG93bkFycm93IikpCisgICAgICAg
ICAgICBnZGtLZXlTeW0gPSBHREtfRG93bjsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0Vx
dWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJwYWdlVXAiKSkKKyAgICAgICAgICAgIGdka0tl
eVN5bSA9IEdES19QYWdlX1VwOworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VU
RjhDU3RyaW5nKGNoYXJhY3RlciwgInBhZ2VEb3duIikpCisgICAgICAgICAgICBnZGtLZXlTeW0g
PSBHREtfUGFnZV9Eb3duOworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhD
U3RyaW5nKGNoYXJhY3RlciwgImhvbWUiKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19I
b21lOworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJh
Y3RlciwgImVuZCIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0VuZDsKKyAgICAgICAg
ZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJkZWxldGUi
KSkKICAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19CYWNrU3BhY2U7CisgICAgICAgIGVsc2Ug
aWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjEiKSkKKyAgICAg
ICAgICAgIGdka0tleVN5bSA9IEdES19GMTsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0Vx
dWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGMiIpKQorICAgICAgICAgICAgZ2RrS2V5U3lt
ID0gR0RLX0YyOworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5n
KGNoYXJhY3RlciwgIkYzIikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjM7CisgICAg
ICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjQi
KSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19GNDsKKyAgICAgICAgZWxzZSBpZiAoSlNT
dHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGNSIpKQorICAgICAgICAgICAg
Z2RrS2V5U3ltID0gR0RLX0Y1OworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VU
RjhDU3RyaW5nKGNoYXJhY3RlciwgIkY2IikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtf
RjY7CisgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFj
dGVyLCAiRjciKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19GNzsKKyAgICAgICAgZWxz
ZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGOCIpKQorICAg
ICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0Y4OworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lz
RXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkY5IikpCisgICAgICAgICAgICBnZGtLZXlT
eW0gPSBHREtfRjk7CisgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJp
bmcoY2hhcmFjdGVyLCAiRjEwIikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjEwOwor
ICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3Rlciwg
IkYxMSIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0YxMTsKKyAgICAgICAgZWxzZSBp
ZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGMTIiKSkKKyAgICAg
ICAgICAgIGdka0tleVN5bSA9IEdES19GMTI7CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAg
Z2RrS2V5U3ltID0gZ2RrX3VuaWNvZGVfdG9fa2V5dmFsKGNoYXJDb2RlKTsKLSAgICAgICAgICAg
IGlmIChXVEY6OmlzQVNDSUlVcHBlcihjaGFyQ29kZSkpCi0gICAgICAgICAgICAgICAgc3RhdGUg
fD0gR0RLX1NISUZUX01BU0s7CisgICAgICAgICAgICBpbnQgY2hhckNvZGUgPSBKU1N0cmluZ0dl
dENoYXJhY3RlcnNQdHIoY2hhcmFjdGVyKVswXTsKKyAgICAgICAgICAgIGlmIChjaGFyQ29kZSA9
PSAnXG4nIHx8IGNoYXJDb2RlID09ICdccicpCisgICAgICAgICAgICAgICAgZ2RrS2V5U3ltID0g
R0RLX1JldHVybjsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoYXJDb2RlID09ICdcdCcpCisgICAg
ICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX1RhYjsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNo
YXJDb2RlID09ICdceDgnKQorICAgICAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19CYWNrU3Bh
Y2U7CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICBnZGtLZXlTeW0gPSBnZGtf
dW5pY29kZV90b19rZXl2YWwoY2hhckNvZGUpOworICAgICAgICAgICAgICAgIGlmIChXVEY6Omlz
QVNDSUlVcHBlcihjaGFyQ29kZSkpCisgICAgICAgICAgICAgICAgICAgIHN0YXRlIHw9IEdES19T
SElGVF9NQVNLOworICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQotCiAgICAgSlNTdHJp
bmdSZWxlYXNlKGNoYXJhY3Rlcik7CiAKICAgICBXZWJLaXRXZWJWaWV3KiB2aWV3ID0gd2Via2l0
X3dlYl9mcmFtZV9nZXRfd2ViX3ZpZXcobWFpbkZyYW1lKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45871</attachid>
            <date>2010-01-05 01:15:54 -0800</date>
            <delta_ts>2010-01-05 01:18:28 -0800</delta_ts>
            <desc>Numpad key fix for gtk with automated test</desc>
            <filename>bug-28247-20100105181552.patch</filename>
            <type>text/plain</type>
            <size>12175</size>
            <attacher name="Kinuko Yasuda">kinuko</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlZDkxZjkzLi43MTcyODliIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTAtMDEt
MDUgIEtpbnVrbyBZYXN1ZGEgIDxraW51a29AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBmYXN0L2V2ZW50cy9rZXlk
b3duLW51bXBhZC1rZXlzLmh0bWwgZnJvbSBndGsncyBTa2lwcGVkIGxpc3QuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODI0NworCisgICAgICAgICog
cGxhdGZvcm0vZ3RrL1NraXBwZWQ6CisKIDIwMTAtMDEtMDQgIFNpbW9uIEZyYXNlciAgPHNpbW9u
LmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKaW5kZXggODZlMjIzMS4uMWI4MTdiMSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL1NraXBwZWQKQEAgLTIyNTksNyArMjI1OSw2IEBAIGZhc3QvZXZlbnRzL2V2ZW50
LWxpc3RlbmVyLW9uLWxpbmsuaHRtbAogZmFzdC9ldmVudHMvZXZlbnQtc2VuZGVyLW1vdXNlLW1v
dmVkLmh0bWwKIGZhc3QvZXZlbnRzL2ZvY3VzaW5nVW5sb2FkZWRGcmFtZS5odG1sCiBmYXN0L2V2
ZW50cy9rZXlkb3duLTEuaHRtbAotZmFzdC9ldmVudHMva2V5ZG93bi1udW1wYWQta2V5cy5odG1s
CiBmYXN0L2V2ZW50cy9sYWJlbC1mb2N1cy5odG1sCiBmYXN0L2V2ZW50cy9tb3VzZW91dC1kZWFk
LW5vZGUuaHRtbAogZmFzdC9ldmVudHMvb25sb2FkLXJlLWVudHJ5Lmh0bWwKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjQwYmVjYS4uZGYx
ZTc4NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMC0wMS0wNSAgS2ludWtvIFlhc3VkYSAgPGtpbnVrb0Bj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkIGtleSBldmVudCBtYXBwaW5ncyBmb3IgbnVtcGFkIGtleXMgZm9yIEd0ayBhbmQg
Q2hyb21pdW0vR3RrLgorICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yODI0NworCisgICAgICAgIFRlc3Q6IGZhc3QvZXZlbnRzL2tleWRvd24tbnVtcGFkLWtl
eXMuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29kZUNvbnZlcnNpb25H
dGsuY3BwOgorICAgICAgICAoV2ViQ29yZTo6d2luZG93c0tleUNvZGVGb3JLZXlFdmVudCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3RrL0tleUV2ZW50R3RrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OndpbmRvd3NLZXlDb2RlRm9yS2V5RXZlbnQpOgorCiAyMDEwLTAxLTA0ICBLZXZpbiBPbGxpdmll
ciAgPGtldmlub0B0aGVvbGxpdmllcnMuY29tPgogCiAgICAgICAgIFt3eF0gQnVpbGQgZml4LCBh
ZGQgYSBjb3VwbGUgaW5jbHVkZSBkaXJzIHRvIHRoZSBidWlsZC4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29kZUNvbnZlcnNpb25HdGsuY3BwIGIvV2ViQ29yZS9w
bGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkd0ay5jcHAKaW5kZXggZTNkNWY2MS4u
YTcwOWYzZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29u
dmVyc2lvbkd0ay5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29u
dmVyc2lvbkd0ay5jcHAKQEAgLTcyLDYgKzcyLDIzIEBAIGludCB3aW5kb3dzS2V5Q29kZUZvcktl
eUV2ZW50KHVuc2lnbmVkIGtleWNvZGUpCiAgICAgY2FzZSBHREtfS1BfRGl2aWRlOgogICAgICAg
ICByZXR1cm4gVktFWV9ESVZJREU7IC8vICg2RikgRGl2aWRlIGtleQogCisgICAgY2FzZSBHREtf
S1BfUGFnZV9VcDoKKyAgICAgICAgcmV0dXJuIFZLRVlfUFJJT1I7IC8vICgyMSkgUEFHRSBVUCBr
ZXkKKyAgICBjYXNlIEdES19LUF9QYWdlX0Rvd246CisgICAgICAgIHJldHVybiBWS0VZX05FWFQ7
IC8vICgyMikgUEFHRSBET1dOIGtleQorICAgIGNhc2UgR0RLX0tQX0VuZDoKKyAgICAgICAgcmV0
dXJuIFZLRVlfRU5EOyAvLyAoMjMpIEVORCBrZXkKKyAgICBjYXNlIEdES19LUF9Ib21lOgorICAg
ICAgICByZXR1cm4gVktFWV9IT01FOyAvLyAoMjQpIEhPTUUga2V5CisgICAgY2FzZSBHREtfS1Bf
TGVmdDoKKyAgICAgICAgcmV0dXJuIFZLRVlfTEVGVDsgLy8gKDI1KSBMRUZUIEFSUk9XIGtleQor
ICAgIGNhc2UgR0RLX0tQX1VwOgorICAgICAgICByZXR1cm4gVktFWV9VUDsgLy8gKDI2KSBVUCBB
UlJPVyBrZXkKKyAgICBjYXNlIEdES19LUF9SaWdodDoKKyAgICAgICAgcmV0dXJuIFZLRVlfUklH
SFQ7IC8vICgyNykgUklHSFQgQVJST1cga2V5CisgICAgY2FzZSBHREtfS1BfRG93bjoKKyAgICAg
ICAgcmV0dXJuIFZLRVlfRE9XTjsgLy8gKDI4KSBET1dOIEFSUk9XIGtleQorCiAgICAgY2FzZSBH
REtfQmFja1NwYWNlOgogICAgICAgICByZXR1cm4gVktFWV9CQUNLOyAvLyAoMDgpIEJBQ0tTUEFD
RSBrZXkKICAgICBjYXNlIEdES19JU09fTGVmdF9UYWI6CmRpZmYgLS1naXQgYS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9LZXlFdmVudEd0ay5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2d0ay9LZXlFdmVu
dEd0ay5jcHAKaW5kZXggMTFlYTk1Ni4uZTAwZWE0MyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvS2V5RXZlbnRHdGsuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0tleUV2
ZW50R3RrLmNwcApAQCAtMTgxLDYgKzE4MSwyMyBAQCBzdGF0aWMgaW50IHdpbmRvd3NLZXlDb2Rl
Rm9yS2V5RXZlbnQodW5zaWduZWQgaW50IGtleWNvZGUpCiAgICAgICAgIGNhc2UgR0RLX0tQX0Rp
dmlkZToKICAgICAgICAgICAgIHJldHVybiBWS19ESVZJREU7IC8vICg2RikgRGl2aWRlIGtleQog
CisgICAgICAgIGNhc2UgR0RLX0tQX1BhZ2VfVXA6CisgICAgICAgICAgICByZXR1cm4gVktfUFJJ
T1I7IC8vICgyMSkgUEFHRSBVUCBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfUGFnZV9Eb3duOgor
ICAgICAgICAgICAgcmV0dXJuIFZLX05FWFQ7IC8vICgyMikgUEFHRSBET1dOIGtleQorICAgICAg
ICBjYXNlIEdES19LUF9FbmQ6CisgICAgICAgICAgICByZXR1cm4gVktfRU5EOyAvLyAoMjMpIEVO
RCBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfSG9tZToKKyAgICAgICAgICAgIHJldHVybiBWS19I
T01FOyAvLyAoMjQpIEhPTUUga2V5CisgICAgICAgIGNhc2UgR0RLX0tQX0xlZnQ6CisgICAgICAg
ICAgICByZXR1cm4gVktfTEVGVDsgLy8gKDI1KSBMRUZUIEFSUk9XIGtleQorICAgICAgICBjYXNl
IEdES19LUF9VcDoKKyAgICAgICAgICAgIHJldHVybiBWS19VUDsgLy8gKDI2KSBVUCBBUlJPVyBr
ZXkKKyAgICAgICAgY2FzZSBHREtfS1BfUmlnaHQ6CisgICAgICAgICAgICByZXR1cm4gVktfUklH
SFQ7IC8vICgyNykgUklHSFQgQVJST1cga2V5CisgICAgICAgIGNhc2UgR0RLX0tQX0Rvd246Cisg
ICAgICAgICAgICByZXR1cm4gVktfRE9XTjsgLy8gKDI4KSBET1dOIEFSUk9XIGtleQorCiAgICAg
ICAgIGNhc2UgR0RLX0JhY2tTcGFjZToKICAgICAgICAgICAgIHJldHVybiBWS19CQUNLOyAvLyAo
MDgpIEJBQ0tTUEFDRSBrZXkKICAgICAgICAgY2FzZSBHREtfSVNPX0xlZnRfVGFiOgpkaWZmIC0t
Z2l0IGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCmluZGV4
IDA0ZGZlMDEuLmVkMjk2OTMgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZworKysg
Yi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMC0wMS0wNSAgS2lu
dWtvIFlhc3VkYSAgPGtpbnVrb0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29ycmVjdGx5IGhhbmRsZSB0aGUgS2V5TG9jYXRp
b24gYXJndW1lbnQgdGhhdCBoYXMgYmVlbiBpbnRyb2R1Y2VkCisgICAgICAgIHJlY2VudGx5IHRv
IHRlc3QgbG9jYXRpb24tZGVwZW5kZW50IGtleSBldmVudHMgaW4gRXZlbnRTZW5kZXIua2V5RG93
bi4KKyAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjgyNDcK
KworICAgICAgICBUZXN0OiBmYXN0L2V2ZW50cy9rZXlkb3duLW51bXBhZC1rZXlzLmh0bWwKKwor
ICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2d0ay9FdmVudFNlbmRlci5jcHA6CisgICAgICAgIChr
ZXlEb3duQ2FsbGJhY2spOgorCiAyMDEwLTAxLTA0ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCmRpZmYgLS1naXQgYS9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvRXZlbnRTZW5kZXIuY3BwIGIvV2ViS2l0VG9v
bHMvRHVtcFJlbmRlclRyZWUvZ3RrL0V2ZW50U2VuZGVyLmNwcAppbmRleCAzYjczMTFiLi5kNjI5
MzgwIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvRXZlbnRTZW5k
ZXIuY3BwCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9FdmVudFNlbmRlci5j
cHAKQEAgLTc2LDYgKzc2LDE0IEBAIHN0YXRpYyB1bnNpZ25lZCBzdGFydE9mUXVldWU7CiAKIHN0
YXRpYyBjb25zdCBmbG9hdCB6b29tTXVsdGlwbGllclJhdGlvID0gMS4yZjsKIAorLy8gS2V5IGV2
ZW50IGxvY2F0aW9uIGNvZGUgZGVmaW5lZCBpbiBET00gTGV2ZWwgMy4KK2VudW0gS2V5TG9jYXRp
b25Db2RlIHsKKyAgICBET01fS0VZX0xPQ0FUSU9OX1NUQU5EQVJEICAgICAgPSAweDAwLAorICAg
IERPTV9LRVlfTE9DQVRJT05fTEVGVCAgICAgICAgICA9IDB4MDEsCisgICAgRE9NX0tFWV9MT0NB
VElPTl9SSUdIVCAgICAgICAgID0gMHgwMiwKKyAgICBET01fS0VZX0xPQ0FUSU9OX05VTVBBRCAg
ICAgICAgPSAweDAzCit9OworCiBzdGF0aWMgSlNWYWx1ZVJlZiBnZXREcmFnTW9kZUNhbGxiYWNr
KEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdFJlZiBvYmplY3QsIEpTU3RyaW5nUmVmIHBy
b3BlcnR5TmFtZSwgSlNWYWx1ZVJlZiogZXhjZXB0aW9uKQogewogICAgIHJldHVybiBKU1ZhbHVl
TWFrZUJvb2xlYW4oY29udGV4dCwgZHJhZ01vZGUpOwpAQCAtNDQ5LDY2ICs0NTcsOTQgQEAgc3Rh
dGljIEpTVmFsdWVSZWYga2V5RG93bkNhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09i
amVjdFJlZiBmdW5jdGlvbiwgSlMKICAgICAgICAgfQogICAgIH0KIAorICAgIC8vIGhhbmRsZSBs
b2NhdGlvbiBhcmd1bWVudC4KKyAgICBpbnQgbG9jYXRpb24gPSAwOworICAgIGlmIChhcmd1bWVu
dENvdW50ID4gMikgeworICAgICAgICBsb2NhdGlvbiA9IChpbnQpSlNWYWx1ZVRvTnVtYmVyKGNv
bnRleHQsIGFyZ3VtZW50c1syXSwgZXhjZXB0aW9uKTsKKyAgICB9CisKICAgICBKU1N0cmluZ1Jl
ZiBjaGFyYWN0ZXIgPSBKU1ZhbHVlVG9TdHJpbmdDb3B5KGNvbnRleHQsIGFyZ3VtZW50c1swXSwg
ZXhjZXB0aW9uKTsKICAgICBnX3JldHVybl92YWxfaWZfZmFpbCgoIWV4Y2VwdGlvbiB8fCAhKmV4
Y2VwdGlvbiksIEpTVmFsdWVNYWtlVW5kZWZpbmVkKGNvbnRleHQpKTsKLSAgICBpbnQgZ2RrS2V5
U3ltOwotICAgIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgImxl
ZnRBcnJvdyIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfTGVmdDsKLSAgICBlbHNlIGlmIChK
U1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgInJpZ2h0QXJyb3ciKSkKLSAg
ICAgICAgZ2RrS2V5U3ltID0gR0RLX1JpZ2h0OwotICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVh
bFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAidXBBcnJvdyIpKQotICAgICAgICBnZGtLZXlTeW0g
PSBHREtfVXA7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFy
YWN0ZXIsICJkb3duQXJyb3ciKSkKLSAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0Rvd247Ci0gICAg
ZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJwYWdlVXAi
KSkKLSAgICAgICAgZ2RrS2V5U3ltID0gR0RLX1BhZ2VfVXA7Ci0gICAgZWxzZSBpZiAoSlNTdHJp
bmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJwYWdlRG93biIpKQotICAgICAgICBn
ZGtLZXlTeW0gPSBHREtfUGFnZV9Eb3duOwotICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRv
VVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiaG9tZSIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtf
SG9tZTsKLSAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3Rl
ciwgImVuZCIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRW5kOwotICAgIGVsc2UgaWYgKEpT
U3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiZGVsZXRlIikpCi0gICAgICAg
IGdka0tleVN5bSA9IEdES19CYWNrU3BhY2U7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFs
VG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGMSIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtf
RjE7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIs
ICJGMiIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjI7Ci0gICAgZWxzZSBpZiAoSlNTdHJp
bmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGMyIpKQotICAgICAgICBnZGtLZXlT
eW0gPSBHREtfRjM7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhj
aGFyYWN0ZXIsICJGNCIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjQ7Ci0gICAgZWxzZSBp
ZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGNSIpKQotICAgICAg
ICBnZGtLZXlTeW0gPSBHREtfRjU7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4
Q1N0cmluZyhjaGFyYWN0ZXIsICJGNiIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjY7Ci0g
ICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGNyIp
KQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjc7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0Vx
dWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGOCIpKQotICAgICAgICBnZGtLZXlTeW0gPSBH
REtfRjg7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0
ZXIsICJGOSIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjk7Ci0gICAgZWxzZSBpZiAoSlNT
dHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGMTAiKSkKLSAgICAgICAgZ2Rr
S2V5U3ltID0gR0RLX0YxMDsKLSAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3Ry
aW5nKGNoYXJhY3RlciwgIkYxMSIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjExOwotICAg
IGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjEyIikp
Ci0gICAgICAgIGdka0tleVN5bSA9IEdES19GMTI7Ci0gICAgZWxzZSB7Ci0gICAgICAgIGludCBj
aGFyQ29kZSA9IEpTU3RyaW5nR2V0Q2hhcmFjdGVyc1B0cihjaGFyYWN0ZXIpWzBdOwotICAgICAg
ICBpZiAoY2hhckNvZGUgPT0gJ1xuJyB8fCBjaGFyQ29kZSA9PSAnXHInKQotICAgICAgICAgICAg
Z2RrS2V5U3ltID0gR0RLX1JldHVybjsKLSAgICAgICAgZWxzZSBpZiAoY2hhckNvZGUgPT0gJ1x0
JykKLSAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19UYWI7Ci0gICAgICAgIGVsc2UgaWYgKGNo
YXJDb2RlID09ICdceDgnKQorICAgIGludCBnZGtLZXlTeW0gPSBHREtfVm9pZFN5bWJvbDsKKyAg
ICBpZiAobG9jYXRpb24gPT0gRE9NX0tFWV9MT0NBVElPTl9OVU1QQUQpIHsKKyAgICAgICAgaWYg
KEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAibGVmdEFycm93IikpCisg
ICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfS1BfTGVmdDsKKyAgICAgICAgZWxzZSBpZiAoSlNT
dHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJyaWdodEFycm93IikpCisgICAg
ICAgICAgICBnZGtLZXlTeW0gPSBHREtfS1BfUmlnaHQ7CisgICAgICAgIGVsc2UgaWYgKEpTU3Ry
aW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAidXBBcnJvdyIpKQorICAgICAgICAg
ICAgZ2RrS2V5U3ltID0gR0RLX0tQX1VwOworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1
YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgImRvd25BcnJvdyIpKQorICAgICAgICAgICAgZ2Rr
S2V5U3ltID0gR0RLX0tQX0Rvd247CisgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRv
VVRGOENTdHJpbmcoY2hhcmFjdGVyLCAicGFnZVVwIikpCisgICAgICAgICAgICBnZGtLZXlTeW0g
PSBHREtfS1BfUGFnZV9VcDsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4
Q1N0cmluZyhjaGFyYWN0ZXIsICJwYWdlRG93biIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0g
R0RLX0tQX1BhZ2VfRG93bjsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4
Q1N0cmluZyhjaGFyYWN0ZXIsICJob21lIikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtf
S1BfSG9tZTsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhj
aGFyYWN0ZXIsICJlbmQiKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19LUF9FbmQ7Cisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIC8vIEFzc3VtZSB3ZSBvbmx5IGdldCBhcnJvdy9wZ1Vw
L3BnRG4vaG9tZS9lbmQga2V5cyB3aXRoCisgICAgICAgICAgICAvLyBsb2NhdGlvbj1OVU1QQUQg
Zm9yIG5vdy4KKyAgICAgICAgICAgIGdfYXNzZXJ0X25vdF9yZWFjaGVkKCk7CisgICAgfSBlbHNl
IHsKKyAgICAgICAgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAi
bGVmdEFycm93IikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfTGVmdDsKKyAgICAgICAg
ZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJyaWdodEFy
cm93IikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfUmlnaHQ7CisgICAgICAgIGVsc2Ug
aWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAidXBBcnJvdyIpKQor
ICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX1VwOworICAgICAgICBlbHNlIGlmIChKU1N0cmlu
Z0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgImRvd25BcnJvdyIpKQorICAgICAgICAg
ICAgZ2RrS2V5U3ltID0gR0RLX0Rvd247CisgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVh
bFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAicGFnZVVwIikpCisgICAgICAgICAgICBnZGtLZXlT
eW0gPSBHREtfUGFnZV9VcDsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4
Q1N0cmluZyhjaGFyYWN0ZXIsICJwYWdlRG93biIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0g
R0RLX1BhZ2VfRG93bjsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0
cmluZyhjaGFyYWN0ZXIsICJob21lIikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfSG9t
ZTsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0
ZXIsICJlbmQiKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19FbmQ7CisgICAgICAgIGVs
c2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiZGVsZXRlIikp
CiAgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfQmFja1NwYWNlOworICAgICAgICBlbHNlIGlm
IChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkYxIikpCisgICAgICAg
ICAgICBnZGtLZXlTeW0gPSBHREtfRjE7CisgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVh
bFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjIiKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9
IEdES19GMjsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhj
aGFyYWN0ZXIsICJGMyIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0YzOworICAgICAg
ICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkY0Iikp
CisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjQ7CisgICAgICAgIGVsc2UgaWYgKEpTU3Ry
aW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjUiKSkKKyAgICAgICAgICAgIGdk
a0tleVN5bSA9IEdES19GNTsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4
Q1N0cmluZyhjaGFyYWN0ZXIsICJGNiIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0Y2
OworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3Rl
ciwgIkY3IikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjc7CisgICAgICAgIGVsc2Ug
aWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjgiKSkKKyAgICAg
ICAgICAgIGdka0tleVN5bSA9IEdES19GODsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0Vx
dWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGOSIpKQorICAgICAgICAgICAgZ2RrS2V5U3lt
ID0gR0RLX0Y5OworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5n
KGNoYXJhY3RlciwgIkYxMCIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0YxMDsKKyAg
ICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJG
MTEiKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19GMTE7CisgICAgICAgIGVsc2UgaWYg
KEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjEyIikpCisgICAgICAg
ICAgICBnZGtLZXlTeW0gPSBHREtfRjEyOwogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGdk
a0tleVN5bSA9IGdka191bmljb2RlX3RvX2tleXZhbChjaGFyQ29kZSk7Ci0gICAgICAgICAgICBp
ZiAoV1RGOjppc0FTQ0lJVXBwZXIoY2hhckNvZGUpKQotICAgICAgICAgICAgICAgIHN0YXRlIHw9
IEdES19TSElGVF9NQVNLOworICAgICAgICAgICAgaW50IGNoYXJDb2RlID0gSlNTdHJpbmdHZXRD
aGFyYWN0ZXJzUHRyKGNoYXJhY3RlcilbMF07CisgICAgICAgICAgICBpZiAoY2hhckNvZGUgPT0g
J1xuJyB8fCBjaGFyQ29kZSA9PSAnXHInKQorICAgICAgICAgICAgICAgIGdka0tleVN5bSA9IEdE
S19SZXR1cm47CisgICAgICAgICAgICBlbHNlIGlmIChjaGFyQ29kZSA9PSAnXHQnKQorICAgICAg
ICAgICAgICAgIGdka0tleVN5bSA9IEdES19UYWI7CisgICAgICAgICAgICBlbHNlIGlmIChjaGFy
Q29kZSA9PSAnXHg4JykKKyAgICAgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfQmFja1NwYWNl
OworICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgZ2RrS2V5U3ltID0gZ2RrX3Vu
aWNvZGVfdG9fa2V5dmFsKGNoYXJDb2RlKTsKKyAgICAgICAgICAgICAgICBpZiAoV1RGOjppc0FT
Q0lJVXBwZXIoY2hhckNvZGUpKQorICAgICAgICAgICAgICAgICAgICBzdGF0ZSB8PSBHREtfU0hJ
RlRfTUFTSzsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KLQogICAgIEpTU3RyaW5n
UmVsZWFzZShjaGFyYWN0ZXIpOwogCiAgICAgV2ViS2l0V2ViVmlldyogdmlldyA9IHdlYmtpdF93
ZWJfZnJhbWVfZ2V0X3dlYl92aWV3KG1haW5GcmFtZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45873</attachid>
            <date>2010-01-05 01:18:34 -0800</date>
            <delta_ts>2010-01-27 11:01:45 -0800</delta_ts>
            <desc>Numpad key fix for gtk with automated test (style fixed)</desc>
            <filename>bug-28247-20100105181832.patch</filename>
            <type>text/plain</type>
            <size>12190</size>
            <attacher name="Kinuko Yasuda">kinuko</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlZDkxZjkzLi43MTcyODliIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTAtMDEt
MDUgIEtpbnVrbyBZYXN1ZGEgIDxraW51a29AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBmYXN0L2V2ZW50cy9rZXlk
b3duLW51bXBhZC1rZXlzLmh0bWwgZnJvbSBndGsncyBTa2lwcGVkIGxpc3QuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODI0NworCisgICAgICAgICog
cGxhdGZvcm0vZ3RrL1NraXBwZWQ6CisKIDIwMTAtMDEtMDQgIFNpbW9uIEZyYXNlciAgPHNpbW9u
LmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKaW5kZXggODZlMjIzMS4uMWI4MTdiMSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL1NraXBwZWQKQEAgLTIyNTksNyArMjI1OSw2IEBAIGZhc3QvZXZlbnRzL2V2ZW50
LWxpc3RlbmVyLW9uLWxpbmsuaHRtbAogZmFzdC9ldmVudHMvZXZlbnQtc2VuZGVyLW1vdXNlLW1v
dmVkLmh0bWwKIGZhc3QvZXZlbnRzL2ZvY3VzaW5nVW5sb2FkZWRGcmFtZS5odG1sCiBmYXN0L2V2
ZW50cy9rZXlkb3duLTEuaHRtbAotZmFzdC9ldmVudHMva2V5ZG93bi1udW1wYWQta2V5cy5odG1s
CiBmYXN0L2V2ZW50cy9sYWJlbC1mb2N1cy5odG1sCiBmYXN0L2V2ZW50cy9tb3VzZW91dC1kZWFk
LW5vZGUuaHRtbAogZmFzdC9ldmVudHMvb25sb2FkLXJlLWVudHJ5Lmh0bWwKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjQwYmVjYS4uZGYx
ZTc4NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMC0wMS0wNSAgS2ludWtvIFlhc3VkYSAgPGtpbnVrb0Bj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkIGtleSBldmVudCBtYXBwaW5ncyBmb3IgbnVtcGFkIGtleXMgZm9yIEd0ayBhbmQg
Q2hyb21pdW0vR3RrLgorICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yODI0NworCisgICAgICAgIFRlc3Q6IGZhc3QvZXZlbnRzL2tleWRvd24tbnVtcGFkLWtl
eXMuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29kZUNvbnZlcnNpb25H
dGsuY3BwOgorICAgICAgICAoV2ViQ29yZTo6d2luZG93c0tleUNvZGVGb3JLZXlFdmVudCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3RrL0tleUV2ZW50R3RrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OndpbmRvd3NLZXlDb2RlRm9yS2V5RXZlbnQpOgorCiAyMDEwLTAxLTA0ICBLZXZpbiBPbGxpdmll
ciAgPGtldmlub0B0aGVvbGxpdmllcnMuY29tPgogCiAgICAgICAgIFt3eF0gQnVpbGQgZml4LCBh
ZGQgYSBjb3VwbGUgaW5jbHVkZSBkaXJzIHRvIHRoZSBidWlsZC4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29kZUNvbnZlcnNpb25HdGsuY3BwIGIvV2ViQ29yZS9w
bGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkd0ay5jcHAKaW5kZXggZTNkNWY2MS4u
YTcwOWYzZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29u
dmVyc2lvbkd0ay5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29u
dmVyc2lvbkd0ay5jcHAKQEAgLTcyLDYgKzcyLDIzIEBAIGludCB3aW5kb3dzS2V5Q29kZUZvcktl
eUV2ZW50KHVuc2lnbmVkIGtleWNvZGUpCiAgICAgY2FzZSBHREtfS1BfRGl2aWRlOgogICAgICAg
ICByZXR1cm4gVktFWV9ESVZJREU7IC8vICg2RikgRGl2aWRlIGtleQogCisgICAgY2FzZSBHREtf
S1BfUGFnZV9VcDoKKyAgICAgICAgcmV0dXJuIFZLRVlfUFJJT1I7IC8vICgyMSkgUEFHRSBVUCBr
ZXkKKyAgICBjYXNlIEdES19LUF9QYWdlX0Rvd246CisgICAgICAgIHJldHVybiBWS0VZX05FWFQ7
IC8vICgyMikgUEFHRSBET1dOIGtleQorICAgIGNhc2UgR0RLX0tQX0VuZDoKKyAgICAgICAgcmV0
dXJuIFZLRVlfRU5EOyAvLyAoMjMpIEVORCBrZXkKKyAgICBjYXNlIEdES19LUF9Ib21lOgorICAg
ICAgICByZXR1cm4gVktFWV9IT01FOyAvLyAoMjQpIEhPTUUga2V5CisgICAgY2FzZSBHREtfS1Bf
TGVmdDoKKyAgICAgICAgcmV0dXJuIFZLRVlfTEVGVDsgLy8gKDI1KSBMRUZUIEFSUk9XIGtleQor
ICAgIGNhc2UgR0RLX0tQX1VwOgorICAgICAgICByZXR1cm4gVktFWV9VUDsgLy8gKDI2KSBVUCBB
UlJPVyBrZXkKKyAgICBjYXNlIEdES19LUF9SaWdodDoKKyAgICAgICAgcmV0dXJuIFZLRVlfUklH
SFQ7IC8vICgyNykgUklHSFQgQVJST1cga2V5CisgICAgY2FzZSBHREtfS1BfRG93bjoKKyAgICAg
ICAgcmV0dXJuIFZLRVlfRE9XTjsgLy8gKDI4KSBET1dOIEFSUk9XIGtleQorCiAgICAgY2FzZSBH
REtfQmFja1NwYWNlOgogICAgICAgICByZXR1cm4gVktFWV9CQUNLOyAvLyAoMDgpIEJBQ0tTUEFD
RSBrZXkKICAgICBjYXNlIEdES19JU09fTGVmdF9UYWI6CmRpZmYgLS1naXQgYS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9LZXlFdmVudEd0ay5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2d0ay9LZXlFdmVu
dEd0ay5jcHAKaW5kZXggMTFlYTk1Ni4uZTAwZWE0MyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvS2V5RXZlbnRHdGsuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0tleUV2
ZW50R3RrLmNwcApAQCAtMTgxLDYgKzE4MSwyMyBAQCBzdGF0aWMgaW50IHdpbmRvd3NLZXlDb2Rl
Rm9yS2V5RXZlbnQodW5zaWduZWQgaW50IGtleWNvZGUpCiAgICAgICAgIGNhc2UgR0RLX0tQX0Rp
dmlkZToKICAgICAgICAgICAgIHJldHVybiBWS19ESVZJREU7IC8vICg2RikgRGl2aWRlIGtleQog
CisgICAgICAgIGNhc2UgR0RLX0tQX1BhZ2VfVXA6CisgICAgICAgICAgICByZXR1cm4gVktfUFJJ
T1I7IC8vICgyMSkgUEFHRSBVUCBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfUGFnZV9Eb3duOgor
ICAgICAgICAgICAgcmV0dXJuIFZLX05FWFQ7IC8vICgyMikgUEFHRSBET1dOIGtleQorICAgICAg
ICBjYXNlIEdES19LUF9FbmQ6CisgICAgICAgICAgICByZXR1cm4gVktfRU5EOyAvLyAoMjMpIEVO
RCBrZXkKKyAgICAgICAgY2FzZSBHREtfS1BfSG9tZToKKyAgICAgICAgICAgIHJldHVybiBWS19I
T01FOyAvLyAoMjQpIEhPTUUga2V5CisgICAgICAgIGNhc2UgR0RLX0tQX0xlZnQ6CisgICAgICAg
ICAgICByZXR1cm4gVktfTEVGVDsgLy8gKDI1KSBMRUZUIEFSUk9XIGtleQorICAgICAgICBjYXNl
IEdES19LUF9VcDoKKyAgICAgICAgICAgIHJldHVybiBWS19VUDsgLy8gKDI2KSBVUCBBUlJPVyBr
ZXkKKyAgICAgICAgY2FzZSBHREtfS1BfUmlnaHQ6CisgICAgICAgICAgICByZXR1cm4gVktfUklH
SFQ7IC8vICgyNykgUklHSFQgQVJST1cga2V5CisgICAgICAgIGNhc2UgR0RLX0tQX0Rvd246Cisg
ICAgICAgICAgICByZXR1cm4gVktfRE9XTjsgLy8gKDI4KSBET1dOIEFSUk9XIGtleQorCiAgICAg
ICAgIGNhc2UgR0RLX0JhY2tTcGFjZToKICAgICAgICAgICAgIHJldHVybiBWS19CQUNLOyAvLyAo
MDgpIEJBQ0tTUEFDRSBrZXkKICAgICAgICAgY2FzZSBHREtfSVNPX0xlZnRfVGFiOgpkaWZmIC0t
Z2l0IGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCmluZGV4
IDA0ZGZlMDEuLmVkMjk2OTMgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZworKysg
Yi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMC0wMS0wNSAgS2lu
dWtvIFlhc3VkYSAgPGtpbnVrb0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29ycmVjdGx5IGhhbmRsZSB0aGUgS2V5TG9jYXRp
b24gYXJndW1lbnQgdGhhdCBoYXMgYmVlbiBpbnRyb2R1Y2VkCisgICAgICAgIHJlY2VudGx5IHRv
IHRlc3QgbG9jYXRpb24tZGVwZW5kZW50IGtleSBldmVudHMgaW4gRXZlbnRTZW5kZXIua2V5RG93
bi4KKyAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjgyNDcK
KworICAgICAgICBUZXN0OiBmYXN0L2V2ZW50cy9rZXlkb3duLW51bXBhZC1rZXlzLmh0bWwKKwor
ICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2d0ay9FdmVudFNlbmRlci5jcHA6CisgICAgICAgIChr
ZXlEb3duQ2FsbGJhY2spOgorCiAyMDEwLTAxLTA0ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCmRpZmYgLS1naXQgYS9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvRXZlbnRTZW5kZXIuY3BwIGIvV2ViS2l0VG9v
bHMvRHVtcFJlbmRlclRyZWUvZ3RrL0V2ZW50U2VuZGVyLmNwcAppbmRleCAzYjczMTFiLi40NThl
MGJhIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvRXZlbnRTZW5k
ZXIuY3BwCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9FdmVudFNlbmRlci5j
cHAKQEAgLTc2LDYgKzc2LDE0IEBAIHN0YXRpYyB1bnNpZ25lZCBzdGFydE9mUXVldWU7CiAKIHN0
YXRpYyBjb25zdCBmbG9hdCB6b29tTXVsdGlwbGllclJhdGlvID0gMS4yZjsKIAorLy8gS2V5IGV2
ZW50IGxvY2F0aW9uIGNvZGUgZGVmaW5lZCBpbiBET00gTGV2ZWwgMy4KK2VudW0gS2V5TG9jYXRp
b25Db2RlIHsKKyAgICBET01fS0VZX0xPQ0FUSU9OX1NUQU5EQVJEICAgICAgPSAweDAwLAorICAg
IERPTV9LRVlfTE9DQVRJT05fTEVGVCAgICAgICAgICA9IDB4MDEsCisgICAgRE9NX0tFWV9MT0NB
VElPTl9SSUdIVCAgICAgICAgID0gMHgwMiwKKyAgICBET01fS0VZX0xPQ0FUSU9OX05VTVBBRCAg
ICAgICAgPSAweDAzCit9OworCiBzdGF0aWMgSlNWYWx1ZVJlZiBnZXREcmFnTW9kZUNhbGxiYWNr
KEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdFJlZiBvYmplY3QsIEpTU3RyaW5nUmVmIHBy
b3BlcnR5TmFtZSwgSlNWYWx1ZVJlZiogZXhjZXB0aW9uKQogewogICAgIHJldHVybiBKU1ZhbHVl
TWFrZUJvb2xlYW4oY29udGV4dCwgZHJhZ01vZGUpOwpAQCAtNDQ5LDY2ICs0NTcsOTMgQEAgc3Rh
dGljIEpTVmFsdWVSZWYga2V5RG93bkNhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09i
amVjdFJlZiBmdW5jdGlvbiwgSlMKICAgICAgICAgfQogICAgIH0KIAorICAgIC8vIGhhbmRsZSBs
b2NhdGlvbiBhcmd1bWVudC4KKyAgICBpbnQgbG9jYXRpb24gPSBET01fS0VZX0xPQ0FUSU9OX1NU
QU5EQVJEOworICAgIGlmIChhcmd1bWVudENvdW50ID4gMikKKyAgICAgICAgbG9jYXRpb24gPSAo
aW50KUpTVmFsdWVUb051bWJlcihjb250ZXh0LCBhcmd1bWVudHNbMl0sIGV4Y2VwdGlvbik7CisK
ICAgICBKU1N0cmluZ1JlZiBjaGFyYWN0ZXIgPSBKU1ZhbHVlVG9TdHJpbmdDb3B5KGNvbnRleHQs
IGFyZ3VtZW50c1swXSwgZXhjZXB0aW9uKTsKICAgICBnX3JldHVybl92YWxfaWZfZmFpbCgoIWV4
Y2VwdGlvbiB8fCAhKmV4Y2VwdGlvbiksIEpTVmFsdWVNYWtlVW5kZWZpbmVkKGNvbnRleHQpKTsK
LSAgICBpbnQgZ2RrS2V5U3ltOwotICAgIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5n
KGNoYXJhY3RlciwgImxlZnRBcnJvdyIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfTGVmdDsK
LSAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgInJp
Z2h0QXJyb3ciKSkKLSAgICAgICAgZ2RrS2V5U3ltID0gR0RLX1JpZ2h0OwotICAgIGVsc2UgaWYg
KEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAidXBBcnJvdyIpKQotICAg
ICAgICBnZGtLZXlTeW0gPSBHREtfVXA7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9V
VEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJkb3duQXJyb3ciKSkKLSAgICAgICAgZ2RrS2V5U3ltID0g
R0RLX0Rvd247Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFy
YWN0ZXIsICJwYWdlVXAiKSkKLSAgICAgICAgZ2RrS2V5U3ltID0gR0RLX1BhZ2VfVXA7Ci0gICAg
ZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJwYWdlRG93
biIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfUGFnZV9Eb3duOwotICAgIGVsc2UgaWYgKEpT
U3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiaG9tZSIpKQotICAgICAgICBn
ZGtLZXlTeW0gPSBHREtfSG9tZTsKLSAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhD
U3RyaW5nKGNoYXJhY3RlciwgImVuZCIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRW5kOwot
ICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiZGVs
ZXRlIikpCi0gICAgICAgIGdka0tleVN5bSA9IEdES19CYWNrU3BhY2U7Ci0gICAgZWxzZSBpZiAo
SlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGMSIpKQotICAgICAgICBn
ZGtLZXlTeW0gPSBHREtfRjE7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0
cmluZyhjaGFyYWN0ZXIsICJGMiIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjI7Ci0gICAg
ZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGMyIpKQot
ICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjM7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFs
VG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGNCIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtf
RjQ7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIs
ICJGNSIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjU7Ci0gICAgZWxzZSBpZiAoSlNTdHJp
bmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGNiIpKQotICAgICAgICBnZGtLZXlT
eW0gPSBHREtfRjY7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhj
aGFyYWN0ZXIsICJGNyIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjc7Ci0gICAgZWxzZSBp
ZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGOCIpKQotICAgICAg
ICBnZGtLZXlTeW0gPSBHREtfRjg7Ci0gICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4
Q1N0cmluZyhjaGFyYWN0ZXIsICJGOSIpKQotICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjk7Ci0g
ICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGMTAi
KSkKLSAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0YxMDsKLSAgICBlbHNlIGlmIChKU1N0cmluZ0lz
RXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkYxMSIpKQotICAgICAgICBnZGtLZXlTeW0g
PSBHREtfRjExOwotICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hh
cmFjdGVyLCAiRjEyIikpCi0gICAgICAgIGdka0tleVN5bSA9IEdES19GMTI7Ci0gICAgZWxzZSB7
Ci0gICAgICAgIGludCBjaGFyQ29kZSA9IEpTU3RyaW5nR2V0Q2hhcmFjdGVyc1B0cihjaGFyYWN0
ZXIpWzBdOwotICAgICAgICBpZiAoY2hhckNvZGUgPT0gJ1xuJyB8fCBjaGFyQ29kZSA9PSAnXHIn
KQotICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX1JldHVybjsKLSAgICAgICAgZWxzZSBpZiAo
Y2hhckNvZGUgPT0gJ1x0JykKLSAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19UYWI7Ci0gICAg
ICAgIGVsc2UgaWYgKGNoYXJDb2RlID09ICdceDgnKQorICAgIGludCBnZGtLZXlTeW0gPSBHREtf
Vm9pZFN5bWJvbDsKKyAgICBpZiAobG9jYXRpb24gPT0gRE9NX0tFWV9MT0NBVElPTl9OVU1QQUQp
IHsKKyAgICAgICAgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAi
bGVmdEFycm93IikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfS1BfTGVmdDsKKyAgICAg
ICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJyaWdo
dEFycm93IikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfS1BfUmlnaHQ7CisgICAgICAg
IGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAidXBBcnJv
dyIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0tQX1VwOworICAgICAgICBlbHNlIGlm
IChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgImRvd25BcnJvdyIpKQor
ICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0tQX0Rvd247CisgICAgICAgIGVsc2UgaWYgKEpT
U3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAicGFnZVVwIikpCisgICAgICAg
ICAgICBnZGtLZXlTeW0gPSBHREtfS1BfUGFnZV9VcDsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJp
bmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJwYWdlRG93biIpKQorICAgICAgICAg
ICAgZ2RrS2V5U3ltID0gR0RLX0tQX1BhZ2VfRG93bjsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJp
bmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJob21lIikpCisgICAgICAgICAgICBn
ZGtLZXlTeW0gPSBHREtfS1BfSG9tZTsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFs
VG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJlbmQiKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9
IEdES19LUF9FbmQ7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIC8vIEFzc3VtZSB3ZSBvbmx5
IGdldCBhcnJvdy9wZ1VwL3BnRG4vaG9tZS9lbmQga2V5cyB3aXRoCisgICAgICAgICAgICAvLyBs
b2NhdGlvbj1OVU1QQUQgZm9yIG5vdy4KKyAgICAgICAgICAgIGdfYXNzZXJ0X25vdF9yZWFjaGVk
KCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJp
bmcoY2hhcmFjdGVyLCAibGVmdEFycm93IikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtf
TGVmdDsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFy
YWN0ZXIsICJyaWdodEFycm93IikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfUmlnaHQ7
CisgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVy
LCAidXBBcnJvdyIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX1VwOworICAgICAgICBl
bHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgImRvd25BcnJv
dyIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0Rvd247CisgICAgICAgIGVsc2UgaWYg
KEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAicGFnZVVwIikpCisgICAg
ICAgICAgICBnZGtLZXlTeW0gPSBHREtfUGFnZV9VcDsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJp
bmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJwYWdlRG93biIpKQorICAgICAgICAg
ICAgZ2RrS2V5U3ltID0gR0RLX1BhZ2VfRG93bjsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJ
c0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJob21lIikpCisgICAgICAgICAgICBnZGtL
ZXlTeW0gPSBHREtfSG9tZTsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4
Q1N0cmluZyhjaGFyYWN0ZXIsICJlbmQiKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19F
bmQ7CisgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFj
dGVyLCAiZGVsZXRlIikpCiAgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfQmFja1NwYWNlOwor
ICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3Rlciwg
IkYxIikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjE7CisgICAgICAgIGVsc2UgaWYg
KEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjIiKSkKKyAgICAgICAg
ICAgIGdka0tleVN5bSA9IEdES19GMjsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFs
VG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGMyIpKQorICAgICAgICAgICAgZ2RrS2V5U3ltID0g
R0RLX0YzOworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNo
YXJhY3RlciwgIkY0IikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjQ7CisgICAgICAg
IGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiRjUiKSkK
KyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19GNTsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJp
bmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGNiIpKQorICAgICAgICAgICAgZ2Rr
S2V5U3ltID0gR0RLX0Y2OworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhD
U3RyaW5nKGNoYXJhY3RlciwgIkY3IikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjc7
CisgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVy
LCAiRjgiKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19GODsKKyAgICAgICAgZWxzZSBp
ZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIsICJGOSIpKQorICAgICAg
ICAgICAgZ2RrS2V5U3ltID0gR0RLX0Y5OworICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1
YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgIkYxMCIpKQorICAgICAgICAgICAgZ2RrS2V5U3lt
ID0gR0RLX0YxMDsKKyAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmlu
ZyhjaGFyYWN0ZXIsICJGMTEiKSkKKyAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19GMTE7Cisg
ICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAi
RjEyIikpCisgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfRjEyOwogICAgICAgICBlbHNlIHsK
LSAgICAgICAgICAgIGdka0tleVN5bSA9IGdka191bmljb2RlX3RvX2tleXZhbChjaGFyQ29kZSk7
Ci0gICAgICAgICAgICBpZiAoV1RGOjppc0FTQ0lJVXBwZXIoY2hhckNvZGUpKQotICAgICAgICAg
ICAgICAgIHN0YXRlIHw9IEdES19TSElGVF9NQVNLOworICAgICAgICAgICAgaW50IGNoYXJDb2Rl
ID0gSlNTdHJpbmdHZXRDaGFyYWN0ZXJzUHRyKGNoYXJhY3RlcilbMF07CisgICAgICAgICAgICBp
ZiAoY2hhckNvZGUgPT0gJ1xuJyB8fCBjaGFyQ29kZSA9PSAnXHInKQorICAgICAgICAgICAgICAg
IGdka0tleVN5bSA9IEdES19SZXR1cm47CisgICAgICAgICAgICBlbHNlIGlmIChjaGFyQ29kZSA9
PSAnXHQnKQorICAgICAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19UYWI7CisgICAgICAgICAg
ICBlbHNlIGlmIChjaGFyQ29kZSA9PSAnXHg4JykKKyAgICAgICAgICAgICAgICBnZGtLZXlTeW0g
PSBHREtfQmFja1NwYWNlOworICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgZ2Rr
S2V5U3ltID0gZ2RrX3VuaWNvZGVfdG9fa2V5dmFsKGNoYXJDb2RlKTsKKyAgICAgICAgICAgICAg
ICBpZiAoV1RGOjppc0FTQ0lJVXBwZXIoY2hhckNvZGUpKQorICAgICAgICAgICAgICAgICAgICBz
dGF0ZSB8PSBHREtfU0hJRlRfTUFTSzsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0K
LQogICAgIEpTU3RyaW5nUmVsZWFzZShjaGFyYWN0ZXIpOwogCiAgICAgV2ViS2l0V2ViVmlldyog
dmlldyA9IHdlYmtpdF93ZWJfZnJhbWVfZ2V0X3dlYl92aWV3KG1haW5GcmFtZSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>