typewriter_65_85_95: added preliminary support
[jackhill/qmk/firmware.git] / keyboards / xwhatsit / util / util / kbd_defs.cpp
index 0c24c30..9730dac 100644 (file)
@@ -6180,6 +6180,294 @@ struct lay_def keyboards_xwhatsit_ibm_3101_3727_3278_87key_xwhatsit_rev4_xwhatsi
         .keys = keyboards_xwhatsit_ibm_3101_3727_3278_87key_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_keys,
     },
 };
+struct key_def keyboards_xwhatsit_ibm_3178_universal_universal_c_LAYOUT_keys[] = {
+    { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 15.500000, .y = 0.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 17.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 18.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 20.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 21.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 22.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 5.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 6.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 7.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 8.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 9.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 10.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 11.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 12.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 13.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 14.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 15.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 16.000000, .y = 1.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 17.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 18.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 20.250000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 21.250000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 22.250000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 6.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 7.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 8.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 10.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 11.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 12.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 13.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 14.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 15.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 16.250000, .y = 2.000000, .w = 1.000000, .h = 2.000000 },
+    { .row = 4, .col = 9, .x = 17.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 18.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 20.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 21.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 22.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 3.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 4.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 5.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 6.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 9.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 10.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 12.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 13.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 14.750000, .y = 3.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 17.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 18.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 20.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 21.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 22.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 4.500000, .y = 4.000000, .w = 9.750000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 14.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 15.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+};
+struct lay_def keyboards_xwhatsit_ibm_3178_universal_universal_c_lays[] = {
+    {
+        .lay_name = "LAYOUT",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_3178_universal_universal_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3178_universal_universal_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_3178_universal_universal_c_LAYOUT_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_3178_wcass_wcass_c_LAYOUT_keys[] = {
+    { .row = 6, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 15.500000, .y = 0.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 17.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 18.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 20.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 21.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 22.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 5.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 6.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 7.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 8.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 9.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 10.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 11.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 12.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 13.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 14.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 15.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 16.000000, .y = 1.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 17.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 18.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 20.250000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 21.250000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 22.250000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 2.500000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 5.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 6.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 8.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 9.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 10.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 11.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 12.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 13.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 14.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 15.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 16.250000, .y = 2.000000, .w = 1.000000, .h = 2.000000 },
+    { .row = 0, .col = 9, .x = 17.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 18.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 20.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 21.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 22.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 4.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 6.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 9.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 10.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 11.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 12.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 13.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 14.750000, .y = 3.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 17.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 18.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 20.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 21.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 22.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 4.500000, .y = 4.000000, .w = 9.750000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 14.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 15.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+};
+struct lay_def keyboards_xwhatsit_ibm_3178_wcass_wcass_c_lays[] = {
+    {
+        .lay_name = "LAYOUT",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_3178_wcass_wcass_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3178_wcass_wcass_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_3178_wcass_wcass_c_LAYOUT_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_3178_xwhatsit_xwhatsit_c_LAYOUT_keys[] = {
+    { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 15.500000, .y = 0.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 17.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 18.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 20.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 21.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 22.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 5.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 6.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 7.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 8.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 9.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 10.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 11.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 12.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 13.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 14.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 15.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 16.000000, .y = 1.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 17.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 18.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 20.250000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 21.250000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 22.250000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 6.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 7.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 8.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 10.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 11.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 12.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 13.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 14.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 15.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 16.250000, .y = 2.000000, .w = 1.000000, .h = 2.000000 },
+    { .row = 4, .col = 9, .x = 17.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 18.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 20.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 21.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 22.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 3.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 4.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 5.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 6.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 9.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 10.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 12.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 13.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 14.750000, .y = 3.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 17.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 18.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 20.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 21.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 22.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 4.500000, .y = 4.000000, .w = 9.750000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 14.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 15.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+};
+struct lay_def keyboards_xwhatsit_ibm_3178_xwhatsit_xwhatsit_c_lays[] = {
+    {
+        .lay_name = "LAYOUT",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_3178_xwhatsit_xwhatsit_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3178_xwhatsit_xwhatsit_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_3178_xwhatsit_xwhatsit_c_LAYOUT_keys,
+    },
+};
 struct key_def keyboards_xwhatsit_ibm_3276_3278_75key_universal_universal_c_LAYOUT_keys[] = {
     { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -7718,468 +8006,1929 @@ struct lay_def keyboards_xwhatsit_ibm_displaywriter_universal_universal_c_lays[]
         .keys = keyboards_xwhatsit_ibm_displaywriter_universal_universal_c_LAYOUT_all_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_102key_ansi_keys[] = {
-    { .row = 2, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 2.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 3.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 4.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 5.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 6.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 7.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 8.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 9.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 10.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 11.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 12.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 8, .x = 13.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 8, .x = 14.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 9, .x = 15.250000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
-    { .row = 0, .col = 10, .x = 17.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 11, .x = 18.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 11, .x = 19.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 12, .x = 20.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 13, .x = 21.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 14, .x = 22.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 14, .x = 23.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 2.250000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 3, .x = 3.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 4.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 5.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 6.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 7.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 8.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 9.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 10.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 11.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 12.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 8, .x = 13.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 9, .x = 14.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 9, .x = 15.750000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 2, .col = 10, .x = 17.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 11, .x = 18.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 11, .x = 19.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 12, .x = 20.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 13, .x = 21.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 13, .x = 22.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 14, .x = 23.750000, .y = 1.000000, .w = 1.000000, .h = 2.000000 },
-    { .row = 4, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 2.250000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+struct key_def keyboards_xwhatsit_ibm_displaywriter_xwhatsit_xwhatsit_c_LAYOUT_all_keys[] = {
+    { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 18.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 19.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 20.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 21.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 15.500000, .y = 1.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 17.375000, .y = 1.000000, .w = 0.875000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 18.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 19.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 20.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 21.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 2.500000, .y = 2.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 3, .col = 3, .x = 4.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 5.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 6.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 7.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 8.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 9.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 10.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 11.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 12.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 13.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 8, .x = 14.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 9, .x = 15.000000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
-    { .row = 4, .col = 10, .x = 17.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 10, .x = 18.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 11, .x = 19.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 12, .x = 20.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 13, .x = 21.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 13, .x = 22.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 7.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 8.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 9.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 10.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 11.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 12.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 13.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 14.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 15.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 16.250000, .y = 2.000000, .w = 1.000000, .h = 2.000000 },
     { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 2.250000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 8, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 9, .x = 14.500000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
-    { .row = 5, .col = 10, .x = 17.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 11, .x = 18.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 11, .x = 19.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 12, .x = 20.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 12, .x = 21.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 13, .x = 22.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 14, .x = 23.750000, .y = 3.000000, .w = 1.000000, .h = 2.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 14.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 15.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 18.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 19.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 20.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 21.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 2.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 3.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 4.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 6.250000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 8, .x = 13.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 14.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 9, .x = 15.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 10, .x = 17.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 10, .x = 18.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 11, .x = 19.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 13, .x = 20.750000, .y = 4.000000, .w = 2.000000, .h = 1.000000 },
-    { .row = 6, .col = 13, .x = 22.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 4.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 3.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 5.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 8.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 10.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 11.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 12.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 13.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 14.750000, .y = 4.000000, .w = 2.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 18.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 19.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 20.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 21.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 5.500000, .y = 5.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 7.500000, .y = 5.000000, .w = 5.500000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 13.000000, .y = 5.000000, .w = 1.250000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_all_keys[] = {
-    { .row = 2, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 2.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 3.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 4.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 5.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 6.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 7.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 8.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 9.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 10.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 11.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 12.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 8, .x = 13.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 8, .x = 14.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 9, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 9, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 10, .x = 17.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 11, .x = 18.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 11, .x = 19.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 12, .x = 20.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 13, .x = 21.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 14, .x = 22.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 14, .x = 23.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 2.250000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 3, .x = 3.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 4.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 5.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 6.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 7.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 8.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 9.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 10.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 11.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 12.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 8, .x = 13.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 9, .x = 14.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 9, .x = 15.750000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 2, .col = 10, .x = 17.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 11, .x = 18.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 11, .x = 19.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 12, .x = 20.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 13, .x = 21.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 13, .x = 22.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 14, .x = 23.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 2.250000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 4.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 5.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 6.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 7.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 8.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 9.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 10.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 11.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 12.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 13.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 8, .x = 14.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 8, .x = 15.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 9, .x = 16.000000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 4, .col = 10, .x = 17.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 10, .x = 18.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 11, .x = 19.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 12, .x = 20.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 13, .x = 21.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 13, .x = 22.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 14, .x = 23.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 2.250000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 8, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 9, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 9, .x = 15.500000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 5, .col = 10, .x = 17.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 11, .x = 18.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 11, .x = 19.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 12, .x = 20.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 12, .x = 21.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 13, .x = 22.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 14, .x = 23.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 2.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 3.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 4.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 6.250000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 8, .x = 13.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 14.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 9, .x = 15.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 10, .x = 17.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 10, .x = 18.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 11, .x = 19.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 12, .x = 20.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 13, .x = 21.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 13, .x = 22.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 14, .x = 23.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-};
-struct key_def keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_107key_keys[] = {
-    { .row = 2, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 2.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 3.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 4.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 5.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 6.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 7.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 8.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 9.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 10.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 11.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 12.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 8, .x = 13.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 8, .x = 14.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 9, .x = 15.250000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
-    { .row = 0, .col = 10, .x = 17.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 11, .x = 18.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 11, .x = 19.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 12, .x = 20.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 13, .x = 21.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 14, .x = 22.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 14, .x = 23.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 2.250000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 3, .x = 3.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 4.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 5.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 6.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 7.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 8.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 9.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 10.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 11.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 12.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 8, .x = 13.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 9, .x = 14.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 9, .x = 15.750000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 2, .col = 10, .x = 17.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 11, .x = 18.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 11, .x = 19.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 12, .x = 20.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 13, .x = 21.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 13, .x = 22.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 14, .x = 23.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 2.250000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 4.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 5.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 6.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 7.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 8.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 9.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 10.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 11.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 12.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 13.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 8, .x = 14.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 8, .x = 15.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 9, .x = 16.000000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 4, .col = 10, .x = 17.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 10, .x = 18.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 11, .x = 19.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 12, .x = 20.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 13, .x = 21.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 13, .x = 22.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 14, .x = 23.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 2.250000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 8, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 9, .x = 14.500000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
-    { .row = 5, .col = 10, .x = 17.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 11, .x = 18.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 11, .x = 19.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 12, .x = 20.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 12, .x = 21.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 13, .x = 22.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 14, .x = 23.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 2.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 3.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 4.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 6.250000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 8, .x = 13.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 14.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 9, .x = 15.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 10, .x = 17.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 10, .x = 18.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 11, .x = 19.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 12, .x = 20.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 13, .x = 21.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 13, .x = 22.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 14, .x = 23.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-};
-struct lay_def keyboards_xwhatsit_ibm_f107_universal_universal_c_lays[] = {
-    {
-        .lay_name = "LAYOUT_102key_ansi",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_102key_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_102key_ansi_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_102key_ansi_keys,
-    },
-    {
-        .lay_name = "LAYOUT_107key",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_107key_keys) / sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_107key_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_107key_keys,
-    },
+struct lay_def keyboards_xwhatsit_ibm_displaywriter_xwhatsit_xwhatsit_c_lays[] = {
     {
         .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_all_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_displaywriter_xwhatsit_xwhatsit_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_displaywriter_xwhatsit_xwhatsit_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_displaywriter_xwhatsit_xwhatsit_c_LAYOUT_all_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_f107_wcass_wcass_c_LAYOUT_102key_ansi_keys[] = {
-    { .row = 5, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 2.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 3.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 4.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 5.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 6.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 7.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 8.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 9.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 10.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 11.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 12.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 8, .x = 13.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 14.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 9, .x = 15.250000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
-    { .row = 6, .col = 10, .x = 17.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 11, .x = 18.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 11, .x = 19.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 12, .x = 20.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 13, .x = 21.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 14, .x = 22.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 14, .x = 23.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 2.250000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 3.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 4.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 5.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 6.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 7.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 8.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 9.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 10.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 11.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 12.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 8, .x = 13.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 9, .x = 14.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 9, .x = 15.750000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 5, .col = 10, .x = 17.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 11, .x = 18.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 11, .x = 19.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 12, .x = 20.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 13, .x = 21.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 13, .x = 22.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 14, .x = 23.750000, .y = 1.000000, .w = 1.000000, .h = 2.000000 },
-    { .row = 0, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 2.250000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 4.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 5.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 6.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 7.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 8.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 9.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 10.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 11.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 12.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 13.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 8, .x = 14.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 9, .x = 15.000000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
-    { .row = 0, .col = 10, .x = 17.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 10, .x = 18.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 11, .x = 19.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 12, .x = 20.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 13, .x = 21.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 13, .x = 22.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 2.250000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
-    { .row = 1, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 8, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 9, .x = 14.500000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
-    { .row = 2, .col = 10, .x = 17.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 11, .x = 18.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 11, .x = 19.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 12, .x = 20.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 12, .x = 21.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 13, .x = 22.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 14, .x = 23.750000, .y = 3.000000, .w = 1.000000, .h = 2.000000 },
-    { .row = 1, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 2.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 3.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 4.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 6.250000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 3, .col = 8, .x = 13.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 8, .x = 14.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 9, .x = 15.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 10, .x = 17.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 10, .x = 18.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 11, .x = 19.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 13, .x = 20.750000, .y = 4.000000, .w = 2.000000, .h = 1.000000 },
-    { .row = 1, .col = 13, .x = 22.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-};
-struct key_def keyboards_xwhatsit_ibm_f107_wcass_wcass_c_LAYOUT_all_keys[] = {
-    { .row = 5, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 2.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 3.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 4.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 5.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 6.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 7.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 8.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 9.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 10.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 11.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 12.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 8, .x = 13.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 14.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 9, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+struct key_def keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_all_keys[] = {
+    { .row = 0, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 15.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 16.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 15.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 16.250000, .y = 5.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 18.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 20.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 6.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 14.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 15.750000, .y = 6.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 15.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 18.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 20.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_default_keys[] = {
+    { .row = 0, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 15.500000, .y = 3.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 16.250000, .y = 4.000000, .w = 1.250000, .h = 2.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 15.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 6.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 14.750000, .y = 6.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_ansi_keys[] = {
+    { .row = 0, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 15.500000, .y = 3.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 15.250000, .y = 5.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 6.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 14.750000, .y = 6.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_ansi_fullrightside_keys[] = {
+    { .row = 0, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 15.500000, .y = 3.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 15.250000, .y = 5.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 18.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 20.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 6.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 14.750000, .y = 6.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 18.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 20.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct lay_def keyboards_xwhatsit_ibm_f104_universal_universal_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_all_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_ansi_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_ansi_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi_fullrightside",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_ansi_fullrightside_keys) / sizeof(keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_ansi_fullrightside_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_ansi_fullrightside_keys,
+    },
+    {
+        .lay_name = "LAYOUT_default",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_default_keys) / sizeof(keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_default_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_universal_universal_c_LAYOUT_default_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_all_keys[] = {
+    { .row = 6, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 15.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 16.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 15.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 16.250000, .y = 5.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.500000, .y = 6.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 14.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 15.750000, .y = 6.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 15.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 18.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 20.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_default_keys[] = {
+    { .row = 6, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 15.500000, .y = 3.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 16.250000, .y = 4.000000, .w = 1.250000, .h = 2.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 15.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.500000, .y = 6.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 14.750000, .y = 6.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_ansi_keys[] = {
+    { .row = 6, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 15.500000, .y = 3.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 15.250000, .y = 5.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.500000, .y = 6.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 14.750000, .y = 6.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_ansi_fullrightside_keys[] = {
+    { .row = 6, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 15.500000, .y = 3.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 15.250000, .y = 5.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.500000, .y = 6.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 14.750000, .y = 6.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 18.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 20.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct lay_def keyboards_xwhatsit_ibm_f104_wcass_wcass_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_all_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_ansi_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_ansi_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi_fullrightside",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_ansi_fullrightside_keys) / sizeof(keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_ansi_fullrightside_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_ansi_fullrightside_keys,
+    },
+    {
+        .lay_name = "LAYOUT_default",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_default_keys) / sizeof(keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_default_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_wcass_wcass_c_LAYOUT_default_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_all_keys[] = {
+    { .row = 0, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 15.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 16.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 15.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 16.250000, .y = 5.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 18.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 20.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 6.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 14.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 15.750000, .y = 6.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 15.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 18.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 20.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_default_keys[] = {
+    { .row = 0, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 15.500000, .y = 3.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 16.250000, .y = 4.000000, .w = 1.250000, .h = 2.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 15.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 6.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 14.750000, .y = 6.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_ansi_keys[] = {
+    { .row = 0, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 15.500000, .y = 3.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 15.250000, .y = 5.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 6.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 14.750000, .y = 6.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_ansi_fullrightside_keys[] = {
+    { .row = 0, .col = 0, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 15.500000, .y = 3.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 4.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 14.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 15.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 5.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 4.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 8.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.250000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 15.250000, .y = 5.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 18.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 19.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 20.000000, .y = 5.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 6.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 5.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 8.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.750000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 14.750000, .y = 6.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 19.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 20.000000, .y = 6.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.500000, .y = 7.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 7.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 18.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 19.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 20.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct lay_def keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_all_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_ansi_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_ansi_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi_fullrightside",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_ansi_fullrightside_keys) / sizeof(keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_ansi_fullrightside_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_ansi_fullrightside_keys,
+    },
+    {
+        .lay_name = "LAYOUT_default",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_default_keys) / sizeof(keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_default_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_LAYOUT_default_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_102key_ansi_keys[] = {
+    { .row = 2, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 5.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 7.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 10.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 11.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 12.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 13.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 14.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 15.250000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 17.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 18.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 19.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 20.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 21.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 22.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 23.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 2.250000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 3.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 5.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 8.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 10.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 11.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 12.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 13.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 14.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 15.750000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 17.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 18.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 19.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 20.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 21.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 22.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 23.750000, .y = 1.000000, .w = 1.000000, .h = 2.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 2.250000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 7.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 8.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 10.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 11.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 12.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 13.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 14.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 15.000000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 17.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 18.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 19.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 20.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 21.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 22.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.250000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 14.500000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 17.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 18.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 19.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 20.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 21.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 22.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 23.750000, .y = 3.000000, .w = 1.000000, .h = 2.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 3.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.250000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 13.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 14.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 15.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 17.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 18.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 19.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 20.750000, .y = 4.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 22.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_all_keys[] = {
+    { .row = 2, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 5.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 7.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 10.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 11.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 12.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 13.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 14.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 17.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 18.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 19.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 20.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 21.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 22.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 23.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 2.250000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 3.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 5.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 8.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 10.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 11.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 12.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 13.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 14.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 15.750000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 17.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 18.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 19.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 20.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 21.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 22.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 23.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 2.250000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 7.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 8.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 10.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 11.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 12.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 13.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 14.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 15.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 16.000000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 17.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 18.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 19.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 20.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 21.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 22.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 23.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.250000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 14.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 15.500000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 17.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 18.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 19.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 20.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 21.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 22.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 23.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 3.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.250000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 13.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 14.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 15.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 17.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 18.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 19.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 20.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 21.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 22.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 23.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_107key_keys[] = {
+    { .row = 2, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 5.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 7.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 10.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 11.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 12.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 13.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 14.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 15.250000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 17.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 18.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 19.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 20.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 21.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 22.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 23.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 2.250000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 3.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 5.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 8.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 10.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 11.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 12.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 13.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 14.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 15.750000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 17.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 18.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 19.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 20.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 21.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 22.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 23.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 2.250000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 7.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 8.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 10.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 11.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 12.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 13.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 14.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 15.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 16.000000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 17.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 18.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 19.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 20.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 21.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 22.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 23.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.250000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 14.500000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 17.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 18.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 19.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 20.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 21.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 22.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 23.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 3.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.250000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 13.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 14.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 15.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 17.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 18.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 19.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 20.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 21.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 22.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 23.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct lay_def keyboards_xwhatsit_ibm_f107_universal_universal_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_102key_ansi",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_102key_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_102key_ansi_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_102key_ansi_keys,
+    },
+    {
+        .lay_name = "LAYOUT_107key",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_107key_keys) / sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_107key_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_107key_keys,
+    },
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f107_universal_universal_c_LAYOUT_all_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_f107_wcass_wcass_c_LAYOUT_102key_ansi_keys[] = {
+    { .row = 5, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 3.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 5.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 7.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 10.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 11.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 12.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 13.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 14.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 15.250000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 17.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 18.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 19.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 20.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 21.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 22.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 23.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 2.250000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 3.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 5.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 7.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 8.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 9.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 10.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 11.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 12.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 13.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 14.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 15.750000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 17.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 18.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 19.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 20.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 21.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 22.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 14, .x = 23.750000, .y = 1.000000, .w = 1.000000, .h = 2.000000 },
+    { .row = 0, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.250000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 5.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 7.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 8.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 9.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 10.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 11.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 12.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 13.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 14.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 15.000000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 17.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 18.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 19.500000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 20.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 21.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 22.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 2.250000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 4.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 6.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 7.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 10.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 11.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 12.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 13.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 14.500000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 17.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 18.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 19.500000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 20.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 21.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 22.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 23.750000, .y = 3.000000, .w = 1.000000, .h = 2.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 2.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 6.250000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 13.250000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 14.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 15.750000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 17.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 18.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 19.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 20.750000, .y = 4.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 22.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f107_wcass_wcass_c_LAYOUT_all_keys[] = {
+    { .row = 5, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 3.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 5.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 7.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 10.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 11.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 12.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 13.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 14.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 9, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 10, .x = 17.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 11, .x = 18.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -11363,7 +13112,70 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shif
     { .row = 1, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_split_backspace_keys[] = {
+    { .row = 4, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 12.750000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[] = {
     { .row = 4, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -11377,8 +13189,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shif
     { .row = 6, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
     { .row = 5, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 4, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
@@ -11417,7 +13228,8 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shif
     { .row = 3, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
     { .row = 3, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 1, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
@@ -11426,7 +13238,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shif
     { .row = 1, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[] = {
     { .row = 4, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -11440,7 +13252,8 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_spli
     { .row = 6, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 4, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
@@ -11489,7 +13302,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_spli
     { .row = 1, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_regular_backspace_keys[] = {
     { .row = 4, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -11503,8 +13316,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_spli
     { .row = 6, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
     { .row = 5, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 4, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
@@ -11518,7 +13330,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_spli
     { .row = 5, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 13.750000, .y = 1.000000, .w = 1.250000, .h = 2.000000 },
     { .row = 7, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
     { .row = 7, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
@@ -11531,8 +13343,9 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_spli
     { .row = 0, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 12.750000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 0.000000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
@@ -11543,8 +13356,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_spli
     { .row = 3, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
     { .row = 3, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 1, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
@@ -11553,7 +13365,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_spli
     { .row = 1, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_split_backspace_keys[] = {
     { .row = 4, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -11567,7 +13379,8 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift
     { .row = 6, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 4, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
@@ -11616,7 +13429,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift
     { .row = 1, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[] = {
     { .row = 4, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -11630,8 +13443,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift
     { .row = 6, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
     { .row = 5, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 4, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
@@ -11671,7 +13483,8 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift
     { .row = 3, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
     { .row = 3, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 1, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
@@ -11680,7 +13493,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift
     { .row = 1, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[] = {
     { .row = 4, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -11694,7 +13507,8 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split
     { .row = 6, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 4, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
@@ -11744,124 +13558,377 @@ struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split
     { .row = 1, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[] = {
-    { .row = 4, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 13.750000, .y = 1.000000, .w = 1.250000, .h = 2.000000 },
-    { .row = 7, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 0, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 3, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+struct lay_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_all_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_regular_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_split_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi_regular_shift_regular_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_regular_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi_regular_shift_split_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_split_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_default",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_default_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_default_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_default_keys,
+    },
+    {
+        .lay_name = "LAYOUT_iso_nonhhkb_split_shift_regular_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_iso_nonhhkb_split_shift_split_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_iso_regular_shift_regular_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_regular_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_iso_regular_shift_split_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_split_backspace_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_keys[] = {
+    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 13.750000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys[] = {
+    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 13.750000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[] = {
+    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 12.750000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_split_backspace_keys[] = {
+    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 12.750000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_lays[] = {
-    {
-        .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_all_keys,
-    },
-    {
-        .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_ansi_regular_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_regular_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_ansi_regular_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_ansi_regular_shift_split_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_default",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_default_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_default_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_default_keys,
-    },
-    {
-        .lay_name = "LAYOUT_iso_nonhhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_iso_nonhhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_iso_regular_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_regular_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_iso_regular_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_iso_regular_shift_split_backspace_keys,
-    },
+struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[] = {
+    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 12.750000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[] = {
     { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -11875,7 +13942,8 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_key
     { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
@@ -11902,8 +13970,70 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_key
     { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 12.750000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_regular_backspace_keys[] = {
+    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 13.750000, .y = 1.000000, .w = 1.250000, .h = 2.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 13.750000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
     { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
     { .row = 4, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
@@ -11925,7 +14055,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_key
     { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_split_backspace_keys[] = {
     { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -11954,7 +14084,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys[]
     { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 13.750000, .y = 1.000000, .w = 1.250000, .h = 2.000000 },
     { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
     { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
@@ -11968,7 +14098,6 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys[]
     { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 13.750000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
     { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
     { .row = 4, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
@@ -11981,8 +14110,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys[]
     { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
     { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
@@ -11991,7 +14119,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys[]
     { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[] = {
     { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -12019,7 +14147,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regula
     { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 13.750000, .y = 1.000000, .w = 1.250000, .h = 2.000000 },
     { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
     { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
@@ -12032,8 +14160,9 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regula
     { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 12.750000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
@@ -12044,7 +14173,8 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regula
     { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
     { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
@@ -12053,7 +14183,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regula
     { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[] = {
     { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -12082,7 +14212,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regula
     { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 13.750000, .y = 1.000000, .w = 1.250000, .h = 2.000000 },
     { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
     { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
@@ -12095,8 +14225,9 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regula
     { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 12.750000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
@@ -12107,7 +14238,8 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regula
     { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
     { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
@@ -12116,742 +14248,1379 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regula
     { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[] = {
-    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 12.750000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+struct lay_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_regular_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_split_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi_regular_shift_regular_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_regular_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi_regular_shift_split_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_split_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_default",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_keys,
+    },
+    {
+        .lay_name = "LAYOUT_iso_nonhhkb_split_shift_regular_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_iso_nonhhkb_split_shift_split_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_iso_regular_shift_regular_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_regular_backspace_keys,
+    },
+    {
+        .lay_name = "LAYOUT_iso_regular_shift_split_backspace",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_split_backspace_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_fat_universal_universal_c_LAYOUT_all_keys[] = {
+    { .row = 3, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 15.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 16.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 18.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 19.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 15, .x = 20.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 15, .x = 21.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 4.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 14.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 15.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 18.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 19.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 15, .x = 20.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 15, .x = 21.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 4.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 8.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 15.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 16.250000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 18.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 19.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 14, .x = 20.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 15, .x = 21.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 5.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 8.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 9.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 14.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 15.750000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 14, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 15, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 15, .x = 21.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.500000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 15, .x = 21.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct lay_def keyboards_xwhatsit_ibm_fat_universal_universal_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fat_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fat_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fat_universal_universal_c_LAYOUT_all_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_fat_wcass_wcass_c_LAYOUT_all_keys[] = {
+    { .row = 7, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 15.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 16.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 18.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 19.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 15, .x = 20.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 15, .x = 21.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 4.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 7.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 8.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 9.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 13.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 14.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 15.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 18.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 14, .x = 19.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 15, .x = 20.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 15, .x = 21.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 2.500000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 8.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 9.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 11.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 12.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 13.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 15.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 16.250000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 18.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 19.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 20.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 15, .x = 21.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.500000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 4.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 5.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 7.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 8.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 11.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 12.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 14.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 15.750000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 15, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 15, .x = 21.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 6.500000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 14, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 15, .x = 21.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct lay_def keyboards_xwhatsit_ibm_fat_wcass_wcass_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fat_wcass_wcass_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fat_wcass_wcass_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fat_wcass_wcass_c_LAYOUT_all_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_LAYOUT_all_keys[] = {
+    { .row = 3, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 15.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 16.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 18.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 19.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 15, .x = 20.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 15, .x = 21.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 4.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 5.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 7.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 9.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 14.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 15.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 16.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 18.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 19.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 15, .x = 20.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 15, .x = 21.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 2.500000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 4.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 8.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 10.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 11.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 14.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 15.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 16.250000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 18.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 19.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 14, .x = 20.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 15, .x = 21.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 5.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 8.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 9.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 10.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 14.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 15.750000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 14, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 15, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 15, .x = 21.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 6.500000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
     { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 15, .x = 21.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[] = {
-    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+struct lay_def keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_LAYOUT_all_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_all_keys[] = {
+    { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 12.750000, .y = 2.000000, .w = 2.250000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 17.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 6.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 7.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 8.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 9.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 11.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 12.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 13.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 14.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 15.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 16.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 17.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 20.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 21.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 5.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 7.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 8.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.500000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 19.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 21.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 1.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.750000, .y = 3.500000, .w = 1.250000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 18.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 20.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 14, .x = 21.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 4.500000, .w = 1.250000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 5.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 7.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 10.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 11.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 12.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 13.250000, .y = 4.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 16.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 19.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 21.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 1.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 4.000000, .y = 5.500000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 15.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 16.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 17.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 18.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 19.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 20.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 21.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_regular_backspace_keys[] = {
-    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+struct key_def keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_ansi_keys[] = {
+    { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 13.750000, .y = 1.000000, .w = 1.250000, .h = 2.000000 },
-    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 4, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
-    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 17.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 6.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 7.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 8.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 9.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 11.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 12.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.000000, .y = 1.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 15.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 16.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 17.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 20.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 21.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 5.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 7.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 8.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.500000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 19.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 21.500000, .y = 2.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 1.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 12.750000, .y = 3.500000, .w = 2.250000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 18.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 20.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 4.500000, .w = 2.250000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 5.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 7.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 10.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 11.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 4.500000, .w = 2.750000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 16.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 19.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 21.500000, .y = 4.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 1.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 4.000000, .y = 5.500000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 15.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 16.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 17.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 18.500000, .y = 5.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 20.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_split_backspace_keys[] = {
-    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+struct key_def keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_iso_keys[] = {
+    { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 13.750000, .y = 1.000000, .w = 1.250000, .h = 2.000000 },
-    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 4, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
-    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 17.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 6.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 7.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 8.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 9.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 11.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 12.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.000000, .y = 1.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 15.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 16.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 17.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 20.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 21.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 5.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 7.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 8.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.750000, .y = 2.500000, .w = 1.250000, .h = 2.000000 },
+    { .row = 3, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 19.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 21.500000, .y = 2.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 1.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 18.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 20.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 4.500000, .w = 1.250000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 5.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 7.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 10.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 11.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 4.500000, .w = 2.750000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 16.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 19.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 21.500000, .y = 4.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 1.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 4.000000, .y = 5.500000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 15.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 16.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 17.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 18.500000, .y = 5.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 20.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+};
+struct lay_def keyboards_xwhatsit_ibm_fext_universal_universal_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_all_keys,
+    },
+    {
+        .lay_name = "LAYOUT_ansi",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_ansi_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_ansi_keys,
+    },
+    {
+        .lay_name = "LAYOUT_iso",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_iso_keys) / sizeof(keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_iso_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fext_universal_universal_c_LAYOUT_iso_keys,
+    },
+};
+struct key_def keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_all_keys[] = {
+    { .row = 6, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 17.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 7.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 8.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 11.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 13.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 14.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 15.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 16.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 17.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 18.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 19.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 20.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 21.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 3.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 5.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 7.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 8.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 13.500000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 19.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 14, .x = 21.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 3.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 1.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 5.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 13.750000, .y = 3.500000, .w = 1.250000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 18.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 19.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 21.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 4.500000, .w = 1.250000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 6.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 7.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 10.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 11.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 12.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.250000, .y = 4.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 16.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 19.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 21.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 1.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 4.000000, .y = 5.500000, .w = 7.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 11.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 12.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 15.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 16.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 17.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 18.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 14, .x = 20.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 21.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[] = {
-    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 13.750000, .y = 1.000000, .w = 1.250000, .h = 2.000000 },
-    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 4, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+struct key_def keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_ansi_keys[] = {
+    { .row = 6, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 17.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 7.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 8.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 11.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 13.000000, .y = 1.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 15.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 16.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 17.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 18.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 19.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 20.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 21.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 3.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 5.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 7.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 8.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 13.500000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 19.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 14, .x = 21.500000, .y = 2.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 3.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 1.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 5.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 12.750000, .y = 3.500000, .w = 2.250000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 18.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 19.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 4.500000, .w = 2.250000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 6.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 7.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 10.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 11.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 12.250000, .y = 4.500000, .w = 2.750000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 16.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 19.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 21.500000, .y = 4.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 1.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 4.000000, .y = 5.500000, .w = 7.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 11.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 12.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 15.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 16.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 17.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 18.500000, .y = 5.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 3, .col = 14, .x = 20.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[] = {
-    { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 13.750000, .y = 1.000000, .w = 1.250000, .h = 2.000000 },
-    { .row = 3, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 4, .col = 0, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 12.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 13.250000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 1.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 4.000000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 11.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
+struct key_def keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_iso_keys[] = {
+    { .row = 6, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 17.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 0.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 4.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 7.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 8.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 9.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 11.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 13.000000, .y = 1.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 15.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 16.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 17.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 18.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 19.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 20.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 21.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 2.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 3.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 5.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 6.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 7.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 8.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 13.750000, .y = 2.500000, .w = 1.250000, .h = 2.000000 },
+    { .row = 7, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 19.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 14, .x = 21.500000, .y = 2.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 3.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 0, .col = 0, .x = 1.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 5.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 6.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 7.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 12, .x = 18.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 13, .x = 19.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 20.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 4.500000, .w = 1.250000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 3.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 6.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 7.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 9.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 10.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 11.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 12.250000, .y = 4.500000, .w = 2.750000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 16.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 19.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 21.500000, .y = 4.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 1.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 4.000000, .y = 5.500000, .w = 7.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 11.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 12.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 15.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 16.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 17.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 18.500000, .y = 5.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 3, .col = 14, .x = 20.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_fext_wcass_wcass_c_lays[] = {
     {
         .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_all_keys,
-    },
-    {
-        .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_all_keys,
     },
     {
-        .lay_name = "LAYOUT_ansi_regular_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_regular_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_ansi_regular_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_ansi_regular_shift_split_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_default",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_keys,
-    },
-    {
-        .lay_name = "LAYOUT_iso_nonhhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_iso_nonhhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys,
-    },
-    {
-        .lay_name = "LAYOUT_iso_regular_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_regular_backspace_keys,
+        .lay_name = "LAYOUT_ansi",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_ansi_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_ansi_keys,
     },
     {
-        .lay_name = "LAYOUT_iso_regular_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_split_backspace_keys,
+        .lay_name = "LAYOUT_iso",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_iso_keys) / sizeof(keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_iso_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fext_wcass_wcass_c_LAYOUT_iso_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_fat_universal_universal_c_LAYOUT_all_keys[] = {
-    { .row = 3, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 8, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 9, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 10, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 11, .x = 15.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 12, .x = 16.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 14, .x = 18.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 14, .x = 19.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 15, .x = 20.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 15, .x = 21.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 4.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 5.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 6.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 7.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 8.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 9.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 10.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 8, .x = 11.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 8, .x = 12.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 9, .x = 13.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 10, .x = 14.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 11, .x = 15.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 11, .x = 16.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 13, .x = 18.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 14, .x = 19.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 15, .x = 20.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 15, .x = 21.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 2.500000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 4.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 5.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 6.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 7.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 8.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 9.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 10.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 11.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 9, .x = 12.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 9, .x = 13.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 10, .x = 14.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 10, .x = 15.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 11, .x = 16.250000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 4, .col = 13, .x = 18.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 14, .x = 19.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 14, .x = 20.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 15, .x = 21.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 2.500000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 3.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 4.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 5.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 6.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 7.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 8.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 9.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 10.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 8, .x = 11.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 9, .x = 12.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 9, .x = 13.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 10, .x = 14.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 11, .x = 15.750000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 6, .col = 13, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 14, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 15, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 15, .x = 21.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 6.500000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 13, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 14, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 14, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 15, .x = 21.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+struct key_def keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_all_keys[] = {
+    { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 17.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 6.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 7.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 8.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 9.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 11.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 12.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 13.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 14.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 15.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 16.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 17.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 20.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 21.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 5.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 7.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 8.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.500000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 19.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 21.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 1.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.750000, .y = 3.500000, .w = 1.250000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 18.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 20.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 14, .x = 21.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 4.500000, .w = 1.250000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 5.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 7.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 10.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 11.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 12.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 13.250000, .y = 4.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 16.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 19.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 21.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 1.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 4.000000, .y = 5.500000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 15.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 16.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 17.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 12, .x = 18.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 19.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 20.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 14, .x = 21.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_fat_universal_universal_c_lays[] = {
-    {
-        .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_fat_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fat_universal_universal_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_fat_universal_universal_c_LAYOUT_all_keys,
-    },
+struct key_def keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_ansi_keys[] = {
+    { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 17.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 6.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 7.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 8.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 9.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 11.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 12.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.000000, .y = 1.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 15.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 16.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 17.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 20.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 21.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 5.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 7.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 8.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 13.500000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 19.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 21.500000, .y = 2.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 1.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 12.750000, .y = 3.500000, .w = 2.250000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 18.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 20.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 4.500000, .w = 2.250000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 5.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 7.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 10.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 11.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 4.500000, .w = 2.750000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 16.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 19.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 21.500000, .y = 4.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 1.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 4.000000, .y = 5.500000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 15.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 16.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 17.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 18.500000, .y = 5.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 20.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_fat_wcass_wcass_c_LAYOUT_all_keys[] = {
-    { .row = 7, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 8, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 9, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 10, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 11, .x = 15.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 12, .x = 16.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 14, .x = 18.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 14, .x = 19.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 15, .x = 20.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 15, .x = 21.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 4.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 5.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 4, .x = 6.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 7.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 5, .x = 8.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 9.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 7, .x = 10.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 8, .x = 11.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 8, .x = 12.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 9, .x = 13.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 10, .x = 14.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 11, .x = 15.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 11, .x = 16.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 13, .x = 18.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 14, .x = 19.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 15, .x = 20.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 15, .x = 21.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 2, .x = 2.500000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 0, .col = 3, .x = 4.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 5.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 6.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 7.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 6, .x = 8.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 9.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 10.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 8, .x = 11.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 9, .x = 12.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 9, .x = 13.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 10, .x = 14.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 10, .x = 15.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 11, .x = 16.250000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 0, .col = 13, .x = 18.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 14, .x = 19.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 14, .x = 20.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 15, .x = 21.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 2.500000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 3.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 3, .x = 4.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 5.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 6.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 7.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 8.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 9.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 10.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 8, .x = 11.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 9, .x = 12.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 9, .x = 13.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 10, .x = 14.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 11, .x = 15.750000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 1, .col = 13, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 14, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 15, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 15, .x = 21.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 6.500000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 13, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 14, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 14, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 15, .x = 21.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+struct key_def keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_iso_keys[] = {
+    { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 13.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 14.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 15.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 16.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 17.250000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 2.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 3.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 4.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 5.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 6.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 7.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 8.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 9.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 10.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 11.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 12.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.000000, .y = 1.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 15.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 16.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 17.250000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 18.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 13, .x = 19.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 14, .x = 20.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 21.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 2.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 3.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 5.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 5, .x = 7.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 8.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 13.750000, .y = 2.500000, .w = 1.250000, .h = 2.000000 },
+    { .row = 3, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 18.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 19.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 20.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 14, .x = 21.500000, .y = 2.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 5, .col = 0, .x = 0.000000, .y = 3.500000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 0, .x = 1.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 1, .x = 2.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 2, .x = 3.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 4.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 5.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 6.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 7.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 18.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 19.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 13, .x = 20.500000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 0, .x = 0.000000, .y = 4.500000, .w = 1.250000, .h = 1.000000 },
+    { .row = 7, .col = 1, .x = 1.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 2, .x = 3.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 4.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 5.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 4, .x = 6.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 7.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 8.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 9.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 10.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 7, .x = 11.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 12.250000, .y = 4.500000, .w = 2.750000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 16.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 12, .x = 18.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 12, .x = 19.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 13, .x = 20.500000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 14, .x = 21.500000, .y = 4.500000, .w = 1.000000, .h = 2.000000 },
+    { .row = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 2, .x = 1.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 2, .x = 2.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 4.000000, .y = 5.500000, .w = 7.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 11.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 12.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 9, .x = 13.500000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 15.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 16.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 17.250000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 13, .x = 18.500000, .y = 5.500000, .w = 2.000000, .h = 1.000000 },
+    { .row = 7, .col = 14, .x = 20.500000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_fat_wcass_wcass_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_lays[] = {
     {
         .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_fat_wcass_wcass_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fat_wcass_wcass_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_fat_wcass_wcass_c_LAYOUT_all_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_all_keys,
     },
-};
-struct key_def keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_LAYOUT_all_keys[] = {
-    { .row = 3, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 0, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 1, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 2, .x = 3.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 3, .x = 4.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 4, .x = 5.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 6.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 5, .x = 7.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 6, .x = 8.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 9.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 7, .x = 10.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 8, .x = 11.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 8, .x = 12.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 9, .x = 13.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 10, .x = 14.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 11, .x = 15.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 12, .x = 16.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 14, .x = 18.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 14, .x = 19.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 15, .x = 20.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 15, .x = 21.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 1.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 2.500000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 4.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 5.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 6.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 7.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 8.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 9.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 10.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 8, .x = 11.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 8, .x = 12.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 9, .x = 13.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 10, .x = 14.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 11, .x = 15.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 11, .x = 16.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 13, .x = 18.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 14, .x = 19.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 15, .x = 20.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 15, .x = 21.000000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 1.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 2.500000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 4.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 5.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 6.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 7.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 8.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 9.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 10.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 11.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 9, .x = 12.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 9, .x = 13.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 10, .x = 14.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 10, .x = 15.250000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 11, .x = 16.250000, .y = 2.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 4, .col = 13, .x = 18.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 14, .x = 19.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 14, .x = 20.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 15, .x = 21.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 1.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 2.500000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 3.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 4.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 5.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 6.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 7.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 8.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 9.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 10.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 8, .x = 11.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 9, .x = 12.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 9, .x = 13.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 10, .x = 14.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 11, .x = 15.750000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
-    { .row = 6, .col = 13, .x = 18.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 14, .x = 19.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 15, .x = 20.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 15, .x = 21.000000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 0, .x = 0.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 1.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 2.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 5.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 6.500000, .y = 4.000000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 11, .x = 16.000000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
-    { .row = 7, .col = 13, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 14, .x = 19.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 14, .x = 20.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 15, .x = 21.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
-};
-struct lay_def keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_lays[] = {
     {
-        .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_LAYOUT_all_keys,
+        .lay_name = "LAYOUT_ansi",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_ansi_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_ansi_keys,
+    },
+    {
+        .lay_name = "LAYOUT_iso",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_iso_keys) / sizeof(keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_iso_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_LAYOUT_iso_keys,
     },
 };
 struct key_def keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_all_keys[] = {
@@ -13006,7 +15775,7 @@ struct key_def keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_ansi_key
     { .row = 5, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 9, .x = 12.750000, .y = 3.500000, .w = 2.250000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 0.000000, .y = 4.500000, .w = 2.250000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
@@ -13076,8 +15845,8 @@ struct key_def keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_iso_keys
     { .row = 4, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 9, .x = 13.750000, .y = 2.500000, .w = 1.250000, .h = 2.000000 },
+    { .row = 4, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 13.750000, .y = 2.500000, .w = 1.250000, .h = 2.000000 },
     { .row = 3, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
@@ -13093,7 +15862,7 @@ struct key_def keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_iso_keys
     { .row = 5, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 9, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 0.000000, .y = 4.500000, .w = 1.250000, .h = 1.000000 },
     { .row = 7, .col = 1, .x = 1.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
@@ -13286,7 +16055,7 @@ struct key_def keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_ansi_keys[] = {
     { .row = 2, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 9, .x = 12.750000, .y = 3.500000, .w = 2.250000, .h = 1.000000 },
     { .row = 1, .col = 0, .x = 0.000000, .y = 4.500000, .w = 2.250000, .h = 1.000000 },
     { .row = 1, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
@@ -13356,8 +16125,8 @@ struct key_def keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_iso_keys[] = {
     { .row = 0, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 9, .x = 13.750000, .y = 2.500000, .w = 1.250000, .h = 2.000000 },
+    { .row = 0, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 13.750000, .y = 2.500000, .w = 1.250000, .h = 2.000000 },
     { .row = 7, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
@@ -13373,7 +16142,7 @@ struct key_def keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_iso_keys[] = {
     { .row = 2, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 9, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 0, .x = 0.000000, .y = 4.500000, .w = 1.250000, .h = 1.000000 },
     { .row = 3, .col = 1, .x = 1.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
@@ -13566,7 +16335,7 @@ struct key_def keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_ansi_keys[
     { .row = 5, .col = 6, .x = 8.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 9, .x = 12.750000, .y = 3.500000, .w = 2.250000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 0.000000, .y = 4.500000, .w = 2.250000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
@@ -13636,8 +16405,8 @@ struct key_def keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_iso_keys[]
     { .row = 4, .col = 6, .x = 9.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 7, .x = 10.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 8, .x = 11.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 9, .x = 13.750000, .y = 2.500000, .w = 1.250000, .h = 2.000000 },
+    { .row = 4, .col = 8, .x = 12.500000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 9, .x = 13.750000, .y = 2.500000, .w = 1.250000, .h = 2.000000 },
     { .row = 3, .col = 10, .x = 15.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 10, .x = 16.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 11, .x = 17.250000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
@@ -13653,7 +16422,7 @@ struct key_def keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_iso_keys[]
     { .row = 5, .col = 7, .x = 9.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 4, .col = 7, .x = 10.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 5, .col = 8, .x = 11.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 9, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 12.750000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 0, .x = 0.000000, .y = 4.500000, .w = 1.250000, .h = 1.000000 },
     { .row = 7, .col = 1, .x = 1.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
     { .row = 6, .col = 1, .x = 2.250000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
@@ -13694,6 +16463,134 @@ struct lay_def keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_lays[] = {
         .keys = keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_iso_keys,
     },
 };
+struct key_def keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_LAYOUT_all_keys[] = {
+    { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 15.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 12.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 13, .x = 13.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 0, .x = 0.000000, .y = 3.000000, .w = 1.250000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 1.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 3, .col = 15, .x = 3.000000, .y = 4.000000, .w = 6.750000, .h = 1.000000 },
+    { .row = 3, .col = 14, .x = 9.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 13, .x = 10.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+};
+struct key_def keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_LAYOUT_default_keys[] = {
+    { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 2, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 4.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .x = 5.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 6, .x = 6.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 7.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 8.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 9.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 10.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 11.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 12, .x = 12.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 13, .x = 13.000000, .y = 0.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 0, .col = 14, .x = 15.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 0, .x = 0.000000, .y = 1.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 1, .x = 1.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 2, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 6, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 7, .x = 7.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 8.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 12, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 12, .x = 13.500000, .y = 1.000000, .w = 1.500000, .h = 2.000000 },
+    { .row = 2, .col = 0, .x = 0.000000, .y = 2.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 2, .col = 1, .x = 1.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 2, .x = 2.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 3.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .x = 4.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 5, .x = 5.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 6.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 7, .x = 7.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 8.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 9, .x = 9.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 10.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 11.750000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 0.000000, .y = 3.000000, .w = 2.250000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 2.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 3.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 6.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 7.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 9, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 12, .x = 12.250000, .y = 3.000000, .w = 2.750000, .h = 1.000000 },
+    { .row = 3, .col = 15, .x = 3.000000, .y = 4.000000, .w = 8.500000, .h = 1.000000 },
+};
+struct lay_def keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_LAYOUT_all_keys,
+    },
+    {
+        .lay_name = "LAYOUT_default",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_LAYOUT_default_keys) / sizeof(keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_LAYOUT_default_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_LAYOUT_default_keys,
+    },
+};
 struct key_def keyboards_xwhatsit_sneakyrobb_beam104_universal_universal_c_LAYOUT_keys[] = {
     { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 1, .x = 2.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -13864,6 +16761,27 @@ struct kbd_def keyboards[] = {
         .cols = 23,
         .rows = 4,
     },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/3178/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3178_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_3178_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_3178_universal_universal_c_lays,
+        .cols = 12,
+        .rows = 8,
+    },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/3178/wcass/wcass.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3178_wcass_wcass_c_lays)/sizeof(keyboards_xwhatsit_ibm_3178_wcass_wcass_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_3178_wcass_wcass_c_lays,
+        .cols = 12,
+        .rows = 8,
+    },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/3178/xwhatsit/xwhatsit.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3178_xwhatsit_xwhatsit_c_lays)/sizeof(keyboards_xwhatsit_ibm_3178_xwhatsit_xwhatsit_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_3178_xwhatsit_xwhatsit_c_lays,
+        .cols = 12,
+        .rows = 8,
+    },
     {
         .kbd_name = "keyboards/xwhatsit/ibm/3276_3278_75key/universal/universal.c",
         .n_layouts = sizeof(keyboards_xwhatsit_ibm_3276_3278_75key_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_3276_3278_75key_universal_universal_c_lays[0]),
@@ -13948,6 +16866,34 @@ struct kbd_def keyboards[] = {
         .cols = 12,
         .rows = 8,
     },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/displaywriter/xwhatsit/xwhatsit.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_displaywriter_xwhatsit_xwhatsit_c_lays)/sizeof(keyboards_xwhatsit_ibm_displaywriter_xwhatsit_xwhatsit_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_displaywriter_xwhatsit_xwhatsit_c_lays,
+        .cols = 12,
+        .rows = 8,
+    },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/f104/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_f104_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_f104_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_f104_universal_universal_c_lays,
+        .cols = 14,
+        .rows = 8,
+    },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/f104/wcass/wcass.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_f104_wcass_wcass_c_lays)/sizeof(keyboards_xwhatsit_ibm_f104_wcass_wcass_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_f104_wcass_wcass_c_lays,
+        .cols = 14,
+        .rows = 8,
+    },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/f104/xwhatsit/xwhatsit.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_lays)/sizeof(keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_f104_xwhatsit_xwhatsit_c_lays,
+        .cols = 14,
+        .rows = 8,
+    },
     {
         .kbd_name = "keyboards/xwhatsit/ibm/f107/universal/universal.c",
         .n_layouts = sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_f107_universal_universal_c_lays[0]),
@@ -14053,6 +16999,27 @@ struct kbd_def keyboards[] = {
         .cols = 16,
         .rows = 8,
     },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/fext/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_fext_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_fext_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_fext_universal_universal_c_lays,
+        .cols = 15,
+        .rows = 8,
+    },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/fext/wcass/wcass.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_fext_wcass_wcass_c_lays)/sizeof(keyboards_xwhatsit_ibm_fext_wcass_wcass_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_fext_wcass_wcass_c_lays,
+        .cols = 15,
+        .rows = 8,
+    },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/fext/xwhatsit/xwhatsit.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_lays)/sizeof(keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_fext_xwhatsit_xwhatsit_c_lays,
+        .cols = 15,
+        .rows = 8,
+    },
     {
         .kbd_name = "keyboards/xwhatsit/ibm/fssk/universal/universal.c",
         .n_layouts = sizeof(keyboards_xwhatsit_ibm_fssk_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_fssk_universal_universal_c_lays[0]),
@@ -14074,6 +17041,13 @@ struct kbd_def keyboards[] = {
         .cols = 12,
         .rows = 8,
     },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/typewriter_65_85_95/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_typewriter_65_85_95_universal_universal_c_lays,
+        .cols = 16,
+        .rows = 4,
+    },
     {
         .kbd_name = "keyboards/xwhatsit/sneakyrobb/beam104/universal/universal.c",
         .n_layouts = sizeof(keyboards_xwhatsit_sneakyrobb_beam104_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_sneakyrobb_beam104_universal_universal_c_lays[0]),