Generate simple.xml.in.in from xkb layouts
authorPeng Huang <shawn.p.huang@gmail.com>
Thu, 5 Jan 2012 19:27:58 +0000 (14:27 -0500)
committerPeng Huang <shawn.p.huang@gmail.com>
Tue, 21 Feb 2012 16:51:52 +0000 (11:51 -0500)
engine/gensimple.py [new file with mode: 0644]
engine/simple.xml.in.in

diff --git a/engine/gensimple.py b/engine/gensimple.py
new file mode 100644 (file)
index 0000000..3fb1ff1
--- /dev/null
@@ -0,0 +1,84 @@
+# vim:set et sts=4 sw=4:
+#!/usr/bin/env python
+
+from xml.dom import minidom
+
+def simplfy_dom(node):
+    name = node.nodeName
+    children = {}
+    if len(node.childNodes) == 1 and node.childNodes[0].nodeType == node.TEXT_NODE:
+        return name, node.childNodes[0].nodeValue
+    for child in node.childNodes:
+        if child.nodeType != node.ELEMENT_NODE:
+            continue
+        child_name, child_value = simplfy_dom(child)
+        if child_name not in children:
+            children[child_name] = []
+        children[child_name].append(child_value)
+    return name, children
+
+def parse_xml():
+    filename = "/usr/share/X11/xkb/rules/evdev.xml"
+    dom = minidom.parse(file(filename))
+    name, root = simplfy_dom(dom)
+
+    layouts = root['xkbConfigRegistry'][0]['layoutList'][0]['layout']
+    for layout in layouts:
+        config = layout['configItem'][0]
+        name = config['name'][0]
+        short_desc = config.get('shortDescription', [''])[0]
+        desc = config.get('description', [''])[0]
+        languages = config.get('languageList', [{}])[0].get('iso639Id', [])
+        variants = layout.get('variantList', [{}])[0].get('variant', [])
+        yield name, None, short_desc, desc, languages
+        for variant in variants:
+            variant_config = variant['configItem'][0]
+            variant_name = variant_config['name'][0]
+            variant_short_desc = variant_config.get('shortDescription', [''])[0]
+            variant_desc = variant_config.get('description', [''])[0]
+            variant_languages = variant_config.get('languageList', [{}])[0].get('iso639Id', [])
+            if not isinstance(variant_languages, list):
+                variant_languages = [variant_languages]
+            yield name, variant_name, variant_short_desc, variant_desc, languages + variant_languages
+
+def gen_xml():
+    header = u"""<component>
+       <name>org.freedesktop.IBus.Simple</name>
+       <description>A table based simple engine</description>
+       <exec>/home/penghuang/ibus/libexec/ibus-engine-simple</exec>
+       <version>1.4.99.20120104</version>
+       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+       <license>GPL</license>
+       <homepage>http://code.google.com/p/ibus</homepage>
+       <textdomain>ibus</textdomain>
+       <engines>"""
+    engine = u"""\t\t<engine>
+                       <name>%s</name>
+                       <language>%s</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>%s</layout>
+                       <longname>%s</longname>
+                       <description>%s</description>
+                       <rank>%d</rank>
+               </engine>"""
+    footer = u"""\t</engines>
+</component>"""
+    
+    print header
+    
+    for name, vname, sdesc, desc, languages in parse_xml():
+        if vname:
+            ibus_name = "xkb:layout:%s-%s" % (name, vname)
+            layout = "%s(%s)" % (name, vname)
+        else:
+            ibus_name = "xkb:layout:%s" % name
+            layout = name
+        for l in languages:
+            out = engine % (ibus_name + u"-" + l, l, layout, desc, desc, 99)
+            print out.encode("utf8")
+    
+    print footer
+
+if __name__ == "__main__":
+    gen_xml()
index 350e50f..3a3898f 100644 (file)
-<?xml version="1.0" encoding="utf-8"?>
 <component>
        <name>org.freedesktop.IBus.Simple</name>
        <description>A table based simple engine</description>
-       <exec>${libexecdir}/ibus-engine-simple</exec>
-       <version>@VERSION@</version>
+       <exec>/home/penghuang/ibus/libexec/ibus-engine-simple</exec>
+       <version>1.4.99.20120104</version>
        <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
        <license>GPL</license>
        <homepage>http://code.google.com/p/ibus</homepage>
        <textdomain>ibus</textdomain>
        <engines>
                <engine>
-                       <name>xkb:layout:us</name>
-                       <language>en</language>
+                       <name>xkb:layout:us-eng</name>
+                       <language>eng</language>
                        <license>GPL</license>
                        <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
                        <layout>us</layout>
-                       <longname>English (United States)</longname>
-                       <description>English (United States)</description>
+                       <longname>English (US)</longname>
+                       <description>English (US)</description>
                        <rank>99</rank>
                </engine>
                <engine>
-                       <name>xkb:layout:us-intl</name>
-                       <language>en</language>
+                       <name>xkb:layout:us-chr-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(chr)</layout>
+                       <longname>Cherokee</longname>
+                       <description>Cherokee</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-chr-chr</name>
+                       <language>chr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(chr)</layout>
+                       <longname>Cherokee</longname>
+                       <description>Cherokee</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-euro-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(euro)</layout>
+                       <longname>English (US, with euro on 5)</longname>
+                       <description>English (US, with euro on 5)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-intl-eng</name>
+                       <language>eng</language>
                        <license>GPL</license>
                        <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
                        <layout>us(intl)</layout>
-                       <longname>English (United States)</longname>
-                       <description>English (United States)</description>
+                       <longname>English (US, international with dead keys)</longname>
+                       <description>English (US, international with dead keys)</description>
                        <rank>99</rank>
                </engine>
                <engine>
-                       <name>xkb:layout:fr</name>
-                       <language>fr</language>
+                       <name>xkb:layout:us-alt-intl-eng</name>
+                       <language>eng</language>
                        <license>GPL</license>
                        <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
-                       <layout>fr</layout>
-                       <longname>France</longname>
-                       <description>France</description>
+                       <layout>us(alt-intl)</layout>
+                       <longname>English (US, alternative international)</longname>
+                       <description>English (US, alternative international)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-colemak-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(colemak)</layout>
+                       <longname>English (Colemak)</longname>
+                       <description>English (Colemak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-dvorak-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(dvorak)</layout>
+                       <longname>English (Dvorak)</longname>
+                       <description>English (Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-dvorak-intl-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(dvorak-intl)</layout>
+                       <longname>English (Dvorak international with dead keys)</longname>
+                       <description>English (Dvorak international with dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-dvorak-alt-intl-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(dvorak-alt-intl)</layout>
+                       <longname>English (Dvorak alternative international no dead keys)</longname>
+                       <description>English (Dvorak alternative international no dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-dvorak-l-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(dvorak-l)</layout>
+                       <longname>English (left handed Dvorak)</longname>
+                       <description>English (left handed Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-dvorak-r-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(dvorak-r)</layout>
+                       <longname>English (right handed Dvorak)</longname>
+                       <description>English (right handed Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-dvorak-classic-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(dvorak-classic)</layout>
+                       <longname>English (classic Dvorak)</longname>
+                       <description>English (classic Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-dvp-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(dvp)</layout>
+                       <longname>English (programmer Dvorak)</longname>
+                       <description>English (programmer Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-rus-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(rus)</layout>
+                       <longname>Russian (US, phonetic)</longname>
+                       <description>Russian (US, phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-rus-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(rus)</layout>
+                       <longname>Russian (US, phonetic)</longname>
+                       <description>Russian (US, phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-mac-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(mac)</layout>
+                       <longname>English (Macintosh)</longname>
+                       <description>English (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-altgr-intl-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(altgr-intl)</layout>
+                       <longname>English (international AltGr dead keys)</longname>
+                       <description>English (international AltGr dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-altgr-intl-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(altgr-intl)</layout>
+                       <longname>English (international AltGr dead keys)</longname>
+                       <description>English (international AltGr dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-altgr-intl-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(altgr-intl)</layout>
+                       <longname>English (international AltGr dead keys)</longname>
+                       <description>English (international AltGr dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-altgr-intl-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(altgr-intl)</layout>
+                       <longname>English (international AltGr dead keys)</longname>
+                       <description>English (international AltGr dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-olpc2-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(olpc2)</layout>
+                       <longname>English (layout toggle on multiply/divide key)</longname>
+                       <description>English (layout toggle on multiply/divide key)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-hbs-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(hbs)</layout>
+                       <longname>Serbo-Croatian (US)</longname>
+                       <description>Serbo-Croatian (US)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-hbs-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(hbs)</layout>
+                       <longname>Serbo-Croatian (US)</longname>
+                       <description>Serbo-Croatian (US)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-hbs-bos</name>
+                       <language>bos</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(hbs)</layout>
+                       <longname>Serbo-Croatian (US)</longname>
+                       <description>Serbo-Croatian (US)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-hbs-hbs</name>
+                       <language>hbs</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(hbs)</layout>
+                       <longname>Serbo-Croatian (US)</longname>
+                       <description>Serbo-Croatian (US)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-hbs-hrv</name>
+                       <language>hrv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(hbs)</layout>
+                       <longname>Serbo-Croatian (US)</longname>
+                       <description>Serbo-Croatian (US)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:us-hbs-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>us(hbs)</layout>
+                       <longname>Serbo-Croatian (US)</longname>
+                       <description>Serbo-Croatian (US)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ad-cat</name>
+                       <language>cat</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ad</layout>
+                       <longname>Catalan</longname>
+                       <description>Catalan</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:af-ps-pus</name>
+                       <language>pus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>af(ps)</layout>
+                       <longname>Pashto</longname>
+                       <description>Pashto</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:af-uz-uzb</name>
+                       <language>uzb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>af(uz)</layout>
+                       <longname>Uzbek (Afghanistan)</longname>
+                       <description>Uzbek (Afghanistan)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:af-olpc-ps-pus</name>
+                       <language>pus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>af(olpc-ps)</layout>
+                       <longname>Pashto (Afghanistan, OLPC)</longname>
+                       <description>Pashto (Afghanistan, OLPC)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:af-uz-olpc-uzb</name>
+                       <language>uzb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>af(uz-olpc)</layout>
+                       <longname>Uzbek (Afghanistan, OLPC)</longname>
+                       <description>Uzbek (Afghanistan, OLPC)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ara-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ara</layout>
+                       <longname>Arabic</longname>
+                       <description>Arabic</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ara-azerty-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ara(azerty)</layout>
+                       <longname>Arabic (azerty)</longname>
+                       <description>Arabic (azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ara-azerty_digits-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ara(azerty_digits)</layout>
+                       <longname>Arabic (azerty/digits)</longname>
+                       <description>Arabic (azerty/digits)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ara-digits-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ara(digits)</layout>
+                       <longname>Arabic (digits)</longname>
+                       <description>Arabic (digits)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ara-qwerty-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ara(qwerty)</layout>
+                       <longname>Arabic (qwerty)</longname>
+                       <description>Arabic (qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ara-qwerty_digits-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ara(qwerty_digits)</layout>
+                       <longname>Arabic (qwerty/digits)</longname>
+                       <description>Arabic (qwerty/digits)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ara-buckwalter-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ara(buckwalter)</layout>
+                       <longname>Arabic (Buckwalter)</longname>
+                       <description>Arabic (Buckwalter)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:al-alb</name>
+                       <language>alb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>al</layout>
+                       <longname>Albanian</longname>
+                       <description>Albanian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:am-hye</name>
+                       <language>hye</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>am</layout>
+                       <longname>Armenian</longname>
+                       <description>Armenian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:am-phonetic-hye</name>
+                       <language>hye</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>am(phonetic)</layout>
+                       <longname>Armenian (phonetic)</longname>
+                       <description>Armenian (phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:am-phonetic-alt-hye</name>
+                       <language>hye</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>am(phonetic-alt)</layout>
+                       <longname>Armenian (alternative phonetic)</longname>
+                       <description>Armenian (alternative phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:am-eastern-hye</name>
+                       <language>hye</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>am(eastern)</layout>
+                       <longname>Armenian (eastern)</longname>
+                       <description>Armenian (eastern)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:am-western-hye</name>
+                       <language>hye</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>am(western)</layout>
+                       <longname>Armenian (western)</longname>
+                       <description>Armenian (western)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:am-eastern-alt-hye</name>
+                       <language>hye</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>am(eastern-alt)</layout>
+                       <longname>Armenian (alternative eastern)</longname>
+                       <description>Armenian (alternative eastern)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:at-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>at</layout>
+                       <longname>German (Austria)</longname>
+                       <description>German (Austria)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:at-nodeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>at(nodeadkeys)</layout>
+                       <longname>German (Austria, eliminate dead keys)</longname>
+                       <description>German (Austria, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:at-sundeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>at(sundeadkeys)</layout>
+                       <longname>German (Austria, Sun dead keys)</longname>
+                       <description>German (Austria, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:at-mac-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>at(mac)</layout>
+                       <longname>German (Austria, Macintosh)</longname>
+                       <description>German (Austria, Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:az-aze</name>
+                       <language>aze</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>az</layout>
+                       <longname>Azerbaijani</longname>
+                       <description>Azerbaijani</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:az-cyrillic-aze</name>
+                       <language>aze</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>az(cyrillic)</layout>
+                       <longname>Azerbaijani (Cyrillic)</longname>
+                       <description>Azerbaijani (Cyrillic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:by-bel</name>
+                       <language>bel</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>by</layout>
+                       <longname>Belarusian</longname>
+                       <description>Belarusian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:by-legacy-bel</name>
+                       <language>bel</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>by(legacy)</layout>
+                       <longname>Belarusian (legacy)</longname>
+                       <description>Belarusian (legacy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:by-latin-bel</name>
+                       <language>bel</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>by(latin)</layout>
+                       <longname>Belarusian (Latin)</longname>
+                       <description>Belarusian (Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be</layout>
+                       <longname>Belgian</longname>
+                       <description>Belgian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be</layout>
+                       <longname>Belgian</longname>
+                       <description>Belgian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be</layout>
+                       <longname>Belgian</longname>
+                       <description>Belgian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-oss-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(oss)</layout>
+                       <longname>Belgian (alternative)</longname>
+                       <description>Belgian (alternative)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-oss-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(oss)</layout>
+                       <longname>Belgian (alternative)</longname>
+                       <description>Belgian (alternative)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-oss-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(oss)</layout>
+                       <longname>Belgian (alternative)</longname>
+                       <description>Belgian (alternative)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-oss_latin9-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(oss_latin9)</layout>
+                       <longname>Belgian (alternative, latin-9 only)</longname>
+                       <description>Belgian (alternative, latin-9 only)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-oss_latin9-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(oss_latin9)</layout>
+                       <longname>Belgian (alternative, latin-9 only)</longname>
+                       <description>Belgian (alternative, latin-9 only)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-oss_latin9-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(oss_latin9)</layout>
+                       <longname>Belgian (alternative, latin-9 only)</longname>
+                       <description>Belgian (alternative, latin-9 only)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-oss_sundeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(oss_sundeadkeys)</layout>
+                       <longname>Belgian (alternative, Sun dead keys)</longname>
+                       <description>Belgian (alternative, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-oss_sundeadkeys-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(oss_sundeadkeys)</layout>
+                       <longname>Belgian (alternative, Sun dead keys)</longname>
+                       <description>Belgian (alternative, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-oss_sundeadkeys-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(oss_sundeadkeys)</layout>
+                       <longname>Belgian (alternative, Sun dead keys)</longname>
+                       <description>Belgian (alternative, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-iso-alternate-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(iso-alternate)</layout>
+                       <longname>Belgian (ISO alternate)</longname>
+                       <description>Belgian (ISO alternate)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-iso-alternate-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(iso-alternate)</layout>
+                       <longname>Belgian (ISO alternate)</longname>
+                       <description>Belgian (ISO alternate)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-iso-alternate-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(iso-alternate)</layout>
+                       <longname>Belgian (ISO alternate)</longname>
+                       <description>Belgian (ISO alternate)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-nodeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(nodeadkeys)</layout>
+                       <longname>Belgian (eliminate dead keys)</longname>
+                       <description>Belgian (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-nodeadkeys-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(nodeadkeys)</layout>
+                       <longname>Belgian (eliminate dead keys)</longname>
+                       <description>Belgian (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-nodeadkeys-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(nodeadkeys)</layout>
+                       <longname>Belgian (eliminate dead keys)</longname>
+                       <description>Belgian (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-sundeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(sundeadkeys)</layout>
+                       <longname>Belgian (Sun dead keys)</longname>
+                       <description>Belgian (Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-sundeadkeys-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(sundeadkeys)</layout>
+                       <longname>Belgian (Sun dead keys)</longname>
+                       <description>Belgian (Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-sundeadkeys-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(sundeadkeys)</layout>
+                       <longname>Belgian (Sun dead keys)</longname>
+                       <description>Belgian (Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-wang-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(wang)</layout>
+                       <longname>Belgian (Wang model 724 azerty)</longname>
+                       <description>Belgian (Wang model 724 azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-wang-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(wang)</layout>
+                       <longname>Belgian (Wang model 724 azerty)</longname>
+                       <description>Belgian (Wang model 724 azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:be-wang-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>be(wang)</layout>
+                       <longname>Belgian (Wang model 724 azerty)</longname>
+                       <description>Belgian (Wang model 724 azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:bd-ben</name>
+                       <language>ben</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>bd</layout>
+                       <longname>Bengali</longname>
+                       <description>Bengali</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:bd-probhat-ben</name>
+                       <language>ben</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>bd(probhat)</layout>
+                       <longname>Bengali (Probhat)</longname>
+                       <description>Bengali (Probhat)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-ben-ben</name>
+                       <language>ben</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(ben)</layout>
+                       <longname>Bengali</longname>
+                       <description>Bengali</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-ben_probhat-ben</name>
+                       <language>ben</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(ben_probhat)</layout>
+                       <longname>Bengali (Probhat)</longname>
+                       <description>Bengali (Probhat)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-guj-guj</name>
+                       <language>guj</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(guj)</layout>
+                       <longname>Gujarati</longname>
+                       <description>Gujarati</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-guru-pan</name>
+                       <language>pan</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(guru)</layout>
+                       <longname>Punjabi (Gurmukhi)</longname>
+                       <description>Punjabi (Gurmukhi)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-jhelum-pan</name>
+                       <language>pan</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(jhelum)</layout>
+                       <longname>Punjabi (Gurmukhi Jhelum)</longname>
+                       <description>Punjabi (Gurmukhi Jhelum)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-kan-kan</name>
+                       <language>kan</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(kan)</layout>
+                       <longname>Kannada</longname>
+                       <description>Kannada</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-mal-mal</name>
+                       <language>mal</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(mal)</layout>
+                       <longname>Malayalam</longname>
+                       <description>Malayalam</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-mal_lalitha-mal</name>
+                       <language>mal</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(mal_lalitha)</layout>
+                       <longname>Malayalam (Lalitha)</longname>
+                       <description>Malayalam (Lalitha)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-mal_enhanced-mal</name>
+                       <language>mal</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(mal_enhanced)</layout>
+                       <longname>Malayalam (enhanced Inscript with Rupee Sign)</longname>
+                       <description>Malayalam (enhanced Inscript with Rupee Sign)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-ori-ori</name>
+                       <language>ori</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(ori)</layout>
+                       <longname>Oriya</longname>
+                       <description>Oriya</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-tam_unicode-tam</name>
+                       <language>tam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(tam_unicode)</layout>
+                       <longname>Tamil (Unicode)</longname>
+                       <description>Tamil (Unicode)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-tam_keyboard_with_numerals-tam</name>
+                       <language>tam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(tam_keyboard_with_numerals)</layout>
+                       <longname>Tamil (keyboard with numerals)</longname>
+                       <description>Tamil (keyboard with numerals)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-tam_TAB-tam</name>
+                       <language>tam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(tam_TAB)</layout>
+                       <longname>Tamil (TAB typewriter)</longname>
+                       <description>Tamil (TAB typewriter)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-tam_TSCII-tam</name>
+                       <language>tam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(tam_TSCII)</layout>
+                       <longname>Tamil (TSCII typewriter)</longname>
+                       <description>Tamil (TSCII typewriter)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-tam-tam</name>
+                       <language>tam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(tam)</layout>
+                       <longname>Tamil</longname>
+                       <description>Tamil</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-tel-tel</name>
+                       <language>tel</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(tel)</layout>
+                       <longname>Telugu</longname>
+                       <description>Telugu</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-urd-phonetic-urd</name>
+                       <language>urd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(urd-phonetic)</layout>
+                       <longname>Urdu (phonetic)</longname>
+                       <description>Urdu (phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-urd-phonetic3-urd</name>
+                       <language>urd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(urd-phonetic3)</layout>
+                       <longname>Urdu (alternative phonetic)</longname>
+                       <description>Urdu (alternative phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-urd-winkeys-urd</name>
+                       <language>urd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(urd-winkeys)</layout>
+                       <longname>Urdu (WinKeys)</longname>
+                       <description>Urdu (WinKeys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-bolnagri-hin</name>
+                       <language>hin</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(bolnagri)</layout>
+                       <longname>Hindi (Bolnagri)</longname>
+                       <description>Hindi (Bolnagri)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-hin-wx-hin</name>
+                       <language>hin</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(hin-wx)</layout>
+                       <longname>Hindi (Wx)</longname>
+                       <description>Hindi (Wx)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:in-eng-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>in(eng)</layout>
+                       <longname>English (India, with RupeeSign)</longname>
+                       <description>English (India, with RupeeSign)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ba-bos</name>
+                       <language>bos</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ba</layout>
+                       <longname>Bosnian</longname>
+                       <description>Bosnian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ba-alternatequotes-bos</name>
+                       <language>bos</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ba(alternatequotes)</layout>
+                       <longname>Bosnian (use guillemets for quotes)</longname>
+                       <description>Bosnian (use guillemets for quotes)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ba-unicode-bos</name>
+                       <language>bos</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ba(unicode)</layout>
+                       <longname>Bosnian (use Bosnian digraphs)</longname>
+                       <description>Bosnian (use Bosnian digraphs)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ba-unicodeus-bos</name>
+                       <language>bos</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ba(unicodeus)</layout>
+                       <longname>Bosnian (US keyboard with Bosnian digraphs)</longname>
+                       <description>Bosnian (US keyboard with Bosnian digraphs)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ba-us-bos</name>
+                       <language>bos</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ba(us)</layout>
+                       <longname>Bosnian (US keyboard with Bosnian letters)</longname>
+                       <description>Bosnian (US keyboard with Bosnian letters)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:br-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>br</layout>
+                       <longname>Portuguese (Brazil)</longname>
+                       <description>Portuguese (Brazil)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:br-nodeadkeys-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>br(nodeadkeys)</layout>
+                       <longname>Portuguese (Brazil, eliminate dead keys)</longname>
+                       <description>Portuguese (Brazil, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:br-dvorak-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>br(dvorak)</layout>
+                       <longname>Portuguese (Brazil, Dvorak)</longname>
+                       <description>Portuguese (Brazil, Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:br-nativo-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>br(nativo)</layout>
+                       <longname>Portuguese (Brazil, nativo)</longname>
+                       <description>Portuguese (Brazil, nativo)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:br-nativo-us-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>br(nativo-us)</layout>
+                       <longname>Portuguese (Brazil, nativo for USA keyboards)</longname>
+                       <description>Portuguese (Brazil, nativo for USA keyboards)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:br-nativo-epo-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>br(nativo-epo)</layout>
+                       <longname>Portuguese (Brazil, nativo for Esperanto)</longname>
+                       <description>Portuguese (Brazil, nativo for Esperanto)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:br-nativo-epo-epo</name>
+                       <language>epo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>br(nativo-epo)</layout>
+                       <longname>Portuguese (Brazil, nativo for Esperanto)</longname>
+                       <description>Portuguese (Brazil, nativo for Esperanto)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:bg-bul</name>
+                       <language>bul</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>bg</layout>
+                       <longname>Bulgarian</longname>
+                       <description>Bulgarian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:bg-phonetic-bul</name>
+                       <language>bul</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>bg(phonetic)</layout>
+                       <longname>Bulgarian (traditional phonetic)</longname>
+                       <description>Bulgarian (traditional phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:bg-bas_phonetic-bul</name>
+                       <language>bul</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>bg(bas_phonetic)</layout>
+                       <longname>Bulgarian (new phonetic)</longname>
+                       <description>Bulgarian (new phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ma-french-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ma(french)</layout>
+                       <longname>French (Morocco)</longname>
+                       <description>French (Morocco)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ma-tifinagh-ber</name>
+                       <language>ber</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ma(tifinagh)</layout>
+                       <longname>Berber (Morocco, Tifinagh)</longname>
+                       <description>Berber (Morocco, Tifinagh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ma-tifinagh-alt-ber</name>
+                       <language>ber</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ma(tifinagh-alt)</layout>
+                       <longname>Berber (Morocco, Tifinagh alternative)</longname>
+                       <description>Berber (Morocco, Tifinagh alternative)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ma-tifinagh-alt-phonetic-ber</name>
+                       <language>ber</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ma(tifinagh-alt-phonetic)</layout>
+                       <longname>Berber (Morocco, Tifinagh alternative phonetic)</longname>
+                       <description>Berber (Morocco, Tifinagh alternative phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ma-tifinagh-extended-ber</name>
+                       <language>ber</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ma(tifinagh-extended)</layout>
+                       <longname>Berber (Morocco, Tifinagh extended)</longname>
+                       <description>Berber (Morocco, Tifinagh extended)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ma-tifinagh-phonetic-ber</name>
+                       <language>ber</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ma(tifinagh-phonetic)</layout>
+                       <longname>Berber (Morocco, Tifinagh phonetic)</longname>
+                       <description>Berber (Morocco, Tifinagh phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ma-tifinagh-extended-phonetic-ber</name>
+                       <language>ber</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ma(tifinagh-extended-phonetic)</layout>
+                       <longname>Berber (Morocco, Tifinagh extended phonetic)</longname>
+                       <description>Berber (Morocco, Tifinagh extended phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm</layout>
+                       <longname>English (Cameroon)</longname>
+                       <description>English (Cameroon)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-french-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(french)</layout>
+                       <longname>French (Cameroon)</longname>
+                       <description>French (Cameroon)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-french-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(french)</layout>
+                       <longname>French (Cameroon)</longname>
+                       <description>French (Cameroon)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-bas</name>
+                       <language>bas</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-nmg</name>
+                       <language>nmg</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-fub</name>
+                       <language>fub</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-ewo</name>
+                       <language>ewo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-xmd</name>
+                       <language>xmd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-mfh</name>
+                       <language>mfh</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-bkm</name>
+                       <language>bkm</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-ozm</name>
+                       <language>ozm</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-lns</name>
+                       <language>lns</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-sox</name>
+                       <language>sox</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-pny</name>
+                       <language>pny</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-wes</name>
+                       <language>wes</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-lem</name>
+                       <language>lem</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-nyj</name>
+                       <language>nyj</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-mfk</name>
+                       <language>mfk</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-mcp</name>
+                       <language>mcp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-ass</name>
+                       <language>ass</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-xed</name>
+                       <language>xed</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-dua</name>
+                       <language>dua</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-anv</name>
+                       <language>anv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-bum</name>
+                       <language>bum</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-btb</name>
+                       <language>btb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-bfd</name>
+                       <language>bfd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-azo</name>
+                       <language>azo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-ken</name>
+                       <language>ken</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-yam</name>
+                       <language>yam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-yat</name>
+                       <language>yat</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-qwerty-yas</name>
+                       <language>yas</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(qwerty)</layout>
+                       <longname>English (Cameroon qwerty)</longname>
+                       <description>English (Cameroon qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-bas</name>
+                       <language>bas</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-nmg</name>
+                       <language>nmg</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-fub</name>
+                       <language>fub</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-ewo</name>
+                       <language>ewo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-xmd</name>
+                       <language>xmd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-mfh</name>
+                       <language>mfh</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-bkm</name>
+                       <language>bkm</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-ozm</name>
+                       <language>ozm</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-lns</name>
+                       <language>lns</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-sox</name>
+                       <language>sox</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-pny</name>
+                       <language>pny</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-wes</name>
+                       <language>wes</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-lem</name>
+                       <language>lem</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-nyj</name>
+                       <language>nyj</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-mfk</name>
+                       <language>mfk</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-mcp</name>
+                       <language>mcp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-ass</name>
+                       <language>ass</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-xed</name>
+                       <language>xed</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-dua</name>
+                       <language>dua</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-anv</name>
+                       <language>anv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-bum</name>
+                       <language>bum</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-btb</name>
+                       <language>btb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-bfd</name>
+                       <language>bfd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-azo</name>
+                       <language>azo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-ken</name>
+                       <language>ken</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-yam</name>
+                       <language>yam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-yat</name>
+                       <language>yat</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-azerty-yas</name>
+                       <language>yas</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(azerty)</layout>
+                       <longname>French (Cameroon azerty)</longname>
+                       <description>French (Cameroon azerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cm-dvorak-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cm(dvorak)</layout>
+                       <longname>English (Cameroon Dvorak)</longname>
+                       <description>English (Cameroon Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:mm-mya</name>
+                       <language>mya</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>mm</layout>
+                       <longname>Burmese</longname>
+                       <description>Burmese</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ca-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ca</layout>
+                       <longname>French (Canada)</longname>
+                       <description>French (Canada)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ca-fr-dvorak-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ca(fr-dvorak)</layout>
+                       <longname>French (Canada, Dvorak)</longname>
+                       <description>French (Canada, Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ca-fr-legacy-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ca(fr-legacy)</layout>
+                       <longname>French (Canada, legacy)</longname>
+                       <description>French (Canada, legacy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ca-multix-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ca(multix)</layout>
+                       <longname>Canadian Multilingual</longname>
+                       <description>Canadian Multilingual</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ca-multi-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ca(multi)</layout>
+                       <longname>Canadian Multilingual (first part)</longname>
+                       <description>Canadian Multilingual (first part)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ca-multi-2gr-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ca(multi-2gr)</layout>
+                       <longname>Canadian Multilingual (second part)</longname>
+                       <description>Canadian Multilingual (second part)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ca-ike-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ca(ike)</layout>
+                       <longname>Inuktitut</longname>
+                       <description>Inuktitut</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ca-ike-iku</name>
+                       <language>iku</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ca(ike)</layout>
+                       <longname>Inuktitut</longname>
+                       <description>Inuktitut</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ca-eng-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ca(eng)</layout>
+                       <longname>English (Canada)</longname>
+                       <description>English (Canada)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ca-eng-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ca(eng)</layout>
+                       <longname>English (Canada)</longname>
+                       <description>English (Canada)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cd-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cd</layout>
+                       <longname>French (Democratic Republic of the Congo)</longname>
+                       <description>French (Democratic Republic of the Congo)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cn-chi</name>
+                       <language>chi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cn</layout>
+                       <longname>Chinese</longname>
+                       <description>Chinese</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cn-tib-chi</name>
+                       <language>chi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cn(tib)</layout>
+                       <longname>Tibetan</longname>
+                       <description>Tibetan</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cn-tib-tib</name>
+                       <language>tib</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cn(tib)</layout>
+                       <longname>Tibetan</longname>
+                       <description>Tibetan</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cn-tib_asciinum-chi</name>
+                       <language>chi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cn(tib_asciinum)</layout>
+                       <longname>Tibetan (with ASCII numerals)</longname>
+                       <description>Tibetan (with ASCII numerals)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cn-tib_asciinum-tib</name>
+                       <language>tib</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cn(tib_asciinum)</layout>
+                       <longname>Tibetan (with ASCII numerals)</longname>
+                       <description>Tibetan (with ASCII numerals)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cn-uig-chi</name>
+                       <language>chi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cn(uig)</layout>
+                       <longname>Uyghur</longname>
+                       <description>Uyghur</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cn-uig-uig</name>
+                       <language>uig</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cn(uig)</layout>
+                       <longname>Uyghur</longname>
+                       <description>Uyghur</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hr-scr</name>
+                       <language>scr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hr</layout>
+                       <longname>Croatian</longname>
+                       <description>Croatian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hr-alternatequotes-scr</name>
+                       <language>scr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hr(alternatequotes)</layout>
+                       <longname>Croatian (use guillemets for quotes)</longname>
+                       <description>Croatian (use guillemets for quotes)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hr-unicode-scr</name>
+                       <language>scr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hr(unicode)</layout>
+                       <longname>Croatian (use Croatian digraphs)</longname>
+                       <description>Croatian (use Croatian digraphs)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hr-unicodeus-scr</name>
+                       <language>scr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hr(unicodeus)</layout>
+                       <longname>Croatian (US keyboard with Croatian digraphs)</longname>
+                       <description>Croatian (US keyboard with Croatian digraphs)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hr-us-scr</name>
+                       <language>scr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hr(us)</layout>
+                       <longname>Croatian (US keyboard with Croatian letters)</longname>
+                       <description>Croatian (US keyboard with Croatian letters)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cz-cze</name>
+                       <language>cze</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cz</layout>
+                       <longname>Czech</longname>
+                       <description>Czech</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cz-bksl-cze</name>
+                       <language>cze</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cz(bksl)</layout>
+                       <longname>Czech (with <\|> key)</longname>
+                       <description>Czech (with <\|> key)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cz-qwerty-cze</name>
+                       <language>cze</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cz(qwerty)</layout>
+                       <longname>Czech (qwerty)</longname>
+                       <description>Czech (qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cz-qwerty_bksl-cze</name>
+                       <language>cze</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cz(qwerty_bksl)</layout>
+                       <longname>Czech (qwerty, extended Backslash)</longname>
+                       <description>Czech (qwerty, extended Backslash)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cz-ucw-cze</name>
+                       <language>cze</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cz(ucw)</layout>
+                       <longname>Czech (UCW layout, accented letters only)</longname>
+                       <description>Czech (UCW layout, accented letters only)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:cz-dvorak-ucw-cze</name>
+                       <language>cze</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>cz(dvorak-ucw)</layout>
+                       <longname>Czech (US Dvorak with CZ UCW support)</longname>
+                       <description>Czech (US Dvorak with CZ UCW support)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:dk-dan</name>
+                       <language>dan</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>dk</layout>
+                       <longname>Danish</longname>
+                       <description>Danish</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:dk-nodeadkeys-dan</name>
+                       <language>dan</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>dk(nodeadkeys)</layout>
+                       <longname>Danish (eliminate dead keys)</longname>
+                       <description>Danish (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:dk-mac-dan</name>
+                       <language>dan</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>dk(mac)</layout>
+                       <longname>Danish (Macintosh)</longname>
+                       <description>Danish (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:dk-mac_nodeadkeys-dan</name>
+                       <language>dan</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>dk(mac_nodeadkeys)</layout>
+                       <longname>Danish (Macintosh, eliminate dead keys)</longname>
+                       <description>Danish (Macintosh, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:dk-dvorak-dan</name>
+                       <language>dan</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>dk(dvorak)</layout>
+                       <longname>Danish (Dvorak)</longname>
+                       <description>Danish (Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:nl-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>nl</layout>
+                       <longname>Dutch</longname>
+                       <description>Dutch</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:nl-sundeadkeys-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>nl(sundeadkeys)</layout>
+                       <longname>Dutch (Sun dead keys)</longname>
+                       <description>Dutch (Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:nl-mac-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>nl(mac)</layout>
+                       <longname>Dutch (Macintosh)</longname>
+                       <description>Dutch (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:nl-std-nld</name>
+                       <language>nld</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>nl(std)</layout>
+                       <longname>Dutch (standard)</longname>
+                       <description>Dutch (standard)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:bt-dzo</name>
+                       <language>dzo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>bt</layout>
+                       <longname>Dzongkha</longname>
+                       <description>Dzongkha</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ee-est</name>
+                       <language>est</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ee</layout>
+                       <longname>Estonian</longname>
+                       <description>Estonian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ee-nodeadkeys-est</name>
+                       <language>est</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ee(nodeadkeys)</layout>
+                       <longname>Estonian (eliminate dead keys)</longname>
+                       <description>Estonian (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ee-dvorak-est</name>
+                       <language>est</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ee(dvorak)</layout>
+                       <longname>Estonian (Dvorak)</longname>
+                       <description>Estonian (Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ee-us-est</name>
+                       <language>est</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ee(us)</layout>
+                       <longname>Estonian (US keyboard with Estonian letters)</longname>
+                       <description>Estonian (US keyboard with Estonian letters)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ir-per</name>
+                       <language>per</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ir</layout>
+                       <longname>Persian</longname>
+                       <description>Persian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ir-pes_keypad-per</name>
+                       <language>per</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ir(pes_keypad)</layout>
+                       <longname>Persian (with Persian Keypad)</longname>
+                       <description>Persian (with Persian Keypad)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ir-ku-per</name>
+                       <language>per</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ir(ku)</layout>
+                       <longname>Kurdish (Iran, Latin Q)</longname>
+                       <description>Kurdish (Iran, Latin Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ir-ku-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ir(ku)</layout>
+                       <longname>Kurdish (Iran, Latin Q)</longname>
+                       <description>Kurdish (Iran, Latin Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ir-ku_f-per</name>
+                       <language>per</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ir(ku_f)</layout>
+                       <longname>Kurdish (Iran, F)</longname>
+                       <description>Kurdish (Iran, F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ir-ku_f-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ir(ku_f)</layout>
+                       <longname>Kurdish (Iran, F)</longname>
+                       <description>Kurdish (Iran, F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ir-ku_alt-per</name>
+                       <language>per</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ir(ku_alt)</layout>
+                       <longname>Kurdish (Iran, Latin Alt-Q)</longname>
+                       <description>Kurdish (Iran, Latin Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ir-ku_alt-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ir(ku_alt)</layout>
+                       <longname>Kurdish (Iran, Latin Alt-Q)</longname>
+                       <description>Kurdish (Iran, Latin Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ir-ku_ara-per</name>
+                       <language>per</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ir(ku_ara)</layout>
+                       <longname>Kurdish (Iran, Arabic-Latin)</longname>
+                       <description>Kurdish (Iran, Arabic-Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ir-ku_ara-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ir(ku_ara)</layout>
+                       <longname>Kurdish (Iran, Arabic-Latin)</longname>
+                       <description>Kurdish (Iran, Arabic-Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq</layout>
+                       <longname>Iraqi</longname>
+                       <description>Iraqi</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq</layout>
+                       <longname>Iraqi</longname>
+                       <description>Iraqi</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku)</layout>
+                       <longname>Kurdish (Iraq, Latin Q)</longname>
+                       <description>Kurdish (Iraq, Latin Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku)</layout>
+                       <longname>Kurdish (Iraq, Latin Q)</longname>
+                       <description>Kurdish (Iraq, Latin Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku)</layout>
+                       <longname>Kurdish (Iraq, Latin Q)</longname>
+                       <description>Kurdish (Iraq, Latin Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku_f-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku_f)</layout>
+                       <longname>Kurdish (Iraq, F)</longname>
+                       <description>Kurdish (Iraq, F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku_f-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku_f)</layout>
+                       <longname>Kurdish (Iraq, F)</longname>
+                       <description>Kurdish (Iraq, F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku_f-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku_f)</layout>
+                       <longname>Kurdish (Iraq, F)</longname>
+                       <description>Kurdish (Iraq, F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku_alt-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku_alt)</layout>
+                       <longname>Kurdish (Iraq, Latin Alt-Q)</longname>
+                       <description>Kurdish (Iraq, Latin Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku_alt-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku_alt)</layout>
+                       <longname>Kurdish (Iraq, Latin Alt-Q)</longname>
+                       <description>Kurdish (Iraq, Latin Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku_alt-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku_alt)</layout>
+                       <longname>Kurdish (Iraq, Latin Alt-Q)</longname>
+                       <description>Kurdish (Iraq, Latin Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku_ara-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku_ara)</layout>
+                       <longname>Kurdish (Iraq, Arabic-Latin)</longname>
+                       <description>Kurdish (Iraq, Arabic-Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku_ara-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku_ara)</layout>
+                       <longname>Kurdish (Iraq, Arabic-Latin)</longname>
+                       <description>Kurdish (Iraq, Arabic-Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:iq-ku_ara-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>iq(ku_ara)</layout>
+                       <longname>Kurdish (Iraq, Arabic-Latin)</longname>
+                       <description>Kurdish (Iraq, Arabic-Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fo-fao</name>
+                       <language>fao</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fo</layout>
+                       <longname>Faroese</longname>
+                       <description>Faroese</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fo-nodeadkeys-fao</name>
+                       <language>fao</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fo(nodeadkeys)</layout>
+                       <longname>Faroese (eliminate dead keys)</longname>
+                       <description>Faroese (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fi-fin</name>
+                       <language>fin</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fi</layout>
+                       <longname>Finnish</longname>
+                       <description>Finnish</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fi-classic-fin</name>
+                       <language>fin</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fi(classic)</layout>
+                       <longname>Finnish (classic)</longname>
+                       <description>Finnish (classic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fi-nodeadkeys-fin</name>
+                       <language>fin</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fi(nodeadkeys)</layout>
+                       <longname>Finnish (classic, eliminate dead keys)</longname>
+                       <description>Finnish (classic, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fi-smi-fin</name>
+                       <language>fin</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fi(smi)</layout>
+                       <longname>Northern Saami (Finland)</longname>
+                       <description>Northern Saami (Finland)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fi-smi-sme</name>
+                       <language>sme</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fi(smi)</layout>
+                       <longname>Northern Saami (Finland)</longname>
+                       <description>Northern Saami (Finland)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fi-mac-fin</name>
+                       <language>fin</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fi(mac)</layout>
+                       <longname>Finnish (Macintosh)</longname>
+                       <description>Finnish (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr</layout>
+                       <longname>French</longname>
+                       <description>French</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-nodeadkeys-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(nodeadkeys)</layout>
+                       <longname>French (eliminate dead keys)</longname>
+                       <description>French (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-sundeadkeys-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(sundeadkeys)</layout>
+                       <longname>French (Sun dead keys)</longname>
+                       <description>French (Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-oss-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(oss)</layout>
+                       <longname>French (alternative)</longname>
+                       <description>French (alternative)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-oss_latin9-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(oss_latin9)</layout>
+                       <longname>French (alternative, latin-9 only)</longname>
+                       <description>French (alternative, latin-9 only)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-oss_nodeadkeys-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(oss_nodeadkeys)</layout>
+                       <longname>French (alternative, eliminate dead keys)</longname>
+                       <description>French (alternative, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-oss_sundeadkeys-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(oss_sundeadkeys)</layout>
+                       <longname>French (alternative, Sun dead keys)</longname>
+                       <description>French (alternative, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-latin9-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(latin9)</layout>
+                       <longname>French (legacy, alternative)</longname>
+                       <description>French (legacy, alternative)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-latin9_nodeadkeys-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(latin9_nodeadkeys)</layout>
+                       <longname>French (legacy, alternative, eliminate dead keys)</longname>
+                       <description>French (legacy, alternative, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-latin9_sundeadkeys-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(latin9_sundeadkeys)</layout>
+                       <longname>French (legacy, alternative, Sun dead keys)</longname>
+                       <description>French (legacy, alternative, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-bepo-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(bepo)</layout>
+                       <longname>French (Bepo, ergonomic, Dvorak way)</longname>
+                       <description>French (Bepo, ergonomic, Dvorak way)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-bepo_latin9-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(bepo_latin9)</layout>
+                       <longname>French (Bepo, ergonomic, Dvorak way, latin-9 only)</longname>
+                       <description>French (Bepo, ergonomic, Dvorak way, latin-9 only)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-dvorak-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(dvorak)</layout>
+                       <longname>French (Dvorak)</longname>
+                       <description>French (Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-mac-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(mac)</layout>
+                       <longname>French (Macintosh)</longname>
+                       <description>French (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-bre-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(bre)</layout>
+                       <longname>French (Breton)</longname>
+                       <description>French (Breton)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-oci-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(oci)</layout>
+                       <longname>Occitan</longname>
+                       <description>Occitan</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-oci-oci</name>
+                       <language>oci</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(oci)</layout>
+                       <longname>Occitan</longname>
+                       <description>Occitan</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-geo-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(geo)</layout>
+                       <longname>Georgian (France, AZERTY Tskapo)</longname>
+                       <description>Georgian (France, AZERTY Tskapo)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:fr-geo-geo</name>
+                       <language>geo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>fr(geo)</layout>
+                       <longname>Georgian (France, AZERTY Tskapo)</longname>
+                       <description>Georgian (France, AZERTY Tskapo)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh</layout>
+                       <longname>English (Ghana)</longname>
+                       <description>English (Ghana)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-generic-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(generic)</layout>
+                       <longname>English (Ghana, multilingual)</longname>
+                       <description>English (Ghana, multilingual)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-akan-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(akan)</layout>
+                       <longname>Akan</longname>
+                       <description>Akan</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-akan-aka</name>
+                       <language>aka</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(akan)</layout>
+                       <longname>Akan</longname>
+                       <description>Akan</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-ewe-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(ewe)</layout>
+                       <longname>Ewe</longname>
+                       <description>Ewe</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-ewe-ewe</name>
+                       <language>ewe</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(ewe)</layout>
+                       <longname>Ewe</longname>
+                       <description>Ewe</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-fula-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(fula)</layout>
+                       <longname>Fula</longname>
+                       <description>Fula</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-fula-ful</name>
+                       <language>ful</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(fula)</layout>
+                       <longname>Fula</longname>
+                       <description>Fula</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-ga-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(ga)</layout>
+                       <longname>Ga</longname>
+                       <description>Ga</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-ga-gaa</name>
+                       <language>gaa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(ga)</layout>
+                       <longname>Ga</longname>
+                       <description>Ga</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-hausa-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(hausa)</layout>
+                       <longname>Hausa</longname>
+                       <description>Hausa</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-hausa-hau</name>
+                       <language>hau</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(hausa)</layout>
+                       <longname>Hausa</longname>
+                       <description>Hausa</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-avn-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(avn)</layout>
+                       <longname>Avatime</longname>
+                       <description>Avatime</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-avn-avn</name>
+                       <language>avn</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(avn)</layout>
+                       <longname>Avatime</longname>
+                       <description>Avatime</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gh-gillbt-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gh(gillbt)</layout>
+                       <longname>English (Ghana, GILLBT)</longname>
+                       <description>English (Ghana, GILLBT)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gn-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gn</layout>
+                       <longname>French (Guinea)</longname>
+                       <description>French (Guinea)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ge-geo</name>
+                       <language>geo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ge</layout>
+                       <longname>Georgian</longname>
+                       <description>Georgian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ge-ergonomic-geo</name>
+                       <language>geo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ge(ergonomic)</layout>
+                       <longname>Georgian (ergonomic)</longname>
+                       <description>Georgian (ergonomic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ge-mess-geo</name>
+                       <language>geo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ge(mess)</layout>
+                       <longname>Georgian (MESS)</longname>
+                       <description>Georgian (MESS)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ge-ru-geo</name>
+                       <language>geo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ge(ru)</layout>
+                       <longname>Russian (Georgia)</longname>
+                       <description>Russian (Georgia)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ge-ru-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ge(ru)</layout>
+                       <longname>Russian (Georgia)</longname>
+                       <description>Russian (Georgia)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ge-os-geo</name>
+                       <language>geo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ge(os)</layout>
+                       <longname>Ossetian (Georgia)</longname>
+                       <description>Ossetian (Georgia)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ge-os-oss</name>
+                       <language>oss</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ge(os)</layout>
+                       <longname>Ossetian (Georgia)</longname>
+                       <description>Ossetian (Georgia)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de</layout>
+                       <longname>German</longname>
+                       <description>German</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-deadacute-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(deadacute)</layout>
+                       <longname>German (dead acute)</longname>
+                       <description>German (dead acute)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-deadgraveacute-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(deadgraveacute)</layout>
+                       <longname>German (dead grave acute)</longname>
+                       <description>German (dead grave acute)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-nodeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(nodeadkeys)</layout>
+                       <longname>German (eliminate dead keys)</longname>
+                       <description>German (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-ro-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(ro)</layout>
+                       <longname>Romanian (Germany)</longname>
+                       <description>Romanian (Germany)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-ro-rum</name>
+                       <language>rum</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(ro)</layout>
+                       <longname>Romanian (Germany)</longname>
+                       <description>Romanian (Germany)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-ro_nodeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(ro_nodeadkeys)</layout>
+                       <longname>Romanian (Germany, eliminate dead keys)</longname>
+                       <description>Romanian (Germany, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-ro_nodeadkeys-rum</name>
+                       <language>rum</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(ro_nodeadkeys)</layout>
+                       <longname>Romanian (Germany, eliminate dead keys)</longname>
+                       <description>Romanian (Germany, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-dvorak-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(dvorak)</layout>
+                       <longname>German (Dvorak)</longname>
+                       <description>German (Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-sundeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(sundeadkeys)</layout>
+                       <longname>German (Sun dead keys)</longname>
+                       <description>German (Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-neo-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(neo)</layout>
+                       <longname>German (Neo 2)</longname>
+                       <description>German (Neo 2)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-mac-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(mac)</layout>
+                       <longname>German (Macintosh)</longname>
+                       <description>German (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-mac_nodeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(mac_nodeadkeys)</layout>
+                       <longname>German (Macintosh, eliminate dead keys)</longname>
+                       <description>German (Macintosh, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-dsb-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(dsb)</layout>
+                       <longname>Lower Sorbian</longname>
+                       <description>Lower Sorbian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-dsb-dsb</name>
+                       <language>dsb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(dsb)</layout>
+                       <longname>Lower Sorbian</longname>
+                       <description>Lower Sorbian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-dsb_qwertz-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(dsb_qwertz)</layout>
+                       <longname>Lower Sorbian (qwertz)</longname>
+                       <description>Lower Sorbian (qwertz)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-dsb_qwertz-dsb</name>
+                       <language>dsb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(dsb_qwertz)</layout>
+                       <longname>Lower Sorbian (qwertz)</longname>
+                       <description>Lower Sorbian (qwertz)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-qwerty-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(qwerty)</layout>
+                       <longname>German (qwerty)</longname>
+                       <description>German (qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-ru-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(ru)</layout>
+                       <longname>Russian (Germany, phonetic)</longname>
+                       <description>Russian (Germany, phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:de-ru-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>de(ru)</layout>
+                       <longname>Russian (Germany, phonetic)</longname>
+                       <description>Russian (Germany, phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gr-gre</name>
+                       <language>gre</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gr</layout>
+                       <longname>Greek</longname>
+                       <description>Greek</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gr-simple-gre</name>
+                       <language>gre</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gr(simple)</layout>
+                       <longname>Greek (simple)</longname>
+                       <description>Greek (simple)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gr-extended-gre</name>
+                       <language>gre</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gr(extended)</layout>
+                       <longname>Greek (extended)</longname>
+                       <description>Greek (extended)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gr-nodeadkeys-gre</name>
+                       <language>gre</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gr(nodeadkeys)</layout>
+                       <longname>Greek (eliminate dead keys)</longname>
+                       <description>Greek (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gr-polytonic-gre</name>
+                       <language>gre</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gr(polytonic)</layout>
+                       <longname>Greek (polytonic)</longname>
+                       <description>Greek (polytonic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu</layout>
+                       <longname>Hungarian</longname>
+                       <description>Hungarian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-standard-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(standard)</layout>
+                       <longname>Hungarian (standard)</longname>
+                       <description>Hungarian (standard)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-nodeadkeys-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(nodeadkeys)</layout>
+                       <longname>Hungarian (eliminate dead keys)</longname>
+                       <description>Hungarian (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-qwerty-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(qwerty)</layout>
+                       <longname>Hungarian (qwerty)</longname>
+                       <description>Hungarian (qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-101_qwertz_comma_dead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(101_qwertz_comma_dead)</layout>
+                       <longname>Hungarian (101/qwertz/comma/dead keys)</longname>
+                       <description>Hungarian (101/qwertz/comma/dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-101_qwertz_comma_nodead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(101_qwertz_comma_nodead)</layout>
+                       <longname>Hungarian (101/qwertz/comma/eliminate dead keys)</longname>
+                       <description>Hungarian (101/qwertz/comma/eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-101_qwertz_dot_dead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(101_qwertz_dot_dead)</layout>
+                       <longname>Hungarian (101/qwertz/dot/dead keys)</longname>
+                       <description>Hungarian (101/qwertz/dot/dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-101_qwertz_dot_nodead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(101_qwertz_dot_nodead)</layout>
+                       <longname>Hungarian (101/qwertz/dot/eliminate dead keys)</longname>
+                       <description>Hungarian (101/qwertz/dot/eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-101_qwerty_comma_dead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(101_qwerty_comma_dead)</layout>
+                       <longname>Hungarian (101/qwerty/comma/dead keys)</longname>
+                       <description>Hungarian (101/qwerty/comma/dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-101_qwerty_comma_nodead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(101_qwerty_comma_nodead)</layout>
+                       <longname>Hungarian (101/qwerty/comma/eliminate dead keys)</longname>
+                       <description>Hungarian (101/qwerty/comma/eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-101_qwerty_dot_dead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(101_qwerty_dot_dead)</layout>
+                       <longname>Hungarian (101/qwerty/dot/dead keys)</longname>
+                       <description>Hungarian (101/qwerty/dot/dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-101_qwerty_dot_nodead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(101_qwerty_dot_nodead)</layout>
+                       <longname>Hungarian (101/qwerty/dot/eliminate dead keys)</longname>
+                       <description>Hungarian (101/qwerty/dot/eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-102_qwertz_comma_dead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(102_qwertz_comma_dead)</layout>
+                       <longname>Hungarian (102/qwertz/comma/dead keys)</longname>
+                       <description>Hungarian (102/qwertz/comma/dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-102_qwertz_comma_nodead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(102_qwertz_comma_nodead)</layout>
+                       <longname>Hungarian (102/qwertz/comma/eliminate dead keys)</longname>
+                       <description>Hungarian (102/qwertz/comma/eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-102_qwertz_dot_dead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(102_qwertz_dot_dead)</layout>
+                       <longname>Hungarian (102/qwertz/dot/dead keys)</longname>
+                       <description>Hungarian (102/qwertz/dot/dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-102_qwertz_dot_nodead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(102_qwertz_dot_nodead)</layout>
+                       <longname>Hungarian (102/qwertz/dot/eliminate dead keys)</longname>
+                       <description>Hungarian (102/qwertz/dot/eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-102_qwerty_comma_dead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(102_qwerty_comma_dead)</layout>
+                       <longname>Hungarian (102/qwerty/comma/dead keys)</longname>
+                       <description>Hungarian (102/qwerty/comma/dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-102_qwerty_comma_nodead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(102_qwerty_comma_nodead)</layout>
+                       <longname>Hungarian (102/qwerty/comma/eliminate dead keys)</longname>
+                       <description>Hungarian (102/qwerty/comma/eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-102_qwerty_dot_dead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(102_qwerty_dot_dead)</layout>
+                       <longname>Hungarian (102/qwerty/dot/dead keys)</longname>
+                       <description>Hungarian (102/qwerty/dot/dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:hu-102_qwerty_dot_nodead-hun</name>
+                       <language>hun</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>hu(102_qwerty_dot_nodead)</layout>
+                       <longname>Hungarian (102/qwerty/dot/eliminate dead keys)</longname>
+                       <description>Hungarian (102/qwerty/dot/eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:is-ice</name>
+                       <language>ice</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>is</layout>
+                       <longname>Icelandic</longname>
+                       <description>Icelandic</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:is-Sundeadkeys-ice</name>
+                       <language>ice</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>is(Sundeadkeys)</layout>
+                       <longname>Icelandic (Sun dead keys)</longname>
+                       <description>Icelandic (Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:is-nodeadkeys-ice</name>
+                       <language>ice</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>is(nodeadkeys)</layout>
+                       <longname>Icelandic (eliminate dead keys)</longname>
+                       <description>Icelandic (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:is-mac-ice</name>
+                       <language>ice</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>is(mac)</layout>
+                       <longname>Icelandic (Macintosh)</longname>
+                       <description>Icelandic (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:is-dvorak-ice</name>
+                       <language>ice</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>is(dvorak)</layout>
+                       <longname>Icelandic (Dvorak)</longname>
+                       <description>Icelandic (Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:il-heb</name>
+                       <language>heb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>il</layout>
+                       <longname>Hebrew</longname>
+                       <description>Hebrew</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:il-lyx-heb</name>
+                       <language>heb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>il(lyx)</layout>
+                       <longname>Hebrew (lyx)</longname>
+                       <description>Hebrew (lyx)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:il-phonetic-heb</name>
+                       <language>heb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>il(phonetic)</layout>
+                       <longname>Hebrew (phonetic)</longname>
+                       <description>Hebrew (phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:il-biblical-heb</name>
+                       <language>heb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>il(biblical)</layout>
+                       <longname>Hebrew (Biblical, Tiro)</longname>
+                       <description>Hebrew (Biblical, Tiro)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:it-ita</name>
+                       <language>ita</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>it</layout>
+                       <longname>Italian</longname>
+                       <description>Italian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:it-nodeadkeys-ita</name>
+                       <language>ita</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>it(nodeadkeys)</layout>
+                       <longname>Italian (eliminate dead keys)</longname>
+                       <description>Italian (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:it-mac-ita</name>
+                       <language>ita</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>it(mac)</layout>
+                       <longname>Italian (Macintosh)</longname>
+                       <description>Italian (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:it-us-ita</name>
+                       <language>ita</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>it(us)</layout>
+                       <longname>Italian (US keyboard with Italian letters)</longname>
+                       <description>Italian (US keyboard with Italian letters)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:it-geo-ita</name>
+                       <language>ita</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>it(geo)</layout>
+                       <longname>Georgian (Italy)</longname>
+                       <description>Georgian (Italy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:it-geo-geo</name>
+                       <language>geo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>it(geo)</layout>
+                       <longname>Georgian (Italy)</longname>
+                       <description>Georgian (Italy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:jp-jpn</name>
+                       <language>jpn</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>jp</layout>
+                       <longname>Japanese</longname>
+                       <description>Japanese</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:jp-kana-jpn</name>
+                       <language>jpn</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>jp(kana)</layout>
+                       <longname>Japanese (Kana)</longname>
+                       <description>Japanese (Kana)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:jp-kana86-jpn</name>
+                       <language>jpn</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>jp(kana86)</layout>
+                       <longname>Japanese (Kana 86)</longname>
+                       <description>Japanese (Kana 86)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:jp-OADG109A-jpn</name>
+                       <language>jpn</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>jp(OADG109A)</layout>
+                       <longname>Japanese (OADG 109A)</longname>
+                       <description>Japanese (OADG 109A)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:jp-mac-jpn</name>
+                       <language>jpn</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>jp(mac)</layout>
+                       <longname>Japanese (Macintosh)</longname>
+                       <description>Japanese (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kg-kir</name>
+                       <language>kir</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kg</layout>
+                       <longname>Kyrgyz</longname>
+                       <description>Kyrgyz</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kg-phonetic-kir</name>
+                       <language>kir</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kg(phonetic)</layout>
+                       <longname>Kyrgyz (phonetic)</longname>
+                       <description>Kyrgyz (phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kh-khm</name>
+                       <language>khm</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kh</layout>
+                       <longname>Khmer (Cambodia)</longname>
+                       <description>Khmer (Cambodia)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kz-kaz</name>
+                       <language>kaz</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kz</layout>
+                       <longname>Kazakh</longname>
+                       <description>Kazakh</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kz-ruskaz-kaz</name>
+                       <language>kaz</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kz(ruskaz)</layout>
+                       <longname>Russian (Kazakhstan, with Kazakh)</longname>
+                       <description>Russian (Kazakhstan, with Kazakh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kz-ruskaz-kaz</name>
+                       <language>kaz</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kz(ruskaz)</layout>
+                       <longname>Russian (Kazakhstan, with Kazakh)</longname>
+                       <description>Russian (Kazakhstan, with Kazakh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kz-ruskaz-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kz(ruskaz)</layout>
+                       <longname>Russian (Kazakhstan, with Kazakh)</longname>
+                       <description>Russian (Kazakhstan, with Kazakh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kz-kazrus-kaz</name>
+                       <language>kaz</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kz(kazrus)</layout>
+                       <longname>Kazakh (with Russian)</longname>
+                       <description>Kazakh (with Russian)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kz-kazrus-kaz</name>
+                       <language>kaz</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kz(kazrus)</layout>
+                       <longname>Kazakh (with Russian)</longname>
+                       <description>Kazakh (with Russian)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kz-kazrus-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kz(kazrus)</layout>
+                       <longname>Kazakh (with Russian)</longname>
+                       <description>Kazakh (with Russian)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:la-lao</name>
+                       <language>lao</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>la</layout>
+                       <longname>Lao</longname>
+                       <description>Lao</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:la-stea-lao</name>
+                       <language>lao</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>la(stea)</layout>
+                       <longname>Lao (STEA proposed standard layout)</longname>
+                       <description>Lao (STEA proposed standard layout)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:la-stea-lao</name>
+                       <language>lao</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>la(stea)</layout>
+                       <longname>Lao (STEA proposed standard layout)</longname>
+                       <description>Lao (STEA proposed standard layout)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:latam-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>latam</layout>
+                       <longname>Spanish (Latin American)</longname>
+                       <description>Spanish (Latin American)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:latam-nodeadkeys-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>latam(nodeadkeys)</layout>
+                       <longname>Spanish (Latin American, eliminate dead keys)</longname>
+                       <description>Spanish (Latin American, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:latam-deadtilde-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>latam(deadtilde)</layout>
+                       <longname>Spanish (Latin American, include dead tilde)</longname>
+                       <description>Spanish (Latin American, include dead tilde)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:latam-sundeadkeys-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>latam(sundeadkeys)</layout>
+                       <longname>Spanish (Latin American, Sun dead keys)</longname>
+                       <description>Spanish (Latin American, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lt-lit</name>
+                       <language>lit</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lt</layout>
+                       <longname>Lithuanian</longname>
+                       <description>Lithuanian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lt-std-lit</name>
+                       <language>lit</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lt(std)</layout>
+                       <longname>Lithuanian (standard)</longname>
+                       <description>Lithuanian (standard)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lt-us-lit</name>
+                       <language>lit</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lt(us)</layout>
+                       <longname>Lithuanian (US keyboard with Lithuanian letters)</longname>
+                       <description>Lithuanian (US keyboard with Lithuanian letters)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lt-ibm-lit</name>
+                       <language>lit</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lt(ibm)</layout>
+                       <longname>Lithuanian (IBM LST 1205-92)</longname>
+                       <description>Lithuanian (IBM LST 1205-92)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lt-lekp-lit</name>
+                       <language>lit</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lt(lekp)</layout>
+                       <longname>Lithuanian (LEKP)</longname>
+                       <description>Lithuanian (LEKP)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lt-lekpa-lit</name>
+                       <language>lit</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lt(lekpa)</layout>
+                       <longname>Lithuanian (LEKPa)</longname>
+                       <description>Lithuanian (LEKPa)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lv-lav</name>
+                       <language>lav</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lv</layout>
+                       <longname>Latvian</longname>
+                       <description>Latvian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lv-apostrophe-lav</name>
+                       <language>lav</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lv(apostrophe)</layout>
+                       <longname>Latvian (apostrophe variant)</longname>
+                       <description>Latvian (apostrophe variant)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lv-tilde-lav</name>
+                       <language>lav</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lv(tilde)</layout>
+                       <longname>Latvian (tilde variant)</longname>
+                       <description>Latvian (tilde variant)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lv-fkey-lav</name>
+                       <language>lav</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lv(fkey)</layout>
+                       <longname>Latvian (F variant)</longname>
+                       <description>Latvian (F variant)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lv-modern-lav</name>
+                       <language>lav</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lv(modern)</layout>
+                       <longname>Latvian (modern)</longname>
+                       <description>Latvian (modern)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lv-ergonomic-lav</name>
+                       <language>lav</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lv(ergonomic)</layout>
+                       <longname>Latvian (ergonomic, ÅªGJRMV)</longname>
+                       <description>Latvian (ergonomic, ÅªGJRMV)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lv-adapted-lav</name>
+                       <language>lav</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lv(adapted)</layout>
+                       <longname>Latvian (adapted)</longname>
+                       <description>Latvian (adapted)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:mao-mao</name>
+                       <language>mao</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>mao</layout>
+                       <longname>Maori</longname>
+                       <description>Maori</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:me-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>me</layout>
+                       <longname>Montenegrin</longname>
+                       <description>Montenegrin</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:me-cyrillic-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>me(cyrillic)</layout>
+                       <longname>Montenegrin (Cyrillic)</longname>
+                       <description>Montenegrin (Cyrillic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:me-cyrillicyz-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>me(cyrillicyz)</layout>
+                       <longname>Montenegrin (Cyrillic, Z and ZHE swapped)</longname>
+                       <description>Montenegrin (Cyrillic, Z and ZHE swapped)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:me-latinunicode-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>me(latinunicode)</layout>
+                       <longname>Montenegrin (Latin Unicode)</longname>
+                       <description>Montenegrin (Latin Unicode)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:me-latinyz-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>me(latinyz)</layout>
+                       <longname>Montenegrin (Latin qwerty)</longname>
+                       <description>Montenegrin (Latin qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:me-latinunicodeyz-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>me(latinunicodeyz)</layout>
+                       <longname>Montenegrin (Latin Unicode qwerty)</longname>
+                       <description>Montenegrin (Latin Unicode qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:me-cyrillicalternatequotes-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>me(cyrillicalternatequotes)</layout>
+                       <longname>Montenegrin (Cyrillic with guillemets)</longname>
+                       <description>Montenegrin (Cyrillic with guillemets)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:me-latinalternatequotes-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>me(latinalternatequotes)</layout>
+                       <longname>Montenegrin (Latin with guillemets)</longname>
+                       <description>Montenegrin (Latin with guillemets)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:mk-mkd</name>
+                       <language>mkd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>mk</layout>
+                       <longname>Macedonian</longname>
+                       <description>Macedonian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:mk-nodeadkeys-mkd</name>
+                       <language>mkd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>mk(nodeadkeys)</layout>
+                       <longname>Macedonian (eliminate dead keys)</longname>
+                       <description>Macedonian (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:mt-mlt</name>
+                       <language>mlt</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>mt</layout>
+                       <longname>Maltese</longname>
+                       <description>Maltese</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:mt-us-mlt</name>
+                       <language>mlt</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>mt(us)</layout>
+                       <longname>Maltese (with US layout)</longname>
+                       <description>Maltese (with US layout)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:mn-mng</name>
+                       <language>mng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>mn</layout>
+                       <longname>Mongolian</longname>
+                       <description>Mongolian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:no-nor</name>
+                       <language>nor</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>no</layout>
+                       <longname>Norwegian</longname>
+                       <description>Norwegian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:no-nodeadkeys-nor</name>
+                       <language>nor</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>no(nodeadkeys)</layout>
+                       <longname>Norwegian (eliminate dead keys)</longname>
+                       <description>Norwegian (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:no-dvorak-nor</name>
+                       <language>nor</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>no(dvorak)</layout>
+                       <longname>Norwegian (Dvorak)</longname>
+                       <description>Norwegian (Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:no-smi-nor</name>
+                       <language>nor</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>no(smi)</layout>
+                       <longname>Northern Saami (Norway)</longname>
+                       <description>Northern Saami (Norway)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:no-smi-sme</name>
+                       <language>sme</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>no(smi)</layout>
+                       <longname>Northern Saami (Norway)</longname>
+                       <description>Northern Saami (Norway)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:no-smi_nodeadkeys-nor</name>
+                       <language>nor</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>no(smi_nodeadkeys)</layout>
+                       <longname>Northern Saami (Norway, eliminate dead keys)</longname>
+                       <description>Northern Saami (Norway, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:no-smi_nodeadkeys-sme</name>
+                       <language>sme</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>no(smi_nodeadkeys)</layout>
+                       <longname>Northern Saami (Norway, eliminate dead keys)</longname>
+                       <description>Northern Saami (Norway, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:no-mac-nor</name>
+                       <language>nor</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>no(mac)</layout>
+                       <longname>Norwegian (Macintosh)</longname>
+                       <description>Norwegian (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:no-mac_nodeadkeys-nor</name>
+                       <language>nor</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>no(mac_nodeadkeys)</layout>
+                       <longname>Norwegian (Macintosh, eliminate dead keys)</longname>
+                       <description>Norwegian (Macintosh, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pl-pol</name>
+                       <language>pol</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pl</layout>
+                       <longname>Polish</longname>
+                       <description>Polish</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pl-qwertz-pol</name>
+                       <language>pol</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pl(qwertz)</layout>
+                       <longname>Polish (qwertz)</longname>
+                       <description>Polish (qwertz)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pl-dvorak-pol</name>
+                       <language>pol</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pl(dvorak)</layout>
+                       <longname>Polish (Dvorak)</longname>
+                       <description>Polish (Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pl-dvorak_quotes-pol</name>
+                       <language>pol</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pl(dvorak_quotes)</layout>
+                       <longname>Polish (Dvorak, Polish quotes on quotemark key)</longname>
+                       <description>Polish (Dvorak, Polish quotes on quotemark key)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pl-dvorak_altquotes-pol</name>
+                       <language>pol</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pl(dvorak_altquotes)</layout>
+                       <longname>Polish (Dvorak, Polish quotes on key 1)</longname>
+                       <description>Polish (Dvorak, Polish quotes on key 1)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pl-csb-pol</name>
+                       <language>pol</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pl(csb)</layout>
+                       <longname>Kashubian</longname>
+                       <description>Kashubian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pl-csb-csb</name>
+                       <language>csb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pl(csb)</layout>
+                       <longname>Kashubian</longname>
+                       <description>Kashubian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pl-ru_phonetic_dvorak-pol</name>
+                       <language>pol</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pl(ru_phonetic_dvorak)</layout>
+                       <longname>Russian (Poland, phonetic Dvorak)</longname>
+                       <description>Russian (Poland, phonetic Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pl-ru_phonetic_dvorak-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pl(ru_phonetic_dvorak)</layout>
+                       <longname>Russian (Poland, phonetic Dvorak)</longname>
+                       <description>Russian (Poland, phonetic Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pl-dvp-pol</name>
+                       <language>pol</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pl(dvp)</layout>
+                       <longname>Polish (programmer Dvorak)</longname>
+                       <description>Polish (programmer Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pt-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pt</layout>
+                       <longname>Portuguese</longname>
+                       <description>Portuguese</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pt-nodeadkeys-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pt(nodeadkeys)</layout>
+                       <longname>Portuguese (eliminate dead keys)</longname>
+                       <description>Portuguese (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pt-sundeadkeys-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pt(sundeadkeys)</layout>
+                       <longname>Portuguese (Sun dead keys)</longname>
+                       <description>Portuguese (Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pt-mac-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pt(mac)</layout>
+                       <longname>Portuguese (Macintosh)</longname>
+                       <description>Portuguese (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pt-mac_nodeadkeys-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pt(mac_nodeadkeys)</layout>
+                       <longname>Portuguese (Macintosh, eliminate dead keys)</longname>
+                       <description>Portuguese (Macintosh, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pt-mac_sundeadkeys-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pt(mac_sundeadkeys)</layout>
+                       <longname>Portuguese (Macintosh, Sun dead keys)</longname>
+                       <description>Portuguese (Macintosh, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pt-nativo-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pt(nativo)</layout>
+                       <longname>Portuguese (Nativo)</longname>
+                       <description>Portuguese (Nativo)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pt-nativo-us-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pt(nativo-us)</layout>
+                       <longname>Portuguese (Nativo for USA keyboards)</longname>
+                       <description>Portuguese (Nativo for USA keyboards)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pt-nativo-epo-por</name>
+                       <language>por</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pt(nativo-epo)</layout>
+                       <longname>Esperanto (Portugal, Nativo)</longname>
+                       <description>Esperanto (Portugal, Nativo)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pt-nativo-epo-epo</name>
+                       <language>epo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pt(nativo-epo)</layout>
+                       <longname>Esperanto (Portugal, Nativo)</longname>
+                       <description>Esperanto (Portugal, Nativo)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ro-rum</name>
+                       <language>rum</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ro</layout>
+                       <longname>Romanian</longname>
+                       <description>Romanian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ro-cedilla-rum</name>
+                       <language>rum</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ro(cedilla)</layout>
+                       <longname>Romanian (cedilla)</longname>
+                       <description>Romanian (cedilla)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ro-std-rum</name>
+                       <language>rum</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ro(std)</layout>
+                       <longname>Romanian (standard)</longname>
+                       <description>Romanian (standard)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ro-std_cedilla-rum</name>
+                       <language>rum</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ro(std_cedilla)</layout>
+                       <longname>Romanian (standard cedilla)</longname>
+                       <description>Romanian (standard cedilla)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ro-winkeys-rum</name>
+                       <language>rum</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ro(winkeys)</layout>
+                       <longname>Romanian (WinKeys)</longname>
+                       <description>Romanian (WinKeys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru</layout>
+                       <longname>Russian</longname>
+                       <description>Russian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-phonetic-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(phonetic)</layout>
+                       <longname>Russian (phonetic)</longname>
+                       <description>Russian (phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-phonetic_winkeys-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(phonetic_winkeys)</layout>
+                       <longname>Russian (phonetic WinKeys)</longname>
+                       <description>Russian (phonetic WinKeys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-typewriter-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(typewriter)</layout>
+                       <longname>Russian (typewriter)</longname>
+                       <description>Russian (typewriter)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-legacy-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(legacy)</layout>
+                       <longname>Russian (legacy)</longname>
+                       <description>Russian (legacy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-typewriter-legacy-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(typewriter-legacy)</layout>
+                       <longname>Russian (typewriter, legacy)</longname>
+                       <description>Russian (typewriter, legacy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-tt-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(tt)</layout>
+                       <longname>Tatar</longname>
+                       <description>Tatar</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-tt-tat</name>
+                       <language>tat</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(tt)</layout>
+                       <longname>Tatar</longname>
+                       <description>Tatar</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-os_legacy-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(os_legacy)</layout>
+                       <longname>Ossetian (legacy)</longname>
+                       <description>Ossetian (legacy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-os_legacy-oss</name>
+                       <language>oss</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(os_legacy)</layout>
+                       <longname>Ossetian (legacy)</longname>
+                       <description>Ossetian (legacy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-os_winkeys-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(os_winkeys)</layout>
+                       <longname>Ossetian (WinKeys)</longname>
+                       <description>Ossetian (WinKeys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-os_winkeys-oss</name>
+                       <language>oss</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(os_winkeys)</layout>
+                       <longname>Ossetian (WinKeys)</longname>
+                       <description>Ossetian (WinKeys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-cv-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(cv)</layout>
+                       <longname>Chuvash</longname>
+                       <description>Chuvash</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-cv-chv</name>
+                       <language>chv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(cv)</layout>
+                       <longname>Chuvash</longname>
+                       <description>Chuvash</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-cv_latin-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(cv_latin)</layout>
+                       <longname>Chuvash (Latin)</longname>
+                       <description>Chuvash (Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-cv_latin-chv</name>
+                       <language>chv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(cv_latin)</layout>
+                       <longname>Chuvash (Latin)</longname>
+                       <description>Chuvash (Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-udm-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(udm)</layout>
+                       <longname>Udmurt</longname>
+                       <description>Udmurt</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-udm-udm</name>
+                       <language>udm</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(udm)</layout>
+                       <longname>Udmurt</longname>
+                       <description>Udmurt</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-kom-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(kom)</layout>
+                       <longname>Komi</longname>
+                       <description>Komi</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-kom-kom</name>
+                       <language>kom</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(kom)</layout>
+                       <longname>Komi</longname>
+                       <description>Komi</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-sah-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(sah)</layout>
+                       <longname>Yakut</longname>
+                       <description>Yakut</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-sah-sah</name>
+                       <language>sah</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(sah)</layout>
+                       <longname>Yakut</longname>
+                       <description>Yakut</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-xal-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(xal)</layout>
+                       <longname>Kalmyk</longname>
+                       <description>Kalmyk</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-xal-xal</name>
+                       <language>xal</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(xal)</layout>
+                       <longname>Kalmyk</longname>
+                       <description>Kalmyk</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-dos-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(dos)</layout>
+                       <longname>Russian (DOS)</longname>
+                       <description>Russian (DOS)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-srp-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(srp)</layout>
+                       <longname>Serbian (Russia)</longname>
+                       <description>Serbian (Russia)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-srp-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(srp)</layout>
+                       <longname>Serbian (Russia)</longname>
+                       <description>Serbian (Russia)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-srp-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(srp)</layout>
+                       <longname>Serbian (Russia)</longname>
+                       <description>Serbian (Russia)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-bak-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(bak)</layout>
+                       <longname>Bashkirian</longname>
+                       <description>Bashkirian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-bak-bak</name>
+                       <language>bak</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(bak)</layout>
+                       <longname>Bashkirian</longname>
+                       <description>Bashkirian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-chm-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(chm)</layout>
+                       <longname>Mari</longname>
+                       <description>Mari</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ru-chm-chm</name>
+                       <language>chm</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ru(chm)</layout>
+                       <longname>Mari</longname>
+                       <description>Mari</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:rs-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>rs</layout>
+                       <longname>Serbian</longname>
+                       <description>Serbian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:rs-yz-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>rs(yz)</layout>
+                       <longname>Serbian (Z and ZHE swapped)</longname>
+                       <description>Serbian (Z and ZHE swapped)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:rs-latin-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>rs(latin)</layout>
+                       <longname>Serbian (Latin)</longname>
+                       <description>Serbian (Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:rs-latinunicode-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>rs(latinunicode)</layout>
+                       <longname>Serbian (Latin Unicode)</longname>
+                       <description>Serbian (Latin Unicode)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:rs-latinyz-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>rs(latinyz)</layout>
+                       <longname>Serbian (Latin qwerty)</longname>
+                       <description>Serbian (Latin qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:rs-latinunicodeyz-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>rs(latinunicodeyz)</layout>
+                       <longname>Serbian (Latin Unicode qwerty)</longname>
+                       <description>Serbian (Latin Unicode qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:rs-alternatequotes-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>rs(alternatequotes)</layout>
+                       <longname>Serbian (with guillemets)</longname>
+                       <description>Serbian (with guillemets)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:rs-latinalternatequotes-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>rs(latinalternatequotes)</layout>
+                       <longname>Serbian (Latin with guillemets)</longname>
+                       <description>Serbian (Latin with guillemets)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:rs-rue-srp</name>
+                       <language>srp</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>rs(rue)</layout>
+                       <longname>Pannonian Rusyn (homophonic)</longname>
+                       <description>Pannonian Rusyn (homophonic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:rs-rue-rue</name>
+                       <language>rue</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>rs(rue)</layout>
+                       <longname>Pannonian Rusyn (homophonic)</longname>
+                       <description>Pannonian Rusyn (homophonic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:si-slv</name>
+                       <language>slv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>si</layout>
+                       <longname>Slovenian</longname>
+                       <description>Slovenian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:si-alternatequotes-slv</name>
+                       <language>slv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>si(alternatequotes)</layout>
+                       <longname>Slovenian (use guillemets for quotes)</longname>
+                       <description>Slovenian (use guillemets for quotes)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:si-us-slv</name>
+                       <language>slv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>si(us)</layout>
+                       <longname>Slovenian (US keyboard with Slovenian letters)</longname>
+                       <description>Slovenian (US keyboard with Slovenian letters)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sk-slo</name>
+                       <language>slo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sk</layout>
+                       <longname>Slovak</longname>
+                       <description>Slovak</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sk-bksl-slo</name>
+                       <language>slo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sk(bksl)</layout>
+                       <longname>Slovak (extended Backslash)</longname>
+                       <description>Slovak (extended Backslash)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sk-qwerty-slo</name>
+                       <language>slo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sk(qwerty)</layout>
+                       <longname>Slovak (qwerty)</longname>
+                       <description>Slovak (qwerty)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sk-qwerty_bksl-slo</name>
+                       <language>slo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sk(qwerty_bksl)</layout>
+                       <longname>Slovak (qwerty, extended Backslash)</longname>
+                       <description>Slovak (qwerty, extended Backslash)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:es-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>es</layout>
+                       <longname>Spanish</longname>
+                       <description>Spanish</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:es-nodeadkeys-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>es(nodeadkeys)</layout>
+                       <longname>Spanish (eliminate dead keys)</longname>
+                       <description>Spanish (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:es-deadtilde-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>es(deadtilde)</layout>
+                       <longname>Spanish (include dead tilde)</longname>
+                       <description>Spanish (include dead tilde)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:es-sundeadkeys-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>es(sundeadkeys)</layout>
+                       <longname>Spanish (Sun dead keys)</longname>
+                       <description>Spanish (Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:es-dvorak-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>es(dvorak)</layout>
+                       <longname>Spanish (Dvorak)</longname>
+                       <description>Spanish (Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:es-ast-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>es(ast)</layout>
+                       <longname>Asturian (Spain, with bottom-dot H and bottom-dot L)</longname>
+                       <description>Asturian (Spain, with bottom-dot H and bottom-dot L)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:es-ast-ast</name>
+                       <language>ast</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>es(ast)</layout>
+                       <longname>Asturian (Spain, with bottom-dot H and bottom-dot L)</longname>
+                       <description>Asturian (Spain, with bottom-dot H and bottom-dot L)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:es-cat-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>es(cat)</layout>
+                       <longname>Catalan (Spain, with middle-dot L)</longname>
+                       <description>Catalan (Spain, with middle-dot L)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:es-cat-cat</name>
+                       <language>cat</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>es(cat)</layout>
+                       <longname>Catalan (Spain, with middle-dot L)</longname>
+                       <description>Catalan (Spain, with middle-dot L)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:es-mac-spa</name>
+                       <language>spa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>es(mac)</layout>
+                       <longname>Spanish (Macintosh)</longname>
+                       <description>Spanish (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-swe</name>
+                       <language>swe</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se</layout>
+                       <longname>Swedish</longname>
+                       <description>Swedish</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-nodeadkeys-swe</name>
+                       <language>swe</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(nodeadkeys)</layout>
+                       <longname>Swedish (eliminate dead keys)</longname>
+                       <description>Swedish (eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-dvorak-swe</name>
+                       <language>swe</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(dvorak)</layout>
+                       <longname>Swedish (Dvorak)</longname>
+                       <description>Swedish (Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-rus-swe</name>
+                       <language>swe</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(rus)</layout>
+                       <longname>Russian (Sweden, phonetic)</longname>
+                       <description>Russian (Sweden, phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-rus-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(rus)</layout>
+                       <longname>Russian (Sweden, phonetic)</longname>
+                       <description>Russian (Sweden, phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-rus_nodeadkeys-swe</name>
+                       <language>swe</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(rus_nodeadkeys)</layout>
+                       <longname>Russian (Sweden, phonetic, eliminate dead keys)</longname>
+                       <description>Russian (Sweden, phonetic, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-rus_nodeadkeys-rus</name>
+                       <language>rus</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(rus_nodeadkeys)</layout>
+                       <longname>Russian (Sweden, phonetic, eliminate dead keys)</longname>
+                       <description>Russian (Sweden, phonetic, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-smi-swe</name>
+                       <language>swe</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(smi)</layout>
+                       <longname>Northern Saami (Sweden)</longname>
+                       <description>Northern Saami (Sweden)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-smi-sme</name>
+                       <language>sme</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(smi)</layout>
+                       <longname>Northern Saami (Sweden)</longname>
+                       <description>Northern Saami (Sweden)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-mac-swe</name>
+                       <language>swe</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(mac)</layout>
+                       <longname>Swedish (Macintosh)</longname>
+                       <description>Swedish (Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-svdvorak-swe</name>
+                       <language>swe</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(svdvorak)</layout>
+                       <longname>Swedish (Svdvorak)</longname>
+                       <description>Swedish (Svdvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-swl-swe</name>
+                       <language>swe</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(swl)</layout>
+                       <longname>Swedish Sign Language</longname>
+                       <description>Swedish Sign Language</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:se-swl-swl</name>
+                       <language>swl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>se(swl)</layout>
+                       <longname>Swedish Sign Language</longname>
+                       <description>Swedish Sign Language</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch</layout>
+                       <longname>German (Switzerland)</longname>
+                       <description>German (Switzerland)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-gsw</name>
+                       <language>gsw</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch</layout>
+                       <longname>German (Switzerland)</longname>
+                       <description>German (Switzerland)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-legacy-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(legacy)</layout>
+                       <longname>German (Switzerland, legacy)</longname>
+                       <description>German (Switzerland, legacy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-legacy-gsw</name>
+                       <language>gsw</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(legacy)</layout>
+                       <longname>German (Switzerland, legacy)</longname>
+                       <description>German (Switzerland, legacy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-de_nodeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(de_nodeadkeys)</layout>
+                       <longname>German (Switzerland, eliminate dead keys)</longname>
+                       <description>German (Switzerland, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-de_nodeadkeys-gsw</name>
+                       <language>gsw</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(de_nodeadkeys)</layout>
+                       <longname>German (Switzerland, eliminate dead keys)</longname>
+                       <description>German (Switzerland, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-de_sundeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(de_sundeadkeys)</layout>
+                       <longname>German (Switzerland, Sun dead keys)</longname>
+                       <description>German (Switzerland, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-de_sundeadkeys-gsw</name>
+                       <language>gsw</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(de_sundeadkeys)</layout>
+                       <longname>German (Switzerland, Sun dead keys)</longname>
+                       <description>German (Switzerland, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr)</layout>
+                       <longname>French (Switzerland)</longname>
+                       <description>French (Switzerland)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr-gsw</name>
+                       <language>gsw</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr)</layout>
+                       <longname>French (Switzerland)</longname>
+                       <description>French (Switzerland)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr)</layout>
+                       <longname>French (Switzerland)</longname>
+                       <description>French (Switzerland)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr_nodeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr_nodeadkeys)</layout>
+                       <longname>French (Switzerland, eliminate dead keys)</longname>
+                       <description>French (Switzerland, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr_nodeadkeys-gsw</name>
+                       <language>gsw</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr_nodeadkeys)</layout>
+                       <longname>French (Switzerland, eliminate dead keys)</longname>
+                       <description>French (Switzerland, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr_nodeadkeys-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr_nodeadkeys)</layout>
+                       <longname>French (Switzerland, eliminate dead keys)</longname>
+                       <description>French (Switzerland, eliminate dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr_sundeadkeys-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr_sundeadkeys)</layout>
+                       <longname>French (Switzerland, Sun dead keys)</longname>
+                       <description>French (Switzerland, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr_sundeadkeys-gsw</name>
+                       <language>gsw</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr_sundeadkeys)</layout>
+                       <longname>French (Switzerland, Sun dead keys)</longname>
+                       <description>French (Switzerland, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr_sundeadkeys-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr_sundeadkeys)</layout>
+                       <longname>French (Switzerland, Sun dead keys)</longname>
+                       <description>French (Switzerland, Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr_mac-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr_mac)</layout>
+                       <longname>French (Switzerland, Macintosh)</longname>
+                       <description>French (Switzerland, Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr_mac-gsw</name>
+                       <language>gsw</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr_mac)</layout>
+                       <longname>French (Switzerland, Macintosh)</longname>
+                       <description>French (Switzerland, Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-fr_mac-fra</name>
+                       <language>fra</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(fr_mac)</layout>
+                       <longname>French (Switzerland, Macintosh)</longname>
+                       <description>French (Switzerland, Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-de_mac-ger</name>
+                       <language>ger</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(de_mac)</layout>
+                       <longname>German (Switzerland, Macintosh)</longname>
+                       <description>German (Switzerland, Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ch-de_mac-gsw</name>
+                       <language>gsw</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ch(de_mac)</layout>
+                       <longname>German (Switzerland, Macintosh)</longname>
+                       <description>German (Switzerland, Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sy-syr</name>
+                       <language>syr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sy</layout>
+                       <longname>Arabic (Syria)</longname>
+                       <description>Arabic (Syria)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sy-syc-syr</name>
+                       <language>syr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sy(syc)</layout>
+                       <longname>Syriac</longname>
+                       <description>Syriac</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sy-syc_phonetic-syr</name>
+                       <language>syr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sy(syc_phonetic)</layout>
+                       <longname>Syriac (phonetic)</longname>
+                       <description>Syriac (phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sy-ku-syr</name>
+                       <language>syr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sy(ku)</layout>
+                       <longname>Kurdish (Syria, Latin Q)</longname>
+                       <description>Kurdish (Syria, Latin Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sy-ku-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sy(ku)</layout>
+                       <longname>Kurdish (Syria, Latin Q)</longname>
+                       <description>Kurdish (Syria, Latin Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sy-ku_f-syr</name>
+                       <language>syr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sy(ku_f)</layout>
+                       <longname>Kurdish (Syria, F)</longname>
+                       <description>Kurdish (Syria, F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sy-ku_f-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sy(ku_f)</layout>
+                       <longname>Kurdish (Syria, F)</longname>
+                       <description>Kurdish (Syria, F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sy-ku_alt-syr</name>
+                       <language>syr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sy(ku_alt)</layout>
+                       <longname>Kurdish (Syria, Latin Alt-Q)</longname>
+                       <description>Kurdish (Syria, Latin Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sy-ku_alt-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sy(ku_alt)</layout>
+                       <longname>Kurdish (Syria, Latin Alt-Q)</longname>
+                       <description>Kurdish (Syria, Latin Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tj-tgk</name>
+                       <language>tgk</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tj</layout>
+                       <longname>Tajik</longname>
+                       <description>Tajik</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tj-legacy-tgk</name>
+                       <language>tgk</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tj(legacy)</layout>
+                       <longname>Tajik (legacy)</longname>
+                       <description>Tajik (legacy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lk-sin</name>
+                       <language>sin</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lk</layout>
+                       <longname>Sinhala</longname>
+                       <description>Sinhala</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lk-tam_unicode-sin</name>
+                       <language>sin</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lk(tam_unicode)</layout>
+                       <longname>Tamil (Sri Lanka, Unicode)</longname>
+                       <description>Tamil (Sri Lanka, Unicode)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lk-tam_unicode-tam</name>
+                       <language>tam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lk(tam_unicode)</layout>
+                       <longname>Tamil (Sri Lanka, Unicode)</longname>
+                       <description>Tamil (Sri Lanka, Unicode)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lk-tam_TAB-sin</name>
+                       <language>sin</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lk(tam_TAB)</layout>
+                       <longname>Tamil (Sri Lanka, TAB Typewriter)</longname>
+                       <description>Tamil (Sri Lanka, TAB Typewriter)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:lk-tam_TAB-tam</name>
+                       <language>tam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>lk(tam_TAB)</layout>
+                       <longname>Tamil (Sri Lanka, TAB Typewriter)</longname>
+                       <description>Tamil (Sri Lanka, TAB Typewriter)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:th-tha</name>
+                       <language>tha</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>th</layout>
+                       <longname>Thai</longname>
+                       <description>Thai</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:th-tis-tha</name>
+                       <language>tha</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>th(tis)</layout>
+                       <longname>Thai (TIS-820.2538)</longname>
+                       <description>Thai (TIS-820.2538)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:th-pat-tha</name>
+                       <language>tha</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>th(pat)</layout>
+                       <longname>Thai (Pattachote)</longname>
+                       <description>Thai (Pattachote)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-tur</name>
+                       <language>tur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr</layout>
+                       <longname>Turkish</longname>
+                       <description>Turkish</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-f-tur</name>
+                       <language>tur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(f)</layout>
+                       <longname>Turkish (F)</longname>
+                       <description>Turkish (F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-alt-tur</name>
+                       <language>tur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(alt)</layout>
+                       <longname>Turkish (Alt-Q)</longname>
+                       <description>Turkish (Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-sundeadkeys-tur</name>
+                       <language>tur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(sundeadkeys)</layout>
+                       <longname>Turkish (Sun dead keys)</longname>
+                       <description>Turkish (Sun dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-ku-tur</name>
+                       <language>tur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(ku)</layout>
+                       <longname>Kurdish (Turkey, Latin Q)</longname>
+                       <description>Kurdish (Turkey, Latin Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-ku-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(ku)</layout>
+                       <longname>Kurdish (Turkey, Latin Q)</longname>
+                       <description>Kurdish (Turkey, Latin Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-ku_f-tur</name>
+                       <language>tur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(ku_f)</layout>
+                       <longname>Kurdish (Turkey, F)</longname>
+                       <description>Kurdish (Turkey, F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-ku_f-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(ku_f)</layout>
+                       <longname>Kurdish (Turkey, F)</longname>
+                       <description>Kurdish (Turkey, F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-ku_alt-tur</name>
+                       <language>tur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(ku_alt)</layout>
+                       <longname>Kurdish (Turkey, Latin Alt-Q)</longname>
+                       <description>Kurdish (Turkey, Latin Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-ku_alt-kur</name>
+                       <language>kur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(ku_alt)</layout>
+                       <longname>Kurdish (Turkey, Latin Alt-Q)</longname>
+                       <description>Kurdish (Turkey, Latin Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-intl-tur</name>
+                       <language>tur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(intl)</layout>
+                       <longname>Turkish (international with dead keys)</longname>
+                       <description>Turkish (international with dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-crh-tur</name>
+                       <language>tur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(crh)</layout>
+                       <longname>Crimean Tatar (Turkish Q)</longname>
+                       <description>Crimean Tatar (Turkish Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-crh-crh</name>
+                       <language>crh</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(crh)</layout>
+                       <longname>Crimean Tatar (Turkish Q)</longname>
+                       <description>Crimean Tatar (Turkish Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-crh_f-tur</name>
+                       <language>tur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(crh_f)</layout>
+                       <longname>Crimean Tatar (Turkish F)</longname>
+                       <description>Crimean Tatar (Turkish F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-crh_f-crh</name>
+                       <language>crh</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(crh_f)</layout>
+                       <longname>Crimean Tatar (Turkish F)</longname>
+                       <description>Crimean Tatar (Turkish F)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-crh_alt-tur</name>
+                       <language>tur</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(crh_alt)</layout>
+                       <longname>Crimean Tatar (Turkish Alt-Q)</longname>
+                       <description>Crimean Tatar (Turkish Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tr-crh_alt-crh</name>
+                       <language>crh</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tr(crh_alt)</layout>
+                       <longname>Crimean Tatar (Turkish Alt-Q)</longname>
+                       <description>Crimean Tatar (Turkish Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-trv</name>
+                       <language>trv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw</layout>
+                       <longname>Taiwanese</longname>
+                       <description>Taiwanese</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-trv</name>
+                       <language>trv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-ami</name>
+                       <language>ami</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-tay</name>
+                       <language>tay</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-bnn</name>
+                       <language>bnn</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-ckv</name>
+                       <language>ckv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-pwn</name>
+                       <language>pwn</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-pyu</name>
+                       <language>pyu</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-dru</name>
+                       <language>dru</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-ais</name>
+                       <language>ais</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-ssf</name>
+                       <language>ssf</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-tao</name>
+                       <language>tao</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-indigenous-tsu</name>
+                       <language>tsu</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(indigenous)</layout>
+                       <longname>Taiwanese (indigenous)</longname>
+                       <description>Taiwanese (indigenous)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-saisiyat-trv</name>
+                       <language>trv</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(saisiyat)</layout>
+                       <longname>Saisiyat (Taiwan)</longname>
+                       <description>Saisiyat (Taiwan)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tw-saisiyat-xsy</name>
+                       <language>xsy</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tw(saisiyat)</layout>
+                       <longname>Saisiyat (Taiwan)</longname>
+                       <description>Saisiyat (Taiwan)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ua-ukr</name>
+                       <language>ukr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ua</layout>
+                       <longname>Ukrainian</longname>
+                       <description>Ukrainian</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ua-phonetic-ukr</name>
+                       <language>ukr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ua(phonetic)</layout>
+                       <longname>Ukrainian (phonetic)</longname>
+                       <description>Ukrainian (phonetic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ua-typewriter-ukr</name>
+                       <language>ukr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ua(typewriter)</layout>
+                       <longname>Ukrainian (typewriter)</longname>
+                       <description>Ukrainian (typewriter)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ua-winkeys-ukr</name>
+                       <language>ukr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ua(winkeys)</layout>
+                       <longname>Ukrainian (WinKeys)</longname>
+                       <description>Ukrainian (WinKeys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ua-legacy-ukr</name>
+                       <language>ukr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ua(legacy)</layout>
+                       <longname>Ukrainian (legacy)</longname>
+                       <description>Ukrainian (legacy)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ua-rstu-ukr</name>
+                       <language>ukr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ua(rstu)</layout>
+                       <longname>Ukrainian (standard RSTU)</longname>
+                       <description>Ukrainian (standard RSTU)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ua-rstu_ru-ukr</name>
+                       <language>ukr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ua(rstu_ru)</layout>
+                       <longname>Russian (Ukraine, standard RSTU)</longname>
+                       <description>Russian (Ukraine, standard RSTU)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ua-homophonic-ukr</name>
+                       <language>ukr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ua(homophonic)</layout>
+                       <longname>Ukrainian (homophonic)</longname>
+                       <description>Ukrainian (homophonic)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gb-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gb</layout>
+                       <longname>English (UK)</longname>
+                       <description>English (UK)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gb-extd-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gb(extd)</layout>
+                       <longname>English (UK, extended WinKeys)</longname>
+                       <description>English (UK, extended WinKeys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gb-intl-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gb(intl)</layout>
+                       <longname>English (UK, international with dead keys)</longname>
+                       <description>English (UK, international with dead keys)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gb-dvorak-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gb(dvorak)</layout>
+                       <longname>English (UK, Dvorak)</longname>
+                       <description>English (UK, Dvorak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gb-dvorakukp-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gb(dvorakukp)</layout>
+                       <longname>English (UK, Dvorak with UK punctuation)</longname>
+                       <description>English (UK, Dvorak with UK punctuation)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gb-mac-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gb(mac)</layout>
+                       <longname>English (UK, Macintosh)</longname>
+                       <description>English (UK, Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gb-mac_intl-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gb(mac_intl)</layout>
+                       <longname>English (UK, Macintosh international)</longname>
+                       <description>English (UK, Macintosh international)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:gb-colemak-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>gb(colemak)</layout>
+                       <longname>English (UK, Colemak)</longname>
+                       <description>English (UK, Colemak)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:uz-uzb</name>
+                       <language>uzb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>uz</layout>
+                       <longname>Uzbek</longname>
+                       <description>Uzbek</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:uz-latin-uzb</name>
+                       <language>uzb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>uz(latin)</layout>
+                       <longname>Uzbek (Latin)</longname>
+                       <description>Uzbek (Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:vn-vie</name>
+                       <language>vie</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>vn</layout>
+                       <longname>Vietnamese</longname>
+                       <description>Vietnamese</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kr-kor</name>
+                       <language>kor</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kr</layout>
+                       <longname>Korean</longname>
+                       <description>Korean</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:kr-kr104-kor</name>
+                       <language>kor</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>kr(kr104)</layout>
+                       <longname>Korean (101/104 key compatible)</longname>
+                       <description>Korean (101/104 key compatible)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:nec_vndr/jp-jpn</name>
+                       <language>jpn</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>nec_vndr/jp</layout>
+                       <longname>Japanese (PC-98xx Series)</longname>
+                       <description>Japanese (PC-98xx Series)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ie-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ie</layout>
+                       <longname>Irish</longname>
+                       <description>Irish</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ie-CloGaelach-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ie(CloGaelach)</layout>
+                       <longname>CloGaelach</longname>
+                       <description>CloGaelach</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ie-CloGaelach-gla</name>
+                       <language>gla</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ie(CloGaelach)</layout>
+                       <longname>CloGaelach</longname>
+                       <description>CloGaelach</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ie-UnicodeExpert-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ie(UnicodeExpert)</layout>
+                       <longname>Irish (UnicodeExpert)</longname>
+                       <description>Irish (UnicodeExpert)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ie-ogam-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ie(ogam)</layout>
+                       <longname>Ogham</longname>
+                       <description>Ogham</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ie-ogam-sga</name>
+                       <language>sga</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ie(ogam)</layout>
+                       <longname>Ogham</longname>
+                       <description>Ogham</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ie-ogam_is434-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ie(ogam_is434)</layout>
+                       <longname>Ogham (IS434)</longname>
+                       <description>Ogham (IS434)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ie-ogam_is434-sga</name>
+                       <language>sga</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ie(ogam_is434)</layout>
+                       <longname>Ogham (IS434)</longname>
+                       <description>Ogham (IS434)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pk-urd</name>
+                       <language>urd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pk</layout>
+                       <longname>Urdu (Pakistan)</longname>
+                       <description>Urdu (Pakistan)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pk-urd-crulp-urd</name>
+                       <language>urd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pk(urd-crulp)</layout>
+                       <longname>Urdu (Pakistan, CRULP)</longname>
+                       <description>Urdu (Pakistan, CRULP)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pk-urd-nla-urd</name>
+                       <language>urd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pk(urd-nla)</layout>
+                       <longname>Urdu (Pakistan, NLA)</longname>
+                       <description>Urdu (Pakistan, NLA)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pk-ara-urd</name>
+                       <language>urd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pk(ara)</layout>
+                       <longname>Arabic (Pakistan)</longname>
+                       <description>Arabic (Pakistan)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pk-ara-ara</name>
+                       <language>ara</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pk(ara)</layout>
+                       <longname>Arabic (Pakistan)</longname>
+                       <description>Arabic (Pakistan)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pk-snd-urd</name>
+                       <language>urd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pk(snd)</layout>
+                       <longname>Sindhi</longname>
+                       <description>Sindhi</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:pk-snd-sd</name>
+                       <language>sd</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>pk(snd)</layout>
+                       <longname>Sindhi</longname>
+                       <description>Sindhi</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:mv-div</name>
+                       <language>div</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>mv</layout>
+                       <longname>Dhivehi</longname>
+                       <description>Dhivehi</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:za-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>za</layout>
+                       <longname>English (South Africa)</longname>
+                       <description>English (South Africa)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:epo-epo</name>
+                       <language>epo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>epo</layout>
+                       <longname>Esperanto</longname>
+                       <description>Esperanto</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:epo-legacy-epo</name>
+                       <language>epo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>epo(legacy)</layout>
+                       <longname>Esperanto (displaced semicolon and quote, obsolete)</longname>
+                       <description>Esperanto (displaced semicolon and quote, obsolete)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:np-nep</name>
+                       <language>nep</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>np</layout>
+                       <longname>Nepali</longname>
+                       <description>Nepali</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ng-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ng</layout>
+                       <longname>English (Nigeria)</longname>
+                       <description>English (Nigeria)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ng-igbo-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ng(igbo)</layout>
+                       <longname>Igbo</longname>
+                       <description>Igbo</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ng-igbo-ibo</name>
+                       <language>ibo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ng(igbo)</layout>
+                       <longname>Igbo</longname>
+                       <description>Igbo</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ng-yoruba-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ng(yoruba)</layout>
+                       <longname>Yoruba</longname>
+                       <description>Yoruba</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ng-yoruba-yor</name>
+                       <language>yor</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ng(yoruba)</layout>
+                       <longname>Yoruba</longname>
+                       <description>Yoruba</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ng-hausa-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ng(hausa)</layout>
+                       <longname>Hausa</longname>
+                       <description>Hausa</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ng-hausa-hau</name>
+                       <language>hau</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ng(hausa)</layout>
+                       <longname>Hausa</longname>
+                       <description>Hausa</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:et-amh</name>
+                       <language>amh</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>et</layout>
+                       <longname>Amharic</longname>
+                       <description>Amharic</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:sn-wol</name>
+                       <language>wol</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>sn</layout>
+                       <longname>Wolof</longname>
+                       <description>Wolof</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tm-tuk</name>
+                       <language>tuk</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tm</layout>
+                       <longname>Turkmen</longname>
+                       <description>Turkmen</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tm-alt-tuk</name>
+                       <language>tuk</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tm(alt)</layout>
+                       <longname>Turkmen (Alt-Q)</longname>
+                       <description>Turkmen (Alt-Q)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ml-bam</name>
+                       <language>bam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ml</layout>
+                       <longname>Bambara</longname>
+                       <description>Bambara</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ml-fr-oss-bam</name>
+                       <language>bam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ml(fr-oss)</layout>
+                       <longname>French (Mali, alternative)</longname>
+                       <description>French (Mali, alternative)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ml-fr-oss-fr</name>
+                       <language>fr</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ml(fr-oss)</layout>
+                       <longname>French (Mali, alternative)</longname>
+                       <description>French (Mali, alternative)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ml-us-mac-bam</name>
+                       <language>bam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ml(us-mac)</layout>
+                       <longname>English (Mali, US Macintosh)</longname>
+                       <description>English (Mali, US Macintosh)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ml-us-intl-bam</name>
+                       <language>bam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ml(us-intl)</layout>
+                       <longname>English (Mali, US international)</longname>
+                       <description>English (Mali, US international)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:tz-swa</name>
+                       <language>swa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>tz</layout>
+                       <longname>Swahili (Tanzania)</longname>
+                       <description>Swahili (Tanzania)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ke-swa</name>
+                       <language>swa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ke</layout>
+                       <longname>Swahili (Kenya)</longname>
+                       <description>Swahili (Kenya)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ke-kik-swa</name>
+                       <language>swa</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ke(kik)</layout>
+                       <longname>Kikuyu</longname>
+                       <description>Kikuyu</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ke-kik-kik</name>
+                       <language>kik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ke(kik)</layout>
+                       <longname>Kikuyu</longname>
+                       <description>Kikuyu</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:bw-tsn</name>
+                       <language>tsn</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>bw</layout>
+                       <longname>Tswana</longname>
+                       <description>Tswana</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph</layout>
+                       <longname>Filipino</longname>
+                       <description>Filipino</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph</layout>
+                       <longname>Filipino</longname>
+                       <description>Filipino</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph</layout>
+                       <longname>Filipino</longname>
+                       <description>Filipino</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph</layout>
+                       <longname>Filipino</longname>
+                       <description>Filipino</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph</layout>
+                       <longname>Filipino</longname>
+                       <description>Filipino</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph</layout>
+                       <longname>Filipino</longname>
+                       <description>Filipino</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph</layout>
+                       <longname>Filipino</longname>
+                       <description>Filipino</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph</layout>
+                       <longname>Filipino</longname>
+                       <description>Filipino</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph</layout>
+                       <longname>Filipino</longname>
+                       <description>Filipino</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph</layout>
+                       <longname>Filipino</longname>
+                       <description>Filipino</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph</layout>
+                       <longname>Filipino</longname>
+                       <description>Filipino</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-qwerty-bay-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(qwerty-bay)</layout>
+                       <longname>Filipino (QWERTY Baybayin)</longname>
+                       <description>Filipino (QWERTY Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak)</layout>
+                       <longname>Filipino (Capewell-Dvorak Latin)</longname>
+                       <description>Filipino (Capewell-Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak)</layout>
+                       <longname>Filipino (Capewell-Dvorak Latin)</longname>
+                       <description>Filipino (Capewell-Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak)</layout>
+                       <longname>Filipino (Capewell-Dvorak Latin)</longname>
+                       <description>Filipino (Capewell-Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak)</layout>
+                       <longname>Filipino (Capewell-Dvorak Latin)</longname>
+                       <description>Filipino (Capewell-Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak)</layout>
+                       <longname>Filipino (Capewell-Dvorak Latin)</longname>
+                       <description>Filipino (Capewell-Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak)</layout>
+                       <longname>Filipino (Capewell-Dvorak Latin)</longname>
+                       <description>Filipino (Capewell-Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak)</layout>
+                       <longname>Filipino (Capewell-Dvorak Latin)</longname>
+                       <description>Filipino (Capewell-Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak)</layout>
+                       <longname>Filipino (Capewell-Dvorak Latin)</longname>
+                       <description>Filipino (Capewell-Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak)</layout>
+                       <longname>Filipino (Capewell-Dvorak Latin)</longname>
+                       <description>Filipino (Capewell-Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak)</layout>
+                       <longname>Filipino (Capewell-Dvorak Latin)</longname>
+                       <description>Filipino (Capewell-Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak)</layout>
+                       <longname>Filipino (Capewell-Dvorak Latin)</longname>
+                       <description>Filipino (Capewell-Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-dvorak-bay-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-dvorak-bay)</layout>
+                       <longname>Filipino (Capewell-Dvorak Baybayin)</longname>
+                       <description>Filipino (Capewell-Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Latin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Latin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Latin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Latin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Latin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Latin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Latin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Latin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Latin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Latin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Latin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-capewell-qwerf2k6-bay-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(capewell-qwerf2k6-bay)</layout>
+                       <longname>Filipino (Capewell-QWERF 2006 Baybayin)</longname>
+                       <description>Filipino (Capewell-QWERF 2006 Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak)</layout>
+                       <longname>Filipino (Colemak Latin)</longname>
+                       <description>Filipino (Colemak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak)</layout>
+                       <longname>Filipino (Colemak Latin)</longname>
+                       <description>Filipino (Colemak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak)</layout>
+                       <longname>Filipino (Colemak Latin)</longname>
+                       <description>Filipino (Colemak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak)</layout>
+                       <longname>Filipino (Colemak Latin)</longname>
+                       <description>Filipino (Colemak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak)</layout>
+                       <longname>Filipino (Colemak Latin)</longname>
+                       <description>Filipino (Colemak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak)</layout>
+                       <longname>Filipino (Colemak Latin)</longname>
+                       <description>Filipino (Colemak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak)</layout>
+                       <longname>Filipino (Colemak Latin)</longname>
+                       <description>Filipino (Colemak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak)</layout>
+                       <longname>Filipino (Colemak Latin)</longname>
+                       <description>Filipino (Colemak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak)</layout>
+                       <longname>Filipino (Colemak Latin)</longname>
+                       <description>Filipino (Colemak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak)</layout>
+                       <longname>Filipino (Colemak Latin)</longname>
+                       <description>Filipino (Colemak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak)</layout>
+                       <longname>Filipino (Colemak Latin)</longname>
+                       <description>Filipino (Colemak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-colemak-bay-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(colemak-bay)</layout>
+                       <longname>Filipino (Colemak Baybayin)</longname>
+                       <description>Filipino (Colemak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak)</layout>
+                       <longname>Filipino (Dvorak Latin)</longname>
+                       <description>Filipino (Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak)</layout>
+                       <longname>Filipino (Dvorak Latin)</longname>
+                       <description>Filipino (Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak)</layout>
+                       <longname>Filipino (Dvorak Latin)</longname>
+                       <description>Filipino (Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak)</layout>
+                       <longname>Filipino (Dvorak Latin)</longname>
+                       <description>Filipino (Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak)</layout>
+                       <longname>Filipino (Dvorak Latin)</longname>
+                       <description>Filipino (Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak)</layout>
+                       <longname>Filipino (Dvorak Latin)</longname>
+                       <description>Filipino (Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak)</layout>
+                       <longname>Filipino (Dvorak Latin)</longname>
+                       <description>Filipino (Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak)</layout>
+                       <longname>Filipino (Dvorak Latin)</longname>
+                       <description>Filipino (Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak)</layout>
+                       <longname>Filipino (Dvorak Latin)</longname>
+                       <description>Filipino (Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak)</layout>
+                       <longname>Filipino (Dvorak Latin)</longname>
+                       <description>Filipino (Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak)</layout>
+                       <longname>Filipino (Dvorak Latin)</longname>
+                       <description>Filipino (Dvorak Latin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-eng</name>
+                       <language>eng</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-bik</name>
+                       <language>bik</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-ceb</name>
+                       <language>ceb</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-fil</name>
+                       <language>fil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-hil</name>
+                       <language>hil</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-ilo</name>
+                       <language>ilo</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-pam</name>
+                       <language>pam</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-pag</name>
+                       <language>pag</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-phi</name>
+                       <language>phi</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-tgl</name>
+                       <language>tgl</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
+                       <rank>99</rank>
+               </engine>
+               <engine>
+                       <name>xkb:layout:ph-dvorak-bay-war</name>
+                       <language>war</language>
+                       <license>GPL</license>
+                       <author>Peng Huang &lt;shawn.p.huang@gmail.com&gt;</author>
+                       <layout>ph(dvorak-bay)</layout>
+                       <longname>Filipino (Dvorak Baybayin)</longname>
+                       <description>Filipino (Dvorak Baybayin)</description>
                        <rank>99</rank>
                </engine>
        </engines>