typewriter_65_85_95: added preliminary support
[jackhill/qmk/firmware.git] / keyboards / xwhatsit / util / util / kbd_defs.cpp
index c08d860..9730dac 100644 (file)
@@ -15,7 +15,7 @@
  */
 
 #include "kbd_defs.h"
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_all_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_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 },
@@ -82,7 +82,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_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 },
@@ -144,7 +144,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_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 },
@@ -207,7 +207,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_hhkb_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 },
@@ -270,7 +270,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_hhkb_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 },
@@ -334,7 +334,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_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 },
@@ -397,7 +397,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_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 },
@@ -461,7 +461,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_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 },
@@ -524,7 +524,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_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 },
@@ -588,7 +588,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_hhkb_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 },
@@ -652,7 +652,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_hhkb_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 },
@@ -717,7 +717,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_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 },
@@ -781,7 +781,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_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 },
@@ -846,71 +846,71 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hol
     { .row = 7, .col = 7, .x = 12.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 8, .x = 13.500000, .y = 4.000000, .w = 1.500000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_all_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_all_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_hhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_hhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_regular_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_regular_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_regular_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_regular_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_ansi_regular_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_hhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_hhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_nonhhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_nonhhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_regular_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_regular_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_regular_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_regular_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_regular_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_LAYOUT_iso_regular_shift_split_backspace_keys,
     },
 };
 struct key_def keyboards_xwhatsit_brand_new_model_f_f62_wcass_wcass_c_LAYOUT_all_keys[] = {
@@ -2709,7 +2709,7 @@ struct lay_def keyboards_xwhatsit_brand_new_model_f_f62_xwhatsit_xwhatsit_c_lays
         .keys = keyboards_xwhatsit_brand_new_model_f_f62_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_split_backspace_keys,
     },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_all_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_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 },
@@ -2791,7 +2791,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_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 },
@@ -2868,7 +2868,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_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 },
@@ -2946,7 +2946,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_hhkb_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 },
@@ -3024,7 +3024,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_hhkb_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 },
@@ -3103,7 +3103,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_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 },
@@ -3181,7 +3181,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_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 },
@@ -3260,7 +3260,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_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 },
@@ -3338,7 +3338,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_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 },
@@ -3417,7 +3417,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_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 },
@@ -3496,7 +3496,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_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 },
@@ -3576,7 +3576,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_hhkb_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 },
@@ -3655,7 +3655,7 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_hhkb_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 },
@@ -3735,71 +3735,71 @@ struct key_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hol
     { .row = 7, .col = 9, .x = 16.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 10, .x = 17.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_all_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_all_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_hhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_hhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_hhkb_split_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_regular_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_regular_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_regular_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_regular_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_ansi_regular_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_hhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_hhkb_split_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_hhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_hhkb_split_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_nonhhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_nonhhkb_split_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_regular_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_regular_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_regular_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_regular_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_regular_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_LAYOUT_iso_regular_shift_split_backspace_keys,
     },
 };
 struct key_def keyboards_xwhatsit_brand_new_model_f_f77_wcass_wcass_c_LAYOUT_all_keys[] = {
@@ -5988,7 +5988,7 @@ struct lay_def keyboards_xwhatsit_brand_new_model_f_f77_xwhatsit_xwhatsit_c_lays
         .keys = keyboards_xwhatsit_brand_new_model_f_f77_xwhatsit_xwhatsit_c_LAYOUT_iso_regular_shift_split_backspace_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_3101_3727_3278_87key_through_hole_through_hole_c_LAYOUT_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_3101_3727_3278_87key_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 = 0, .col = 3, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -6077,11 +6077,11 @@ struct key_def keyboards_xwhatsit_ibm_3101_3727_3278_87key_through_hole_through_
     { .row = 3, .col = 17, .x = 13.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 15, .x = 14.750000, .y = 4.000000, .w = 2.500000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_3101_3727_3278_87key_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_3101_3727_3278_87key_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_3101_3727_3278_87key_through_hole_through_hole_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3101_3727_3278_87key_through_hole_through_hole_c_LAYOUT_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_3101_3727_3278_87key_through_hole_through_hole_c_LAYOUT_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_3101_3727_3278_87key_universal_universal_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3101_3727_3278_87key_universal_universal_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_3101_3727_3278_87key_universal_universal_c_LAYOUT_keys,
     },
 };
 struct key_def keyboards_xwhatsit_ibm_3101_3727_3278_87key_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_keys[] = {
@@ -6180,7 +6180,295 @@ 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_3276_3278_75key_through_hole_through_hole_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 },
     { .row = 0, .col = 3, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -6257,11 +6545,11 @@ struct key_def keyboards_xwhatsit_ibm_3276_3278_75key_through_hole_through_hole_
     { .row = 3, .col = 17, .x = 13.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 15, .x = 14.750000, .y = 4.000000, .w = 2.500000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_3276_3278_75key_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_3276_3278_75key_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_3276_3278_75key_through_hole_through_hole_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3276_3278_75key_through_hole_through_hole_c_LAYOUT_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_3276_3278_75key_through_hole_through_hole_c_LAYOUT_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_3276_3278_75key_universal_universal_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3276_3278_75key_universal_universal_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_3276_3278_75key_universal_universal_c_LAYOUT_keys,
     },
 };
 struct key_def keyboards_xwhatsit_ibm_3276_3278_75key_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_keys[] = {
@@ -6348,7 +6636,7 @@ struct lay_def keyboards_xwhatsit_ibm_3276_3278_75key_xwhatsit_rev4_xwhatsit_rev
         .keys = keyboards_xwhatsit_ibm_3276_3278_75key_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_3277_66key_through_hole_through_hole_c_LAYOUT_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_3277_66key_universal_universal_c_LAYOUT_keys[] = {
     { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 2, .x = 1.500000, .y = 0.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 0, .col = 3, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -6416,11 +6704,11 @@ struct key_def keyboards_xwhatsit_ibm_3277_66key_through_hole_through_hole_c_LAY
     { .row = 3, .col = 13, .x = 4.000000, .y = 4.000000, .w = 8.500000, .h = 1.000000 },
     { .row = 3, .col = 14, .x = 12.500000, .y = 4.000000, .w = 2.500000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_3277_66key_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_3277_66key_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_3277_66key_through_hole_through_hole_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3277_66key_through_hole_through_hole_c_LAYOUT_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_3277_66key_through_hole_through_hole_c_LAYOUT_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_3277_66key_universal_universal_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3277_66key_universal_universal_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_3277_66key_universal_universal_c_LAYOUT_keys,
     },
 };
 struct key_def keyboards_xwhatsit_ibm_3277_66key_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_keys[] = {
@@ -6498,7 +6786,7 @@ struct lay_def keyboards_xwhatsit_ibm_3277_66key_xwhatsit_rev4_xwhatsit_rev4_c_l
         .keys = keyboards_xwhatsit_ibm_3277_66key_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_3277_78key_through_hole_through_hole_c_LAYOUT_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_3277_78key_universal_universal_c_LAYOUT_keys[] = {
     { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 2, .x = 1.500000, .y = 0.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 0, .col = 3, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -6578,11 +6866,11 @@ struct key_def keyboards_xwhatsit_ibm_3277_78key_through_hole_through_hole_c_LAY
     { .row = 3, .col = 13, .x = 4.000000, .y = 4.000000, .w = 8.500000, .h = 1.000000 },
     { .row = 3, .col = 14, .x = 12.500000, .y = 4.000000, .w = 2.500000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_3277_78key_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_3277_78key_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_3277_78key_through_hole_through_hole_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3277_78key_through_hole_through_hole_c_LAYOUT_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_3277_78key_through_hole_through_hole_c_LAYOUT_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_3277_78key_universal_universal_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3277_78key_universal_universal_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_3277_78key_universal_universal_c_LAYOUT_keys,
     },
 };
 struct key_def keyboards_xwhatsit_ibm_3277_78key_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_keys[] = {
@@ -6672,7 +6960,7 @@ struct lay_def keyboards_xwhatsit_ibm_3277_78key_xwhatsit_rev4_xwhatsit_rev4_c_l
         .keys = keyboards_xwhatsit_ibm_3277_78key_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_LAYOUT_all_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_LAYOUT_all_keys[] = {
     { .row = 0, .col = 1, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 2, .x = 1.500000, .y = 0.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 0, .col = 3, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -6743,7 +7031,7 @@ struct key_def keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole
     { .row = 3, .col = 13, .x = 11.500000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 3, .col = 14, .x = 12.500000, .y = 4.000000, .w = 2.500000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_LAYOUT_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_LAYOUT_keys[] = {
     { .row = 0, .col = 1, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 2, .x = 1.500000, .y = 0.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 0, .col = 3, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -6812,16 +7100,16 @@ struct key_def keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole
     { .row = 3, .col = 15, .x = 9.500000, .y = 4.000000, .w = 3.000000, .h = 1.000000 },
     { .row = 3, .col = 14, .x = 12.500000, .y = 4.000000, .w = 2.500000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_LAYOUT_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_LAYOUT_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_LAYOUT_keys,
     },
     {
         .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_LAYOUT_all_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_LAYOUT_all_keys,
     },
 };
 struct key_def keyboards_xwhatsit_ibm_3277_split_66key_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_all_keys[] = {
@@ -6976,7 +7264,7 @@ struct lay_def keyboards_xwhatsit_ibm_3277_split_66key_xwhatsit_rev4_xwhatsit_re
         .keys = keyboards_xwhatsit_ibm_3277_split_66key_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_all_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_all_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_4978_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 },
@@ -7149,7 +7437,7 @@ struct key_def keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_al
     { .row = 7, .col = 20, .x = 21.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 21, .x = 22.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_4978_universal_universal_c_LAYOUT_keys[] = {
     { .row = 0, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 0, .col = 2, .x = 1.500000, .y = 0.000000, .w = 1.500000, .h = 1.000000 },
     { .row = 0, .col = 3, .x = 3.000000, .y = 0.000000, .w = 1.500000, .h = 1.000000 },
@@ -7273,7 +7561,7 @@ struct key_def keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_ke
     { .row = 7, .col = 20, .x = 20.000000, .y = 7.000000, .w = 2.000000, .h = 1.000000 },
     { .row = 7, .col = 21, .x = 22.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_all_no_case_mods_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_4978_universal_universal_c_LAYOUT_all_no_case_mods_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 },
@@ -7424,24 +7712,24 @@ struct key_def keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_al
     { .row = 7, .col = 20, .x = 21.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 21, .x = 22.000000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_4978_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_4978_universal_universal_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_4978_universal_universal_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_4978_universal_universal_c_LAYOUT_keys,
     },
     {
         .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_all_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_4978_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_4978_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_4978_universal_universal_c_LAYOUT_all_keys,
     },
     {
         .lay_name = "LAYOUT_all_no_case_mods",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_all_no_case_mods_keys) / sizeof(keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_all_no_case_mods_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_LAYOUT_all_no_case_mods_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_4978_universal_universal_c_LAYOUT_all_no_case_mods_keys) / sizeof(keyboards_xwhatsit_ibm_4978_universal_universal_c_LAYOUT_all_no_case_mods_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_4978_universal_universal_c_LAYOUT_all_no_case_mods_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_5251_through_hole_through_hole_c_LAYOUT_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_5251_universal_universal_c_LAYOUT_keys[] = {
     { .row = 0, .col = 1, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 2, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 0, .col = 5, .x = 2.500000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -7526,11 +7814,11 @@ struct key_def keyboards_xwhatsit_ibm_5251_through_hole_through_hole_c_LAYOUT_ke
     { .row = 3, .col = 21, .x = 16.250000, .y = 4.000000, .w = 3.000000, .h = 1.000000 },
     { .row = 3, .col = 22, .x = 19.250000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_5251_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_5251_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_5251_through_hole_through_hole_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_5251_through_hole_through_hole_c_LAYOUT_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_5251_through_hole_through_hole_c_LAYOUT_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_5251_universal_universal_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_5251_universal_universal_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_5251_universal_universal_c_LAYOUT_keys,
     },
 };
 struct key_def keyboards_xwhatsit_ibm_5251_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_keys[] = {
@@ -7625,478 +7913,2032 @@ struct lay_def keyboards_xwhatsit_ibm_5251_xwhatsit_rev4_xwhatsit_rev4_c_lays[]
         .keys = keyboards_xwhatsit_ibm_5251_xwhatsit_rev4_xwhatsit_rev4_c_LAYOUT_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_f107_through_hole_through_hole_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 },
+struct key_def keyboards_xwhatsit_ibm_displaywriter_universal_universal_c_LAYOUT_all_keys[] = {
+    { .row = 4, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 1, .x = 1.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 10, .x = 18.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 10, .x = 19.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 11, .x = 20.750000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 11, .x = 21.750000, .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 = 4, .col = 2, .x = 2.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 3, .x = 3.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 3, .x = 4.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 4, .x = 5.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 4, .x = 6.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 5, .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 = 0, .col = 6, .x = 9.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 6, .x = 10.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 7, .x = 11.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 7, .x = 12.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 8, .x = 13.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 4, .col = 8, .x = 14.500000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 0, .col = 9, .x = 15.500000, .y = 1.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 4, .col = 9, .x = 17.375000, .y = 1.000000, .w = 0.875000, .h = 1.000000 },
+    { .row = 1, .col = 10, .x = 18.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 10, .x = 19.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 11, .x = 20.750000, .y = 1.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 11, .x = 21.750000, .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 = 5, .col = 2, .x = 2.500000, .y = 2.000000, .w = 1.500000, .h = 1.000000 },
+    { .row = 1, .col = 3, .x = 4.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 3, .x = 5.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 4, .x = 6.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 4, .x = 7.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 5, .x = 8.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 5, .x = 9.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .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 },
+    { .row = 1, .col = 7, .x = 12.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 7, .x = 13.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 8, .x = 14.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 5, .col = 8, .x = 15.000000, .y = 2.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 1, .col = 9, .x = 16.250000, .y = 2.000000, .w = 1.000000, .h = 2.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 = 6, .col = 2, .x = 2.500000, .y = 3.000000, .w = 1.750000, .h = 1.000000 },
+    { .row = 2, .col = 3, .x = 4.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 3, .x = 5.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 4, .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 = 2, .col = 5, .x = 8.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 5, .x = 9.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 6, .x = 10.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 6, .x = 11.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .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.000000, .h = 1.000000 },
+    { .row = 2, .col = 8, .x = 14.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 8, .x = 15.250000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 10, .x = 18.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 10, .x = 19.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 2, .col = 11, .x = 20.750000, .y = 3.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 6, .col = 11, .x = 21.750000, .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.250000, .h = 1.000000 },
+    { .row = 7, .col = 3, .x = 3.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 3, .x = 4.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 4, .x = 5.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 4, .x = 6.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 5, .x = 7.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 5, .x = 8.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 6, .x = 9.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 6, .x = 10.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 7, .x = 11.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 7, .x = 12.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 8, .x = 13.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 9, .x = 14.750000, .y = 4.000000, .w = 2.500000, .h = 1.000000 },
+    { .row = 3, .col = 10, .x = 18.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 10, .x = 19.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 11, .x = 20.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 7, .col = 11, .x = 21.750000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
+    { .row = 3, .col = 2, .x = 5.500000, .y = 5.000000, .w = 2.000000, .h = 1.000000 },
+    { .row = 3, .col = 1, .x = 7.500000, .y = 5.000000, .w = 5.500000, .h = 1.000000 },
+    { .row = 3, .col = 8, .x = 13.000000, .y = 5.000000, .w = 1.250000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f107_through_hole_through_hole_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 },
+struct lay_def keyboards_xwhatsit_ibm_displaywriter_universal_universal_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_displaywriter_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_displaywriter_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_displaywriter_universal_universal_c_LAYOUT_all_keys,
+    },
+};
+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 = 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 = 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 = 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 = 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 = 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_through_hole_through_hole_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 },
+    { .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 lay_def keyboards_xwhatsit_ibm_f107_through_hole_through_hole_c_lays[] = {
-    {
-        .lay_name = "LAYOUT_102key_ansi",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f107_through_hole_through_hole_c_LAYOUT_102key_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_f107_through_hole_through_hole_c_LAYOUT_102key_ansi_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f107_through_hole_through_hole_c_LAYOUT_102key_ansi_keys,
-    },
-    {
-        .lay_name = "LAYOUT_107key",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f107_through_hole_through_hole_c_LAYOUT_107key_keys) / sizeof(keyboards_xwhatsit_ibm_f107_through_hole_through_hole_c_LAYOUT_107key_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f107_through_hole_through_hole_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_through_hole_through_hole_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f107_through_hole_through_hole_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f107_through_hole_through_hole_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 },
-    { .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 },
-    { .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 },
+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 },
+    { .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 },
@@ -8648,7 +10490,7 @@ struct lay_def keyboards_xwhatsit_ibm_f107_xwhatsit_xwhatsit_c_lays[] = {
         .keys = keyboards_xwhatsit_ibm_f107_xwhatsit_xwhatsit_c_LAYOUT_all_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_all_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f122_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 },
@@ -8777,7 +10619,7 @@ struct key_def keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_al
     { .row = 6, .col = 14, .x = 23.500000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 15, .x = 24.500000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_121key_ansi_enter_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_121key_ansi_enter_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 },
@@ -8900,7 +10742,7 @@ struct key_def keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_12
     { .row = 7, .col = 14, .x = 21.500000, .y = 7.000000, .w = 2.000000, .h = 1.000000 },
     { .row = 6, .col = 14, .x = 23.500000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_121key_iso_enter_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_121key_iso_enter_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 },
@@ -8963,7 +10805,7 @@ struct key_def keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_12
     { .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.250000, .y = 4.000000, .w = 1.250000, .h = 2.000000 },
+    { .row = 5, .col = 11, .x = 16.250000, .y = 4.000000, .w = 1.250000, .h = 2.000000 },
     { .row = 3, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 12, .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 },
@@ -9023,7 +10865,7 @@ struct key_def keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_12
     { .row = 7, .col = 14, .x = 21.500000, .y = 7.000000, .w = 2.000000, .h = 1.000000 },
     { .row = 6, .col = 14, .x = 23.500000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct key_def keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_122key_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_122key_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 },
@@ -9086,7 +10928,7 @@ struct key_def keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_12
     { .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.250000, .y = 4.000000, .w = 1.250000, .h = 2.000000 },
+    { .row = 5, .col = 11, .x = 16.250000, .y = 4.000000, .w = 1.250000, .h = 2.000000 },
     { .row = 3, .col = 12, .x = 18.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 2, .col = 12, .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 },
@@ -9147,26 +10989,26 @@ struct key_def keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_12
     { .row = 7, .col = 14, .x = 21.500000, .y = 7.000000, .w = 2.000000, .h = 1.000000 },
     { .row = 6, .col = 14, .x = 23.500000, .y = 7.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_f122_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT_121key_ansi_enter",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_121key_ansi_enter_keys) / sizeof(keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_121key_ansi_enter_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_121key_ansi_enter_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_121key_ansi_enter_keys) / sizeof(keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_121key_ansi_enter_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_121key_ansi_enter_keys,
     },
     {
         .lay_name = "LAYOUT_121key_iso_enter",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_121key_iso_enter_keys) / sizeof(keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_121key_iso_enter_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_121key_iso_enter_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_121key_iso_enter_keys) / sizeof(keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_121key_iso_enter_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_121key_iso_enter_keys,
     },
     {
         .lay_name = "LAYOUT_122key",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_122key_keys) / sizeof(keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_122key_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_122key_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_122key_keys) / sizeof(keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_122key_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_122key_keys,
     },
     {
         .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_LAYOUT_all_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f122_universal_universal_c_LAYOUT_all_keys,
     },
 };
 struct key_def keyboards_xwhatsit_ibm_f122_wcass_wcass_c_LAYOUT_all_keys[] = {
@@ -10211,7 +12053,7 @@ struct lay_def keyboards_xwhatsit_ibm_f122_xwhatsit_xwhatsit_c_lays[] = {
         .keys = keyboards_xwhatsit_ibm_f122_xwhatsit_xwhatsit_c_LAYOUT_all_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_f50_through_hole_through_hole_c_LAYOUT_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f50_universal_universal_c_LAYOUT_keys[] = {
     { .row = 1, .col = 0, .x = 0.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 1, .col = 1, .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 },
@@ -10263,11 +12105,11 @@ struct key_def keyboards_xwhatsit_ibm_f50_through_hole_through_hole_c_LAYOUT_key
     { .row = 6, .col = 5, .x = 9.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
     { .row = 7, .col = 6, .x = 10.000000, .y = 4.000000, .w = 1.000000, .h = 1.000000 },
 };
-struct lay_def keyboards_xwhatsit_ibm_f50_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_f50_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f50_through_hole_through_hole_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_f50_through_hole_through_hole_c_LAYOUT_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f50_through_hole_through_hole_c_LAYOUT_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f50_universal_universal_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_f50_universal_universal_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f50_universal_universal_c_LAYOUT_keys,
     },
 };
 struct key_def keyboards_xwhatsit_ibm_f50_wcass_wcass_c_LAYOUT_keys[] = {
@@ -10388,7 +12230,7 @@ struct lay_def keyboards_xwhatsit_ibm_f50_xwhatsit_xwhatsit_c_lays[] = {
         .keys = keyboards_xwhatsit_ibm_f50_xwhatsit_xwhatsit_c_LAYOUT_keys,
     },
 };
-struct key_def keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_default_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_universal_universal_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 },
@@ -10452,7 +12294,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_def
     { .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_through_hole_through_hole_c_LAYOUT_all_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_universal_universal_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 },
@@ -10518,7 +12360,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_all
     { .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_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_universal_universal_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 },
@@ -10580,7 +12422,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ans
     { .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_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_universal_universal_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 },
@@ -10643,7 +12485,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ans
     { .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_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_universal_universal_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 },
@@ -10706,7 +12548,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ans
     { .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_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_universal_universal_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 },
@@ -10770,7 +12612,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ans
     { .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_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_universal_universal_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 },
@@ -10833,7 +12675,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso
     { .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_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_universal_universal_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 },
@@ -10897,7 +12739,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso
     { .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_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_universal_universal_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 },
@@ -10961,7 +12803,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso
     { .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_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[] = {
+struct key_def keyboards_xwhatsit_ibm_f62_universal_universal_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 },
@@ -11026,56 +12868,56 @@ struct key_def keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso
     { .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_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_f62_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT_all",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_all_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_all_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_all_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_nonhhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_universal_universal_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_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_ansi_nonhhkb_split_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_regular_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_ansi_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_ansi_regular_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_ansi_regular_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_ansi_regular_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_ansi_regular_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_ansi_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_ansi_regular_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_ansi_regular_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_default",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_default_keys) / sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_default_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_default_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_default_keys) / sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_default_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_default_keys,
     },
     {
         .lay_name = "LAYOUT_iso_nonhhkb_split_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_universal_universal_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_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_iso_nonhhkb_split_shift_split_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_regular_shift_regular_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_regular_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_iso_regular_shift_regular_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_iso_regular_shift_regular_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_iso_regular_shift_regular_backspace_keys,
     },
     {
         .lay_name = "LAYOUT_iso_regular_shift_split_backspace",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_LAYOUT_iso_regular_shift_split_backspace_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_iso_regular_shift_split_backspace_keys) / sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_iso_regular_shift_split_backspace_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_f62_universal_universal_c_LAYOUT_iso_regular_shift_split_backspace_keys,
     },
 };
 struct key_def keyboards_xwhatsit_ibm_f62_wcass_wcass_c_LAYOUT_default_keys[] = {
@@ -11601,7 +13443,72 @@ 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 = 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 },
+    { .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 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 },
@@ -11651,124 +13558,441 @@ 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 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 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_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 = 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_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 },
@@ -11796,7 +14020,7 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_key
     { .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 },
@@ -11810,7 +14034,6 @@ struct key_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_LAYOUT_default_key
     { .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 },
@@ -11832,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 },
@@ -11861,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 },
@@ -11875,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 },
@@ -11888,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 },
@@ -11898,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 },
@@ -11926,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 },
@@ -11939,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 },
@@ -11951,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 },
@@ -11960,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 },
@@ -11989,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 },
@@ -12002,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 },
@@ -12014,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 },
@@ -12023,543 +14248,2350 @@ 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 },
+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 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 = 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 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 = 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_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 = 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_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_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_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_fext_wcass_wcass_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .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",
+        .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",
+        .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_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 = 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 = 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_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 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 = 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 = 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_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_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 = 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 = 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_xwhatsit_xwhatsit_c_lays[] = {
+    {
+        .lay_name = "LAYOUT_all",
+        .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,
+    },
+    {
+        .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_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_fssk_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 = 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 = 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 = 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 = 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 = 5, .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 = 5, .col = 9, .x = 13.750000, .y = 3.500000, .w = 1.250000, .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 = 6, .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 = 6, .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 = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .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 = 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 },
 };
-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 },
+struct key_def keyboards_xwhatsit_ibm_fssk_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 = 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 = 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 = 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 = 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 = 5, .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 = 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 },
+    { .row = 6, .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 = 6, .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 = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .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 = 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 },
 };
-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 },
+struct key_def keyboards_xwhatsit_ibm_fssk_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 = 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 = 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 = 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 = 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 },
+    { .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 = 5, .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 = 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 = 6, .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 = 6, .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 = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .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 = 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 },
 };
-struct lay_def keyboards_xwhatsit_ibm_f62_xwhatsit_xwhatsit_c_lays[] = {
+struct lay_def keyboards_xwhatsit_ibm_fssk_universal_universal_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,
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fssk_universal_universal_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",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_ansi_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_ansi_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_iso",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_iso_keys) / sizeof(keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_iso_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fssk_universal_universal_c_LAYOUT_iso_keys,
     },
+};
+struct key_def keyboards_xwhatsit_ibm_fssk_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 = 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 = 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 = 2, .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 = 2, .col = 9, .x = 13.750000, .y = 3.500000, .w = 1.250000, .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 = 1, .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 = 1, .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 = 3, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .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 = 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 },
+};
+struct key_def keyboards_xwhatsit_ibm_fssk_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 = 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 = 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 = 2, .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 = 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 },
+    { .row = 1, .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 = 1, .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 = 3, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .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 = 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 },
+};
+struct key_def keyboards_xwhatsit_ibm_fssk_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 = 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 = 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 },
+    { .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 = 2, .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 = 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 = 1, .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 = 1, .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 = 3, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 3, .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 = 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 },
+};
+struct lay_def keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_lays[] = {
     {
-        .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_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_all_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_ansi",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_ansi_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_ansi_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",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_iso_keys) / sizeof(keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_iso_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_LAYOUT_iso_keys,
     },
+};
+struct key_def keyboards_xwhatsit_ibm_fssk_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 = 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 = 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 = 5, .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 = 5, .col = 9, .x = 13.750000, .y = 3.500000, .w = 1.250000, .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 = 6, .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 = 6, .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 = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .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 = 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 },
+};
+struct key_def keyboards_xwhatsit_ibm_fssk_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 = 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 = 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 = 5, .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 = 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 },
+    { .row = 6, .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 = 6, .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 = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .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 = 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 },
+};
+struct key_def keyboards_xwhatsit_ibm_fssk_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 = 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 = 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 },
+    { .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 = 5, .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 = 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 = 6, .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 = 6, .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 = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.500000, .h = 1.000000 },
+    { .row = 7, .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 = 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 },
+};
+struct lay_def keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_lays[] = {
     {
-        .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_all",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_all_keys) / sizeof(keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_all_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_all_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_ansi",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_ansi_keys) / sizeof(keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_ansi_keys[0]),
+        .keys = keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_ansi_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",
+        .n_keys = sizeof(keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_iso_keys) / sizeof(keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_LAYOUT_iso_keys[0]),
+        .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_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_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,
     },
-};
-struct key_def keyboards_xwhatsit_ibm_fat_through_hole_through_hole_c_LAYOUT_keys[] = {
-    { .row = 3, .col = 0, .x = 0.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 0, .x = 1.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 1, .x = 2.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 2, .x = 3.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 3, .x = 4.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 4, .x = 5.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 4, .x = 6.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 5, .x = 7.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 6, .x = 8.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 7, .x = 9.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 7, .x = 10.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 8, .x = 11.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 8, .x = 12.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 9, .x = 13.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 10, .x = 14.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 11, .x = 15.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 12, .x = 16.500000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 14, .x = 18.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 14, .x = 19.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 2, .col = 15, .x = 20.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 0, .col = 15, .x = 21.000000, .y = 1.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 0, .x = 0.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 1, .x = 1.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 1, .x = 2.500000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 2, .x = 4.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 3, .x = 5.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 4, .x = 6.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 5, .x = 7.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 5, .x = 8.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 6, .x = 9.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 7, .x = 10.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 8, .x = 11.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 8, .x = 12.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 9, .x = 13.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 10, .x = 14.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 11, .x = 15.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 11, .x = 16.000000, .y = 2.500000, .w = 1.500000, .h = 1.000000 },
-    { .row = 3, .col = 13, .x = 18.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 14, .x = 19.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 1, .col = 15, .x = 20.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 15, .x = 21.000000, .y = 2.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 0, .x = 0.000000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 1, .x = 1.000000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 2, .x = 2.500000, .y = 3.500000, .w = 1.750000, .h = 1.000000 },
-    { .row = 4, .col = 3, .x = 4.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 3, .x = 5.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 4, .x = 6.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 5, .x = 7.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 6, .x = 8.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 6, .x = 9.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 7, .x = 10.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 8, .x = 11.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 9, .x = 12.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 9, .x = 13.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 10, .x = 14.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 10, .x = 15.250000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 11, .x = 16.250000, .y = 3.500000, .w = 1.250000, .h = 1.000000 },
-    { .row = 4, .col = 13, .x = 18.000000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 14, .x = 19.000000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 3, .col = 14, .x = 20.000000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 4, .col = 15, .x = 21.000000, .y = 3.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 0, .x = 0.000000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 1, .x = 1.000000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 2, .x = 2.500000, .y = 4.500000, .w = 1.250000, .h = 1.000000 },
-    { .row = 5, .col = 2, .x = 3.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 3, .x = 4.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 4, .x = 5.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 4, .x = 6.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 5, .x = 7.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 6, .x = 8.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 6, .x = 9.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 7, .x = 10.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 8, .x = 11.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 9, .x = 12.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 9, .x = 13.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 10, .x = 14.750000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 11, .x = 15.750000, .y = 4.500000, .w = 1.750000, .h = 1.000000 },
-    { .row = 6, .col = 13, .x = 18.000000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 14, .x = 19.000000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 5, .col = 15, .x = 20.000000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 15, .x = 21.000000, .y = 4.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 0, .x = 0.000000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 1, .x = 1.000000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 2, .x = 2.500000, .y = 5.500000, .w = 1.250000, .h = 1.000000 },
-    { .row = 7, .col = 3, .x = 5.000000, .y = 5.500000, .w = 1.250000, .h = 1.000000 },
-    { .row = 7, .col = 5, .x = 6.250000, .y = 5.500000, .w = 7.000000, .h = 1.000000 },
-    { .row = 7, .col = 7, .x = 13.250000, .y = 5.500000, .w = 1.250000, .h = 1.000000 },
-    { .row = 7, .col = 11, .x = 16.250000, .y = 5.500000, .w = 1.250000, .h = 1.000000 },
-    { .row = 7, .col = 13, .x = 18.000000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 14, .x = 19.000000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 6, .col = 14, .x = 20.000000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
-    { .row = 7, .col = 15, .x = 21.000000, .y = 5.500000, .w = 1.000000, .h = 1.000000 },
-};
-struct lay_def keyboards_xwhatsit_ibm_fat_through_hole_through_hole_c_lays[] = {
     {
-        .lay_name = "LAYOUT",
-        .n_keys = sizeof(keyboards_xwhatsit_ibm_fat_through_hole_through_hole_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_ibm_fat_through_hole_through_hole_c_LAYOUT_keys[0]),
-        .keys = keyboards_xwhatsit_ibm_fat_through_hole_through_hole_c_LAYOUT_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_through_hole_through_hole_c_LAYOUT_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 },
     { .row = 0, .col = 1, .x = 3.000000, .y = 0.000000, .w = 1.000000, .h = 1.000000 },
@@ -12665,18 +16697,18 @@ struct key_def keyboards_xwhatsit_sneakyrobb_beam104_through_hole_through_hole_c
     { .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_sneakyrobb_beam104_through_hole_through_hole_c_lays[] = {
+struct lay_def keyboards_xwhatsit_sneakyrobb_beam104_universal_universal_c_lays[] = {
     {
         .lay_name = "LAYOUT",
-        .n_keys = sizeof(keyboards_xwhatsit_sneakyrobb_beam104_through_hole_through_hole_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_sneakyrobb_beam104_through_hole_through_hole_c_LAYOUT_keys[0]),
-        .keys = keyboards_xwhatsit_sneakyrobb_beam104_through_hole_through_hole_c_LAYOUT_keys,
+        .n_keys = sizeof(keyboards_xwhatsit_sneakyrobb_beam104_universal_universal_c_LAYOUT_keys) / sizeof(keyboards_xwhatsit_sneakyrobb_beam104_universal_universal_c_LAYOUT_keys[0]),
+        .keys = keyboards_xwhatsit_sneakyrobb_beam104_universal_universal_c_LAYOUT_keys,
     },
 };
 struct kbd_def keyboards[] = {
     {
-        .kbd_name = "keyboards/xwhatsit/brand_new_model_f/f62/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_brand_new_model_f_f62_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/brand_new_model_f/f62/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_brand_new_model_f_f62_universal_universal_c_lays,
         .cols = 9,
         .rows = 8,
     },
@@ -12695,9 +16727,9 @@ struct kbd_def keyboards[] = {
         .rows = 8,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/brand_new_model_f/f77/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_brand_new_model_f_f77_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/brand_new_model_f/f77/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_brand_new_model_f_f77_universal_universal_c_lays,
         .cols = 11,
         .rows = 8,
     },
@@ -12716,9 +16748,9 @@ struct kbd_def keyboards[] = {
         .rows = 8,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/3101_3727_3278_87key/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3101_3727_3278_87key_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_3101_3727_3278_87key_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_3101_3727_3278_87key_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/ibm/3101_3727_3278_87key/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3101_3727_3278_87key_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_3101_3727_3278_87key_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_3101_3727_3278_87key_universal_universal_c_lays,
         .cols = 23,
         .rows = 4,
     },
@@ -12730,9 +16762,30 @@ struct kbd_def keyboards[] = {
         .rows = 4,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/3276_3278_75key/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3276_3278_75key_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_3276_3278_75key_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_3276_3278_75key_through_hole_through_hole_c_lays,
+        .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]),
+        .layouts = keyboards_xwhatsit_ibm_3276_3278_75key_universal_universal_c_lays,
         .cols = 20,
         .rows = 4,
     },
@@ -12744,9 +16797,9 @@ struct kbd_def keyboards[] = {
         .rows = 4,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/3277_66key/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3277_66key_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_3277_66key_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_3277_66key_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/ibm/3277_66key/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3277_66key_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_3277_66key_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_3277_66key_universal_universal_c_lays,
         .cols = 17,
         .rows = 4,
     },
@@ -12758,9 +16811,9 @@ struct kbd_def keyboards[] = {
         .rows = 4,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/3277_78key/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3277_78key_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_3277_78key_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_3277_78key_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/ibm/3277_78key/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3277_78key_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_3277_78key_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_3277_78key_universal_universal_c_lays,
         .cols = 20,
         .rows = 4,
     },
@@ -12772,9 +16825,9 @@ struct kbd_def keyboards[] = {
         .rows = 4,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/3277_split_66key/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_3277_split_66key_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/ibm/3277_split_66key/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_3277_split_66key_universal_universal_c_lays,
         .cols = 18,
         .rows = 4,
     },
@@ -12786,16 +16839,16 @@ struct kbd_def keyboards[] = {
         .rows = 4,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/4978/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_4978_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/ibm/4978/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_4978_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_4978_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_4978_universal_universal_c_lays,
         .cols = 22,
         .rows = 8,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/5251/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_5251_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_5251_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_5251_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/ibm/5251/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_5251_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_5251_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_5251_universal_universal_c_lays,
         .cols = 23,
         .rows = 4,
     },
@@ -12807,9 +16860,44 @@ struct kbd_def keyboards[] = {
         .rows = 4,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/f107/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_f107_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_f107_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_f107_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/ibm/displaywriter/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_displaywriter_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_displaywriter_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_displaywriter_universal_universal_c_lays,
+        .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]),
+        .layouts = keyboards_xwhatsit_ibm_f107_universal_universal_c_lays,
         .cols = 15,
         .rows = 8,
     },
@@ -12828,9 +16916,9 @@ struct kbd_def keyboards[] = {
         .rows = 8,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/f122/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_f122_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/ibm/f122/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_f122_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_f122_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_f122_universal_universal_c_lays,
         .cols = 16,
         .rows = 8,
     },
@@ -12849,9 +16937,9 @@ struct kbd_def keyboards[] = {
         .rows = 8,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/f50/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_f50_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_f50_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_f50_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/ibm/f50/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_f50_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_f50_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_f50_universal_universal_c_lays,
         .cols = 7,
         .rows = 8,
     },
@@ -12870,9 +16958,9 @@ struct kbd_def keyboards[] = {
         .rows = 8,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/f62/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_f62_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/ibm/f62/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_f62_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_f62_universal_universal_c_lays,
         .cols = 8,
         .rows = 8,
     },
@@ -12891,16 +16979,79 @@ struct kbd_def keyboards[] = {
         .rows = 8,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/ibm/fat/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_ibm_fat_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_ibm_fat_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_ibm_fat_through_hole_through_hole_c_lays,
+        .kbd_name = "keyboards/xwhatsit/ibm/fat/universal/universal.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_fat_universal_universal_c_lays)/sizeof(keyboards_xwhatsit_ibm_fat_universal_universal_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_fat_universal_universal_c_lays,
+        .cols = 16,
+        .rows = 8,
+    },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/fat/wcass/wcass.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_fat_wcass_wcass_c_lays)/sizeof(keyboards_xwhatsit_ibm_fat_wcass_wcass_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_fat_wcass_wcass_c_lays,
+        .cols = 16,
+        .rows = 8,
+    },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/fat/xwhatsit/xwhatsit.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_lays)/sizeof(keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_fat_xwhatsit_xwhatsit_c_lays,
         .cols = 16,
         .rows = 8,
     },
     {
-        .kbd_name = "keyboards/xwhatsit/sneakyrobb/beam104/through_hole/through_hole.c",
-        .n_layouts = sizeof(keyboards_xwhatsit_sneakyrobb_beam104_through_hole_through_hole_c_lays)/sizeof(keyboards_xwhatsit_sneakyrobb_beam104_through_hole_through_hole_c_lays[0]),
-        .layouts = keyboards_xwhatsit_sneakyrobb_beam104_through_hole_through_hole_c_lays,
+        .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]),
+        .layouts = keyboards_xwhatsit_ibm_fssk_universal_universal_c_lays,
+        .cols = 12,
+        .rows = 8,
+    },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/fssk/wcass/wcass.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_lays)/sizeof(keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_fssk_wcass_wcass_c_lays,
+        .cols = 12,
+        .rows = 8,
+    },
+    {
+        .kbd_name = "keyboards/xwhatsit/ibm/fssk/xwhatsit/xwhatsit.c",
+        .n_layouts = sizeof(keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_lays)/sizeof(keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_lays[0]),
+        .layouts = keyboards_xwhatsit_ibm_fssk_xwhatsit_xwhatsit_c_lays,
+        .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]),
+        .layouts = keyboards_xwhatsit_sneakyrobb_beam104_universal_universal_c_lays,
         .cols = 16,
         .rows = 8,
     },