<?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>81950</bug_id>
          
          <creation_ts>2012-03-22 12:47:14 -0700</creation_ts>
          <short_desc>[Chromium] Add Android keycodes</short_desc>
          <delta_ts>2012-03-26 16:39:52 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Android</rep_platform>
          <op_sys>Android</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>Minor</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Bolin Hsu">bhsu</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>peter</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>585599</commentid>
    <comment_count>0</comment_count>
    <who name="Bolin Hsu">bhsu</who>
    <bug_when>2012-03-22 12:47:14 -0700</bug_when>
    <thetext>WebCore.windowsKeyCodeForKeyEvent() in KeyCodeConversionAndroid.cpp converts Android keycode to WebKit keycode. This file imports the Android keycode definition from &lt;android/keycodes.h&gt;. Some keycodes triggered by normal QWERTY keyboards are not defined in &lt;android/keycodes.h&gt;. A key event is mapped to WebKit keycode zero if its Android keycode is not defined and handled here.

To handle Android keycode not defined in &lt;android/keycodes.h&gt;, KeyCodeConversionAndroid.cpp currently defines and handles two Android keycodes locally, AKEYCODE_MEDIA_PAUSE and AKEYCODE_VOLUME_MORE. The following keycodes could be handled in the same way:

    AKEYCODE_ESCAPE
    AKEYCODE_FORWARD_DEL
    AKEYCODE_CTRL_LEFT
    AKEYCODE_CTRL_RIGHT
    AKEYCODE_CAPS_LOCK
    AKEYCODE_SCROLL_LOCK
    AKEYCODE_META_LEFT
    AKEYCODE_META_RIGHT
    AKEYCODE_BREAK
    AKEYCODE_INSERT
    AKEYCODE_MEDIA_PLAY
    AKEYCODE_F1
    AKEYCODE_F2
    AKEYCODE_F3
    AKEYCODE_F4
    AKEYCODE_F5
    AKEYCODE_F6
    AKEYCODE_F7
    AKEYCODE_F8
    AKEYCODE_F9
    AKEYCODE_F10
    AKEYCODE_F11
    AKEYCODE_F12
    AKEYCODE_NUM_LOCK
    AKEYCODE_NUMPAD_0
    AKEYCODE_NUMPAD_1
    AKEYCODE_NUMPAD_2
    AKEYCODE_NUMPAD_3
    AKEYCODE_NUMPAD_4
    AKEYCODE_NUMPAD_5
    AKEYCODE_NUMPAD_6
    AKEYCODE_NUMPAD_7
    AKEYCODE_NUMPAD_8
    AKEYCODE_NUMPAD_9
    AKEYCODE_NUMPAD_DIVIDE
    AKEYCODE_NUMPAD_MULTIPLY
    AKEYCODE_NUMPAD_SUBTRACT
    AKEYCODE_NUMPAD_ADD
    AKEYCODE_NUMPAD_DOT
    AKEYCODE_CHANNEL_UP
    AKEYCODE_CHANNEL_DOWN</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585871</commentid>
    <comment_count>1</comment_count>
      <attachid>133387</attachid>
    <who name="Bolin Hsu">bhsu</who>
    <bug_when>2012-03-22 16:57:46 -0700</bug_when>
    <thetext>Created attachment 133387
Patch that adds Android keycodes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585901</commentid>
    <comment_count>2</comment_count>
      <attachid>133396</attachid>
    <who name="Bolin Hsu">bhsu</who>
    <bug_when>2012-03-22 17:25:57 -0700</bug_when>
    <thetext>Created attachment 133396
Patch that adds Android keycodes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>587209</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-24 17:41:58 -0700</bug_when>
    <thetext>Did you mean to mark this patch for review?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>587788</commentid>
    <comment_count>4</comment_count>
      <attachid>133396</attachid>
    <who name="Peter Beverloo">peter</who>
    <bug_when>2012-03-26 08:50:22 -0700</bug_when>
    <thetext>Comment on attachment 133396
Patch that adds Android keycodes

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

Thanks! I&apos;ve got some questions/comments on the patch (following up on the patch failing to apply in the e-mail thread).

&gt; WebKit/Source/WebCore/ChangeLog:3
&gt; +        Add Android keycodes

nit: Since this is Chromium-specific code, we usually prepend the title with [Chromium].

&gt; WebKit/Source/WebCore/platform/chromium/KeyCodeConversionAndroid.cpp:36
&gt; +namespace {

The usage of anonymous namespaces within WebKit is not really preferred (though not completely disallowed either). What is the benefit of putting these values in one? It&apos;s going to break during a future NDK update either way.

&gt; WebKit/Source/WebCore/platform/chromium/KeyCodeConversionAndroid.cpp:238
&gt; +#if defined(GTV)

What is the reason that we want to keep this specific to GTV?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>587836</commentid>
    <comment_count>5</comment_count>
    <who name="Bolin Hsu">bhsu</who>
    <bug_when>2012-03-26 09:44:22 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 133396 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=133396&amp;action=review
&gt; 
&gt; Thanks! I&apos;ve got some questions/comments on the patch (following up on the patch failing to apply in the e-mail thread).
&gt; 
&gt; &gt; WebKit/Source/WebCore/ChangeLog:3
&gt; &gt; +        Add Android keycodes
&gt; 
&gt; nit: Since this is Chromium-specific code, we usually prepend the title with [Chromium].
I will change the title, if this is possible. 

&gt; 
&gt; &gt; WebKit/Source/WebCore/platform/chromium/KeyCodeConversionAndroid.cpp:36
&gt; &gt; +namespace {
&gt; 
&gt; The usage of anonymous namespaces within WebKit is not really preferred (though not completely disallowed either). What is the benefit of putting these values in one? It&apos;s going to break during a future NDK update either way.
The intention of the anonymous namespace is to limit the visibility of the enum to this file. I will remove it.

&gt; 
&gt; &gt; WebKit/Source/WebCore/platform/chromium/KeyCodeConversionAndroid.cpp:238
&gt; &gt; +#if defined(GTV)
&gt; 
&gt; What is the reason that we want to keep this specific to GTV?
The guarded part uses GTV specific VKEY_OEM_103 and VKEY_OEM_104 defined elsewhere. I will take this chance to add the definition of these two codes, then this is not GTV specific anymore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>587937</commentid>
    <comment_count>6</comment_count>
      <attachid>133850</attachid>
    <who name="Bolin Hsu">bhsu</who>
    <bug_when>2012-03-26 11:13:12 -0700</bug_when>
    <thetext>Created attachment 133850
Patch that adds Android keycodes

New patch that includes recommendation from Peter&apos;s review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588186</commentid>
    <comment_count>7</comment_count>
      <attachid>133906</attachid>
    <who name="Bolin Hsu">bhsu</who>
    <bug_when>2012-03-26 15:19:39 -0700</bug_when>
    <thetext>Created attachment 133906
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588189</commentid>
    <comment_count>8</comment_count>
      <attachid>133906</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-26 15:25:14 -0700</bug_when>
    <thetext>Comment on attachment 133906
Patch

Thanks for the patch!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588301</commentid>
    <comment_count>9</comment_count>
      <attachid>133906</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-26 16:39:47 -0700</bug_when>
    <thetext>Comment on attachment 133906
Patch

Clearing flags on attachment: 133906

Committed r112174: &lt;http://trac.webkit.org/changeset/112174&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588302</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-26 16:39:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133387</attachid>
            <date>2012-03-22 16:57:46 -0700</date>
            <delta_ts>2012-03-22 17:25:57 -0700</delta_ts>
            <desc>Patch that adds Android keycodes</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>7321</size>
            <attacher name="Bolin Hsu">bhsu</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
S2l0L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTExNzQ5KQorKysgV2ViS2l0
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBA
CisyMDEyLTAzLTIyICBCb2xpbiBIc3UgIDxiaHN1QGdvb2dsZS5jb20+CisKKyAgICAgICAgQWRk
IEFuZHJvaWQga2V5Y29kZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTgxOTUwCisKKyAgICAgICAgQWRkIHRoZSBtaXNzaW5nIEFuZHJvaWQga2V5Y29k
ZXMgbGlzdGVkIGluIHRoZSBidWcuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkFuZHJv
aWQuY3BwOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjp3aW5kb3dzS2V5
Q29kZUZvcktleUV2ZW50KToKKwogMjAxMi0wMy0yMiAgS2V2aW4gT2xsaXZpZXIgIDxrZXZpbm9A
dGhlb2xsaXZpZXJzLmNvbT4KIAogICAgICAgICBbd3hdIFVucmV2aWV3ZWQuIFdlYkRPTSBidWls
ZCBmaXggYWZ0ZXIgYXJyYXkgdHlwZSBjaGFuZ2VzLgpJbmRleDogV2ViS2l0L1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVDb252ZXJzaW9uQW5kcm9pZC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVD
b252ZXJzaW9uQW5kcm9pZC5jcHAJKHJldmlzaW9uIDExMTYzMSkKKysrIFdlYktpdC9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkFuZHJvaWQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yOSwxNiArMjksNjUgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiS2V5Ym9hcmRDb2Rlcy5oIgogCiAjaW5jbHVkZSA8YW5kcm9pZC9rZXlj
b2Rlcy5oPgogCi0vLyBUaGUgQW5kcm9pZCBOREsgZG9lcyBub3QgcHJvdmlkZSB2YWx1ZXMgZm9y
IHRoZXNlIHlldDoKLSNkZWZpbmUgQUtFWUNPREVfTUVESUFfUEFVU0UgMTI3Ci0jZGVmaW5lIEFL
RVlDT0RFX1ZPTFVNRV9NVVRFIDE2NAorI2luY2x1ZGUgIktleWJvYXJkQ29kZXMuaCIKKworbmFt
ZXNwYWNlIHsKKy8vIFRPRE8oYmhzdSk6IHRoZSB2YWx1ZXMgb2YgdGhpcyBlbnVtIGlzIGNvcGll
ZCBmcm9tCisvLyAke0FORFJPSUR9L2ZyYW1ld29ya3MvYmFzZS9uYXRpdmUvaW5jbHVkZS9hbmRy
b2lkL2tleWNvZGVzLmgKKy8vIFJlbW92ZSB0aGVzZSB3aGVuIHRoZXkgYXJlIGFkZGVkIHRvIGtl
eWNvZGVzLmggb2YgTkRLLgorZW51bSB7CisgICAgQUtFWUNPREVfRVNDQVBFICAgICAgICAgID0g
MTExLAorICAgIEFLRVlDT0RFX0ZPUldBUkRfREVMICAgICA9IDExMiwKKyAgICBBS0VZQ09ERV9D
VFJMX0xFRlQgICAgICAgPSAxMTMsCisgICAgQUtFWUNPREVfQ1RSTF9SSUdIVCAgICAgID0gMTE0
LAorICAgIEFLRVlDT0RFX0NBUFNfTE9DSyAgICAgICA9IDExNSwKKyAgICBBS0VZQ09ERV9TQ1JP
TExfTE9DSyAgICAgPSAxMTYsCisgICAgQUtFWUNPREVfTUVUQV9MRUZUICAgICAgID0gMTE3LAor
ICAgIEFLRVlDT0RFX01FVEFfUklHSFQgICAgICA9IDExOCwKKyAgICBBS0VZQ09ERV9CUkVBSyAg
ICAgICAgICAgPSAxMjEsCisgICAgQUtFWUNPREVfSU5TRVJUICAgICAgICAgID0gMTI0LAorICAg
IEFLRVlDT0RFX01FRElBX1BMQVkgICAgICA9IDEyNiwKKyAgICBBS0VZQ09ERV9NRURJQV9QQVVT
RSAgICAgPSAxMjcsCisgICAgQUtFWUNPREVfRjEgICAgICAgICAgICAgID0gMTMxLAorICAgIEFL
RVlDT0RFX0YyICAgICAgICAgICAgICA9IDEzMiwKKyAgICBBS0VZQ09ERV9GMyAgICAgICAgICAg
ICAgPSAxMzMsCisgICAgQUtFWUNPREVfRjQgICAgICAgICAgICAgID0gMTM0LAorICAgIEFLRVlD
T0RFX0Y1ICAgICAgICAgICAgICA9IDEzNSwKKyAgICBBS0VZQ09ERV9GNiAgICAgICAgICAgICAg
PSAxMzYsCisgICAgQUtFWUNPREVfRjcgICAgICAgICAgICAgID0gMTM3LAorICAgIEFLRVlDT0RF
X0Y4ICAgICAgICAgICAgICA9IDEzOCwKKyAgICBBS0VZQ09ERV9GOSAgICAgICAgICAgICAgPSAx
MzksCisgICAgQUtFWUNPREVfRjEwICAgICAgICAgICAgID0gMTQwLAorICAgIEFLRVlDT0RFX0Yx
MSAgICAgICAgICAgICA9IDE0MSwKKyAgICBBS0VZQ09ERV9GMTIgICAgICAgICAgICAgPSAxNDIs
CisgICAgQUtFWUNPREVfTlVNX0xPQ0sgICAgICAgID0gMTQzLAorICAgIEFLRVlDT0RFX05VTVBB
RF8wICAgICAgICA9IDE0NCwKKyAgICBBS0VZQ09ERV9OVU1QQURfMSAgICAgICAgPSAxNDUsCisg
ICAgQUtFWUNPREVfTlVNUEFEXzIgICAgICAgID0gMTQ2LAorICAgIEFLRVlDT0RFX05VTVBBRF8z
ICAgICAgICA9IDE0NywKKyAgICBBS0VZQ09ERV9OVU1QQURfNCAgICAgICAgPSAxNDgsCisgICAg
QUtFWUNPREVfTlVNUEFEXzUgICAgICAgID0gMTQ5LAorICAgIEFLRVlDT0RFX05VTVBBRF82ICAg
ICAgICA9IDE1MCwKKyAgICBBS0VZQ09ERV9OVU1QQURfNyAgICAgICAgPSAxNTEsCisgICAgQUtF
WUNPREVfTlVNUEFEXzggICAgICAgID0gMTUyLAorICAgIEFLRVlDT0RFX05VTVBBRF85ICAgICAg
ICA9IDE1MywKKyAgICBBS0VZQ09ERV9OVU1QQURfRElWSURFICAgPSAxNTQsCisgICAgQUtFWUNP
REVfTlVNUEFEX01VTFRJUExZID0gMTU1LAorICAgIEFLRVlDT0RFX05VTVBBRF9TVUJUUkFDVCA9
IDE1NiwKKyAgICBBS0VZQ09ERV9OVU1QQURfQUREICAgICAgPSAxNTcsCisgICAgQUtFWUNPREVf
TlVNUEFEX0RPVCAgICAgID0gMTU4LAorICAgIEFLRVlDT0RFX1ZPTFVNRV9NVVRFICAgICA9IDE2
NCwKKyAgICBBS0VZQ09ERV9DSEFOTkVMX1VQICAgICAgPSAxNjYsCisgICAgQUtFWUNPREVfQ0hB
Tk5FTF9ET1dOICAgID0gMTY3LAorfTsKK30gLy8gbmFtZXNwYWNlCiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAorLy8gY29tcGFyZSB0byBzYW1lIGZ1bmN0aW9uIGluIHBsYXRmb3JtL2FuZHJvaWQv
S2V5RXZlbnRBbmRyb2lkLmNwcAogaW50IHdpbmRvd3NLZXlDb2RlRm9yS2V5RXZlbnQodW5zaWdu
ZWQgaW50IGtleUNvZGUpCiB7CiAgICAgLy8gRG9lcyBub3QgcHJvdmlkZSBhbGwga2V5IGNvZGVz
LCBhbmQgZG9lcyBub3QgaGFuZGxlIGFsbCBrZXlzLgpAQCAtNTUsNyArMTA0LDcgQEAgaW50IHdp
bmRvd3NLZXlDb2RlRm9yS2V5RXZlbnQodW5zaWduZWQgaQogICAgIGNhc2UgQUtFWUNPREVfU0hJ
RlRfTEVGVDoKICAgICBjYXNlIEFLRVlDT0RFX1NISUZUX1JJR0hUOgogICAgICAgICByZXR1cm4g
VktFWV9TSElGVDsKLSAgICAvLyBCYWNrIHdpbGwgc2VydmUgYXMgZXNjYXBlLCBhbHRob3VnaCB3
ZSBtYXkgbm90IGhhdmUgYWNjZXNzIHRvIGl0LgorICAgIC8vIGJhY2sgd2lsbCBzZXJ2ZSBhcyBl
c2NhcGUsIGFsdGhvdWdoIHdlIHByb2JhYmx5IGRvIG5vdCBoYXZlIGFjY2VzcyB0byBpdAogICAg
IGNhc2UgQUtFWUNPREVfQkFDSzoKICAgICAgICAgcmV0dXJuIFZLRVlfRVNDQVBFOwogICAgIGNh
c2UgQUtFWUNPREVfU1BBQ0U6CkBAIC0xNTQsNyArMjAzLDcgQEAgaW50IHdpbmRvd3NLZXlDb2Rl
Rm9yS2V5RXZlbnQodW5zaWduZWQgaQogICAgICAgICByZXR1cm4gVktFWV9NRURJQV9TVE9QOwog
ICAgIGNhc2UgQUtFWUNPREVfTUVESUFfUEFVU0U6CiAgICAgICAgIHJldHVybiBWS0VZX01FRElB
X1BMQVlfUEFVU0U7Ci0gICAgLy8gQ29sb24ga2V5LgorICAgIC8vIGNvbG9uCiAgICAgY2FzZSBB
S0VZQ09ERV9TRU1JQ09MT046CiAgICAgICAgIHJldHVybiBWS0VZX09FTV8xOwogICAgIGNhc2Ug
QUtFWUNPREVfQ09NTUE6CkBAIC0xNjcsNiArMjE2LDcgQEAgaW50IHdpbmRvd3NLZXlDb2RlRm9y
S2V5RXZlbnQodW5zaWduZWQgaQogICAgICAgICByZXR1cm4gVktFWV9PRU1fUEVSSU9EOwogICAg
IGNhc2UgQUtFWUNPREVfU0xBU0g6CiAgICAgICAgIHJldHVybiBWS0VZX09FTV8yOworICAgIC8v
IG1heWJlIG5vdCB0aGUgcmlnaHQgY2hvaWNlCiAgICAgY2FzZSBBS0VZQ09ERV9MRUZUX0JSQUNL
RVQ6CiAgICAgICAgIHJldHVybiBWS0VZX09FTV80OwogICAgIGNhc2UgQUtFWUNPREVfQkFDS1NM
QVNIOgpAQCAtMTc2LDYgKzIyNiwxMDcgQEAgaW50IHdpbmRvd3NLZXlDb2RlRm9yS2V5RXZlbnQo
dW5zaWduZWQgaQogICAgIGNhc2UgQUtFWUNPREVfTVVURToKICAgICBjYXNlIEFLRVlDT0RFX1ZP
TFVNRV9NVVRFOgogICAgICAgICByZXR1cm4gVktFWV9WT0xVTUVfTVVURTsKKyAgICBjYXNlIEFL
RVlDT0RFX0VTQ0FQRToKKyAgICAgICAgcmV0dXJuIFZLRVlfRVNDQVBFOworICAgIGNhc2UgQUtF
WUNPREVfTUVESUFfUExBWToKKyAgICBjYXNlIEFLRVlDT0RFX01FRElBX1BMQVlfUEFVU0U6Cisg
ICAgICAgIHJldHVybiBWS0VZX01FRElBX1BMQVlfUEFVU0U7CisgICAgY2FzZSBBS0VZQ09ERV9D
QUxMOgorICAgICAgICByZXR1cm4gVktFWV9FTkQ7CisgICAgY2FzZSBBS0VZQ09ERV9BTFRfTEVG
VDoKKyAgICBjYXNlIEFLRVlDT0RFX0FMVF9SSUdIVDoKKyAgICAgICAgcmV0dXJuIFZLRVlfTUVO
VTsKKyAgICBjYXNlIEFLRVlDT0RFX0dSQVZFOgorICAgICAgICByZXR1cm4gVktFWV9PRU1fMzsK
KyAgICBjYXNlIEFLRVlDT0RFX0FQT1NUUk9QSEU6CisgICAgICAgIHJldHVybiBWS0VZX09FTV8z
OworI2lmIGRlZmluZWQoR1RWKQorICAgIGNhc2UgQUtFWUNPREVfTUVESUFfUkVXSU5EOgorICAg
ICAgICByZXR1cm4gVktFWV9PRU1fMTAzOworICAgIGNhc2UgQUtFWUNPREVfTUVESUFfRkFTVF9G
T1JXQVJEOgorICAgICAgICByZXR1cm4gVktFWV9PRU1fMTA0OworI2VuZGlmCisgICAgY2FzZSBB
S0VZQ09ERV9QQUdFX1VQOgorICAgICAgICByZXR1cm4gVktFWV9QUklPUjsKKyAgICBjYXNlIEFL
RVlDT0RFX1BBR0VfRE9XTjoKKyAgICAgICAgcmV0dXJuIFZLRVlfTkVYVDsKKyAgICBjYXNlIEFL
RVlDT0RFX0ZPUldBUkRfREVMOgorICAgICAgICByZXR1cm4gVktFWV9ERUxFVEU7CisgICAgY2Fz
ZSBBS0VZQ09ERV9DVFJMX0xFRlQ6CisgICAgY2FzZSBBS0VZQ09ERV9DVFJMX1JJR0hUOgorICAg
ICAgICByZXR1cm4gVktFWV9DT05UUk9MOworICAgIGNhc2UgQUtFWUNPREVfQ0FQU19MT0NLOgor
ICAgICAgICByZXR1cm4gVktFWV9DQVBJVEFMOworICAgIGNhc2UgQUtFWUNPREVfU0NST0xMX0xP
Q0s6CisgICAgICAgIHJldHVybiBWS0VZX1NDUk9MTDsKKyAgICBjYXNlIEFLRVlDT0RFX01FVEFf
TEVGVDoKKyAgICAgICAgcmV0dXJuIFZLRVlfTFdJTjsKKyAgICBjYXNlIEFLRVlDT0RFX01FVEFf
UklHSFQ6CisgICAgICAgIHJldHVybiBWS0VZX1JXSU47CisgICAgY2FzZSBBS0VZQ09ERV9CUkVB
SzoKKyAgICAgICAgcmV0dXJuIFZLRVlfUEFVU0U7CisgICAgY2FzZSBBS0VZQ09ERV9JTlNFUlQ6
CisgICAgICAgIHJldHVybiBWS0VZX0lOU0VSVDsKKyAgICBjYXNlIEFLRVlDT0RFX0YxOgorICAg
ICAgICByZXR1cm4gVktFWV9GMTsKKyAgICBjYXNlIEFLRVlDT0RFX0YyOgorICAgICAgICByZXR1
cm4gVktFWV9GMjsKKyAgICBjYXNlIEFLRVlDT0RFX0YzOgorICAgICAgICByZXR1cm4gVktFWV9G
MzsKKyAgICBjYXNlIEFLRVlDT0RFX0Y0OgorICAgICAgICByZXR1cm4gVktFWV9GNDsKKyAgICBj
YXNlIEFLRVlDT0RFX0Y1OgorICAgICAgICByZXR1cm4gVktFWV9GNTsKKyAgICBjYXNlIEFLRVlD
T0RFX0Y2OgorICAgICAgICByZXR1cm4gVktFWV9GNjsKKyAgICBjYXNlIEFLRVlDT0RFX0Y3Ogor
ICAgICAgICByZXR1cm4gVktFWV9GNzsKKyAgICBjYXNlIEFLRVlDT0RFX0Y4OgorICAgICAgICBy
ZXR1cm4gVktFWV9GODsKKyAgICBjYXNlIEFLRVlDT0RFX0Y5OgorICAgICAgICByZXR1cm4gVktF
WV9GOTsKKyAgICBjYXNlIEFLRVlDT0RFX0YxMDoKKyAgICAgICAgcmV0dXJuIFZLRVlfRjEwOwor
ICAgIGNhc2UgQUtFWUNPREVfRjExOgorICAgICAgICByZXR1cm4gVktFWV9GMTE7CisgICAgY2Fz
ZSBBS0VZQ09ERV9GMTI6CisgICAgICAgIHJldHVybiBWS0VZX0YxMjsKKyAgICBjYXNlIEFLRVlD
T0RFX05VTV9MT0NLOgorICAgICAgICByZXR1cm4gVktFWV9OVU1MT0NLOworICAgIGNhc2UgQUtF
WUNPREVfTlVNUEFEXzA6CisgICAgICAgIHJldHVybiBWS0VZX05VTVBBRDA7CisgICAgY2FzZSBB
S0VZQ09ERV9OVU1QQURfMToKKyAgICAgICAgcmV0dXJuIFZLRVlfTlVNUEFEMTsKKyAgICBjYXNl
IEFLRVlDT0RFX05VTVBBRF8yOgorICAgICAgICByZXR1cm4gVktFWV9OVU1QQUQyOworICAgIGNh
c2UgQUtFWUNPREVfTlVNUEFEXzM6CisgICAgICAgIHJldHVybiBWS0VZX05VTVBBRDM7CisgICAg
Y2FzZSBBS0VZQ09ERV9OVU1QQURfNDoKKyAgICAgICAgcmV0dXJuIFZLRVlfTlVNUEFENDsKKyAg
ICBjYXNlIEFLRVlDT0RFX05VTVBBRF81OgorICAgICAgICByZXR1cm4gVktFWV9OVU1QQUQ1Owor
ICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEXzY6CisgICAgICAgIHJldHVybiBWS0VZX05VTVBBRDY7
CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfNzoKKyAgICAgICAgcmV0dXJuIFZLRVlfTlVNUEFE
NzsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF84OgorICAgICAgICByZXR1cm4gVktFWV9OVU1Q
QUQ4OworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEXzk6CisgICAgICAgIHJldHVybiBWS0VZX05V
TVBBRDk7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfRElWSURFOgorICAgICAgICByZXR1cm4g
VktFWV9ESVZJREU7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfTVVMVElQTFk6CisgICAgICAg
IHJldHVybiBWS0VZX01VTFRJUExZOworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEX1NVQlRSQUNU
OgorICAgICAgICByZXR1cm4gVktFWV9TVUJUUkFDVDsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBB
RF9BREQ6CisgICAgICAgIHJldHVybiBWS0VZX0FERDsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBB
RF9ET1Q6CisgICAgICAgIHJldHVybiBWS0VZX0RFQ0lNQUw7CisgICAgY2FzZSBBS0VZQ09ERV9D
SEFOTkVMX1VQOgorICAgICAgICByZXR1cm4gVktFWV9QUklPUjsKKyAgICBjYXNlIEFLRVlDT0RF
X0NIQU5ORUxfRE9XTjoKKyAgICAgICAgcmV0dXJuIFZLRVlfTkVYVDsKICAgICBkZWZhdWx0Ogog
ICAgICAgICByZXR1cm4gMDsKICAgICB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133396</attachid>
            <date>2012-03-22 17:25:57 -0700</date>
            <delta_ts>2012-03-26 11:13:12 -0700</delta_ts>
            <desc>Patch that adds Android keycodes</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>5918</size>
            <attacher name="Bolin Hsu">bhsu</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
S2l0L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTExNzQ5KQorKysgV2ViS2l0
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBA
CisyMDEyLTAzLTIyICBCb2xpbiBIc3UgIDxiaHN1QGdvb2dsZS5jb20+CisKKyAgICAgICAgQWRk
IEFuZHJvaWQga2V5Y29kZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTgxOTUwCisKKyAgICAgICAgQWRkIHRoZSBtaXNzaW5nIEFuZHJvaWQga2V5Y29k
ZXMgbGlzdGVkIGluIHRoZSBidWcuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkFuZHJv
aWQuY3BwOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjp3aW5kb3dzS2V5
Q29kZUZvcktleUV2ZW50KToKKwogMjAxMi0wMy0yMiAgS2V2aW4gT2xsaXZpZXIgIDxrZXZpbm9A
dGhlb2xsaXZpZXJzLmNvbT4KIAogICAgICAgICBbd3hdIFVucmV2aWV3ZWQuIFdlYkRPTSBidWls
ZCBmaXggYWZ0ZXIgYXJyYXkgdHlwZSBjaGFuZ2VzLgpJbmRleDogV2ViS2l0L1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVDb252ZXJzaW9uQW5kcm9pZC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVD
b252ZXJzaW9uQW5kcm9pZC5jcHAJKHJldmlzaW9uIDExMTYzMSkKKysrIFdlYktpdC9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkFuZHJvaWQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0zMyw5ICszMyw1NCBAQAogCiAjaW5jbHVkZSA8YW5kcm9pZC9rZXlj
b2Rlcy5oPgogCituYW1lc3BhY2UgewogLy8gVGhlIEFuZHJvaWQgTkRLIGRvZXMgbm90IHByb3Zp
ZGUgdmFsdWVzIGZvciB0aGVzZSB5ZXQ6Ci0jZGVmaW5lIEFLRVlDT0RFX01FRElBX1BBVVNFIDEy
NwotI2RlZmluZSBBS0VZQ09ERV9WT0xVTUVfTVVURSAxNjQKK2VudW0geworICAgIEFLRVlDT0RF
X0VTQ0FQRSAgICAgICAgICA9IDExMSwKKyAgICBBS0VZQ09ERV9GT1JXQVJEX0RFTCAgICAgPSAx
MTIsCisgICAgQUtFWUNPREVfQ1RSTF9MRUZUICAgICAgID0gMTEzLAorICAgIEFLRVlDT0RFX0NU
UkxfUklHSFQgICAgICA9IDExNCwKKyAgICBBS0VZQ09ERV9DQVBTX0xPQ0sgICAgICAgPSAxMTUs
CisgICAgQUtFWUNPREVfU0NST0xMX0xPQ0sgICAgID0gMTE2LAorICAgIEFLRVlDT0RFX01FVEFf
TEVGVCAgICAgICA9IDExNywKKyAgICBBS0VZQ09ERV9NRVRBX1JJR0hUICAgICAgPSAxMTgsCisg
ICAgQUtFWUNPREVfQlJFQUsgICAgICAgICAgID0gMTIxLAorICAgIEFLRVlDT0RFX0lOU0VSVCAg
ICAgICAgICA9IDEyNCwKKyAgICBBS0VZQ09ERV9NRURJQV9QTEFZICAgICAgPSAxMjYsCisgICAg
QUtFWUNPREVfTUVESUFfUEFVU0UgICAgID0gMTI3LAorICAgIEFLRVlDT0RFX0YxICAgICAgICAg
ICAgICA9IDEzMSwKKyAgICBBS0VZQ09ERV9GMiAgICAgICAgICAgICAgPSAxMzIsCisgICAgQUtF
WUNPREVfRjMgICAgICAgICAgICAgID0gMTMzLAorICAgIEFLRVlDT0RFX0Y0ICAgICAgICAgICAg
ICA9IDEzNCwKKyAgICBBS0VZQ09ERV9GNSAgICAgICAgICAgICAgPSAxMzUsCisgICAgQUtFWUNP
REVfRjYgICAgICAgICAgICAgID0gMTM2LAorICAgIEFLRVlDT0RFX0Y3ICAgICAgICAgICAgICA9
IDEzNywKKyAgICBBS0VZQ09ERV9GOCAgICAgICAgICAgICAgPSAxMzgsCisgICAgQUtFWUNPREVf
RjkgICAgICAgICAgICAgID0gMTM5LAorICAgIEFLRVlDT0RFX0YxMCAgICAgICAgICAgICA9IDE0
MCwKKyAgICBBS0VZQ09ERV9GMTEgICAgICAgICAgICAgPSAxNDEsCisgICAgQUtFWUNPREVfRjEy
ICAgICAgICAgICAgID0gMTQyLAorICAgIEFLRVlDT0RFX05VTV9MT0NLICAgICAgICA9IDE0MywK
KyAgICBBS0VZQ09ERV9OVU1QQURfMCAgICAgICAgPSAxNDQsCisgICAgQUtFWUNPREVfTlVNUEFE
XzEgICAgICAgID0gMTQ1LAorICAgIEFLRVlDT0RFX05VTVBBRF8yICAgICAgICA9IDE0NiwKKyAg
ICBBS0VZQ09ERV9OVU1QQURfMyAgICAgICAgPSAxNDcsCisgICAgQUtFWUNPREVfTlVNUEFEXzQg
ICAgICAgID0gMTQ4LAorICAgIEFLRVlDT0RFX05VTVBBRF81ICAgICAgICA9IDE0OSwKKyAgICBB
S0VZQ09ERV9OVU1QQURfNiAgICAgICAgPSAxNTAsCisgICAgQUtFWUNPREVfTlVNUEFEXzcgICAg
ICAgID0gMTUxLAorICAgIEFLRVlDT0RFX05VTVBBRF84ICAgICAgICA9IDE1MiwKKyAgICBBS0VZ
Q09ERV9OVU1QQURfOSAgICAgICAgPSAxNTMsCisgICAgQUtFWUNPREVfTlVNUEFEX0RJVklERSAg
ID0gMTU0LAorICAgIEFLRVlDT0RFX05VTVBBRF9NVUxUSVBMWSA9IDE1NSwKKyAgICBBS0VZQ09E
RV9OVU1QQURfU1VCVFJBQ1QgPSAxNTYsCisgICAgQUtFWUNPREVfTlVNUEFEX0FERCAgICAgID0g
MTU3LAorICAgIEFLRVlDT0RFX05VTVBBRF9ET1QgICAgICA9IDE1OCwKKyAgICBBS0VZQ09ERV9W
T0xVTUVfTVVURSAgICAgPSAxNjQsCisgICAgQUtFWUNPREVfQ0hBTk5FTF9VUCAgICAgID0gMTY2
LAorICAgIEFLRVlDT0RFX0NIQU5ORUxfRE9XTiAgICA9IDE2NywKK307Cit9IC8vIG5hbWVzcGFj
ZQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTE3Niw2ICsyMjEsMTA3IEBAIGludCB3aW5k
b3dzS2V5Q29kZUZvcktleUV2ZW50KHVuc2lnbmVkIGkKICAgICBjYXNlIEFLRVlDT0RFX01VVEU6
CiAgICAgY2FzZSBBS0VZQ09ERV9WT0xVTUVfTVVURToKICAgICAgICAgcmV0dXJuIFZLRVlfVk9M
VU1FX01VVEU7CisgICAgY2FzZSBBS0VZQ09ERV9FU0NBUEU6CisgICAgICAgIHJldHVybiBWS0VZ
X0VTQ0FQRTsKKyAgICBjYXNlIEFLRVlDT0RFX01FRElBX1BMQVk6CisgICAgY2FzZSBBS0VZQ09E
RV9NRURJQV9QTEFZX1BBVVNFOgorICAgICAgICByZXR1cm4gVktFWV9NRURJQV9QTEFZX1BBVVNF
OworICAgIGNhc2UgQUtFWUNPREVfQ0FMTDoKKyAgICAgICAgcmV0dXJuIFZLRVlfRU5EOworICAg
IGNhc2UgQUtFWUNPREVfQUxUX0xFRlQ6CisgICAgY2FzZSBBS0VZQ09ERV9BTFRfUklHSFQ6Cisg
ICAgICAgIHJldHVybiBWS0VZX01FTlU7CisgICAgY2FzZSBBS0VZQ09ERV9HUkFWRToKKyAgICAg
ICAgcmV0dXJuIFZLRVlfT0VNXzM7CisgICAgY2FzZSBBS0VZQ09ERV9BUE9TVFJPUEhFOgorICAg
ICAgICByZXR1cm4gVktFWV9PRU1fMzsKKyNpZiBkZWZpbmVkKEdUVikKKyAgICBjYXNlIEFLRVlD
T0RFX01FRElBX1JFV0lORDoKKyAgICAgICAgcmV0dXJuIFZLRVlfT0VNXzEwMzsKKyAgICBjYXNl
IEFLRVlDT0RFX01FRElBX0ZBU1RfRk9SV0FSRDoKKyAgICAgICAgcmV0dXJuIFZLRVlfT0VNXzEw
NDsKKyNlbmRpZgorICAgIGNhc2UgQUtFWUNPREVfUEFHRV9VUDoKKyAgICAgICAgcmV0dXJuIFZL
RVlfUFJJT1I7CisgICAgY2FzZSBBS0VZQ09ERV9QQUdFX0RPV046CisgICAgICAgIHJldHVybiBW
S0VZX05FWFQ7CisgICAgY2FzZSBBS0VZQ09ERV9GT1JXQVJEX0RFTDoKKyAgICAgICAgcmV0dXJu
IFZLRVlfREVMRVRFOworICAgIGNhc2UgQUtFWUNPREVfQ1RSTF9MRUZUOgorICAgIGNhc2UgQUtF
WUNPREVfQ1RSTF9SSUdIVDoKKyAgICAgICAgcmV0dXJuIFZLRVlfQ09OVFJPTDsKKyAgICBjYXNl
IEFLRVlDT0RFX0NBUFNfTE9DSzoKKyAgICAgICAgcmV0dXJuIFZLRVlfQ0FQSVRBTDsKKyAgICBj
YXNlIEFLRVlDT0RFX1NDUk9MTF9MT0NLOgorICAgICAgICByZXR1cm4gVktFWV9TQ1JPTEw7Cisg
ICAgY2FzZSBBS0VZQ09ERV9NRVRBX0xFRlQ6CisgICAgICAgIHJldHVybiBWS0VZX0xXSU47Cisg
ICAgY2FzZSBBS0VZQ09ERV9NRVRBX1JJR0hUOgorICAgICAgICByZXR1cm4gVktFWV9SV0lOOwor
ICAgIGNhc2UgQUtFWUNPREVfQlJFQUs6CisgICAgICAgIHJldHVybiBWS0VZX1BBVVNFOworICAg
IGNhc2UgQUtFWUNPREVfSU5TRVJUOgorICAgICAgICByZXR1cm4gVktFWV9JTlNFUlQ7CisgICAg
Y2FzZSBBS0VZQ09ERV9GMToKKyAgICAgICAgcmV0dXJuIFZLRVlfRjE7CisgICAgY2FzZSBBS0VZ
Q09ERV9GMjoKKyAgICAgICAgcmV0dXJuIFZLRVlfRjI7CisgICAgY2FzZSBBS0VZQ09ERV9GMzoK
KyAgICAgICAgcmV0dXJuIFZLRVlfRjM7CisgICAgY2FzZSBBS0VZQ09ERV9GNDoKKyAgICAgICAg
cmV0dXJuIFZLRVlfRjQ7CisgICAgY2FzZSBBS0VZQ09ERV9GNToKKyAgICAgICAgcmV0dXJuIFZL
RVlfRjU7CisgICAgY2FzZSBBS0VZQ09ERV9GNjoKKyAgICAgICAgcmV0dXJuIFZLRVlfRjY7Cisg
ICAgY2FzZSBBS0VZQ09ERV9GNzoKKyAgICAgICAgcmV0dXJuIFZLRVlfRjc7CisgICAgY2FzZSBB
S0VZQ09ERV9GODoKKyAgICAgICAgcmV0dXJuIFZLRVlfRjg7CisgICAgY2FzZSBBS0VZQ09ERV9G
OToKKyAgICAgICAgcmV0dXJuIFZLRVlfRjk7CisgICAgY2FzZSBBS0VZQ09ERV9GMTA6CisgICAg
ICAgIHJldHVybiBWS0VZX0YxMDsKKyAgICBjYXNlIEFLRVlDT0RFX0YxMToKKyAgICAgICAgcmV0
dXJuIFZLRVlfRjExOworICAgIGNhc2UgQUtFWUNPREVfRjEyOgorICAgICAgICByZXR1cm4gVktF
WV9GMTI7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1fTE9DSzoKKyAgICAgICAgcmV0dXJuIFZLRVlf
TlVNTE9DSzsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF8wOgorICAgICAgICByZXR1cm4gVktF
WV9OVU1QQUQwOworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEXzE6CisgICAgICAgIHJldHVybiBW
S0VZX05VTVBBRDE7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfMjoKKyAgICAgICAgcmV0dXJu
IFZLRVlfTlVNUEFEMjsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF8zOgorICAgICAgICByZXR1
cm4gVktFWV9OVU1QQUQzOworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEXzQ6CisgICAgICAgIHJl
dHVybiBWS0VZX05VTVBBRDQ7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfNToKKyAgICAgICAg
cmV0dXJuIFZLRVlfTlVNUEFENTsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF82OgorICAgICAg
ICByZXR1cm4gVktFWV9OVU1QQUQ2OworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEXzc6CisgICAg
ICAgIHJldHVybiBWS0VZX05VTVBBRDc7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfODoKKyAg
ICAgICAgcmV0dXJuIFZLRVlfTlVNUEFEODsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF85Ogor
ICAgICAgICByZXR1cm4gVktFWV9OVU1QQUQ5OworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEX0RJ
VklERToKKyAgICAgICAgcmV0dXJuIFZLRVlfRElWSURFOworICAgIGNhc2UgQUtFWUNPREVfTlVN
UEFEX01VTFRJUExZOgorICAgICAgICByZXR1cm4gVktFWV9NVUxUSVBMWTsKKyAgICBjYXNlIEFL
RVlDT0RFX05VTVBBRF9TVUJUUkFDVDoKKyAgICAgICAgcmV0dXJuIFZLRVlfU1VCVFJBQ1Q7Cisg
ICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfQUREOgorICAgICAgICByZXR1cm4gVktFWV9BREQ7Cisg
ICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfRE9UOgorICAgICAgICByZXR1cm4gVktFWV9ERUNJTUFM
OworICAgIGNhc2UgQUtFWUNPREVfQ0hBTk5FTF9VUDoKKyAgICAgICAgcmV0dXJuIFZLRVlfUFJJ
T1I7CisgICAgY2FzZSBBS0VZQ09ERV9DSEFOTkVMX0RPV046CisgICAgICAgIHJldHVybiBWS0VZ
X05FWFQ7CiAgICAgZGVmYXVsdDoKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133850</attachid>
            <date>2012-03-26 11:13:12 -0700</date>
            <delta_ts>2012-03-26 15:19:35 -0700</delta_ts>
            <desc>Patch that adds Android keycodes</desc>
            <filename>patch.2</filename>
            <type>text/plain</type>
            <size>6683</size>
            <attacher name="Bolin Hsu">bhsu</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
S2l0L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTExNzQ5KQorKysgV2ViS2l0
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBA
CisyMDEyLTAzLTIyICBCb2xpbiBIc3UgIDxiaHN1QGdvb2dsZS5jb20+CisKKyAgICAgICAgW0No
cm9taXVtXSBBZGQgQW5kcm9pZCBrZXljb2RlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODE5NTAKKworICAgICAgICBBZGQgdGhlIG1pc3NpbmcgQW5k
cm9pZCBrZXljb2RlcyBsaXN0ZWQgaW4gdGhlIGJ1Zy4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVDb252
ZXJzaW9uQW5kcm9pZC5jcHA6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6
OndpbmRvd3NLZXlDb2RlRm9yS2V5RXZlbnQpOgorCiAyMDEyLTAzLTIyICBLZXZpbiBPbGxpdmll
ciAgPGtldmlub0B0aGVvbGxpdmllcnMuY29tPgogCiAgICAgICAgIFt3eF0gVW5yZXZpZXdlZC4g
V2ViRE9NIGJ1aWxkIGZpeCBhZnRlciBhcnJheSB0eXBlIGNoYW5nZXMuCkluZGV4OiBXZWJLaXQv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vS2V5Q29kZUNvbnZlcnNpb25BbmRyb2lk
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21p
dW0vS2V5Q29kZUNvbnZlcnNpb25BbmRyb2lkLmNwcAkocmV2aXNpb24gMTExNjMxKQorKysgV2Vi
S2l0L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVDb252ZXJzaW9uQW5k
cm9pZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM0LDggKzM0LDUxIEBACiAjaW5jbHVkZSA8YW5k
cm9pZC9rZXljb2Rlcy5oPgogCiAvLyBUaGUgQW5kcm9pZCBOREsgZG9lcyBub3QgcHJvdmlkZSB2
YWx1ZXMgZm9yIHRoZXNlIHlldDoKLSNkZWZpbmUgQUtFWUNPREVfTUVESUFfUEFVU0UgMTI3Ci0j
ZGVmaW5lIEFLRVlDT0RFX1ZPTFVNRV9NVVRFIDE2NAorZW51bSB7CisgICAgQUtFWUNPREVfRVND
QVBFICAgICAgICAgID0gMTExLAorICAgIEFLRVlDT0RFX0ZPUldBUkRfREVMICAgICA9IDExMiwK
KyAgICBBS0VZQ09ERV9DVFJMX0xFRlQgICAgICAgPSAxMTMsCisgICAgQUtFWUNPREVfQ1RSTF9S
SUdIVCAgICAgID0gMTE0LAorICAgIEFLRVlDT0RFX0NBUFNfTE9DSyAgICAgICA9IDExNSwKKyAg
ICBBS0VZQ09ERV9TQ1JPTExfTE9DSyAgICAgPSAxMTYsCisgICAgQUtFWUNPREVfTUVUQV9MRUZU
ICAgICAgID0gMTE3LAorICAgIEFLRVlDT0RFX01FVEFfUklHSFQgICAgICA9IDExOCwKKyAgICBB
S0VZQ09ERV9CUkVBSyAgICAgICAgICAgPSAxMjEsCisgICAgQUtFWUNPREVfSU5TRVJUICAgICAg
ICAgID0gMTI0LAorICAgIEFLRVlDT0RFX01FRElBX1BMQVkgICAgICA9IDEyNiwKKyAgICBBS0VZ
Q09ERV9NRURJQV9QQVVTRSAgICAgPSAxMjcsCisgICAgQUtFWUNPREVfRjEgICAgICAgICAgICAg
ID0gMTMxLAorICAgIEFLRVlDT0RFX0YyICAgICAgICAgICAgICA9IDEzMiwKKyAgICBBS0VZQ09E
RV9GMyAgICAgICAgICAgICAgPSAxMzMsCisgICAgQUtFWUNPREVfRjQgICAgICAgICAgICAgID0g
MTM0LAorICAgIEFLRVlDT0RFX0Y1ICAgICAgICAgICAgICA9IDEzNSwKKyAgICBBS0VZQ09ERV9G
NiAgICAgICAgICAgICAgPSAxMzYsCisgICAgQUtFWUNPREVfRjcgICAgICAgICAgICAgID0gMTM3
LAorICAgIEFLRVlDT0RFX0Y4ICAgICAgICAgICAgICA9IDEzOCwKKyAgICBBS0VZQ09ERV9GOSAg
ICAgICAgICAgICAgPSAxMzksCisgICAgQUtFWUNPREVfRjEwICAgICAgICAgICAgID0gMTQwLAor
ICAgIEFLRVlDT0RFX0YxMSAgICAgICAgICAgICA9IDE0MSwKKyAgICBBS0VZQ09ERV9GMTIgICAg
ICAgICAgICAgPSAxNDIsCisgICAgQUtFWUNPREVfTlVNX0xPQ0sgICAgICAgID0gMTQzLAorICAg
IEFLRVlDT0RFX05VTVBBRF8wICAgICAgICA9IDE0NCwKKyAgICBBS0VZQ09ERV9OVU1QQURfMSAg
ICAgICAgPSAxNDUsCisgICAgQUtFWUNPREVfTlVNUEFEXzIgICAgICAgID0gMTQ2LAorICAgIEFL
RVlDT0RFX05VTVBBRF8zICAgICAgICA9IDE0NywKKyAgICBBS0VZQ09ERV9OVU1QQURfNCAgICAg
ICAgPSAxNDgsCisgICAgQUtFWUNPREVfTlVNUEFEXzUgICAgICAgID0gMTQ5LAorICAgIEFLRVlD
T0RFX05VTVBBRF82ICAgICAgICA9IDE1MCwKKyAgICBBS0VZQ09ERV9OVU1QQURfNyAgICAgICAg
PSAxNTEsCisgICAgQUtFWUNPREVfTlVNUEFEXzggICAgICAgID0gMTUyLAorICAgIEFLRVlDT0RF
X05VTVBBRF85ICAgICAgICA9IDE1MywKKyAgICBBS0VZQ09ERV9OVU1QQURfRElWSURFICAgPSAx
NTQsCisgICAgQUtFWUNPREVfTlVNUEFEX01VTFRJUExZID0gMTU1LAorICAgIEFLRVlDT0RFX05V
TVBBRF9TVUJUUkFDVCA9IDE1NiwKKyAgICBBS0VZQ09ERV9OVU1QQURfQUREICAgICAgPSAxNTcs
CisgICAgQUtFWUNPREVfTlVNUEFEX0RPVCAgICAgID0gMTU4LAorICAgIEFLRVlDT0RFX1ZPTFVN
RV9NVVRFICAgICA9IDE2NCwKKyAgICBBS0VZQ09ERV9DSEFOTkVMX1VQICAgICAgPSAxNjYsCisg
ICAgQUtFWUNPREVfQ0hBTk5FTF9ET1dOICAgID0gMTY3LAorfTsKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCkBAIC0xNzYsNiArMjE5LDEwNSBAQCBpbnQgd2luZG93c0tleUNvZGVGb3JLZXlFdmVu
dCh1bnNpZ25lZCBpCiAgICAgY2FzZSBBS0VZQ09ERV9NVVRFOgogICAgIGNhc2UgQUtFWUNPREVf
Vk9MVU1FX01VVEU6CiAgICAgICAgIHJldHVybiBWS0VZX1ZPTFVNRV9NVVRFOworICAgIGNhc2Ug
QUtFWUNPREVfRVNDQVBFOgorICAgICAgICByZXR1cm4gVktFWV9FU0NBUEU7CisgICAgY2FzZSBB
S0VZQ09ERV9NRURJQV9QTEFZOgorICAgIGNhc2UgQUtFWUNPREVfTUVESUFfUExBWV9QQVVTRToK
KyAgICAgICAgcmV0dXJuIFZLRVlfTUVESUFfUExBWV9QQVVTRTsKKyAgICBjYXNlIEFLRVlDT0RF
X0NBTEw6CisgICAgICAgIHJldHVybiBWS0VZX0VORDsKKyAgICBjYXNlIEFLRVlDT0RFX0FMVF9M
RUZUOgorICAgIGNhc2UgQUtFWUNPREVfQUxUX1JJR0hUOgorICAgICAgICByZXR1cm4gVktFWV9N
RU5VOworICAgIGNhc2UgQUtFWUNPREVfR1JBVkU6CisgICAgICAgIHJldHVybiBWS0VZX09FTV8z
OworICAgIGNhc2UgQUtFWUNPREVfQVBPU1RST1BIRToKKyAgICAgICAgcmV0dXJuIFZLRVlfT0VN
XzM7CisgICAgY2FzZSBBS0VZQ09ERV9NRURJQV9SRVdJTkQ6CisgICAgICAgIHJldHVybiBWS0VZ
X09FTV8xMDM7CisgICAgY2FzZSBBS0VZQ09ERV9NRURJQV9GQVNUX0ZPUldBUkQ6CisgICAgICAg
IHJldHVybiBWS0VZX09FTV8xMDQ7CisgICAgY2FzZSBBS0VZQ09ERV9QQUdFX1VQOgorICAgICAg
ICByZXR1cm4gVktFWV9QUklPUjsKKyAgICBjYXNlIEFLRVlDT0RFX1BBR0VfRE9XTjoKKyAgICAg
ICAgcmV0dXJuIFZLRVlfTkVYVDsKKyAgICBjYXNlIEFLRVlDT0RFX0ZPUldBUkRfREVMOgorICAg
ICAgICByZXR1cm4gVktFWV9ERUxFVEU7CisgICAgY2FzZSBBS0VZQ09ERV9DVFJMX0xFRlQ6Cisg
ICAgY2FzZSBBS0VZQ09ERV9DVFJMX1JJR0hUOgorICAgICAgICByZXR1cm4gVktFWV9DT05UUk9M
OworICAgIGNhc2UgQUtFWUNPREVfQ0FQU19MT0NLOgorICAgICAgICByZXR1cm4gVktFWV9DQVBJ
VEFMOworICAgIGNhc2UgQUtFWUNPREVfU0NST0xMX0xPQ0s6CisgICAgICAgIHJldHVybiBWS0VZ
X1NDUk9MTDsKKyAgICBjYXNlIEFLRVlDT0RFX01FVEFfTEVGVDoKKyAgICAgICAgcmV0dXJuIFZL
RVlfTFdJTjsKKyAgICBjYXNlIEFLRVlDT0RFX01FVEFfUklHSFQ6CisgICAgICAgIHJldHVybiBW
S0VZX1JXSU47CisgICAgY2FzZSBBS0VZQ09ERV9CUkVBSzoKKyAgICAgICAgcmV0dXJuIFZLRVlf
UEFVU0U7CisgICAgY2FzZSBBS0VZQ09ERV9JTlNFUlQ6CisgICAgICAgIHJldHVybiBWS0VZX0lO
U0VSVDsKKyAgICBjYXNlIEFLRVlDT0RFX0YxOgorICAgICAgICByZXR1cm4gVktFWV9GMTsKKyAg
ICBjYXNlIEFLRVlDT0RFX0YyOgorICAgICAgICByZXR1cm4gVktFWV9GMjsKKyAgICBjYXNlIEFL
RVlDT0RFX0YzOgorICAgICAgICByZXR1cm4gVktFWV9GMzsKKyAgICBjYXNlIEFLRVlDT0RFX0Y0
OgorICAgICAgICByZXR1cm4gVktFWV9GNDsKKyAgICBjYXNlIEFLRVlDT0RFX0Y1OgorICAgICAg
ICByZXR1cm4gVktFWV9GNTsKKyAgICBjYXNlIEFLRVlDT0RFX0Y2OgorICAgICAgICByZXR1cm4g
VktFWV9GNjsKKyAgICBjYXNlIEFLRVlDT0RFX0Y3OgorICAgICAgICByZXR1cm4gVktFWV9GNzsK
KyAgICBjYXNlIEFLRVlDT0RFX0Y4OgorICAgICAgICByZXR1cm4gVktFWV9GODsKKyAgICBjYXNl
IEFLRVlDT0RFX0Y5OgorICAgICAgICByZXR1cm4gVktFWV9GOTsKKyAgICBjYXNlIEFLRVlDT0RF
X0YxMDoKKyAgICAgICAgcmV0dXJuIFZLRVlfRjEwOworICAgIGNhc2UgQUtFWUNPREVfRjExOgor
ICAgICAgICByZXR1cm4gVktFWV9GMTE7CisgICAgY2FzZSBBS0VZQ09ERV9GMTI6CisgICAgICAg
IHJldHVybiBWS0VZX0YxMjsKKyAgICBjYXNlIEFLRVlDT0RFX05VTV9MT0NLOgorICAgICAgICBy
ZXR1cm4gVktFWV9OVU1MT0NLOworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEXzA6CisgICAgICAg
IHJldHVybiBWS0VZX05VTVBBRDA7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfMToKKyAgICAg
ICAgcmV0dXJuIFZLRVlfTlVNUEFEMTsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF8yOgorICAg
ICAgICByZXR1cm4gVktFWV9OVU1QQUQyOworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEXzM6Cisg
ICAgICAgIHJldHVybiBWS0VZX05VTVBBRDM7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfNDoK
KyAgICAgICAgcmV0dXJuIFZLRVlfTlVNUEFENDsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF81
OgorICAgICAgICByZXR1cm4gVktFWV9OVU1QQUQ1OworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFE
XzY6CisgICAgICAgIHJldHVybiBWS0VZX05VTVBBRDY7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1Q
QURfNzoKKyAgICAgICAgcmV0dXJuIFZLRVlfTlVNUEFENzsKKyAgICBjYXNlIEFLRVlDT0RFX05V
TVBBRF84OgorICAgICAgICByZXR1cm4gVktFWV9OVU1QQUQ4OworICAgIGNhc2UgQUtFWUNPREVf
TlVNUEFEXzk6CisgICAgICAgIHJldHVybiBWS0VZX05VTVBBRDk7CisgICAgY2FzZSBBS0VZQ09E
RV9OVU1QQURfRElWSURFOgorICAgICAgICByZXR1cm4gVktFWV9ESVZJREU7CisgICAgY2FzZSBB
S0VZQ09ERV9OVU1QQURfTVVMVElQTFk6CisgICAgICAgIHJldHVybiBWS0VZX01VTFRJUExZOwor
ICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEX1NVQlRSQUNUOgorICAgICAgICByZXR1cm4gVktFWV9T
VUJUUkFDVDsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF9BREQ6CisgICAgICAgIHJldHVybiBW
S0VZX0FERDsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF9ET1Q6CisgICAgICAgIHJldHVybiBW
S0VZX0RFQ0lNQUw7CisgICAgY2FzZSBBS0VZQ09ERV9DSEFOTkVMX1VQOgorICAgICAgICByZXR1
cm4gVktFWV9QUklPUjsKKyAgICBjYXNlIEFLRVlDT0RFX0NIQU5ORUxfRE9XTjoKKyAgICAgICAg
cmV0dXJuIFZLRVlfTkVYVDsKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gMDsKICAgICB9
CkluZGV4OiBXZWJLaXQvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vS2V5Ym9hcmRD
b2Rlcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jaHJv
bWl1bS9LZXlib2FyZENvZGVzLmgJKHJldmlzaW9uIDExMTYzMSkKKysrIFdlYktpdC9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlib2FyZENvZGVzLmgJKHdvcmtpbmcgY29weSkK
QEAgLTUxNCw2ICs1MTQsMTIgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAvLyBWS0VZ
X09FTV8xMDIgKEUyKSBXaW5kb3dzIDIwMDAvWFA6IEVpdGhlciB0aGUgYW5nbGUgYnJhY2tldCBr
ZXkgb3IgdGhlIGJhY2tzbGFzaCBrZXkgb24gdGhlIFJUIDEwMi1rZXkga2V5Ym9hcmQKICAgICAg
ICAgVktFWV9PRU1fMTAyID0gVktfT0VNXzEwMiwKIAorICAgICAgICAvLyBWS0VZX09FTV8xMDMg
KEUzKSBHVFYgS0VZQ09ERV9NRURJQV9SRVdJTkQKKyAgICAgICAgVktFWV9PRU1fMTAzID0gMHhF
MywKKworICAgICAgICAvLyBWS0VZX09FTV8xMDQgKEU0KSBHVFYgS0VZQ09ERV9NRURJQV9GQVNU
X0ZPUldBUkQKKyAgICAgICAgVktFWV9PRU1fMTA0ID0gMHhFNCwKKwogICAgICAgICAvLyBWS0VZ
X1BST0NFU1NLRVkgKEU1KSBXaW5kb3dzIDk1Lzk4L01lLCBXaW5kb3dzIE5UIDQuMCwgV2luZG93
cyAyMDAwL1hQOiBJTUUgUFJPQ0VTUyBrZXkKICAgICAgICAgVktFWV9QUk9DRVNTS0VZID0gVktf
UFJPQ0VTU0tFWSwKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133906</attachid>
            <date>2012-03-26 15:19:39 -0700</date>
            <delta_ts>2012-03-26 16:39:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81950-20120326151938.patch</filename>
            <type>text/plain</type>
            <size>6650</size>
            <attacher name="Bolin Hsu">bhsu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExMjE1MikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDEyLTAzLTI2ICBCb2xpbiBI
c3UgIDxiaHN1QGdvb2dsZS5jb20+CisKKyAgICAgICAgW0Nocm9taXVtXSBBZGQgQW5kcm9pZCBr
ZXljb2RlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODE5NTAKKworICAgICAgICBBZGQgdGhlIG1pc3NpbmcgQW5kcm9pZCBrZXljb2RlcyBsaXN0ZWQg
aW4gdGhlIGJ1Zy4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVDb252ZXJzaW9uQW5kcm9pZC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjp3aW5kb3dzS2V5Q29kZUZvcktleUV2ZW50KToKKyAgICAgICAgKiBw
bGF0Zm9ybS9jaHJvbWl1bS9LZXlib2FyZENvZGVzLmg6CisKIDIwMTItMDMtMjYgIEFuZGVycyBD
YXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBGaW5kIGluIHBhZ2Ugb3Zl
cmxheSBhbmQgYm91bmN5IGFyZSBub3QgYWx3YXlzIHBvc2l0aW9uZWQgY29ycmVjdGx5CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlDb2RlQ29udmVyc2lvbkFuZHJv
aWQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0tl
eUNvZGVDb252ZXJzaW9uQW5kcm9pZC5jcHAJKHJldmlzaW9uIDExMjE0NSkKKysrIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0tleUNvZGVDb252ZXJzaW9uQW5kcm9pZC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTM0LDggKzM0LDUxIEBACiAjaW5jbHVkZSA8YW5kcm9pZC9rZXljb2Rl
cy5oPgogCiAvLyBUaGUgQW5kcm9pZCBOREsgZG9lcyBub3QgcHJvdmlkZSB2YWx1ZXMgZm9yIHRo
ZXNlIHlldDoKLSNkZWZpbmUgQUtFWUNPREVfTUVESUFfUEFVU0UgMTI3Ci0jZGVmaW5lIEFLRVlD
T0RFX1ZPTFVNRV9NVVRFIDE2NAorZW51bSB7CisgICAgQUtFWUNPREVfRVNDQVBFICAgICAgICAg
ID0gMTExLAorICAgIEFLRVlDT0RFX0ZPUldBUkRfREVMICAgICA9IDExMiwKKyAgICBBS0VZQ09E
RV9DVFJMX0xFRlQgICAgICAgPSAxMTMsCisgICAgQUtFWUNPREVfQ1RSTF9SSUdIVCAgICAgID0g
MTE0LAorICAgIEFLRVlDT0RFX0NBUFNfTE9DSyAgICAgICA9IDExNSwKKyAgICBBS0VZQ09ERV9T
Q1JPTExfTE9DSyAgICAgPSAxMTYsCisgICAgQUtFWUNPREVfTUVUQV9MRUZUICAgICAgID0gMTE3
LAorICAgIEFLRVlDT0RFX01FVEFfUklHSFQgICAgICA9IDExOCwKKyAgICBBS0VZQ09ERV9CUkVB
SyAgICAgICAgICAgPSAxMjEsCisgICAgQUtFWUNPREVfSU5TRVJUICAgICAgICAgID0gMTI0LAor
ICAgIEFLRVlDT0RFX01FRElBX1BMQVkgICAgICA9IDEyNiwKKyAgICBBS0VZQ09ERV9NRURJQV9Q
QVVTRSAgICAgPSAxMjcsCisgICAgQUtFWUNPREVfRjEgICAgICAgICAgICAgID0gMTMxLAorICAg
IEFLRVlDT0RFX0YyICAgICAgICAgICAgICA9IDEzMiwKKyAgICBBS0VZQ09ERV9GMyAgICAgICAg
ICAgICAgPSAxMzMsCisgICAgQUtFWUNPREVfRjQgICAgICAgICAgICAgID0gMTM0LAorICAgIEFL
RVlDT0RFX0Y1ICAgICAgICAgICAgICA9IDEzNSwKKyAgICBBS0VZQ09ERV9GNiAgICAgICAgICAg
ICAgPSAxMzYsCisgICAgQUtFWUNPREVfRjcgICAgICAgICAgICAgID0gMTM3LAorICAgIEFLRVlD
T0RFX0Y4ICAgICAgICAgICAgICA9IDEzOCwKKyAgICBBS0VZQ09ERV9GOSAgICAgICAgICAgICAg
PSAxMzksCisgICAgQUtFWUNPREVfRjEwICAgICAgICAgICAgID0gMTQwLAorICAgIEFLRVlDT0RF
X0YxMSAgICAgICAgICAgICA9IDE0MSwKKyAgICBBS0VZQ09ERV9GMTIgICAgICAgICAgICAgPSAx
NDIsCisgICAgQUtFWUNPREVfTlVNX0xPQ0sgICAgICAgID0gMTQzLAorICAgIEFLRVlDT0RFX05V
TVBBRF8wICAgICAgICA9IDE0NCwKKyAgICBBS0VZQ09ERV9OVU1QQURfMSAgICAgICAgPSAxNDUs
CisgICAgQUtFWUNPREVfTlVNUEFEXzIgICAgICAgID0gMTQ2LAorICAgIEFLRVlDT0RFX05VTVBB
RF8zICAgICAgICA9IDE0NywKKyAgICBBS0VZQ09ERV9OVU1QQURfNCAgICAgICAgPSAxNDgsCisg
ICAgQUtFWUNPREVfTlVNUEFEXzUgICAgICAgID0gMTQ5LAorICAgIEFLRVlDT0RFX05VTVBBRF82
ICAgICAgICA9IDE1MCwKKyAgICBBS0VZQ09ERV9OVU1QQURfNyAgICAgICAgPSAxNTEsCisgICAg
QUtFWUNPREVfTlVNUEFEXzggICAgICAgID0gMTUyLAorICAgIEFLRVlDT0RFX05VTVBBRF85ICAg
ICAgICA9IDE1MywKKyAgICBBS0VZQ09ERV9OVU1QQURfRElWSURFICAgPSAxNTQsCisgICAgQUtF
WUNPREVfTlVNUEFEX01VTFRJUExZID0gMTU1LAorICAgIEFLRVlDT0RFX05VTVBBRF9TVUJUUkFD
VCA9IDE1NiwKKyAgICBBS0VZQ09ERV9OVU1QQURfQUREICAgICAgPSAxNTcsCisgICAgQUtFWUNP
REVfTlVNUEFEX0RPVCAgICAgID0gMTU4LAorICAgIEFLRVlDT0RFX1ZPTFVNRV9NVVRFICAgICA9
IDE2NCwKKyAgICBBS0VZQ09ERV9DSEFOTkVMX1VQICAgICAgPSAxNjYsCisgICAgQUtFWUNPREVf
Q0hBTk5FTF9ET1dOICAgID0gMTY3LAorfTsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0x
NzYsNiArMjE5LDEwNSBAQCBpbnQgd2luZG93c0tleUNvZGVGb3JLZXlFdmVudCh1bnNpZ25lZCBp
CiAgICAgY2FzZSBBS0VZQ09ERV9NVVRFOgogICAgIGNhc2UgQUtFWUNPREVfVk9MVU1FX01VVEU6
CiAgICAgICAgIHJldHVybiBWS0VZX1ZPTFVNRV9NVVRFOworICAgIGNhc2UgQUtFWUNPREVfRVND
QVBFOgorICAgICAgICByZXR1cm4gVktFWV9FU0NBUEU7CisgICAgY2FzZSBBS0VZQ09ERV9NRURJ
QV9QTEFZOgorICAgIGNhc2UgQUtFWUNPREVfTUVESUFfUExBWV9QQVVTRToKKyAgICAgICAgcmV0
dXJuIFZLRVlfTUVESUFfUExBWV9QQVVTRTsKKyAgICBjYXNlIEFLRVlDT0RFX0NBTEw6CisgICAg
ICAgIHJldHVybiBWS0VZX0VORDsKKyAgICBjYXNlIEFLRVlDT0RFX0FMVF9MRUZUOgorICAgIGNh
c2UgQUtFWUNPREVfQUxUX1JJR0hUOgorICAgICAgICByZXR1cm4gVktFWV9NRU5VOworICAgIGNh
c2UgQUtFWUNPREVfR1JBVkU6CisgICAgICAgIHJldHVybiBWS0VZX09FTV8zOworICAgIGNhc2Ug
QUtFWUNPREVfQVBPU1RST1BIRToKKyAgICAgICAgcmV0dXJuIFZLRVlfT0VNXzM7CisgICAgY2Fz
ZSBBS0VZQ09ERV9NRURJQV9SRVdJTkQ6CisgICAgICAgIHJldHVybiBWS0VZX09FTV8xMDM7Cisg
ICAgY2FzZSBBS0VZQ09ERV9NRURJQV9GQVNUX0ZPUldBUkQ6CisgICAgICAgIHJldHVybiBWS0VZ
X09FTV8xMDQ7CisgICAgY2FzZSBBS0VZQ09ERV9QQUdFX1VQOgorICAgICAgICByZXR1cm4gVktF
WV9QUklPUjsKKyAgICBjYXNlIEFLRVlDT0RFX1BBR0VfRE9XTjoKKyAgICAgICAgcmV0dXJuIFZL
RVlfTkVYVDsKKyAgICBjYXNlIEFLRVlDT0RFX0ZPUldBUkRfREVMOgorICAgICAgICByZXR1cm4g
VktFWV9ERUxFVEU7CisgICAgY2FzZSBBS0VZQ09ERV9DVFJMX0xFRlQ6CisgICAgY2FzZSBBS0VZ
Q09ERV9DVFJMX1JJR0hUOgorICAgICAgICByZXR1cm4gVktFWV9DT05UUk9MOworICAgIGNhc2Ug
QUtFWUNPREVfQ0FQU19MT0NLOgorICAgICAgICByZXR1cm4gVktFWV9DQVBJVEFMOworICAgIGNh
c2UgQUtFWUNPREVfU0NST0xMX0xPQ0s6CisgICAgICAgIHJldHVybiBWS0VZX1NDUk9MTDsKKyAg
ICBjYXNlIEFLRVlDT0RFX01FVEFfTEVGVDoKKyAgICAgICAgcmV0dXJuIFZLRVlfTFdJTjsKKyAg
ICBjYXNlIEFLRVlDT0RFX01FVEFfUklHSFQ6CisgICAgICAgIHJldHVybiBWS0VZX1JXSU47Cisg
ICAgY2FzZSBBS0VZQ09ERV9CUkVBSzoKKyAgICAgICAgcmV0dXJuIFZLRVlfUEFVU0U7CisgICAg
Y2FzZSBBS0VZQ09ERV9JTlNFUlQ6CisgICAgICAgIHJldHVybiBWS0VZX0lOU0VSVDsKKyAgICBj
YXNlIEFLRVlDT0RFX0YxOgorICAgICAgICByZXR1cm4gVktFWV9GMTsKKyAgICBjYXNlIEFLRVlD
T0RFX0YyOgorICAgICAgICByZXR1cm4gVktFWV9GMjsKKyAgICBjYXNlIEFLRVlDT0RFX0YzOgor
ICAgICAgICByZXR1cm4gVktFWV9GMzsKKyAgICBjYXNlIEFLRVlDT0RFX0Y0OgorICAgICAgICBy
ZXR1cm4gVktFWV9GNDsKKyAgICBjYXNlIEFLRVlDT0RFX0Y1OgorICAgICAgICByZXR1cm4gVktF
WV9GNTsKKyAgICBjYXNlIEFLRVlDT0RFX0Y2OgorICAgICAgICByZXR1cm4gVktFWV9GNjsKKyAg
ICBjYXNlIEFLRVlDT0RFX0Y3OgorICAgICAgICByZXR1cm4gVktFWV9GNzsKKyAgICBjYXNlIEFL
RVlDT0RFX0Y4OgorICAgICAgICByZXR1cm4gVktFWV9GODsKKyAgICBjYXNlIEFLRVlDT0RFX0Y5
OgorICAgICAgICByZXR1cm4gVktFWV9GOTsKKyAgICBjYXNlIEFLRVlDT0RFX0YxMDoKKyAgICAg
ICAgcmV0dXJuIFZLRVlfRjEwOworICAgIGNhc2UgQUtFWUNPREVfRjExOgorICAgICAgICByZXR1
cm4gVktFWV9GMTE7CisgICAgY2FzZSBBS0VZQ09ERV9GMTI6CisgICAgICAgIHJldHVybiBWS0VZ
X0YxMjsKKyAgICBjYXNlIEFLRVlDT0RFX05VTV9MT0NLOgorICAgICAgICByZXR1cm4gVktFWV9O
VU1MT0NLOworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEXzA6CisgICAgICAgIHJldHVybiBWS0VZ
X05VTVBBRDA7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfMToKKyAgICAgICAgcmV0dXJuIFZL
RVlfTlVNUEFEMTsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF8yOgorICAgICAgICByZXR1cm4g
VktFWV9OVU1QQUQyOworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEXzM6CisgICAgICAgIHJldHVy
biBWS0VZX05VTVBBRDM7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfNDoKKyAgICAgICAgcmV0
dXJuIFZLRVlfTlVNUEFENDsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF81OgorICAgICAgICBy
ZXR1cm4gVktFWV9OVU1QQUQ1OworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEXzY6CisgICAgICAg
IHJldHVybiBWS0VZX05VTVBBRDY7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfNzoKKyAgICAg
ICAgcmV0dXJuIFZLRVlfTlVNUEFENzsKKyAgICBjYXNlIEFLRVlDT0RFX05VTVBBRF84OgorICAg
ICAgICByZXR1cm4gVktFWV9OVU1QQUQ4OworICAgIGNhc2UgQUtFWUNPREVfTlVNUEFEXzk6Cisg
ICAgICAgIHJldHVybiBWS0VZX05VTVBBRDk7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1QQURfRElW
SURFOgorICAgICAgICByZXR1cm4gVktFWV9ESVZJREU7CisgICAgY2FzZSBBS0VZQ09ERV9OVU1Q
QURfTVVMVElQTFk6CisgICAgICAgIHJldHVybiBWS0VZX01VTFRJUExZOworICAgIGNhc2UgQUtF
WUNPREVfTlVNUEFEX1NVQlRSQUNUOgorICAgICAgICByZXR1cm4gVktFWV9TVUJUUkFDVDsKKyAg
ICBjYXNlIEFLRVlDT0RFX05VTVBBRF9BREQ6CisgICAgICAgIHJldHVybiBWS0VZX0FERDsKKyAg
ICBjYXNlIEFLRVlDT0RFX05VTVBBRF9ET1Q6CisgICAgICAgIHJldHVybiBWS0VZX0RFQ0lNQUw7
CisgICAgY2FzZSBBS0VZQ09ERV9DSEFOTkVMX1VQOgorICAgICAgICByZXR1cm4gVktFWV9QUklP
UjsKKyAgICBjYXNlIEFLRVlDT0RFX0NIQU5ORUxfRE9XTjoKKyAgICAgICAgcmV0dXJuIFZLRVlf
TkVYVDsKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gMDsKICAgICB9CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlib2FyZENvZGVzLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vS2V5Ym9hcmRDb2Rlcy5oCShyZXZp
c2lvbiAxMTIxNDUpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9LZXlib2Fy
ZENvZGVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTUxNCw2ICs1MTQsMTIgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogICAgICAgICAvLyBWS0VZX09FTV8xMDIgKEUyKSBXaW5kb3dzIDIwMDAvWFA6IEVp
dGhlciB0aGUgYW5nbGUgYnJhY2tldCBrZXkgb3IgdGhlIGJhY2tzbGFzaCBrZXkgb24gdGhlIFJU
IDEwMi1rZXkga2V5Ym9hcmQKICAgICAgICAgVktFWV9PRU1fMTAyID0gVktfT0VNXzEwMiwKIAor
ICAgICAgICAvLyBWS0VZX09FTV8xMDMgKEUzKSBHVFYgS0VZQ09ERV9NRURJQV9SRVdJTkQKKyAg
ICAgICAgVktFWV9PRU1fMTAzID0gMHhFMywKKworICAgICAgICAvLyBWS0VZX09FTV8xMDQgKEU0
KSBHVFYgS0VZQ09ERV9NRURJQV9GQVNUX0ZPUldBUkQKKyAgICAgICAgVktFWV9PRU1fMTA0ID0g
MHhFNCwKKwogICAgICAgICAvLyBWS0VZX1BST0NFU1NLRVkgKEU1KSBXaW5kb3dzIDk1Lzk4L01l
LCBXaW5kb3dzIE5UIDQuMCwgV2luZG93cyAyMDAwL1hQOiBJTUUgUFJPQ0VTUyBrZXkKICAgICAg
ICAgVktFWV9QUk9DRVNTS0VZID0gVktfUFJPQ0VTU0tFWSwKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>