--- a/fbxkb.c
+++ b/fbxkb.c
@@ -368,16 +368,20 @@
             *tmp = 0;
 
             DBG("map=%s no=%d\n", tok, no);
-            if (!strcmp(tok, "pc") || (strlen(tok) != 2))
+            if (!strcmp(tok, "pc") || !strcmp(tok, "group"))
                 continue;
           
             g_assert((no >= 0) && (no < ngroups));
             if (group2info[no].sym != NULL) {
-                ERR("xkb group #%d is already defined\n", no);
+                //-jbb ERR("xkb group #%d is already defined\n", no);
+            }
+            else {
+                group2info[no].sym = g_strdup(tok);
+                group2info[no].flag = sym2flag(tok);
+                group2info[no].name = XGetAtomName(dpy, kbd_desc_ptr->names->groups[no]);
+
+                //-jbb: for debugging: printf(" sym=%s\n", tok);
             }
-            group2info[no].sym = g_strdup(tok);
-            group2info[no].flag = sym2flag(tok);
-            group2info[no].name = XGetAtomName(dpy, kbd_desc_ptr->names->groups[no]);           
         }
         XFree(sym_name);
     }
