qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

keyboard.json (44797B)


      1 {
      2     "keyboard_name": "KC60",
      3     "manufacturer": "NPKC",
      4     "maintainer": "qmk",
      5     "usb": {
      6         "vid": "0x530A",
      7         "pid": "0x6FFC",
      8         "device_version": "0.0.1"
      9     },
     10     "features": {
     11         "backlight": true,
     12         "bootmagic": true,
     13         "command": true,
     14         "console": true,
     15         "extrakey": true,
     16         "mousekey": true,
     17         "nkro": false
     18     },
     19     "qmk": {
     20         "locking": {
     21             "enabled": true,
     22             "resync": true
     23         }
     24     },
     25     "matrix_pins": {
     26         "cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3"],
     27         "rows": ["D0", "D1", "F6", "F7", "D5"]
     28     },
     29     "diode_direction": "COL2ROW",
     30     "backlight": {
     31         "pin": "B6",
     32         "levels": 5,
     33         "breathing": true
     34     },
     35     "rgblight": {
     36         "saturation_steps": 8,
     37         "brightness_steps": 8,
     38         "led_count": 16,
     39         "sleep": true,
     40         "animations": {
     41             "breathing": true,
     42             "rainbow_mood": true,
     43             "rainbow_swirl": true,
     44             "snake": true,
     45             "knight": true,
     46             "christmas": true,
     47             "static_gradient": true,
     48             "rgb_test": true,
     49             "alternating": true,
     50             "twinkle": true
     51         }
     52     },
     53     "ws2812": {
     54         "pin": "F5"
     55     },
     56     "processor": "atmega32u4",
     57     "bootloader": "atmel-dfu",
     58     "community_layouts": [
     59         "60_abnt2",
     60         "60_ansi",
     61         "60_ansi_split_bs_rshift",
     62         "60_ansi_tsangan",
     63         "60_ansi_tsangan_split_bs_rshift",
     64         "60_hhkb",
     65         "60_iso",
     66         "60_iso_split_bs_rshift",
     67         "60_iso_tsangan",
     68         "60_iso_tsangan_split_bs_rshift"
     69     ],
     70     "layouts": {
     71         "LAYOUT_all": {
     72             "layout": [
     73                 {"matrix": [0, 0], "x": 0, "y": 0},
     74                 {"matrix": [0, 1], "x": 1, "y": 0},
     75                 {"matrix": [0, 2], "x": 2, "y": 0},
     76                 {"matrix": [0, 3], "x": 3, "y": 0},
     77                 {"matrix": [0, 4], "x": 4, "y": 0},
     78                 {"matrix": [0, 5], "x": 5, "y": 0},
     79                 {"matrix": [0, 6], "x": 6, "y": 0},
     80                 {"matrix": [0, 7], "x": 7, "y": 0},
     81                 {"matrix": [0, 8], "x": 8, "y": 0},
     82                 {"matrix": [0, 9], "x": 9, "y": 0},
     83                 {"matrix": [0, 10], "x": 10, "y": 0},
     84                 {"matrix": [0, 11], "x": 11, "y": 0},
     85                 {"matrix": [0, 12], "x": 12, "y": 0},
     86                 {"matrix": [0, 13], "x": 13, "y": 0},
     87                 {"matrix": [4, 9], "x": 14, "y": 0},
     88 
     89                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
     90                 {"matrix": [1, 1], "x": 1.5, "y": 1},
     91                 {"matrix": [1, 2], "x": 2.5, "y": 1},
     92                 {"matrix": [1, 3], "x": 3.5, "y": 1},
     93                 {"matrix": [1, 4], "x": 4.5, "y": 1},
     94                 {"matrix": [1, 5], "x": 5.5, "y": 1},
     95                 {"matrix": [1, 6], "x": 6.5, "y": 1},
     96                 {"matrix": [1, 7], "x": 7.5, "y": 1},
     97                 {"matrix": [1, 8], "x": 8.5, "y": 1},
     98                 {"matrix": [1, 9], "x": 9.5, "y": 1},
     99                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    100                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    101                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    102                 {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
    103 
    104                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    105                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    106                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    107                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    108                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    109                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    110                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    111                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    112                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    113                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    114                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    115                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    116                 {"matrix": [2, 12], "x": 12.75, "y": 2},
    117                 {"matrix": [2, 13], "x": 13.75, "y": 2, "w": 1.25},
    118 
    119                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    120                 {"matrix": [3, 1], "x": 1.25, "y": 3},
    121                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    122                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    123                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    124                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    125                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    126                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    127                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    128                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    129                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    130                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    131                 {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    132                 {"matrix": [3, 12], "x": 14, "y": 3},
    133 
    134                 {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    135                 {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    136                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
    137                 {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
    138                 {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    139                 {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    140                 {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
    141                 {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
    142             ]
    143         },
    144         "LAYOUT_60_ansi": {
    145             "layout": [
    146                 {"matrix": [0, 0], "x": 0, "y": 0},
    147                 {"matrix": [0, 1], "x": 1, "y": 0},
    148                 {"matrix": [0, 2], "x": 2, "y": 0},
    149                 {"matrix": [0, 3], "x": 3, "y": 0},
    150                 {"matrix": [0, 4], "x": 4, "y": 0},
    151                 {"matrix": [0, 5], "x": 5, "y": 0},
    152                 {"matrix": [0, 6], "x": 6, "y": 0},
    153                 {"matrix": [0, 7], "x": 7, "y": 0},
    154                 {"matrix": [0, 8], "x": 8, "y": 0},
    155                 {"matrix": [0, 9], "x": 9, "y": 0},
    156                 {"matrix": [0, 10], "x": 10, "y": 0},
    157                 {"matrix": [0, 11], "x": 11, "y": 0},
    158                 {"matrix": [0, 12], "x": 12, "y": 0},
    159                 {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
    160 
    161                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    162                 {"matrix": [1, 1], "x": 1.5, "y": 1},
    163                 {"matrix": [1, 2], "x": 2.5, "y": 1},
    164                 {"matrix": [1, 3], "x": 3.5, "y": 1},
    165                 {"matrix": [1, 4], "x": 4.5, "y": 1},
    166                 {"matrix": [1, 5], "x": 5.5, "y": 1},
    167                 {"matrix": [1, 6], "x": 6.5, "y": 1},
    168                 {"matrix": [1, 7], "x": 7.5, "y": 1},
    169                 {"matrix": [1, 8], "x": 8.5, "y": 1},
    170                 {"matrix": [1, 9], "x": 9.5, "y": 1},
    171                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    172                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    173                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    174                 {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
    175 
    176                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    177                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    178                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    179                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    180                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    181                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    182                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    183                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    184                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    185                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    186                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    187                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    188                 {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    189 
    190                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    191                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    192                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    193                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    194                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    195                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    196                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    197                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    198                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    199                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    200                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    201                 {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
    202 
    203                 {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    204                 {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    205                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
    206                 {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
    207                 {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    208                 {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    209                 {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
    210                 {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
    211             ]
    212         },
    213         "LAYOUT_60_ansi_split_bs_rshift": {
    214             "layout": [
    215                 {"matrix": [0, 0], "x": 0, "y": 0},
    216                 {"matrix": [0, 1], "x": 1, "y": 0},
    217                 {"matrix": [0, 2], "x": 2, "y": 0},
    218                 {"matrix": [0, 3], "x": 3, "y": 0},
    219                 {"matrix": [0, 4], "x": 4, "y": 0},
    220                 {"matrix": [0, 5], "x": 5, "y": 0},
    221                 {"matrix": [0, 6], "x": 6, "y": 0},
    222                 {"matrix": [0, 7], "x": 7, "y": 0},
    223                 {"matrix": [0, 8], "x": 8, "y": 0},
    224                 {"matrix": [0, 9], "x": 9, "y": 0},
    225                 {"matrix": [0, 10], "x": 10, "y": 0},
    226                 {"matrix": [0, 11], "x": 11, "y": 0},
    227                 {"matrix": [0, 12], "x": 12, "y": 0},
    228                 {"matrix": [0, 13], "x": 13, "y": 0},
    229                 {"matrix": [4, 9], "x": 14, "y": 0},
    230 
    231                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    232                 {"matrix": [1, 1], "x": 1.5, "y": 1},
    233                 {"matrix": [1, 2], "x": 2.5, "y": 1},
    234                 {"matrix": [1, 3], "x": 3.5, "y": 1},
    235                 {"matrix": [1, 4], "x": 4.5, "y": 1},
    236                 {"matrix": [1, 5], "x": 5.5, "y": 1},
    237                 {"matrix": [1, 6], "x": 6.5, "y": 1},
    238                 {"matrix": [1, 7], "x": 7.5, "y": 1},
    239                 {"matrix": [1, 8], "x": 8.5, "y": 1},
    240                 {"matrix": [1, 9], "x": 9.5, "y": 1},
    241                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    242                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    243                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    244                 {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
    245 
    246                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    247                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    248                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    249                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    250                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    251                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    252                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    253                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    254                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    255                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    256                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    257                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    258                 {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    259 
    260                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    261                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    262                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    263                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    264                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    265                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    266                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    267                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    268                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    269                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    270                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    271                 {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    272                 {"matrix": [3, 12], "x": 14, "y": 3},
    273 
    274                 {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    275                 {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    276                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
    277                 {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
    278                 {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    279                 {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    280                 {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
    281                 {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
    282             ]
    283         },
    284         "LAYOUT_60_ansi_tsangan": {
    285             "layout": [
    286                 {"matrix": [0, 0], "x": 0, "y": 0},
    287                 {"matrix": [0, 1], "x": 1, "y": 0},
    288                 {"matrix": [0, 2], "x": 2, "y": 0},
    289                 {"matrix": [0, 3], "x": 3, "y": 0},
    290                 {"matrix": [0, 4], "x": 4, "y": 0},
    291                 {"matrix": [0, 5], "x": 5, "y": 0},
    292                 {"matrix": [0, 6], "x": 6, "y": 0},
    293                 {"matrix": [0, 7], "x": 7, "y": 0},
    294                 {"matrix": [0, 8], "x": 8, "y": 0},
    295                 {"matrix": [0, 9], "x": 9, "y": 0},
    296                 {"matrix": [0, 10], "x": 10, "y": 0},
    297                 {"matrix": [0, 11], "x": 11, "y": 0},
    298                 {"matrix": [0, 12], "x": 12, "y": 0},
    299                 {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
    300 
    301                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    302                 {"matrix": [1, 1], "x": 1.5, "y": 1},
    303                 {"matrix": [1, 2], "x": 2.5, "y": 1},
    304                 {"matrix": [1, 3], "x": 3.5, "y": 1},
    305                 {"matrix": [1, 4], "x": 4.5, "y": 1},
    306                 {"matrix": [1, 5], "x": 5.5, "y": 1},
    307                 {"matrix": [1, 6], "x": 6.5, "y": 1},
    308                 {"matrix": [1, 7], "x": 7.5, "y": 1},
    309                 {"matrix": [1, 8], "x": 8.5, "y": 1},
    310                 {"matrix": [1, 9], "x": 9.5, "y": 1},
    311                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    312                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    313                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    314                 {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
    315 
    316                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    317                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    318                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    319                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    320                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    321                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    322                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    323                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    324                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    325                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    326                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    327                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    328                 {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    329 
    330                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    331                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    332                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    333                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    334                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    335                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    336                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    337                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    338                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    339                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    340                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    341                 {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
    342 
    343                 {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
    344                 {"matrix": [4, 1], "x": 1.5, "y": 4},
    345                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
    346                 {"matrix": [4, 5], "x": 4, "y": 4, "w": 7},
    347                 {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
    348                 {"matrix": [4, 12], "x": 12.5, "y": 4},
    349                 {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
    350             ]
    351         },
    352         "LAYOUT_60_ansi_tsangan_split_bs_rshift": {
    353             "layout": [
    354                 {"matrix": [0, 0], "x": 0, "y": 0},
    355                 {"matrix": [0, 1], "x": 1, "y": 0},
    356                 {"matrix": [0, 2], "x": 2, "y": 0},
    357                 {"matrix": [0, 3], "x": 3, "y": 0},
    358                 {"matrix": [0, 4], "x": 4, "y": 0},
    359                 {"matrix": [0, 5], "x": 5, "y": 0},
    360                 {"matrix": [0, 6], "x": 6, "y": 0},
    361                 {"matrix": [0, 7], "x": 7, "y": 0},
    362                 {"matrix": [0, 8], "x": 8, "y": 0},
    363                 {"matrix": [0, 9], "x": 9, "y": 0},
    364                 {"matrix": [0, 10], "x": 10, "y": 0},
    365                 {"matrix": [0, 11], "x": 11, "y": 0},
    366                 {"matrix": [0, 12], "x": 12, "y": 0},
    367                 {"matrix": [0, 13], "x": 13, "y": 0},
    368                 {"matrix": [4, 9], "x": 14, "y": 0},
    369 
    370                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    371                 {"matrix": [1, 1], "x": 1.5, "y": 1},
    372                 {"matrix": [1, 2], "x": 2.5, "y": 1},
    373                 {"matrix": [1, 3], "x": 3.5, "y": 1},
    374                 {"matrix": [1, 4], "x": 4.5, "y": 1},
    375                 {"matrix": [1, 5], "x": 5.5, "y": 1},
    376                 {"matrix": [1, 6], "x": 6.5, "y": 1},
    377                 {"matrix": [1, 7], "x": 7.5, "y": 1},
    378                 {"matrix": [1, 8], "x": 8.5, "y": 1},
    379                 {"matrix": [1, 9], "x": 9.5, "y": 1},
    380                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    381                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    382                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    383                 {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
    384 
    385                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    386                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    387                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    388                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    389                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    390                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    391                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    392                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    393                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    394                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    395                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    396                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    397                 {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    398 
    399                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    400                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    401                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    402                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    403                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    404                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    405                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    406                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    407                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    408                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    409                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    410                 {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    411                 {"matrix": [3, 12], "x": 14, "y": 3},
    412 
    413                 {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
    414                 {"matrix": [4, 1], "x": 1.5, "y": 4},
    415                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
    416                 {"matrix": [4, 5], "x": 4, "y": 4, "w": 7},
    417                 {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
    418                 {"matrix": [4, 12], "x": 12.5, "y": 4},
    419                 {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
    420             ]
    421         },
    422         "LAYOUT_60_hhkb": {
    423             "layout": [
    424                 {"matrix": [0, 0], "x": 0, "y": 0},
    425                 {"matrix": [0, 1], "x": 1, "y": 0},
    426                 {"matrix": [0, 2], "x": 2, "y": 0},
    427                 {"matrix": [0, 3], "x": 3, "y": 0},
    428                 {"matrix": [0, 4], "x": 4, "y": 0},
    429                 {"matrix": [0, 5], "x": 5, "y": 0},
    430                 {"matrix": [0, 6], "x": 6, "y": 0},
    431                 {"matrix": [0, 7], "x": 7, "y": 0},
    432                 {"matrix": [0, 8], "x": 8, "y": 0},
    433                 {"matrix": [0, 9], "x": 9, "y": 0},
    434                 {"matrix": [0, 10], "x": 10, "y": 0},
    435                 {"matrix": [0, 11], "x": 11, "y": 0},
    436                 {"matrix": [0, 12], "x": 12, "y": 0},
    437                 {"matrix": [0, 13], "x": 13, "y": 0},
    438                 {"matrix": [4, 9], "x": 14, "y": 0},
    439 
    440                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    441                 {"matrix": [1, 1], "x": 1.5, "y": 1},
    442                 {"matrix": [1, 2], "x": 2.5, "y": 1},
    443                 {"matrix": [1, 3], "x": 3.5, "y": 1},
    444                 {"matrix": [1, 4], "x": 4.5, "y": 1},
    445                 {"matrix": [1, 5], "x": 5.5, "y": 1},
    446                 {"matrix": [1, 6], "x": 6.5, "y": 1},
    447                 {"matrix": [1, 7], "x": 7.5, "y": 1},
    448                 {"matrix": [1, 8], "x": 8.5, "y": 1},
    449                 {"matrix": [1, 9], "x": 9.5, "y": 1},
    450                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    451                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    452                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    453                 {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
    454 
    455                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    456                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    457                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    458                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    459                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    460                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    461                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    462                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    463                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    464                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    465                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    466                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    467                 {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    468 
    469                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    470                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    471                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    472                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    473                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    474                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    475                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    476                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    477                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    478                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    479                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    480                 {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    481                 {"matrix": [3, 12], "x": 14, "y": 3},
    482 
    483                 {"matrix": [4, 1], "x": 1.5, "y": 4},
    484                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
    485                 {"matrix": [4, 5], "x": 4, "y": 4, "w": 7},
    486                 {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
    487                 {"matrix": [4, 12], "x": 12.5, "y": 4}
    488             ]
    489         },
    490         "LAYOUT_60_true_hhkb": {
    491             "layout": [
    492                 {"matrix": [0, 0], "x": 0, "y": 0},
    493                 {"matrix": [0, 1], "x": 1, "y": 0},
    494                 {"matrix": [0, 2], "x": 2, "y": 0},
    495                 {"matrix": [0, 3], "x": 3, "y": 0},
    496                 {"matrix": [0, 4], "x": 4, "y": 0},
    497                 {"matrix": [0, 5], "x": 5, "y": 0},
    498                 {"matrix": [0, 6], "x": 6, "y": 0},
    499                 {"matrix": [0, 7], "x": 7, "y": 0},
    500                 {"matrix": [0, 8], "x": 8, "y": 0},
    501                 {"matrix": [0, 9], "x": 9, "y": 0},
    502                 {"matrix": [0, 10], "x": 10, "y": 0},
    503                 {"matrix": [0, 11], "x": 11, "y": 0},
    504                 {"matrix": [0, 12], "x": 12, "y": 0},
    505                 {"matrix": [0, 13], "x": 13, "y": 0},
    506                 {"matrix": [4, 9], "x": 14, "y": 0},
    507 
    508                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    509                 {"matrix": [1, 1], "x": 1.5, "y": 1},
    510                 {"matrix": [1, 2], "x": 2.5, "y": 1},
    511                 {"matrix": [1, 3], "x": 3.5, "y": 1},
    512                 {"matrix": [1, 4], "x": 4.5, "y": 1},
    513                 {"matrix": [1, 5], "x": 5.5, "y": 1},
    514                 {"matrix": [1, 6], "x": 6.5, "y": 1},
    515                 {"matrix": [1, 7], "x": 7.5, "y": 1},
    516                 {"matrix": [1, 8], "x": 8.5, "y": 1},
    517                 {"matrix": [1, 9], "x": 9.5, "y": 1},
    518                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    519                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    520                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    521                 {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
    522 
    523                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    524                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    525                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    526                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    527                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    528                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    529                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    530                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    531                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    532                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    533                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    534                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    535                 {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    536 
    537                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    538                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    539                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    540                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    541                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    542                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    543                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    544                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    545                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    546                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    547                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    548                 {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    549                 {"matrix": [3, 12], "x": 14, "y": 3},
    550 
    551                 {"matrix": [4, 1], "x": 1.5, "y": 4},
    552                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
    553                 {"matrix": [4, 5], "x": 4, "y": 4, "w": 6},
    554                 {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.5},
    555                 {"matrix": [4, 11], "x": 11.5, "y": 4}
    556             ]
    557         },
    558         "LAYOUT_60_abnt2": {
    559             "layout": [
    560                 {"matrix": [0, 0], "x": 0, "y": 0},
    561                 {"matrix": [0, 1], "x": 1, "y": 0},
    562                 {"matrix": [0, 2], "x": 2, "y": 0},
    563                 {"matrix": [0, 3], "x": 3, "y": 0},
    564                 {"matrix": [0, 4], "x": 4, "y": 0},
    565                 {"matrix": [0, 5], "x": 5, "y": 0},
    566                 {"matrix": [0, 6], "x": 6, "y": 0},
    567                 {"matrix": [0, 7], "x": 7, "y": 0},
    568                 {"matrix": [0, 8], "x": 8, "y": 0},
    569                 {"matrix": [0, 9], "x": 9, "y": 0},
    570                 {"matrix": [0, 10], "x": 10, "y": 0},
    571                 {"matrix": [0, 11], "x": 11, "y": 0},
    572                 {"matrix": [0, 12], "x": 12, "y": 0},
    573                 {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
    574 
    575                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    576                 {"matrix": [1, 1], "x": 1.5, "y": 1},
    577                 {"matrix": [1, 2], "x": 2.5, "y": 1},
    578                 {"matrix": [1, 3], "x": 3.5, "y": 1},
    579                 {"matrix": [1, 4], "x": 4.5, "y": 1},
    580                 {"matrix": [1, 5], "x": 5.5, "y": 1},
    581                 {"matrix": [1, 6], "x": 6.5, "y": 1},
    582                 {"matrix": [1, 7], "x": 7.5, "y": 1},
    583                 {"matrix": [1, 8], "x": 8.5, "y": 1},
    584                 {"matrix": [1, 9], "x": 9.5, "y": 1},
    585                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    586                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    587                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    588 
    589                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    590                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    591                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    592                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    593                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    594                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    595                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    596                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    597                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    598                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    599                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    600                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    601                 {"matrix": [2, 12], "x": 12.75, "y": 2},
    602                 {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
    603 
    604                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    605                 {"matrix": [3, 1], "x": 1.25, "y": 3},
    606                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    607                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    608                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    609                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    610                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    611                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    612                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    613                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    614                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    615                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    616                 {"matrix": [3, 12], "x": 12.25, "y": 3},
    617                 {"matrix": [3, 13], "x": 13.25, "y": 3, "w": 1.75},
    618 
    619                 {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    620                 {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    621                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
    622                 {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
    623                 {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    624                 {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    625                 {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
    626                 {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
    627             ]
    628         },
    629         "LAYOUT_60_iso": {
    630             "layout": [
    631                 {"matrix": [0, 0], "x": 0, "y": 0},
    632                 {"matrix": [0, 1], "x": 1, "y": 0},
    633                 {"matrix": [0, 2], "x": 2, "y": 0},
    634                 {"matrix": [0, 3], "x": 3, "y": 0},
    635                 {"matrix": [0, 4], "x": 4, "y": 0},
    636                 {"matrix": [0, 5], "x": 5, "y": 0},
    637                 {"matrix": [0, 6], "x": 6, "y": 0},
    638                 {"matrix": [0, 7], "x": 7, "y": 0},
    639                 {"matrix": [0, 8], "x": 8, "y": 0},
    640                 {"matrix": [0, 9], "x": 9, "y": 0},
    641                 {"matrix": [0, 10], "x": 10, "y": 0},
    642                 {"matrix": [0, 11], "x": 11, "y": 0},
    643                 {"matrix": [0, 12], "x": 12, "y": 0},
    644                 {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
    645 
    646                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    647                 {"matrix": [1, 1], "x": 1.5, "y": 1},
    648                 {"matrix": [1, 2], "x": 2.5, "y": 1},
    649                 {"matrix": [1, 3], "x": 3.5, "y": 1},
    650                 {"matrix": [1, 4], "x": 4.5, "y": 1},
    651                 {"matrix": [1, 5], "x": 5.5, "y": 1},
    652                 {"matrix": [1, 6], "x": 6.5, "y": 1},
    653                 {"matrix": [1, 7], "x": 7.5, "y": 1},
    654                 {"matrix": [1, 8], "x": 8.5, "y": 1},
    655                 {"matrix": [1, 9], "x": 9.5, "y": 1},
    656                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    657                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    658                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    659 
    660                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    661                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    662                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    663                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    664                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    665                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    666                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    667                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    668                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    669                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    670                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    671                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    672                 {"matrix": [2, 12], "x": 12.75, "y": 2},
    673                 {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
    674 
    675                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    676                 {"matrix": [3, 1], "x": 1.25, "y": 3},
    677                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    678                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    679                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    680                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    681                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    682                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    683                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    684                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    685                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    686                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    687                 {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
    688 
    689                 {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    690                 {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    691                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
    692                 {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
    693                 {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    694                 {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    695                 {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
    696                 {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
    697             ]
    698         },
    699         "LAYOUT_60_iso_split_bs_rshift": {
    700             "layout": [
    701                 {"matrix": [0, 0], "x": 0, "y": 0},
    702                 {"matrix": [0, 1], "x": 1, "y": 0},
    703                 {"matrix": [0, 2], "x": 2, "y": 0},
    704                 {"matrix": [0, 3], "x": 3, "y": 0},
    705                 {"matrix": [0, 4], "x": 4, "y": 0},
    706                 {"matrix": [0, 5], "x": 5, "y": 0},
    707                 {"matrix": [0, 6], "x": 6, "y": 0},
    708                 {"matrix": [0, 7], "x": 7, "y": 0},
    709                 {"matrix": [0, 8], "x": 8, "y": 0},
    710                 {"matrix": [0, 9], "x": 9, "y": 0},
    711                 {"matrix": [0, 10], "x": 10, "y": 0},
    712                 {"matrix": [0, 11], "x": 11, "y": 0},
    713                 {"matrix": [0, 12], "x": 12, "y": 0},
    714                 {"matrix": [0, 13], "x": 13, "y": 0},
    715                 {"matrix": [4, 9], "x": 14, "y": 0},
    716 
    717                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    718                 {"matrix": [1, 1], "x": 1.5, "y": 1},
    719                 {"matrix": [1, 2], "x": 2.5, "y": 1},
    720                 {"matrix": [1, 3], "x": 3.5, "y": 1},
    721                 {"matrix": [1, 4], "x": 4.5, "y": 1},
    722                 {"matrix": [1, 5], "x": 5.5, "y": 1},
    723                 {"matrix": [1, 6], "x": 6.5, "y": 1},
    724                 {"matrix": [1, 7], "x": 7.5, "y": 1},
    725                 {"matrix": [1, 8], "x": 8.5, "y": 1},
    726                 {"matrix": [1, 9], "x": 9.5, "y": 1},
    727                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    728                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    729                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    730 
    731                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    732                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    733                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    734                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    735                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    736                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    737                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    738                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    739                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    740                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    741                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    742                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    743                 {"matrix": [2, 12], "x": 12.75, "y": 2},
    744                 {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
    745 
    746                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    747                 {"matrix": [3, 1], "x": 1.25, "y": 3},
    748                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    749                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    750                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    751                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    752                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    753                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    754                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    755                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    756                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    757                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    758                 {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    759                 {"matrix": [3, 12], "x": 14, "y": 3},
    760 
    761                 {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    762                 {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    763                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
    764                 {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
    765                 {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    766                 {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    767                 {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
    768                 {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
    769             ]
    770         },
    771         "LAYOUT_60_iso_tsangan": {
    772             "layout": [
    773                 {"matrix": [0, 0], "x": 0, "y": 0},
    774                 {"matrix": [0, 1], "x": 1, "y": 0},
    775                 {"matrix": [0, 2], "x": 2, "y": 0},
    776                 {"matrix": [0, 3], "x": 3, "y": 0},
    777                 {"matrix": [0, 4], "x": 4, "y": 0},
    778                 {"matrix": [0, 5], "x": 5, "y": 0},
    779                 {"matrix": [0, 6], "x": 6, "y": 0},
    780                 {"matrix": [0, 7], "x": 7, "y": 0},
    781                 {"matrix": [0, 8], "x": 8, "y": 0},
    782                 {"matrix": [0, 9], "x": 9, "y": 0},
    783                 {"matrix": [0, 10], "x": 10, "y": 0},
    784                 {"matrix": [0, 11], "x": 11, "y": 0},
    785                 {"matrix": [0, 12], "x": 12, "y": 0},
    786                 {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
    787 
    788                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    789                 {"matrix": [1, 1], "x": 1.5, "y": 1},
    790                 {"matrix": [1, 2], "x": 2.5, "y": 1},
    791                 {"matrix": [1, 3], "x": 3.5, "y": 1},
    792                 {"matrix": [1, 4], "x": 4.5, "y": 1},
    793                 {"matrix": [1, 5], "x": 5.5, "y": 1},
    794                 {"matrix": [1, 6], "x": 6.5, "y": 1},
    795                 {"matrix": [1, 7], "x": 7.5, "y": 1},
    796                 {"matrix": [1, 8], "x": 8.5, "y": 1},
    797                 {"matrix": [1, 9], "x": 9.5, "y": 1},
    798                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    799                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    800                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    801 
    802                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    803                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    804                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    805                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    806                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    807                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    808                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    809                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    810                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    811                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    812                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    813                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    814                 {"matrix": [2, 12], "x": 12.75, "y": 2},
    815                 {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
    816 
    817                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    818                 {"matrix": [3, 1], "x": 1.25, "y": 3},
    819                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    820                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    821                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    822                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    823                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    824                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    825                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    826                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    827                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    828                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    829                 {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
    830 
    831                 {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
    832                 {"matrix": [4, 1], "x": 1.5, "y": 4},
    833                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
    834                 {"matrix": [4, 5], "x": 4, "y": 4, "w": 7},
    835                 {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
    836                 {"matrix": [4, 12], "x": 12.5, "y": 4},
    837                 {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
    838             ]
    839         },
    840         "LAYOUT_60_iso_tsangan_split_bs_rshift": {
    841             "layout": [
    842                 {"matrix": [0, 0], "x": 0, "y": 0},
    843                 {"matrix": [0, 1], "x": 1, "y": 0},
    844                 {"matrix": [0, 2], "x": 2, "y": 0},
    845                 {"matrix": [0, 3], "x": 3, "y": 0},
    846                 {"matrix": [0, 4], "x": 4, "y": 0},
    847                 {"matrix": [0, 5], "x": 5, "y": 0},
    848                 {"matrix": [0, 6], "x": 6, "y": 0},
    849                 {"matrix": [0, 7], "x": 7, "y": 0},
    850                 {"matrix": [0, 8], "x": 8, "y": 0},
    851                 {"matrix": [0, 9], "x": 9, "y": 0},
    852                 {"matrix": [0, 10], "x": 10, "y": 0},
    853                 {"matrix": [0, 11], "x": 11, "y": 0},
    854                 {"matrix": [0, 12], "x": 12, "y": 0},
    855                 {"matrix": [0, 13], "x": 13, "y": 0},
    856                 {"matrix": [4, 9], "x": 14, "y": 0},
    857 
    858                 {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    859                 {"matrix": [1, 1], "x": 1.5, "y": 1},
    860                 {"matrix": [1, 2], "x": 2.5, "y": 1},
    861                 {"matrix": [1, 3], "x": 3.5, "y": 1},
    862                 {"matrix": [1, 4], "x": 4.5, "y": 1},
    863                 {"matrix": [1, 5], "x": 5.5, "y": 1},
    864                 {"matrix": [1, 6], "x": 6.5, "y": 1},
    865                 {"matrix": [1, 7], "x": 7.5, "y": 1},
    866                 {"matrix": [1, 8], "x": 8.5, "y": 1},
    867                 {"matrix": [1, 9], "x": 9.5, "y": 1},
    868                 {"matrix": [1, 10], "x": 10.5, "y": 1},
    869                 {"matrix": [1, 11], "x": 11.5, "y": 1},
    870                 {"matrix": [1, 12], "x": 12.5, "y": 1},
    871 
    872                 {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    873                 {"matrix": [2, 1], "x": 1.75, "y": 2},
    874                 {"matrix": [2, 2], "x": 2.75, "y": 2},
    875                 {"matrix": [2, 3], "x": 3.75, "y": 2},
    876                 {"matrix": [2, 4], "x": 4.75, "y": 2},
    877                 {"matrix": [2, 5], "x": 5.75, "y": 2},
    878                 {"matrix": [2, 6], "x": 6.75, "y": 2},
    879                 {"matrix": [2, 7], "x": 7.75, "y": 2},
    880                 {"matrix": [2, 8], "x": 8.75, "y": 2},
    881                 {"matrix": [2, 9], "x": 9.75, "y": 2},
    882                 {"matrix": [2, 10], "x": 10.75, "y": 2},
    883                 {"matrix": [2, 11], "x": 11.75, "y": 2},
    884                 {"matrix": [2, 12], "x": 12.75, "y": 2},
    885                 {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
    886 
    887                 {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    888                 {"matrix": [3, 1], "x": 1.25, "y": 3},
    889                 {"matrix": [3, 2], "x": 2.25, "y": 3},
    890                 {"matrix": [3, 3], "x": 3.25, "y": 3},
    891                 {"matrix": [3, 4], "x": 4.25, "y": 3},
    892                 {"matrix": [3, 5], "x": 5.25, "y": 3},
    893                 {"matrix": [3, 6], "x": 6.25, "y": 3},
    894                 {"matrix": [3, 7], "x": 7.25, "y": 3},
    895                 {"matrix": [3, 8], "x": 8.25, "y": 3},
    896                 {"matrix": [3, 9], "x": 9.25, "y": 3},
    897                 {"matrix": [3, 10], "x": 10.25, "y": 3},
    898                 {"matrix": [3, 11], "x": 11.25, "y": 3},
    899                 {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    900                 {"matrix": [3, 12], "x": 14, "y": 3},
    901 
    902                 {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
    903                 {"matrix": [4, 1], "x": 1.5, "y": 4},
    904                 {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
    905                 {"matrix": [4, 5], "x": 4, "y": 4, "w": 7},
    906                 {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
    907                 {"matrix": [4, 12], "x": 12.5, "y": 4},
    908                 {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
    909             ]
    910         }
    911     }
    912 }