textinput/peninputgenericvkb/srcdata/peninputvkbwindowconfiginfo_33.rss
changeset 0 eb1f2e154e89
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/textinput/peninputgenericvkb/srcdata/peninputvkbwindowconfiginfo_33.rss	Tue Feb 02 01:02:04 2010 +0200
@@ -0,0 +1,4258 @@
+/*
+* Copyright (c) 2002-2005 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0""
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Resource definitions for project peninputgenericvkb
+*
+*/
+
+
+// Resource identifier
+NAME PIGV
+
+// System includes
+#include <aknsconstants.hrh>
+#include <eikon.hrh>
+#include <peninputgenericvkb.mbg>
+#include <aknfeppeninputenums.h>
+
+// User includes
+#include "peninputcommonlayout.rh"
+#include "peninputgenericvkb.hrh"
+
+RESOURCE RSS_SIGNATURE { }
+RESOURCE TBUF { buf=""; }
+
+// Macros
+#define PENINPUT_LAYOUT_VKB_BMP "z:\\resource\\apps\\peninputgenericvkb.mbm"
+
+// ---------------------------------------------------------------------------
+// r_peninput_layout_config_info
+// The configuration of window's layout
+// ---------------------------------------------------------------------------
+//
+RESOURCE PENINPUT_LAYOUT_CONFIG_INFO r_peninput_layout_config_info
+    {
+    language=33;
+    languagestring="Th"; 
+    casesensitive=0;
+    guideline=EPeninputGuideLineNone;
+    clientlayoutlist=r_peninput_layout_vkb_client_layout_list;
+    vkblayoutlist=r_peninput_layout_vkb_vkb_layout_list;
+    rangebarinfo=r_peninput_layout_rangebar_info;
+    shiftcapsinfo=r_peninput_layout_shift_caps_info_list;
+    rangebarresource=r_peninput_layout_vkb_range_list;    
+    }
+
+// ---------------------------------------------------------------------------
+// r_peninput_layout_vkb_client_layout_list
+// Contains latin vkb layout
+// ---------------------------------------------------------------------------
+//
+RESOURCE PENINPUT_LAYOUT_CLIENT_LAYOUT_LIST r_peninput_layout_vkb_client_layout_list
+    {
+    items =
+        {
+        PENINPUT_LAYOUT_CLIENT_LAYOUT
+            {
+            id=EPeninputClientLayout12x4;
+            colcount=11;
+            rowcount=4;
+            controls =
+                {
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdVkbCtrl; // Control button
+                    beginrow=0;
+                    begincolumn=0;
+                    endrow=3;
+                    endcolumn=11;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdBackspaceBtn; // Backspace button
+                    beginrow=0;
+                    begincolumn=11;
+                    endrow=1;
+                    endcolumn=12;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdEnterBtn; // Enter button
+                    beginrow=1;
+                    begincolumn=11;
+                    endrow=2;
+                    endcolumn=12;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdInputLangSwitcherBtn; // Language switch button
+                    beginrow=2;
+                    begincolumn=11;
+                    endrow=3;
+                    endcolumn=12;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdTabBtn; // Tab button
+                    beginrow=3;
+                    begincolumn=0;
+                    endrow=4;
+                    endcolumn=1;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdCapslockBtn; // Capslock button
+                    beginrow=3;
+                    begincolumn=1;
+                    endrow=4;
+                    endcolumn=2;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdShiftBtn; // Shift button
+                    beginrow=3;
+                    begincolumn=2;
+                    endrow=4;
+                    endcolumn=3;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdSpaceBtn; // Space button
+                    beginrow=3;
+                    begincolumn=3;
+                    endrow=4;
+                    endcolumn=7;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdRangeBar; // Rangebar
+                    beginrow=3;
+                    begincolumn=7;
+                    endrow=4;
+                    endcolumn=11;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdSwitchToHwrBtn; // VKB to HWR switch button
+                    beginrow=3;
+                    begincolumn=11;
+                    endrow=4;
+                    endcolumn=12;
+                    }
+                };
+            },
+        PENINPUT_LAYOUT_CLIENT_LAYOUT
+            {
+            id=EPeninputClientLayout13x4;
+            colcount=11;
+            rowcount=4;
+            controls =
+                {
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdVkbCtrl; // Control button
+                    beginrow=0;
+                    begincolumn=0;
+                    endrow=3;
+                    endcolumn=12;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdBackspaceBtn; // Backspace button
+                    beginrow=0;
+                    begincolumn=12;
+                    endrow=1;
+                    endcolumn=13;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdEnterBtn; // Enter button
+                    beginrow=1;
+                    begincolumn=12;
+                    endrow=2;
+                    endcolumn=13;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdInputLangSwitcherBtn; // Language switch button
+                    beginrow=2;
+                    begincolumn=12;
+                    endrow=3;
+                    endcolumn=13;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdTabBtn; // Tab button
+                    beginrow=3;
+                    begincolumn=0;
+                    endrow=4;
+                    endcolumn=1;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdCapslockBtn; // Capslock button
+                    beginrow=3;
+                    begincolumn=1;
+                    endrow=4;
+                    endcolumn=2;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdShiftBtn; // Shift button
+                    beginrow=3;
+                    begincolumn=2;
+                    endrow=4;
+                    endcolumn=3;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdSpaceBtn; // Space button
+                    beginrow=3;
+                    begincolumn=3;
+                    endrow=4;
+                    endcolumn=8;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdRangeBar; // Rangebar
+                    beginrow=3;
+                    begincolumn=8;
+                    endrow=4;
+                    endcolumn=12;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdSwitchToHwrBtn; // VKB to HWR switch button
+                    beginrow=3;
+                    begincolumn=12;
+                    endrow=4;
+                    endcolumn=13;
+                    }
+                };
+            },
+        PENINPUT_LAYOUT_CLIENT_LAYOUT
+            {
+            id=EPeninputClientLayout12x5;
+            colcount=11;
+            rowcount=4;
+            controls =
+                {
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdVkbCtrl; // Control button
+                    beginrow=0;
+                    begincolumn=0;
+                    endrow=4;
+                    endcolumn=11;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdBackspaceBtn; // Backspace button
+                    beginrow=0;
+                    begincolumn=11;
+                    endrow=2;
+                    endcolumn=12;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdEnterBtn; // Enter button
+                    beginrow=2;
+                    begincolumn=11;
+                    endrow=3;
+                    endcolumn=12;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdInputLangSwitcherBtn; // Language switch button
+                    beginrow=3;
+                    begincolumn=11;
+                    endrow=4;
+                    endcolumn=12;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdTabBtn; // Tab button
+                    beginrow=4;
+                    begincolumn=0;
+                    endrow=5;
+                    endcolumn=1;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdCapslockBtn; // Capslock button
+                    beginrow=4;
+                    begincolumn=1;
+                    endrow=5;
+                    endcolumn=2;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdShiftBtn; // Shift button
+                    beginrow=4;
+                    begincolumn=2;
+                    endrow=5;
+                    endcolumn=3;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdSpaceBtn; // Space button
+                    beginrow=4;
+                    begincolumn=3;
+                    endrow=5;
+                    endcolumn=7;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdRangeBar; // Rangebar
+                    beginrow=4;
+                    begincolumn=7;
+                    endrow=5;
+                    endcolumn=11;
+                    },
+                PENINPUT_LAYOUT_CONTROL
+                    {
+                    id=EPeninutWindowCtrlIdSwitchToHwrBtn; // VKB to HWR switch button
+                    beginrow=4;
+                    begincolumn=11;
+                    endrow=5;
+                    endcolumn=12;
+                    }
+                };
+            }                        
+        };
+    }
+
+// ---------------------------------------------------------------------------
+// r_peninput_layout_vkb_vkb_layout_list
+// VKB button area layout
+// ---------------------------------------------------------------------------
+//
+RESOURCE PENINPUT_LAYOUT_VKB_LAYOUT_LIST r_peninput_layout_vkb_vkb_layout_list
+    {
+    items =
+        {
+        PENINPUT_LAYOUT_VKB_LAYOUT
+            {
+            id=EPeninputVkbLayoutNativeChar;
+            mbmfile=PENINPUT_LAYOUT_VKB_BMP;
+            imgmajorskinid=EAknsMajorGeneric;
+            bgbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3;
+            bgbmpmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_mask;
+            bgbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x3;
+            dimbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed;
+            dimmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed_mask;
+            dimbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x31ButtonDimmed;
+            colcount=11;
+            rowcount=4;
+            highlightbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            highlightmaskbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed_mask;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            keys =
+                {
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E45>;
+                    scancode=0x0E45;
+                    beginrow=0;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E3F>;
+                    scancode=0x0E3F;
+                    beginrow=0;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E20>;
+                    scancode=0x0E20;
+                    beginrow=0;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E16>;
+                    scancode=0x0E16;
+                    beginrow=0;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF739>;
+                    scancode=0xF739;
+                    beginrow=0;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF738>;
+                    scancode=0xF738;
+                    beginrow=0;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF736>;
+                    scancode=0xF736;
+                    beginrow=0;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E04>;
+                    scancode=0x0E04;
+                    beginrow=0;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E15>;
+                    scancode=0x0E15;
+                    beginrow=0;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E08>;
+                    scancode=0x0E08;
+                    beginrow=0;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002F>;
+                    scancode=0x002F;
+                    beginrow=0;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E46>;
+                    scancode=0x0E46;
+                    beginrow=1;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E44>;
+                    scancode=0x0E44;
+                    beginrow=1;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF733>;
+                    scancode=0xF733;
+                    beginrow=1;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E1E>;
+                    scancode=0x0E1E;
+                    beginrow=1;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E30>;
+                    scancode=0x0E30;
+                    beginrow=1;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF731>;
+                    scancode=0xF731;
+                    beginrow=1;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF735>;
+                    scancode=0xF735;
+                    beginrow=1;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E23>;
+                    scancode=0x0E23;
+                    beginrow=1;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E19>;
+                    scancode=0x0E19;
+                    beginrow=1;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E22>;
+                    scancode=0x0E22;
+                    beginrow=1;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E1A>;
+                    scancode=0x0E1A;
+                    beginrow=1;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E1F>;
+                    scancode=0x0E1F;
+                    beginrow=2;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E2B>;
+                    scancode=0x0E2B;
+                    beginrow=2;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E01>;
+                    scancode=0x0E01;
+                    beginrow=2;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E14>;
+                    scancode=0x0E14;
+                    beginrow=2;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E40>;
+                    scancode=0x0E40;
+                    beginrow=2;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF749>;
+                    scancode=0xF749;
+                    beginrow=2;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF748>;
+                    scancode=0xF748;
+                    beginrow=2;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E32>;
+                    scancode=0x0E32;
+                    beginrow=2;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E2A>;
+                    scancode=0x0E2A;
+                    beginrow=2;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E27>;
+                    scancode=0x0E27;
+                    beginrow=2;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E07>;
+                    scancode=0x0E07;
+                    beginrow=2;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E1C>;
+                    scancode=0x0E1C;
+                    beginrow=3;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E1B>;
+                    scancode=0x0E1B;
+                    beginrow=3;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E41>;
+                    scancode=0x0E41;
+                    beginrow=3;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E2D>;
+                    scancode=0x0E2D;
+                    beginrow=3;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF734>;
+                    scancode=0xF734;
+                    beginrow=3;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF737>;
+                    scancode=0xF737;
+                    beginrow=3;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E17>;
+                    scancode=0x0E17;
+                    beginrow=3;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E21>;
+                    scancode=0x0E21;
+                    beginrow=3;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E43>;
+                    scancode=0x0E43;
+                    beginrow=3;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E1D>;
+                    scancode=0x0E1D;
+                    beginrow=3;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E03>;
+                    scancode=0x0E03;
+                    beginrow=3;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    }
+                };
+            },
+
+
+
+        PENINPUT_LAYOUT_VKB_LAYOUT
+            {
+            id=EPeninputVkbLayoutNativeCharShift;
+            mbmfile=PENINPUT_LAYOUT_VKB_BMP;
+            imgmajorskinid=EAknsMajorGeneric;
+            bgbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3;
+            bgbmpmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_mask;
+            bgbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x3;
+            dimbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed;
+            dimmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed_mask;
+            dimbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x31ButtonDimmed;
+            colcount=11;
+            rowcount=4;
+            highlightbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            highlightmaskbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed_mask;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            keys =
+                {
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E45>;
+                    scancode=0x0E45;
+                    beginrow=0;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E3F>;
+                    scancode=0x0E3F;
+                    beginrow=0;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E20>;
+                    scancode=0x0E20;
+                    beginrow=0;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E16>;
+                    scancode=0x0E16;
+                    beginrow=0;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF73A>;
+                    scancode=0xF73A;
+                    beginrow=0;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E24>;
+                    scancode=0x0E24;
+                    beginrow=0;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E26>;
+                    scancode=0x0E26;
+                    beginrow=0;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E04>;
+                    scancode=0x0E04;
+                    beginrow=0;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E15>;
+                    scancode=0x0E15;
+                    beginrow=0;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E08>;
+                    scancode=0x0E08;
+                    beginrow=0;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002F>;
+                    scancode=0x002F;
+                    beginrow=0;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E02>;
+                    scancode=0x0E02;
+                    beginrow=1;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E0A>;
+                    scancode=0x0E0A;
+                    beginrow=1;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E0E>;
+                    scancode=0x0E0E;
+                    beginrow=1;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E11>;
+                    scancode=0x0E11;
+                    beginrow=1;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E18>;
+                    scancode=0x0E18;
+                    beginrow=1;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF74D>;
+                    scancode=0xF74D;
+                    beginrow=1;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF74A>;
+                    scancode=0xF74A;
+                    beginrow=1;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E13>;
+                    scancode=0x0E13;
+                    beginrow=1;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E2F>;
+                    scancode=0x0E2F;
+                    beginrow=1;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E0D>;
+                    scancode=0x0E0D;
+                    beginrow=1;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E10>;
+                    scancode=0x0E10;
+                    beginrow=1;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E25>;
+                    scancode=0x0E25;
+                    beginrow=2;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E06>;
+                    scancode=0x0E06;
+                    beginrow=2;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E0F>;
+                    scancode=0x0E0F;
+                    beginrow=2;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E42>;
+                    scancode=0x0E42;
+                    beginrow=2;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E0C>;
+                    scancode=0x0E0C;
+                    beginrow=2;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF747>;
+                    scancode=0xF747;
+                    beginrow=2;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF74B>;
+                    scancode=0xF74B;
+                    beginrow=2;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E29>;
+                    scancode=0x0E29;
+                    beginrow=2;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E28>;
+                    scancode=0x0E28;
+                    beginrow=2;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E0B>;
+                    scancode=0x0E0B;
+                    beginrow=2;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x201D>;
+                    scancode=0x201D;
+                    beginrow=2;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003F>;
+                    scancode=0x003F;
+                    beginrow=3;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0021>;
+                    scancode=0x0021;
+                    beginrow=3;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E09>;
+                    scancode=0x0E09;
+                    beginrow=3;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E2E>;
+                    scancode=0x0E2E;
+                    beginrow=3;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003A>;
+                    scancode=0x003A;
+                    beginrow=3;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0xF74C>;
+                    scancode=0xF74C;
+                    beginrow=3;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E05>;
+                    scancode=0x0E05;
+                    beginrow=3;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E12>;
+                    scancode=0x0E12;
+                    beginrow=3;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E2C>;
+                    scancode=0x0E2C;
+                    beginrow=3;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002C>;
+                    scancode=0x002C;
+                    beginrow=3;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002E>;
+                    scancode=0x002E;
+                    beginrow=3;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    }
+                };
+            },
+
+
+
+        PENINPUT_LAYOUT_VKB_LAYOUT
+            {
+            id=EPeninputVkbLayoutLatinNumber;
+            mbmfile=PENINPUT_LAYOUT_VKB_BMP;
+            imgmajorskinid=EAknsMajorGeneric;
+            bgbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3;
+            bgbmpmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_mask;
+            bgbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x3;
+            dimbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed;
+            dimmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed_mask;
+            dimbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x31ButtonDimmed;
+            colcount=11;
+            rowcount=4;
+            highlightbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            highlightmaskbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed_mask;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            keys =
+                {
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0031>;
+                    scancode=0x0031;
+                    beginrow=0;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0032>;
+                    scancode=0x0032;
+                    beginrow=0;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0033>;
+                    scancode=0x0033;
+                    beginrow=0;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002B>;
+                    scancode=0x002B;
+                    beginrow=0;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002C>;
+                    scancode=0x002C;
+                    beginrow=0;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002E>;
+                    scancode=0x002E;
+                    beginrow=0;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003B>;
+                    scancode=0x003B;
+                    beginrow=0;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003A>;
+                    scancode=0x003A;
+                    beginrow=0;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0021>;
+                    scancode=0x0021;
+                    beginrow=0;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003F>;
+                    scancode=0x003F;
+                    beginrow=0;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0026>;
+                    scancode=0x0026;
+                    beginrow=0;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0034>;
+                    scancode=0x0034;
+                    beginrow=1;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0035>;
+                    scancode=0x0035;
+                    beginrow=1;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0036>;
+                    scancode=0x0036;
+                    beginrow=1;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0070>;
+                    scancode=0x0070;
+                    beginrow=1;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002D>;
+                    scancode=0x002D;
+                    beginrow=1;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003D>;
+                    scancode=0x003D;
+                    beginrow=1;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005F>;
+                    scancode=0x005F;
+                    beginrow=1;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0027>;
+                    scancode=0x0027;
+                    beginrow=1;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0022>;
+                    scancode=0x0022;
+                    beginrow=1;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0028>;
+                    scancode=0x0028;
+                    beginrow=1;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0029>;
+                    scancode=0x0029;
+                    beginrow=1;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0037>;
+                    scancode=0x0037;
+                    beginrow=2;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0038>;
+                    scancode=0x0038;
+                    beginrow=2;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0039>;
+                    scancode=0x0039;
+                    beginrow=2;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0077>;
+                    scancode=0x0077;
+                    beginrow=2;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0040>;
+                    scancode=0x0040;
+                    beginrow=2;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x201E>;
+                    scancode=0x201E;
+                    beginrow=2;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x201D>;
+                    scancode=0x201D;
+                    beginrow=2;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002F>;
+                    scancode=0x002F;
+                    beginrow=2;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005C>;
+                    scancode=0x005C;
+                    beginrow=2;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x007B>;
+                    scancode=0x007B;
+                    beginrow=2;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x007D>;
+                    scancode=0x007D;
+                    beginrow=2;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002A>;
+                    scancode=0x002A;
+                    beginrow=3;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0030>;
+                    scancode=0x0030;
+                    beginrow=3;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0023>;
+                    scancode=0x0023;
+                    beginrow=3;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B1>;
+                    scancode=0x00B1;
+                    beginrow=3;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0025>;
+                    scancode=0x0025;
+                    beginrow=3;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003C>;
+                    scancode=0x003C;
+                    beginrow=3;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003E>;
+                    scancode=0x003E;
+                    beginrow=3;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00AB>;
+                    scancode=0x00AB;
+                    beginrow=3;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00BB>;
+                    scancode=0x00BB;
+                    beginrow=3;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005B>;
+                    scancode=0x005B;
+                    beginrow=3;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005D>;
+                    scancode=0x005D;
+                    beginrow=3;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    }
+                };
+            },
+
+
+
+        PENINPUT_LAYOUT_VKB_LAYOUT
+            {
+            id=EPeninputVkbLayoutLatinNumberShift;
+            mbmfile=PENINPUT_LAYOUT_VKB_BMP;
+            imgmajorskinid=EAknsMajorGeneric;
+            bgbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3;
+            bgbmpmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_mask;
+            bgbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x3;
+            dimbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed;
+            dimmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed_mask;
+            dimbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x31ButtonDimmed;
+            colcount=11;
+            rowcount=4;
+            highlightbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            highlightmaskbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed_mask;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            keys =
+                {
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0031>;
+                    scancode=0x0031;
+                    beginrow=0;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0032>;
+                    scancode=0x0032;
+                    beginrow=0;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0033>;
+                    scancode=0x0033;
+                    beginrow=0;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002B>;
+                    scancode=0x002B;
+                    beginrow=0;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x007E>;
+                    scancode=0x007E;
+                    beginrow=0;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005E>;
+                    scancode=0x005E;
+                    beginrow=0;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0060>;
+                    scancode=0x0060;
+                    beginrow=0;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x2248>;
+                    scancode=0x2248;
+                    beginrow=0;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A1>;
+                    scancode=0x00A1;
+                    beginrow=0;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00BF>;
+                    scancode=0x00BF;
+                    beginrow=0;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B0>;
+                    scancode=0x00B0;
+                    beginrow=0;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0034>;
+                    scancode=0x0034;
+                    beginrow=1;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0035>;
+                    scancode=0x0035;
+                    beginrow=1;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0036>;
+                    scancode=0x0036;
+                    beginrow=1;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A7>;
+                    scancode=0x00A7;
+                    beginrow=1;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x007C>;
+                    scancode=0x007C;
+                    beginrow=1;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0045>;
+                    scancode=0x0045;
+                    beginrow=1;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x20AC>;
+                    scancode=0x20AC;
+                    beginrow=1;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A3>;
+                    scancode=0x00A3;
+                    beginrow=1;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0024>;
+                    scancode=0x0024;
+                    beginrow=1;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A5>;
+                    scancode=0x00A5;
+                    beginrow=1;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A2>;
+                    scancode=0x00A2;
+                    beginrow=1;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0037>;
+                    scancode=0x0037;
+                    beginrow=2;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0038>;
+                    scancode=0x0038;
+                    beginrow=2;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0039>;
+                    scancode=0x0039;
+                    beginrow=2;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A4>;
+                    scancode=0x00A4;
+                    beginrow=2;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x20AA>;
+                    scancode=0x20AA;
+                    beginrow=2;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E3F>;
+                    scancode=0x0E3F;
+                    beginrow=2;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x20AB>;
+                    scancode=0x20AB;
+                    beginrow=2;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B9>;
+                    scancode=0x00B9;
+                    beginrow=2;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B2>;
+                    scancode=0x00B2;
+                    beginrow=2;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B3>;
+                    scancode=0x00B3;
+                    beginrow=2;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00AA>;
+                    scancode=0x00AA;
+                    beginrow=2;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002A>;
+                    scancode=0x002A;
+                    beginrow=3;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0030>;
+                    scancode=0x0030;
+                    beginrow=3;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0023>;
+                    scancode=0x0023;
+                    beginrow=3;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x2030>;
+                    scancode=0x2030;
+                    beginrow=3;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B5>;
+                    scancode=0x00B5;
+                    beginrow=3;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x2211>;
+                    scancode=0x2211;
+                    beginrow=3;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x2206>;
+                    scancode=0x2206;
+                    beginrow=3;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x220F>;
+                    scancode=0x220F;
+                    beginrow=3;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A9>;
+                    scancode=0x00A9;
+                    beginrow=3;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00AE>;
+                    scancode=0x00AE;
+                    beginrow=3;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00BA>;
+                    scancode=0x00BA;
+                    beginrow=3;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    }
+                };
+            },
+
+
+        PENINPUT_LAYOUT_VKB_LAYOUT
+            {
+            id=EPeninputVkbLayoutNativeNumber;
+            mbmfile=PENINPUT_LAYOUT_VKB_BMP;
+            imgmajorskinid=EAknsMajorGeneric;
+            bgbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3;
+            bgbmpmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_mask;
+            bgbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x3;
+            dimbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed;
+            dimmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed_mask;
+            dimbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x31ButtonDimmed;
+            colcount=11;
+            rowcount=4;
+            highlightbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            highlightmaskbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed_mask;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            keys =
+                {
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E51>;
+                    scancode=0x0E51;
+                    beginrow=0;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E52>;
+                    scancode=0x0E52;
+                    beginrow=0;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E53>;
+                    scancode=0x0E53;
+                    beginrow=0;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002B>;
+                    scancode=0x002B;
+                    beginrow=0;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002C>;
+                    scancode=0x002C;
+                    beginrow=0;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002E>;
+                    scancode=0x002E;
+                    beginrow=0;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003B>;
+                    scancode=0x003B;
+                    beginrow=0;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003A>;
+                    scancode=0x003A;
+                    beginrow=0;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0021>;
+                    scancode=0x0021;
+                    beginrow=0;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003F>;
+                    scancode=0x003F;
+                    beginrow=0;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0026>;
+                    scancode=0x0026;
+                    beginrow=0;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E54>;
+                    scancode=0x0E54;
+                    beginrow=1;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E55>;
+                    scancode=0x0E55;
+                    beginrow=1;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E56>;
+                    scancode=0x0E56;
+                    beginrow=1;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0070>;
+                    scancode=0x0070;
+                    beginrow=1;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002D>;
+                    scancode=0x002D;
+                    beginrow=1;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003D>;
+                    scancode=0x003D;
+                    beginrow=1;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005F>;
+                    scancode=0x005F;
+                    beginrow=1;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0027>;
+                    scancode=0x0027;
+                    beginrow=1;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0022>;
+                    scancode=0x0022;
+                    beginrow=1;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0028>;
+                    scancode=0x0028;
+                    beginrow=1;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0029>;
+                    scancode=0x0029;
+                    beginrow=1;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E57>;
+                    scancode=0x0E57;
+                    beginrow=2;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E58>;
+                    scancode=0x0E58;
+                    beginrow=2;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E59>;
+                    scancode=0x0E59;
+                    beginrow=2;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0077>;
+                    scancode=0x0077;
+                    beginrow=2;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0040>;
+                    scancode=0x0040;
+                    beginrow=2;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x201E>;
+                    scancode=0x201E;
+                    beginrow=2;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x201D>;
+                    scancode=0x201D;
+                    beginrow=2;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002F>;
+                    scancode=0x002F;
+                    beginrow=2;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005C>;
+                    scancode=0x005C;
+                    beginrow=2;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x007B>;
+                    scancode=0x007B;
+                    beginrow=2;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x007D>;
+                    scancode=0x007D;
+                    beginrow=2;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002A>;
+                    scancode=0x002A;
+                    beginrow=3;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E50>;
+                    scancode=0x0E50;
+                    beginrow=3;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0023>;
+                    scancode=0x0023;
+                    beginrow=3;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B1>;
+                    scancode=0x00B1;
+                    beginrow=3;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0025>;
+                    scancode=0x0025;
+                    beginrow=3;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003C>;
+                    scancode=0x003C;
+                    beginrow=3;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003E>;
+                    scancode=0x003E;
+                    beginrow=3;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00AB>;
+                    scancode=0x00AB;
+                    beginrow=3;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00BB>;
+                    scancode=0x00BB;
+                    beginrow=3;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005B>;
+                    scancode=0x005B;
+                    beginrow=3;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005D>;
+                    scancode=0x005D;
+                    beginrow=3;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    }
+                };
+            },
+
+
+
+        PENINPUT_LAYOUT_VKB_LAYOUT
+            {
+            id=EPeninputVkbLayoutNativeNumberShift;
+            mbmfile=PENINPUT_LAYOUT_VKB_BMP;
+            imgmajorskinid=EAknsMajorGeneric;
+            bgbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3;
+            bgbmpmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_mask;
+            bgbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x3;
+            dimbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed;
+            dimmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed_mask;
+            dimbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x31ButtonDimmed;
+            colcount=11;
+            rowcount=4;
+            highlightbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            highlightmaskbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed_mask;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            keys =
+                {
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E51>;
+                    scancode=0x0E51;
+                    beginrow=0;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E52>;
+                    scancode=0x0E52;
+                    beginrow=0;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E53>;
+                    scancode=0x0E53;
+                    beginrow=0;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002B>;
+                    scancode=0x002B;
+                    beginrow=0;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x007E>;
+                    scancode=0x007E;
+                    beginrow=0;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005E>;
+                    scancode=0x005E;
+                    beginrow=0;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0060>;
+                    scancode=0x0060;
+                    beginrow=0;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x2248>;
+                    scancode=0x2248;
+                    beginrow=0;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A1>;
+                    scancode=0x00A1;
+                    beginrow=0;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00BF>;
+                    scancode=0x00BF;
+                    beginrow=0;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B0>;
+                    scancode=0x00B0;
+                    beginrow=0;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E54>;
+                    scancode=0x0E54;
+                    beginrow=1;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E55>;
+                    scancode=0x0E55;
+                    beginrow=1;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E56>;
+                    scancode=0x0E56;
+                    beginrow=1;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A7>;
+                    scancode=0x00A7;
+                    beginrow=1;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x007C>;
+                    scancode=0x007C;
+                    beginrow=1;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0045>;
+                    scancode=0x0045;
+                    beginrow=1;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x20AC>;
+                    scancode=0x20AC;
+                    beginrow=1;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A3>;
+                    scancode=0x00A3;
+                    beginrow=1;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0024>;
+                    scancode=0x0024;
+                    beginrow=1;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A5>;
+                    scancode=0x00A5;
+                    beginrow=1;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A2>;
+                    scancode=0x00A2;
+                    beginrow=1;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E57>;
+                    scancode=0x0E57;
+                    beginrow=2;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E58>;
+                    scancode=0x0E58;
+                    beginrow=2;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E59>;
+                    scancode=0x0E59;
+                    beginrow=2;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A4>;
+                    scancode=0x00A4;
+                    beginrow=2;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x20AA>;
+                    scancode=0x20AA;
+                    beginrow=2;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E3F>;
+                    scancode=0x0E3F;
+                    beginrow=2;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x20AB>;
+                    scancode=0x20AB;
+                    beginrow=2;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B9>;
+                    scancode=0x00B9;
+                    beginrow=2;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B2>;
+                    scancode=0x00B2;
+                    beginrow=2;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B3>;
+                    scancode=0x00B3;
+                    beginrow=2;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00AA>;
+                    scancode=0x00AA;
+                    beginrow=2;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002A>;
+                    scancode=0x002A;
+                    beginrow=3;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0E50>;
+                    scancode=0x0E50;
+                    beginrow=3;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0023>;
+                    scancode=0x0023;
+                    beginrow=3;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x2030>;
+                    scancode=0x2030;
+                    beginrow=3;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00B5>;
+                    scancode=0x00B5;
+                    beginrow=3;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x2211>;
+                    scancode=0x2211;
+                    beginrow=3;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x2206>;
+                    scancode=0x2206;
+                    beginrow=3;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x220F>;
+                    scancode=0x220F;
+                    beginrow=3;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00A9>;
+                    scancode=0x00A9;
+                    beginrow=3;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00AE>;
+                    scancode=0x00AE;
+                    beginrow=3;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x00BA>;
+                    scancode=0x00BA;
+                    beginrow=3;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    }
+                };
+            },
+
+        PENINPUT_LAYOUT_VKB_LAYOUT
+            {
+            id=EPeninputVkbLayoutLatinChar;
+            mbmfile=PENINPUT_LAYOUT_VKB_BMP;
+            imgmajorskinid=EAknsMajorGeneric;
+            bgbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3;
+            bgbmpmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_mask;
+            bgbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x3;
+            dimbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed;
+            dimmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed_mask;
+            dimbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x31ButtonDimmed;
+            colcount=11;
+            rowcount=4;
+            highlightbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            highlightmaskbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed_mask;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            keys =
+                {
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0031>;
+                    scancode=0x0031;
+                    beginrow=0;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0032>;
+                    scancode=0x0032;
+                    beginrow=0;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0033>;
+                    scancode=0x0033;
+                    beginrow=0;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0034>;
+                    scancode=0x0034;
+                    beginrow=0;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0035>;
+                    scancode=0x0035;
+                    beginrow=0;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0036>;
+                    scancode=0x0036;
+                    beginrow=0;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0037>;
+                    scancode=0x0037;
+                    beginrow=0;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0038>;
+                    scancode=0x0038;
+                    beginrow=0;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0039>;
+                    scancode=0x0039;
+                    beginrow=0;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0030>;
+                    scancode=0x0030;
+                    beginrow=0;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002B>;	// +
+                    scancode=0x002B;
+                    beginrow=0;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0071>;	// q
+                    scancode=0x0071;
+                    beginrow=1;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0077>;	// w
+                    scancode=0x0077;
+                    beginrow=1;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0065>;	// e
+                    scancode=0x0065;
+                    beginrow=1;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0072>;	// r
+                    scancode=0x0072;
+                    beginrow=1;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0074>;
+                    scancode=0x0074;	// t
+                    beginrow=1;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0079>;
+                    scancode=0x0079;	// y
+                    beginrow=1;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0075>;	// u
+                    scancode=0x0075;
+                    beginrow=1;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0069>;	// i
+                    scancode=0x0069;
+                    beginrow=1;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x006F>;	// o
+                    scancode=0x006F;
+                    beginrow=1;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0070>;	// p
+                    scancode=0x0070;
+                    beginrow=1;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003F>;	// ?
+                    scancode=0x003F;
+                    beginrow=1;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0061>;	// a
+                    scancode=0x0061;
+                    beginrow=2;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0073>;	// s
+                    scancode=0x0073;
+                    beginrow=2;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0064>;
+                    scancode=0x0064;	// d
+                    beginrow=2;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0066>;	// f
+                    scancode=0x0066;
+                    beginrow=2;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0067>;
+                    scancode=0x0067;	// g
+                    beginrow=2;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0068>;	// h
+                    scancode=0x0068;
+                    beginrow=2;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x006A>;	// j
+                    scancode=0x006A;
+                    beginrow=2;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x006B>;	// k
+                    scancode=0x006B;
+                    beginrow=2;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x006C>;	// l
+                    scancode=0x006C;
+                    beginrow=2;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0027>;
+                    scancode=0x0027;
+                    beginrow=2;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0021>;	// !
+                    scancode=0x0021;
+                    beginrow=2;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x007A>;	// z
+                    scancode=0x007A;
+                    beginrow=3;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0078>;	// X
+                    scancode=0x0078;
+                    beginrow=3;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0063>;	// c
+                    scancode=0x0063;
+                    beginrow=3;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0076>;	// v
+                    scancode=0x0076;
+                    beginrow=3;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0062>;	// b
+                    scancode=0x0062;
+                    beginrow=3;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x006E>;	// n
+                    scancode=0x006E;
+                    beginrow=3;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x006D>;	// m
+                    scancode=0x006D;
+                    beginrow=3;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002C>;	// ,
+                    scancode=0x002C;
+                    beginrow=3;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002E>;
+                    scancode=0x002E;
+                    beginrow=3;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002D>;
+                    scancode=0x002D;
+                    beginrow=3;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0040>;
+                    scancode=0x0040;
+                    beginrow=3;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    }
+                };
+            },
+
+
+
+        PENINPUT_LAYOUT_VKB_LAYOUT
+            {
+            id=EPeninputVkbLayoutLatinCharShift;
+            mbmfile=PENINPUT_LAYOUT_VKB_BMP;
+            imgmajorskinid=EAknsMajorGeneric;
+            bgbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3;
+            bgbmpmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_mask;
+            bgbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x3;
+            dimbmp=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed;
+            dimmask=EMbmPeninputgenericvkbQgn_graf_fep_numb_11x3_1_button_dimmed_mask;
+            dimbmpskinid=EAknsMinorGenericQgnGrafFepNumb11x31ButtonDimmed;
+            colcount=11;
+            rowcount=4;
+            highlightbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            highlightmaskbmps =
+                {
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=EMbmPeninputgenericvkbQgn_graf_fep_char_button_pressed_mask;
+                    },
+                PENINPUT_LAYOUT_BITMAP_ID
+                    {
+                    bmpid=0xffff;
+                    }
+                };
+            keys =
+                {
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0031>;	// 1
+                    scancode=0x0031;
+                    beginrow=0;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0032>;
+                    scancode=0x0032;
+                    beginrow=0;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0033>;
+                    scancode=0x0033;
+                    beginrow=0;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0034>;
+                    scancode=0x0034;
+                    beginrow=0;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0035>;
+                    scancode=0x0035;
+                    beginrow=0;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0036>;
+                    scancode=0x0036;
+                    beginrow=0;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0037>;
+                    scancode=0x0037;
+                    beginrow=0;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0038>;
+                    scancode=0x0038;
+                    beginrow=0;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0039>;
+                    scancode=0x0039;
+                    beginrow=0;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0030>;
+                    scancode=0x0030;
+                    beginrow=0;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005C>;	// \
+                    scancode=0x005C;
+                    beginrow=0;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0051>;	// Q
+                    scancode=0x0051;
+                    beginrow=1;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0057>;	// W
+                    scancode=0x0057;
+                    beginrow=1;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0045>;	// E
+                    scancode=0x0045;
+                    beginrow=1;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0052>;
+                    scancode=0x0052;
+                    beginrow=1;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0054>;
+                    scancode=0x0054;
+                    beginrow=1;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0059>;
+                    scancode=0x0059;
+                    beginrow=1;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0055>;
+                    scancode=0x0055;
+                    beginrow=1;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0049>;	// I
+                    scancode=0x0049;
+                    beginrow=1;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x004F>;
+                    scancode=0x004F;
+                    beginrow=1;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0050>;
+                    scancode=0x0050;
+                    beginrow=1;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x002F>;	// /
+                    scancode=0x002F;
+                    beginrow=1;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0041>;
+                    scancode=0x0041;
+                    beginrow=2;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0053>;
+                    scancode=0x0053;
+                    beginrow=2;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0044>;
+                    scancode=0x0044;
+                    beginrow=2;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0046>;
+                    scancode=0x0046;
+                    beginrow=2;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0047>;	// G
+                    scancode=0x0047;
+                    beginrow=2;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0048>;	// H
+                    scancode=0x0048;
+                    beginrow=2;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x004A>;
+                    scancode=0x004A;
+                    beginrow=2;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x004B>;
+                    scancode=0x004B;
+                    beginrow=2;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x004C>;
+                    scancode=0x004C;
+                    beginrow=2;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0022>;
+                    scancode=0x0022;
+                    beginrow=2;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0026>;	// &
+                    scancode=0x0026;
+                    beginrow=2;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005A>;	// Z
+                    scancode=0x005A;
+                    beginrow=3;
+                    begincolumn=0;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0058>;
+                    scancode=0x0058;
+                    beginrow=3;
+                    begincolumn=1;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0043>;
+                    scancode=0x0043;
+                    beginrow=3;
+                    begincolumn=2;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0056>;
+                    scancode=0x0056;
+                    beginrow=3;
+                    begincolumn=3;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x0042>;
+                    scancode=0x0042;
+                    beginrow=3;
+                    begincolumn=4;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x004E>;
+                    scancode=0x004E;
+                    beginrow=3;
+                    begincolumn=5;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x004D>;
+                    scancode=0x004D;
+                    beginrow=3;
+                    begincolumn=6;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003B>;
+                    scancode=0x003B;
+                    beginrow=3;
+                    begincolumn=7;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x003A>;
+                    scancode=0x003A;
+                    beginrow=3;
+                    begincolumn=8;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x005F>;
+                    scancode=0x005F;
+                    beginrow=3;
+                    begincolumn=9;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    },
+                PENINPUT_LAYOUT_UNIT_KEY
+                    {
+                    unicode=<0x007E>;
+                    scancode=0x007E;
+                    beginrow=3;
+                    begincolumn=10;
+                    highlightbmpindex=0;
+                    highlightmaskbmpindex=0;
+                    }
+                };
+            }
+        };
+    }
+
+// ---------------------------------------------------------------------------
+// r_peninput_layout_rangebar_info
+// The information of vkb's rangebar
+// ---------------------------------------------------------------------------
+//
+RESOURCE PENINPUT_LAYOUT_RANGE_BAR_INFO r_peninput_layout_rangebar_info
+    {
+    style=2;
+    ranges=
+        {
+        PENINPUT_LAYOUT_RANGE_INFO
+            {
+            rangeid=ERangeNative; // Native button
+            responsestyle=1;
+            clientlayoutid=EPeninputClientLayout12x5; 
+            vkblayoutid=EPeninputVkbLayoutNativeChar;
+            }, 
+        PENINPUT_LAYOUT_RANGE_INFO
+            {
+            rangeid=ERangeEnglish; // English button
+            responsestyle=1;
+            clientlayoutid=EPeninputClientLayout12x4; 
+            vkblayoutid=EPeninputVkbLayoutLatinChar;
+            }, 
+        PENINPUT_LAYOUT_RANGE_INFO
+            {
+            rangeid=ERangeNumber; // Number button
+            responsestyle=1;
+            clientlayoutid=EPeninputClientLayout12x4; 
+            vkblayoutid=EPeninputVkbLayoutLatinNumber;
+            },
+        PENINPUT_LAYOUT_RANGE_INFO
+            {
+            rangeid=ERangeNativeNumber; // Native number button
+            responsestyle=1;
+            clientlayoutid=EPeninputClientLayout13x4; 
+            vkblayoutid=EPeninputVkbLayoutNativeNumber;
+            },
+        PENINPUT_LAYOUT_RANGE_INFO
+            {
+            rangeid=ERangeSymbol; // Symbol button
+            responsestyle=1;
+            clientlayoutid=EPeninputClientLayout12x4; 
+            vkblayoutid=EPeninputVkbLayoutSymbol;
+            }
+        }; 
+    }
+
+// ---------------------------------------------------------------------------
+// r_peninput_layout_shift_caps_info_list
+// The information of vkb's shift and capslock button
+// ---------------------------------------------------------------------------
+//
+RESOURCE PENINPUT_LAYOUT_SHIFT_CAPS_INFO_LIST r_peninput_layout_shift_caps_info_list
+    {
+    items = 
+        {
+        PENINPUT_LAYOUT_SHIFT_CAPS_INFO
+            {
+            range = ERangeNative;
+            items =
+                {
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE
+                    {
+                    id=0;
+                    vkblayoutid=EPeninputVkbLayoutNativeChar;
+                    caseused=ECaseLower;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=1;
+                    vkblayoutid=EPeninputVkbLayoutNativeCharShift;
+                    caseused=ECaseText;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=2;
+                    vkblayoutid=EPeninputVkbLayoutNativeCharShift;
+                    caseused=ECaseUpper;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=3;
+                    vkblayoutid=EPeninputVkbLayoutNativeChar;
+                    caseused=ECaseInverseText;
+                    }
+                };
+            },
+        PENINPUT_LAYOUT_SHIFT_CAPS_INFO
+            {            
+            range = ERangeEnglish;
+            items =
+                {
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE
+                    {
+                    id=0;
+                    vkblayoutid=EPeninputVkbLayoutLatinChar;
+                    caseused=ECaseLower;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=1;
+                    vkblayoutid=EPeninputVkbLayoutLatinCharShift;
+                    caseused=ECaseText;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=2;
+                    vkblayoutid=EPeninputVkbLayoutLatinCharShift;
+                    caseused=ECaseUpper;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=3;
+                    vkblayoutid=EPeninputVkbLayoutLatinChar;
+                    caseused=ECaseInverseText;
+                    }
+                };
+            },          
+        PENINPUT_LAYOUT_SHIFT_CAPS_INFO
+            {
+            range = ERangeNumber;
+            items =
+                {
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE
+                    {
+                    id=0;
+                    vkblayoutid=EPeninputVkbLayoutLatinNumber;
+                    caseused=0;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=1;
+                    vkblayoutid=EPeninputVkbLayoutLatinNumberShift;
+                    caseused=0;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=2;
+                    vkblayoutid=EPeninputVkbLayoutLatinNumberShift;
+                    caseused=0;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=3;
+                    vkblayoutid=EPeninputVkbLayoutLatinNumber;
+                    caseused=0;
+                    }
+                };
+            },              
+        PENINPUT_LAYOUT_SHIFT_CAPS_INFO
+            {
+            range = ERangeNativeNumber;
+            items =
+                {
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE
+                    {
+                    id=0;
+                    vkblayoutid=EPeninputVkbLayoutNativeNumber;
+                    caseused=0;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=1;
+                    vkblayoutid=EPeninputVkbLayoutNativeNumberShift;
+                    caseused=0;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=2;
+                    vkblayoutid=EPeninputVkbLayoutNativeNumberShift;
+                    caseused=0;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=3;
+                    vkblayoutid=EPeninputVkbLayoutNativeNumber;
+                    caseused=0;
+                    }
+                };
+            },          
+        PENINPUT_LAYOUT_SHIFT_CAPS_INFO
+            {
+            range = ERangeSymbol;
+            items =
+                {
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE
+                    {
+                    id=0;
+                    vkblayoutid=EPeninputVkbLayoutSymbol;
+                    caseused=0;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=1;
+                    vkblayoutid=EPeninputVkbLayoutSymbolShift;
+                    caseused=0;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=2;
+                    vkblayoutid=EPeninputVkbLayoutSymbolShift;
+                    caseused=0;
+                    },
+                PENINPUT_LAYOUT_SHIFT_CAPS_INFO_SINGLE 
+                    {
+                    id=3;
+                    vkblayoutid=EPeninputVkbLayoutSymbol;
+                    caseused=0;
+                    }
+                };
+            }
+        };
+    }
+
+// ---------------------------------------------------------------------------
+// r_peninput_layout_vkb_range_list
+// VKB range list
+// ---------------------------------------------------------------------------
+//
+RESOURCE AKN_FEP_INPUTRANGE_LIST r_peninput_layout_vkb_range_list
+    {
+    ranges=
+        {
+        AKN_FEP_INPUTRANGE
+            {
+            rangeid=ERangeNative;
+            ctrlid=EPeninutWindowCtrlIdNativeCharBtn;
+            indicator=r_peninput_layout_vkb_range_native;
+            posidx=0;
+            },
+        AKN_FEP_INPUTRANGE
+            {
+            rangeid=ERangeEnglish;
+            ctrlid=EPeninutWindowCtrlIdLatinCharBtn;
+            indicator=r_peninput_layout_vkb_range_english;
+            hide=1;
+            posidx=0;
+            }, 
+        AKN_FEP_INPUTRANGE
+            {
+            rangeid=ERangeNumber;
+            ctrlid=EPeninutWindowCtrlIdLatinNumberBtn;
+            indicator=r_peninput_layout_vkb_range_number;
+            actionstyle=1;
+            posidx=1;            
+            },
+        AKN_FEP_INPUTRANGE
+            {
+            rangeid=ERangeNativeNumber;
+            ctrlid=EPeninutWindowCtrlIdNativeNumberBtn;
+            indicator=r_peninput_layout_vkb_range_native_number;
+            actionstyle=1;
+            posidx=2;
+            },            
+        AKN_FEP_INPUTRANGE
+            {
+            rangeid=ERangeSymbol;
+            ctrlid=EPeninutWindowCtrlIdSymbolBtn;
+            indicator=r_peninput_layout_vkb_range_symbol;
+            hide=1;
+            posidx=-1;
+            }
+        };
+    }
+
+// ---------------------------------------------------------------------------
+// r_peninput_layout_vkb_range_native
+// Native range button of vkb's rangebar
+// ---------------------------------------------------------------------------
+//
+RESOURCE AKN_FEP_BUTTON_IMAGE r_peninput_layout_vkb_range_native
+    {
+    bmpfile=PENINPUT_LAYOUT_VKB_BMP;
+    imgmajorskinid=EAknsMajorGeneric;
+    nactive=EMbmPeninputgenericvkbQgn_indi_input_case_text_thai;
+    nactivemsk=EMbmPeninputgenericvkbQgn_indi_input_case_text_thai_mask;
+    nactiveskinid=EAknsMinorGenericQgnIndiFepButtonChinese;
+
+    nactivep=EMbmPeninputgenericvkbQgn_indi_input_case_text_thai;
+    nactivepmsk=EMbmPeninputgenericvkbQgn_indi_input_case_text_thai_mask;
+    nactivepskinid=EAknsMinorGenericQgnIndiFepButtonChinese;
+
+    active=EMbmPeninputgenericvkbQgn_indi_input_case_text_thai;
+    activemsk=EMbmPeninputgenericvkbQgn_indi_input_case_text_thai_mask;
+    activeskinid=EAknsMinorGenericQgnIndiFepButtonChineseSel;
+
+    activep=EMbmPeninputgenericvkbQgn_indi_input_case_text_thai;
+    activepmsk=EMbmPeninputgenericvkbQgn_indi_input_case_text_thai_mask;
+    activepskinid=EAknsMinorGenericQgnIndiFepButtonChineseSel;
+
+    disable=EMbmPeninputgenericvkbQgn_indi_input_case_text_thai;
+    disablemsk=EMbmPeninputgenericvkbQgn_indi_input_case_text_thai_mask;
+    disableskinid=EAknsMinorGenericQgnIndiFepButtonChinese;
+
+    }
+    
+// ---------------------------------------------------------------------------
+// r_peninput_layout_vkb_range_english
+// English range button of vkb's rangebar
+// ---------------------------------------------------------------------------
+//
+RESOURCE AKN_FEP_BUTTON_IMAGE r_peninput_layout_vkb_range_english
+    {
+    bmpfile=PENINPUT_LAYOUT_VKB_BMP;
+    imgmajorskinid=EAknsMajorGeneric;
+    
+    nactive=EMbmPeninputgenericvkbQgn_indi_input_case_capital;
+    nactivemsk=EMbmPeninputgenericvkbQgn_indi_input_case_capital_mask;
+    nactiveskinid=EAknsMinorGenericQgnIndiFepButtonCaseCapital;
+    
+    nactivep=EMbmPeninputgenericvkbQgn_indi_input_case_capital;
+    nactivepmsk=EMbmPeninputgenericvkbQgn_indi_input_case_capital_mask;
+    nactivepskinid=EAknsMinorGenericQgnIndiFepButtonCaseCapital;
+    
+    active=EMbmPeninputgenericvkbQgn_indi_input_case_capital;
+    activemsk=EMbmPeninputgenericvkbQgn_indi_input_case_capital_mask;
+    activeskinid=EAknsMinorGenericQgnIndiFepButtonCaseCapitalSel;
+    
+    activep=EMbmPeninputgenericvkbQgn_indi_input_case_capital;
+    activepmsk=EMbmPeninputgenericvkbQgn_indi_input_case_capital_mask;
+    activepskinid=EAknsMinorGenericQgnIndiFepButtonCaseCapitalSel;
+    
+    disable=EMbmPeninputgenericvkbQgn_indi_input_case_capital;
+    disablemsk=EMbmPeninputgenericvkbQgn_indi_input_case_capital_mask;
+    disableskinid=EAknsMinorGenericQgnIndiFepButtonCaseCapital;       
+    }
+
+// ---------------------------------------------------------------------------
+// r_peninput_layout_vkb_range_symbol
+// Symbol range button of vkb's rangebar
+// ---------------------------------------------------------------------------
+//
+RESOURCE AKN_FEP_BUTTON_IMAGE r_peninput_layout_vkb_range_symbol
+    {
+    bmpfile=PENINPUT_LAYOUT_VKB_BMP;
+    imgmajorskinid=EAknsMajorGeneric;
+    nactive=EMbmPeninputgenericvkbQgn_indi_fep_button_case_special;
+    nactiveskinid=EAknsMinorGenericQgnIndiFepButtonCaseSpecial;
+
+    nactivep=EMbmPeninputgenericvkbQgn_indi_fep_button_case_special;
+    nactivepskinid=EAknsMinorGenericQgnIndiFepButtonCaseSpecial;
+
+    active=EMbmPeninputgenericvkbQgn_indi_fep_button_case_special_sel;
+    activeskinid=EAknsMinorGenericQgnIndiFepButtonCaseSpecialSel;
+
+    activep=EMbmPeninputgenericvkbQgn_indi_fep_button_case_special_sel;
+    activepskinid=EAknsMinorGenericQgnIndiFepButtonCaseSpecialSel;
+
+    disable=EMbmPeninputgenericvkbQgn_indi_fep_button_case_special;
+    disableskinid=EAknsMinorGenericQgnIndiFepButtonCaseSpecial;
+
+    }
+
+// ---------------------------------------------------------------------------
+// r_peninput_layout_vkb_range_number
+// Number range button of vkb's rangebar
+// ---------------------------------------------------------------------------
+//
+RESOURCE AKN_FEP_BUTTON_IMAGE r_peninput_layout_vkb_range_number
+    {
+    bmpfile=PENINPUT_LAYOUT_VKB_BMP;
+    imgmajorskinid=EAknsMajorGeneric;
+    
+    nactive=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_special;
+    nactivemsk=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_special_mask;
+    nactiveskinid=EAknsMinorGenericQgnIndiFepButtonCaseNumeric;
+    
+    nactivep=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_special;
+    nactivepmsk=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_special_mask;
+    nactivepskinid=EAknsMinorGenericQgnIndiFepButtonCaseNumeric;
+    
+    active=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_special;
+    activemsk=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_special_mask;
+    activeskinid=EAknsMinorGenericQgnIndiFepButtonCaseNumericSel;
+    
+    activep=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_special;
+    activepmsk=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_special_mask;
+    activepskinid=EAknsMinorGenericQgnIndiFepButtonCaseNumericSel;
+    
+    disable=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_special;
+    disablemsk=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_special_mask;
+    disableskinid=EAknsMinorGenericQgnIndiFepButtonCaseNumeric;           
+    }
+
+// ---------------------------------------------------------------------------
+// r_peninput_layout_vkb_range_number
+// Number range button of vkb's rangebar
+// ---------------------------------------------------------------------------
+//
+RESOURCE AKN_FEP_BUTTON_IMAGE r_peninput_layout_vkb_range_native_number
+    {
+    bmpfile=PENINPUT_LAYOUT_VKB_BMP;
+    imgmajorskinid=EAknsMajorGeneric;
+    nactive=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_thai;
+    nactivemsk=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_thai_mask;
+    
+    nactivep=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_thai;
+    nactivepmsk=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_thai_mask;
+    //nactivepskinid=EAknsMinorGenericQgnIndiFepButtonCaseNativeNumeric;
+
+    active=EMbmPeninputgenericvkbQgn_indi_fep_button_case_numeric_thai;
+    activemsk=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_thai_mask;
+    //activeskinid=EAknsMinorGenericQgnIndiFepButtonCaseNativeNumericSel;
+
+    activep=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_thai;
+    activepmsk=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_thai_mask;
+    //activepskinid=EAknsMinorGenericQgnIndiFepButtonCaseNativeNumericSel;
+
+    disable=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_thai;
+    disablemsk=EMbmPeninputgenericvkbQgn_indi_input_case_numeric_thai_mask;
+    //disableskinid=EAknsMinorGenericQgnIndiFepButtonCaseNativeNumeric;
+
+    }