Move Alice and Ergodox layouts to data driven (#20340)
This commit is contained in:
		
							parent
							
								
									6847dba8af
								
							
						
					
					
						commit
						09a2b70a66
					
				@ -19,278 +19,320 @@
 | 
				
			|||||||
  "layouts": {
 | 
					  "layouts": {
 | 
				
			||||||
    "LAYOUT_alice": {
 | 
					    "LAYOUT_alice": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
        {"x":0, "y":0},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":2.25, "y":0},
 | 
					        {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
        {"x":3.25, "y":0},
 | 
					        {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
        {"x":4.25, "y":0},
 | 
					        {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
        {"x":5.25, "y":0},
 | 
					        {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
        {"x":6.25, "y":0},
 | 
					        {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
        {"x":7.25, "y":0},
 | 
					        {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
        {"x":10.25, "y":0},
 | 
					        {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
        {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":12.25, "y":0},
 | 
					        {"matrix": [0, 7], "x": 10.25, "y": 0},
 | 
				
			||||||
        {"x":13.25, "y":0},
 | 
					        {"matrix": [0, 8], "x": 11.25, "y": 0},
 | 
				
			||||||
        {"x":14.25, "y":0},
 | 
					        {"matrix": [0, 9], "x": 12.25, "y": 0},
 | 
				
			||||||
        {"x":15.25, "y":0},
 | 
					        {"matrix": [0, 10], "x": 13.25, "y": 0},
 | 
				
			||||||
        {"x":16.25, "y":0, "w": 2},
 | 
					        {"matrix": [0, 11], "x": 14.25, "y": 0},
 | 
				
			||||||
        {"x":0, "y":1},
 | 
					        {"matrix": [0, 12], "x": 15.25, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":1, "w":1.5},
 | 
					        {"matrix": [0, 14], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
        {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":3.75, "y":1},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
        {"x":4.75, "y":1},
 | 
					        {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":5.75, "y":1},
 | 
					        {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
        {"x":6.75, "y":1},
 | 
					        {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
        {"x":9.75, "y":1},
 | 
					        {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
        {"x":10.75, "y":1},
 | 
					        {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
        {"x":11.75, "y":1},
 | 
					        {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
        {"x":12.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":13.75, "y":1},
 | 
					        {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
        {"x":14.75, "y":1},
 | 
					        {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
        {"x":15.75, "y":1},
 | 
					        {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
        {"x":16.75, "y":1, "w":1.5},
 | 
					        {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
        {"x":0, "y":2},
 | 
					        {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
        {"x":1.25, "y":2, "w":1.75},
 | 
					        {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
        {"x":3, "y":2},
 | 
					        {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
        {"x":4, "y":2},
 | 
					        {"matrix": [1, 15], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":5, "y":2},
 | 
					
 | 
				
			||||||
        {"x":6, "y":2},
 | 
					        {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
        {"x":7, "y":2},
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
        {"x":10, "y":2},
 | 
					        {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
        {"x":11, "y":2},
 | 
					        {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
        {"x":12, "y":2},
 | 
					        {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
        {"x":13, "y":2},
 | 
					        {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
        {"x":14, "y":2},
 | 
					        {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
        {"x":15, "y":2},
 | 
					
 | 
				
			||||||
        {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
        {"x":1.25, "y":3, "w":2.25},
 | 
					        {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
        {"x":3.5, "y":3},
 | 
					        {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
        {"x":4.5, "y":3},
 | 
					        {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
        {"x":5.5, "y":3},
 | 
					        {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
        {"x":6.5, "y":3},
 | 
					        {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
        {"x":7.5, "y":3},
 | 
					        {"matrix": [1, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
        {"x":9.5, "y":3},
 | 
					
 | 
				
			||||||
        {"x":10.5, "y":3},
 | 
					        {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
        {"x":11.5, "y":3},
 | 
					        {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
        {"x":12.5, "y":3},
 | 
					        {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
        {"x":13.5, "y":3},
 | 
					        {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
        {"x":14.5, "y":3},
 | 
					        {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
        {"x":15.5, "y":3, "w":1.75},
 | 
					        {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
        {"x":17.25, "y":3},
 | 
					
 | 
				
			||||||
        {"x":1.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
        {"x":4.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
        {"x":5.75, "y":4, "w":2},
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
        {"x":7.75, "y":4, "w":1.25},
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
        {"x":9.5, "y":4, "w":2.75},
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
        {"x":12.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
        {"x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [2, 13], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [2, 15], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 15], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "LAYOUT_alice_split_bs": {
 | 
					    "LAYOUT_alice_split_bs": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
        {"x":0, "y":0},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":2.25, "y":0},
 | 
					        {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
        {"x":3.25, "y":0},
 | 
					        {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
        {"x":4.25, "y":0},
 | 
					        {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
        {"x":5.25, "y":0},
 | 
					        {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
        {"x":6.25, "y":0},
 | 
					        {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
        {"x":7.25, "y":0},
 | 
					        {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
        {"x":10.25, "y":0},
 | 
					        {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
        {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":12.25, "y":0},
 | 
					        {"matrix": [0, 7], "x": 10.25, "y": 0},
 | 
				
			||||||
        {"x":13.25, "y":0},
 | 
					        {"matrix": [0, 8], "x": 11.25, "y": 0},
 | 
				
			||||||
        {"x":14.25, "y":0},
 | 
					        {"matrix": [0, 9], "x": 12.25, "y": 0},
 | 
				
			||||||
        {"x":15.25, "y":0},
 | 
					        {"matrix": [0, 10], "x": 13.25, "y": 0},
 | 
				
			||||||
        {"x":16.25, "y":0},
 | 
					        {"matrix": [0, 11], "x": 14.25, "y": 0},
 | 
				
			||||||
        {"x":17.25, "y":0},
 | 
					        {"matrix": [0, 12], "x": 15.25, "y": 0},
 | 
				
			||||||
        {"x":0, "y":1},
 | 
					        {"matrix": [0, 13], "x": 16.25, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":1, "w":1.5},
 | 
					        {"matrix": [0, 15], "x": 17.25, "y": 0},
 | 
				
			||||||
        {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":3.75, "y":1},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
        {"x":4.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":5.75, "y":1},
 | 
					        {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6.75, "y":1},
 | 
					        {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
        {"x":9.75, "y":1},
 | 
					        {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
        {"x":10.75, "y":1},
 | 
					        {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
        {"x":11.75, "y":1},
 | 
					        {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
        {"x":12.75, "y":1},
 | 
					        {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
        {"x":13.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":14.75, "y":1},
 | 
					        {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
        {"x":15.75, "y":1},
 | 
					        {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
        {"x":16.75, "y":1, "w":1.5},
 | 
					        {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
        {"x":0, "y":2},
 | 
					        {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
        {"x":1.25, "y":2, "w":1.75},
 | 
					        {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
        {"x":3, "y":2},
 | 
					        {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
        {"x":4, "y":2},
 | 
					        {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
        {"x":5, "y":2},
 | 
					        {"matrix": [1, 15], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6, "y":2},
 | 
					
 | 
				
			||||||
        {"x":7, "y":2},
 | 
					        {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
        {"x":10, "y":2},
 | 
					
 | 
				
			||||||
        {"x":11, "y":2},
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
        {"x":12, "y":2},
 | 
					        {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
        {"x":13, "y":2},
 | 
					        {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
        {"x":14, "y":2},
 | 
					        {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
        {"x":15, "y":2},
 | 
					        {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
        {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
        {"x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
        {"x":3.5, "y":3},
 | 
					        {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
        {"x":4.5, "y":3},
 | 
					        {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
        {"x":5.5, "y":3},
 | 
					        {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
        {"x":6.5, "y":3},
 | 
					        {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
        {"x":7.5, "y":3},
 | 
					        {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
        {"x":9.5, "y":3},
 | 
					        {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
        {"x":10.5, "y":3},
 | 
					        {"matrix": [1, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
        {"x":11.5, "y":3},
 | 
					
 | 
				
			||||||
        {"x":12.5, "y":3},
 | 
					        {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
        {"x":13.5, "y":3},
 | 
					        {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
        {"x":14.5, "y":3},
 | 
					        {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
        {"x":15.5, "y":3, "w":1.75},
 | 
					        {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
        {"x":17.25, "y":3},
 | 
					        {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
        {"x":1.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
        {"x":4.25, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
        {"x":5.75, "y":4, "w":2},
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
        {"x":7.75, "y":4, "w":1.25},
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
        {"x":9.5, "y":4, "w":2.75},
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
        {"x":12.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
        {"x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [2, 13], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [2, 15], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 15], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "LAYOUT_alice_full_rshift": {
 | 
					    "LAYOUT_alice_full_rshift": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
        {"x":0, "y":0},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":2.25, "y":0},
 | 
					        {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
        {"x":3.25, "y":0},
 | 
					        {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
        {"x":4.25, "y":0},
 | 
					        {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
        {"x":5.25, "y":0},
 | 
					        {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
        {"x":6.25, "y":0},
 | 
					        {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
        {"x":7.25, "y":0},
 | 
					        {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
        {"x":10.25, "y":0},
 | 
					        {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
        {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":12.25, "y":0},
 | 
					        {"matrix": [0, 7], "x": 10.25, "y": 0},
 | 
				
			||||||
        {"x":13.25, "y":0},
 | 
					        {"matrix": [0, 8], "x": 11.25, "y": 0},
 | 
				
			||||||
        {"x":14.25, "y":0},
 | 
					        {"matrix": [0, 9], "x": 12.25, "y": 0},
 | 
				
			||||||
        {"x":15.25, "y":0},
 | 
					        {"matrix": [0, 10], "x": 13.25, "y": 0},
 | 
				
			||||||
        {"x":16.25, "y":0, "w":2},
 | 
					        {"matrix": [0, 11], "x": 14.25, "y": 0},
 | 
				
			||||||
        {"x":0, "y":1},
 | 
					        {"matrix": [0, 12], "x": 15.25, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":1, "w":1.5},
 | 
					        {"matrix": [0, 14], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
        {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":3.75, "y":1},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
        {"x":4.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":5.75, "y":1},
 | 
					        {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6.75, "y":1},
 | 
					        {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
        {"x":9.75, "y":1},
 | 
					        {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
        {"x":10.75, "y":1},
 | 
					        {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
        {"x":11.75, "y":1},
 | 
					        {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
        {"x":12.75, "y":1},
 | 
					        {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
        {"x":13.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":14.75, "y":1},
 | 
					        {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
        {"x":15.75, "y":1},
 | 
					        {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
        {"x":16.75, "y":1, "w":1.5},
 | 
					        {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
        {"x":0, "y":2},
 | 
					        {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
        {"x":1.25, "y":2, "w":1.75},
 | 
					        {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
        {"x":3, "y":2},
 | 
					        {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
        {"x":4, "y":2},
 | 
					        {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
        {"x":5, "y":2},
 | 
					        {"matrix": [1, 15], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6, "y":2},
 | 
					
 | 
				
			||||||
        {"x":7, "y":2},
 | 
					        {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
        {"x":10, "y":2},
 | 
					
 | 
				
			||||||
        {"x":11, "y":2},
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
        {"x":12, "y":2},
 | 
					        {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
        {"x":13, "y":2},
 | 
					        {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
        {"x":14, "y":2},
 | 
					        {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
        {"x":15, "y":2},
 | 
					        {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
        {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
        {"x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
        {"x":3.5, "y":3},
 | 
					        {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
        {"x":4.5, "y":3},
 | 
					        {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
        {"x":5.5, "y":3},
 | 
					        {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
        {"x":6.5, "y":3},
 | 
					        {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
        {"x":7.5, "y":3},
 | 
					        {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
        {"x":9.5, "y":3},
 | 
					        {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
        {"x":10.5, "y":3},
 | 
					        {"matrix": [1, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
        {"x":11.5, "y":3},
 | 
					
 | 
				
			||||||
        {"x":12.5, "y":3},
 | 
					        {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
        {"x":13.5, "y":3},
 | 
					        {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
        {"x":14.5, "y":3},
 | 
					        {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
        {"x":15.5, "y":3, "w":2.75},
 | 
					        {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
        {"x":1.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
        {"x":4.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
        {"x":5.75, "y":4, "w":2},
 | 
					
 | 
				
			||||||
        {"x":7.75, "y":4, "w":1.25},
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
        {"x":9.5, "y":4, "w":2.75},
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
        {"x":12.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
        {"x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [2, 14], "x": 15.5, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 15], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "LAYOUT_alice_split_bs_full_rshift": {
 | 
					    "LAYOUT_alice_split_bs_full_rshift": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
        {"x":0, "y":0},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":2.25, "y":0},
 | 
					        {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
        {"x":3.25, "y":0},
 | 
					        {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
        {"x":4.25, "y":0},
 | 
					        {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
        {"x":5.25, "y":0},
 | 
					        {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
        {"x":6.25, "y":0},
 | 
					        {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
        {"x":7.25, "y":0},
 | 
					        {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
        {"x":10.25, "y":0},
 | 
					        {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
        {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":12.25, "y":0},
 | 
					        {"matrix": [0, 7], "x": 10.25, "y": 0},
 | 
				
			||||||
        {"x":13.25, "y":0},
 | 
					        {"matrix": [0, 8], "x": 11.25, "y": 0},
 | 
				
			||||||
        {"x":14.25, "y":0},
 | 
					        {"matrix": [0, 9], "x": 12.25, "y": 0},
 | 
				
			||||||
        {"x":15.25, "y":0},
 | 
					        {"matrix": [0, 10], "x": 13.25, "y": 0},
 | 
				
			||||||
        {"x":16.25, "y":0},
 | 
					        {"matrix": [0, 11], "x": 14.25, "y": 0},
 | 
				
			||||||
        {"x":17.25, "y":0},
 | 
					        {"matrix": [0, 12], "x": 15.25, "y": 0},
 | 
				
			||||||
        {"x":0, "y":1},
 | 
					        {"matrix": [0, 13], "x": 16.25, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":1, "w":1.5},
 | 
					        {"matrix": [0, 15], "x": 17.25, "y": 0},
 | 
				
			||||||
        {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":3.75, "y":1},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
        {"x":4.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":5.75, "y":1},
 | 
					        {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6.75, "y":1},
 | 
					        {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
        {"x":9.75, "y":1},
 | 
					        {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
        {"x":10.75, "y":1},
 | 
					        {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
        {"x":11.75, "y":1},
 | 
					        {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
        {"x":12.75, "y":1},
 | 
					        {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
        {"x":13.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":14.75, "y":1},
 | 
					        {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
        {"x":15.75, "y":1},
 | 
					        {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
        {"x":16.75, "y":1, "w":1.5},
 | 
					        {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
        {"x":0, "y":2},
 | 
					        {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
        {"x":1.25, "y":2, "w":1.75},
 | 
					        {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
        {"x":3, "y":2},
 | 
					        {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
        {"x":4, "y":2},
 | 
					        {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
        {"x":5, "y":2},
 | 
					        {"matrix": [1, 15], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6, "y":2},
 | 
					
 | 
				
			||||||
        {"x":7, "y":2},
 | 
					        {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
        {"x":10, "y":2},
 | 
					
 | 
				
			||||||
        {"x":11, "y":2},
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
        {"x":12, "y":2},
 | 
					        {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
        {"x":13, "y":2},
 | 
					        {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
        {"x":14, "y":2},
 | 
					        {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
        {"x":15, "y":2},
 | 
					        {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
        {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
        {"x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
        {"x":3.5, "y":3},
 | 
					        {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
        {"x":4.5, "y":3},
 | 
					        {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
        {"x":5.5, "y":3},
 | 
					        {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
        {"x":6.5, "y":3},
 | 
					        {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
        {"x":7.5, "y":3},
 | 
					        {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
        {"x":9.5, "y":3},
 | 
					        {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
        {"x":10.5, "y":3},
 | 
					        {"matrix": [1, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
        {"x":11.5, "y":3},
 | 
					
 | 
				
			||||||
        {"x":12.5, "y":3},
 | 
					        {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
        {"x":13.5, "y":3},
 | 
					        {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
        {"x":14.5, "y":3},
 | 
					        {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
        {"x":15.5, "y":3, "w":2.75},
 | 
					        {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
        {"x":1.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
        {"x":4.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
        {"x":5.75, "y":4, "w":2},
 | 
					
 | 
				
			||||||
        {"x":7.75, "y":4, "w":1.25},
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
        {"x":9.5, "y":4, "w":2.75},
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
        {"x":12.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
        {"x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [2, 14], "x": 15.5, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 15], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,76 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 kb-elmo
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    k16, k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12,      k14, \
 | 
					 | 
				
			||||||
    k32, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29,      k31, \
 | 
					 | 
				
			||||||
    k48, k33, k34, k35, k36, k37, k38, k39, k40, k41, k42, k43, k44,      k30,      \
 | 
					 | 
				
			||||||
         k49, k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k60, k45,      k47, \
 | 
					 | 
				
			||||||
         k61,      k62,      k63, k64,      k65,      k66,                     k67  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k00,   k01,   k02,   k03,   k04,   k05,   k06,   k07,   k08,   k09,   k10,   k11,   k12, KC_NO,   k14, KC_NO }, \
 | 
					 | 
				
			||||||
    { k16,   k17,   k18,   k19,   k20,   k21,   k22,   k23,   k24,   k25,   k26,   k27,   k28,   k29,   k30,   k31 }, \
 | 
					 | 
				
			||||||
    { k32,   k33,   k34,   k35,   k36,   k37,   k38,   k39,   k40,   k41,   k42,   k43,   k44,   k45, KC_NO,   k47 }, \
 | 
					 | 
				
			||||||
    { k48,   k49,   k50,   k51,   k52,   k53,   k54,   k55,   k56,   k57,   k58,   k59,   k60, KC_NO, KC_NO, KC_NO }, \
 | 
					 | 
				
			||||||
    { KC_NO, k61, KC_NO,   k62, KC_NO,   k63,   k64, KC_NO,   k65, KC_NO,   k66, KC_NO, KC_NO, KC_NO, KC_NO,   k67 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Equivalent to LAYOUT_all
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    k16, k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k15, \
 | 
					 | 
				
			||||||
    k32, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29,      k31, \
 | 
					 | 
				
			||||||
    k48, k33, k34, k35, k36, k37, k38, k39, k40, k41, k42, k43, k44,      k30,      \
 | 
					 | 
				
			||||||
         k49, k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k60, k45,      k47, \
 | 
					 | 
				
			||||||
         k61,      k62,      k63, k64,      k65,      k66,                     k67  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k00,   k01,   k02,   k03,   k04,   k05,   k06,   k07,   k08,   k09,   k10,   k11,   k12,   k13, KC_NO,   k15 }, \
 | 
					 | 
				
			||||||
    { k16,   k17,   k18,   k19,   k20,   k21,   k22,   k23,   k24,   k25,   k26,   k27,   k28,   k29,   k30,   k31 }, \
 | 
					 | 
				
			||||||
    { k32,   k33,   k34,   k35,   k36,   k37,   k38,   k39,   k40,   k41,   k42,   k43,   k44,   k45, KC_NO,   k47 }, \
 | 
					 | 
				
			||||||
    { k48,   k49,   k50,   k51,   k52,   k53,   k54,   k55,   k56,   k57,   k58,   k59,   k60, KC_NO, KC_NO, KC_NO }, \
 | 
					 | 
				
			||||||
    { KC_NO, k61, KC_NO,   k62, KC_NO,   k63,   k64, KC_NO,   k65, KC_NO,   k66, KC_NO, KC_NO, KC_NO, KC_NO,   k67 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs_full_rshift( \
 | 
					 | 
				
			||||||
    k16, k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k15, \
 | 
					 | 
				
			||||||
    k32, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29,      k31, \
 | 
					 | 
				
			||||||
    k48, k33, k34, k35, k36, k37, k38, k39, k40, k41, k42, k43, k44,      k30,      \
 | 
					 | 
				
			||||||
         k49, k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k60,      k46,      \
 | 
					 | 
				
			||||||
         k61,      k62,      k63, k64,      k65,      k66,                     k67  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k00,   k01,   k02,   k03,   k04,   k05,   k06,   k07,   k08,   k09,   k10,   k11,   k12,   k13, KC_NO,   k15 }, \
 | 
					 | 
				
			||||||
    { k16,   k17,   k18,   k19,   k20,   k21,   k22,   k23,   k24,   k25,   k26,   k27,   k28,   k29,   k30,   k31 }, \
 | 
					 | 
				
			||||||
    { k32,   k33,   k34,   k35,   k36,   k37,   k38,   k39,   k40,   k41,   k42,   k43,   k44, KC_NO,   k46, KC_NO }, \
 | 
					 | 
				
			||||||
    { k48,   k49,   k50,   k51,   k52,   k53,   k54,   k55,   k56,   k57,   k58,   k59,   k60, KC_NO, KC_NO, KC_NO }, \
 | 
					 | 
				
			||||||
    { KC_NO, k61, KC_NO,   k62, KC_NO,   k63,   k64, KC_NO,   k65, KC_NO,   k66, KC_NO, KC_NO, KC_NO, KC_NO,   k67 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_full_rshift( \
 | 
					 | 
				
			||||||
    k16, k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12,      k14, \
 | 
					 | 
				
			||||||
    k32, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29,      k31, \
 | 
					 | 
				
			||||||
    k48, k33, k34, k35, k36, k37, k38, k39, k40, k41, k42, k43, k44,      k30,      \
 | 
					 | 
				
			||||||
         k49, k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k60,      k46,      \
 | 
					 | 
				
			||||||
         k61,      k62,      k63, k64,      k65,      k66,                     k67  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k00,   k01,   k02,   k03,   k04,   k05,   k06,   k07,   k08,   k09,   k10,   k11,   k12, KC_NO,   k14, KC_NO }, \
 | 
					 | 
				
			||||||
    { k16,   k17,   k18,   k19,   k20,   k21,   k22,   k23,   k24,   k25,   k26,   k27,   k28,   k29,   k30,   k31 }, \
 | 
					 | 
				
			||||||
    { k32,   k33,   k34,   k35,   k36,   k37,   k38,   k39,   k40,   k41,   k42,   k43,   k44, KC_NO,   k46, KC_NO }, \
 | 
					 | 
				
			||||||
    { k48,   k49,   k50,   k51,   k52,   k53,   k54,   k55,   k56,   k57,   k58,   k59,   k60, KC_NO, KC_NO, KC_NO }, \
 | 
					 | 
				
			||||||
    { KC_NO, k61, KC_NO,   k62, KC_NO,   k63,   k64, KC_NO,   k65, KC_NO,   k66, KC_NO, KC_NO, KC_NO, KC_NO,   k67 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,52 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2022 CMM.Studio Freather
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define XXX KC_NO
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
	K00, K01, K02, K03, K04, K05, K06, K07,     K08, K09, K0A, K0B, K0C, K0D, K0E, K1E, \
 | 
					 | 
				
			||||||
	K10, K11, K12, K13, K14, K15, K16,          K17, K18, K19, K1A, K1B, K1C, K1D, K2E, \
 | 
					 | 
				
			||||||
	K20, K21, K22, K23, K24, K25, K26,          K27, K28, K29, K2A, K2B, K2C, K2D,  \
 | 
					 | 
				
			||||||
	     K31, K32, K33, K34, K35, K36,          K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \
 | 
					 | 
				
			||||||
	     K41,      K43, K45, K46,               K48, K4A,                          K4E \
 | 
					 | 
				
			||||||
){ \
 | 
					 | 
				
			||||||
	{K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E},\
 | 
					 | 
				
			||||||
	{K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E},\
 | 
					 | 
				
			||||||
	{K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E},\
 | 
					 | 
				
			||||||
	{XXX, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E},\
 | 
					 | 
				
			||||||
	{XXX, K41, XXX, K43, XXX, K45, K46, XXX, K48, XXX, K4A, XXX, XXX, XXX, K4E},\
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
	K00, K01, K02, K03, K04, K05, K06, K07,    K08, K09, K0A, K0B, K0C, K0D, K0E,\
 | 
					 | 
				
			||||||
	K10, K11, K12, K13, K14, K15, K16,         K17, K18, K19, K1A, K1B, K1C, K1D, K2E, \
 | 
					 | 
				
			||||||
	K20, K21, K22, K23, K24, K25, K26,         K27, K28, K29, K2A, K2B, K2C, K2D,  \
 | 
					 | 
				
			||||||
	     K31, K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3C, K3D, K3E,\
 | 
					 | 
				
			||||||
	     K41,      K43, K45, K46,              K48, K4A,                          K4E \
 | 
					 | 
				
			||||||
){ \
 | 
					 | 
				
			||||||
	{K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E},\
 | 
					 | 
				
			||||||
	{K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX},\
 | 
					 | 
				
			||||||
	{K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E},\
 | 
					 | 
				
			||||||
	{XXX, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E},\
 | 
					 | 
				
			||||||
	{XXX, K41, XXX, K43, XXX, K45, K46, XXX, K48, XXX, K4A, XXX, XXX, XXX, K4E},\
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@ -19,141 +19,163 @@
 | 
				
			|||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"~", "x":1.75, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"!", "x":2.75, "y":0},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0},
 | 
				
			||||||
                {"label":"@", "x":3.75, "y":0},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0},
 | 
				
			||||||
                {"label":"#", "x":4.75, "y":0},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"$", "x":5.75, "y":0},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0},
 | 
				
			||||||
                {"label":"%", "x":6.75, "y":0},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0},
 | 
				
			||||||
                {"label":"^", "x":7.75, "y":0},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0},
 | 
				
			||||||
                {"label":"&", "x":10, "y":0},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0},
 | 
				
			||||||
                {"label":"*", "x":11, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"(", "x":12, "y":0},
 | 
					                {"matrix": [0, 8], "x": 10, "y": 0},
 | 
				
			||||||
                {"label":")", "x":13, "y":0},
 | 
					                {"matrix": [0, 9], "x": 11, "y": 0},
 | 
				
			||||||
                {"label":"_", "x":14, "y":0},
 | 
					                {"matrix": [0, 10], "x": 12, "y": 0},
 | 
				
			||||||
                {"label":"+", "x":15, "y":0},
 | 
					                {"matrix": [0, 11], "x": 13, "y": 0},
 | 
				
			||||||
                {"label":"|", "x":16, "y":0},
 | 
					                {"matrix": [0, 12], "x": 14, "y": 0},
 | 
				
			||||||
                {"label":"~", "x":17, "y":0},
 | 
					                {"matrix": [0, 13], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 14], "x": 16, "y": 0},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1, "w":1.5},
 | 
					                {"matrix": [1, 14], "x": 17, "y": 0},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"W", "x":4, "y":1},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"E", "x":5, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"R", "x":6, "y":1},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"T", "x":7, "y":1},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1},
 | 
				
			||||||
                {"label":"Y", "x":9.75, "y":1},
 | 
					                {"matrix": [1, 3], "x": 4, "y": 1},
 | 
				
			||||||
                {"label":"U", "x":10.75, "y":1},
 | 
					                {"matrix": [1, 4], "x": 5, "y": 1},
 | 
				
			||||||
                {"label":"I", "x":11.75, "y":1},
 | 
					                {"matrix": [1, 5], "x": 6, "y": 1},
 | 
				
			||||||
                {"label":"O", "x":12.75, "y":1},
 | 
					                {"matrix": [1, 6], "x": 7, "y": 1},
 | 
				
			||||||
                {"label":"P", "x":13.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"{", "x":14.75, "y":1},
 | 
					                {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
                {"label":"}", "x":15.75, "y":1},
 | 
					                {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
                {"label":"Backspace", "x":16.75, "y":1, "w":1.5},
 | 
					                {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
                {"label":"Control", "x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
                {"label":"A", "x":3, "y":2},
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
                {"label":"S", "x":4, "y":2},
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
                {"label":"D", "x":5, "y":2},
 | 
					                {"matrix": [2, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"F", "x":6, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"G", "x":7, "y":2},
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
                {"label":"H", "x":10.25, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"J", "x":11.25, "y":2},
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
                {"label":"K", "x":12.25, "y":2},
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
                {"label":"L", "x":13.25, "y":2},
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
                {"label":":", "x":14.25, "y":2},
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
                {"label":"\"", "x":15.25, "y":2},
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
                {"label":"Enter", "x":16.25, "y":2, "w":2.25},
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
                {"label":"Shift", "x":1, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
                {"label":"Z", "x":3.25, "y":3},
 | 
					                {"matrix": [2, 7], "x": 10.25, "y": 2},
 | 
				
			||||||
                {"label":"X", "x":4.25, "y":3},
 | 
					                {"matrix": [2, 8], "x": 11.25, "y": 2},
 | 
				
			||||||
                {"label":"C", "x":5.25, "y":3},
 | 
					                {"matrix": [2, 9], "x": 12.25, "y": 2},
 | 
				
			||||||
                {"label":"V", "x":6.25, "y":3},
 | 
					                {"matrix": [2, 10], "x": 13.25, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":7.25, "y":3},
 | 
					                {"matrix": [2, 11], "x": 14.25, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":10, "y":3},
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2},
 | 
				
			||||||
                {"label":"N", "x":11, "y":3},
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
                {"label":"M", "x":12, "y":3},
 | 
					
 | 
				
			||||||
                {"label":"<", "x":13, "y":3},
 | 
					                {"matrix": [3, 1], "x": 1, "y": 3, "w": 2.25},
 | 
				
			||||||
                {"label":">", "x":14, "y":3},
 | 
					                {"matrix": [3, 2], "x": 3.25, "y": 3},
 | 
				
			||||||
                {"label":"?", "x":15, "y":3},
 | 
					                {"matrix": [3, 3], "x": 4.25, "y": 3},
 | 
				
			||||||
                {"label":"Shift", "x":16, "y":3, "w":1.75},
 | 
					                {"matrix": [3, 4], "x": 5.25, "y": 3},
 | 
				
			||||||
                {"label":"Fn1", "x":17.75, "y":3},
 | 
					                {"matrix": [3, 5], "x": 6.25, "y": 3},
 | 
				
			||||||
                {"label":"Ctrl", "x":1, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 6], "x": 7.25, "y": 3},
 | 
				
			||||||
                {"label":"Alt", "x":4, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
                {"label":"LSpace", "x":5.5, "y":4, "w":2.25},
 | 
					                {"matrix": [3, 7], "x": 10, "y": 3},
 | 
				
			||||||
                {"label":"Fn2", "x":7.75, "y":4},
 | 
					                {"matrix": [3, 8], "x": 11, "y": 3},
 | 
				
			||||||
                {"label":"RSpace", "x":10, "y":4, "w":2.75},
 | 
					                {"matrix": [3, 9], "x": 12, "y": 3},
 | 
				
			||||||
                {"label":"RAlt", "x":12.75, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 10], "x": 13, "y": 3},
 | 
				
			||||||
                {"label":"RCtl", "x":17, "y":4, "w":1.5}
 | 
					                {"matrix": [3, 11], "x": 14, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 7.75, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 10, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.75, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"~", "x":1.75, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"!", "x":2.75, "y":0},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0},
 | 
				
			||||||
                {"label":"@", "x":3.75, "y":0},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0},
 | 
				
			||||||
                {"label":"#", "x":4.75, "y":0},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"$", "x":5.75, "y":0},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0},
 | 
				
			||||||
                {"label":"%", "x":6.75, "y":0},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0},
 | 
				
			||||||
                {"label":"^", "x":7.75, "y":0},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0},
 | 
				
			||||||
                {"label":"&", "x":10, "y":0},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0},
 | 
				
			||||||
                {"label":"*", "x":11, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"(", "x":12, "y":0},
 | 
					                {"matrix": [0, 8], "x": 10, "y": 0},
 | 
				
			||||||
                {"label":")", "x":13, "y":0},
 | 
					                {"matrix": [0, 9], "x": 11, "y": 0},
 | 
				
			||||||
                {"label":"_", "x":14, "y":0},
 | 
					                {"matrix": [0, 10], "x": 12, "y": 0},
 | 
				
			||||||
                {"label":"+", "x":15, "y":0},
 | 
					                {"matrix": [0, 11], "x": 13, "y": 0},
 | 
				
			||||||
                {"label":"Backspace", "x":16, "y":0, "w":2},
 | 
					                {"matrix": [0, 12], "x": 14, "y": 0},
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 13], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1, "w":1.5},
 | 
					                {"matrix": [0, 14], "x": 16, "y": 0, "w": 2},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"W", "x":4, "y":1},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"E", "x":5, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"R", "x":6, "y":1},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"T", "x":7, "y":1},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1},
 | 
				
			||||||
                {"label":"Y", "x":9.75, "y":1},
 | 
					                {"matrix": [1, 3], "x": 4, "y": 1},
 | 
				
			||||||
                {"label":"U", "x":10.75, "y":1},
 | 
					                {"matrix": [1, 4], "x": 5, "y": 1},
 | 
				
			||||||
                {"label":"I", "x":11.75, "y":1},
 | 
					                {"matrix": [1, 5], "x": 6, "y": 1},
 | 
				
			||||||
                {"label":"O", "x":12.75, "y":1},
 | 
					                {"matrix": [1, 6], "x": 7, "y": 1},
 | 
				
			||||||
                {"label":"P", "x":13.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"{", "x":14.75, "y":1},
 | 
					                {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
                {"label":"}", "x":15.75, "y":1},
 | 
					                {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
                {"label":"|", "x":16.75, "y":1, "w":1.5},
 | 
					                {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
                {"label":"Control", "x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
                {"label":"A", "x":3, "y":2},
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
                {"label":"S", "x":4, "y":2},
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
                {"label":"D", "x":5, "y":2},
 | 
					                {"matrix": [2, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"F", "x":6, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"G", "x":7, "y":2},
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
                {"label":"H", "x":10.25, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"J", "x":11.25, "y":2},
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
                {"label":"K", "x":12.25, "y":2},
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
                {"label":"L", "x":13.25, "y":2},
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
                {"label":":", "x":14.25, "y":2},
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
                {"label":"\"", "x":15.25, "y":2},
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
                {"label":"Enter", "x":16.25, "y":2, "w":2.25},
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
                {"label":"Shift", "x":1, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
                {"label":"Z", "x":3.25, "y":3},
 | 
					                {"matrix": [2, 7], "x": 10.25, "y": 2},
 | 
				
			||||||
                {"label":"X", "x":4.25, "y":3},
 | 
					                {"matrix": [2, 8], "x": 11.25, "y": 2},
 | 
				
			||||||
                {"label":"C", "x":5.25, "y":3},
 | 
					                {"matrix": [2, 9], "x": 12.25, "y": 2},
 | 
				
			||||||
                {"label":"V", "x":6.25, "y":3},
 | 
					                {"matrix": [2, 10], "x": 13.25, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":7.25, "y":3},
 | 
					                {"matrix": [2, 11], "x": 14.25, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":10, "y":3},
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2},
 | 
				
			||||||
                {"label":"N", "x":11, "y":3},
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
                {"label":"M", "x":12, "y":3},
 | 
					
 | 
				
			||||||
                {"label":"<", "x":13, "y":3},
 | 
					                {"matrix": [3, 1], "x": 1, "y": 3, "w": 2.25},
 | 
				
			||||||
                {"label":">", "x":14, "y":3},
 | 
					                {"matrix": [3, 2], "x": 3.25, "y": 3},
 | 
				
			||||||
                {"label":"?", "x":15, "y":3},
 | 
					                {"matrix": [3, 3], "x": 4.25, "y": 3},
 | 
				
			||||||
                {"label":"Shift", "x":16, "y":3, "w":1.75},
 | 
					                {"matrix": [3, 4], "x": 5.25, "y": 3},
 | 
				
			||||||
                {"label":"Fn1", "x":17.75, "y":3},
 | 
					                {"matrix": [3, 5], "x": 6.25, "y": 3},
 | 
				
			||||||
                {"label":"Ctrl", "x":1, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 6], "x": 7.25, "y": 3},
 | 
				
			||||||
                {"label":"Alt", "x":4, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
                {"label":"LSpace", "x":5.5, "y":4, "w":2.25},
 | 
					                {"matrix": [3, 7], "x": 10, "y": 3},
 | 
				
			||||||
                {"label":"Fn2", "x":7.75, "y":4},
 | 
					                {"matrix": [3, 8], "x": 11, "y": 3},
 | 
				
			||||||
                {"label":"RSpace", "x":10, "y":4, "w":2.75},
 | 
					                {"matrix": [3, 9], "x": 12, "y": 3},
 | 
				
			||||||
                {"label":"RAlt", "x":12.75, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 10], "x": 13, "y": 3},
 | 
				
			||||||
                {"label":"RCtl", "x":17, "y":4, "w":1.5}
 | 
					                {"matrix": [3, 11], "x": 14, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 7.75, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 10, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.75, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
#include "curiosity.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void matrix_init_board(void){
 | 
					void matrix_init_board(void){
 | 
				
			||||||
    setPinOutput(A8);
 | 
					    setPinOutput(A8);
 | 
				
			||||||
 | 
				
			|||||||
@ -1,59 +0,0 @@
 | 
				
			|||||||
/* Copyright 2019 zvecr<git@zvecr.com>
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
#define ____ KC_NO
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* This a shortcut to help you visually see your layout.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The first section contains all of the arguments representing the physical
 | 
					 | 
				
			||||||
 * layout of the board and position of the keys.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The second converts the arguments into a two-dimensional array which
 | 
					 | 
				
			||||||
 * represents the switch matrix.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
  K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
 | 
					 | 
				
			||||||
  K100, K101, K102, K103, K104, K105, K106,       K108, K109, K110, K111, K112, K113, K114, K115, \
 | 
					 | 
				
			||||||
  K200, K201, K202, K203, K204, K205, K206,       K208, K209, K210, K211, K212, K213,      K215,  \
 | 
					 | 
				
			||||||
        K301, K302, K303, K304, K305, K306,       K308, K309, K310, K311, K312, K313, K314, K315, \
 | 
					 | 
				
			||||||
        K401,       K403,       K405, K406,             K409,       K411,                K414 \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015}, \
 | 
					 | 
				
			||||||
    { K100, K101, K102, K103, K104, K105, K106, ____, K108, K109, K110, K111, K112, K113, K114, K115}, \
 | 
					 | 
				
			||||||
    { K200, K201, K202, K203, K204, K205, K206, ____, K208, K209, K210, K211, K212, K213, ____, K215}, \
 | 
					 | 
				
			||||||
    { ____, K301, K302, K303, K304, K305, K306, ____, K308, K309, K310, K311, K312, K313, K314, K315}, \
 | 
					 | 
				
			||||||
    { ____, K401, ____, K403, ____, K405, K406, ____, ____, K409, ____, K411, ____, ____, K414, ____}, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
  K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013,       K015, \
 | 
					 | 
				
			||||||
  K100, K101, K102, K103, K104, K105, K106,       K108, K109, K110, K111, K112, K113, K114, K115, \
 | 
					 | 
				
			||||||
  K200, K201, K202, K203, K204, K205, K206,       K208, K209, K210, K211, K212, K213,      K215,  \
 | 
					 | 
				
			||||||
        K301, K302, K303, K304, K305, K306,       K308, K309, K310, K311, K312, K313, K314, K315, \
 | 
					 | 
				
			||||||
        K401,       K403,       K405, K406,             K409,       K411,                K414 \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, ____, K015}, \
 | 
					 | 
				
			||||||
    { K100, K101, K102, K103, K104, K105, K106, ____, K108, K109, K110, K111, K112, K113, K114, K115}, \
 | 
					 | 
				
			||||||
    { K200, K201, K202, K203, K204, K205, K206, ____, K208, K209, K210, K211, K212, K213, ____, K215}, \
 | 
					 | 
				
			||||||
    { ____, K301, K302, K303, K304, K305, K306, ____, K308, K309, K310, K311, K312, K313, K314, K315}, \
 | 
					 | 
				
			||||||
    { ____, K401, ____, K403, ____, K405, K406, ____, ____, K409, ____, K411, ____, ____, K414, ____}, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_default LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -15,152 +15,169 @@
 | 
				
			|||||||
    "processor": "STM32F072",
 | 
					    "processor": "STM32F072",
 | 
				
			||||||
    "bootloader": "stm32-dfu",
 | 
					    "bootloader": "stm32-dfu",
 | 
				
			||||||
    "community_layouts": ["alice", "alice_split_bs"],
 | 
					    "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_default": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Del", "x":17, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":18, "y":0.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 14], "x": 17, "y": 0.25},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					                {"matrix": [0, 15], "x": 18, "y": 0.25},
 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":18.75, "y":3.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17, "y": 3.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 15], "x": 18.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":17, "y":0.25, "w":2},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 15], "x": 17, "y": 0.25, "w": 2},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":18.75, "y":3.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17, "y": 3.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 15], "x": 18.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,90 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2020 coarse <coarsekeys@gmail.com>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define XXX KC_NO
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Full backspace
 | 
					 | 
				
			||||||
// Split right shift
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d,   k0f,    \
 | 
					 | 
				
			||||||
    k10, k11, k12, k13, k14, k15, k16,      k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, \
 | 
					 | 
				
			||||||
    k20, k21, k22, k23, k24, k25, k26,      k28, k29, k2a, k2b, k2c, k2d,      k2f, \
 | 
					 | 
				
			||||||
         k31, k32, k33, k34, k35, k36,      k38, k39, k3a, k3b, k3c, k3d, k3e, k3f, \
 | 
					 | 
				
			||||||
         k41,      k43,      k45, k46,           k49,      k4b,                k4f  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, XXX, k0f }, \
 | 
					 | 
				
			||||||
    { k10, k11, k12, k13, k14, k15, k16, XXX, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f }, \
 | 
					 | 
				
			||||||
    { k20, k21, k22, k23, k24, k25, k26, XXX, k28, k29, k2a, k2b, k2c, k2d, XXX, k2f }, \
 | 
					 | 
				
			||||||
    { XXX, k31, k32, k33, k34, k35, k36, XXX, k38, k39, k3a, k3b, k3c, k3d, k3e, k3f }, \
 | 
					 | 
				
			||||||
    { XXX, k41, XXX, k43, XXX, k45, k46, XXX, XXX, k49, XXX, k4b, XXX, XXX, XXX, k4f }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Split backspace
 | 
					 | 
				
			||||||
// Split right shift
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, \
 | 
					 | 
				
			||||||
    k10, k11, k12, k13, k14, k15, k16,      k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, \
 | 
					 | 
				
			||||||
    k20, k21, k22, k23, k24, k25, k26,      k28, k29, k2a, k2b, k2c, k2d,      k2f, \
 | 
					 | 
				
			||||||
         k31, k32, k33, k34, k35, k36,      k38, k39, k3a, k3b, k3c, k3d, k3e, k3f, \
 | 
					 | 
				
			||||||
         k41,      k43,      k45, k46,           k49,      k4b,                k4f \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f }, \
 | 
					 | 
				
			||||||
    { k10, k11, k12, k13, k14, k15, k16, XXX, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f }, \
 | 
					 | 
				
			||||||
    { k20, k21, k22, k23, k24, k25, k26, XXX, k28, k29, k2a, k2b, k2c, k2d, XXX, k2f }, \
 | 
					 | 
				
			||||||
    { XXX, k31, k32, k33, k34, k35, k36, XXX, k38, k39, k3a, k3b, k3c, k3d, k3e, k3f }, \
 | 
					 | 
				
			||||||
    { XXX, k41, XXX, k43, XXX, k45, k46, XXX, XXX, k49, XXX, k4b, XXX, XXX, XXX, k4f }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Split backspace
 | 
					 | 
				
			||||||
// Full right shift
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs_full_rshift( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, \
 | 
					 | 
				
			||||||
    k10, k11, k12, k13, k14, k15, k16,      k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, \
 | 
					 | 
				
			||||||
    k20, k21, k22, k23, k24, k25, k26,      k28, k29, k2a, k2b, k2c, k2d,      k2f, \
 | 
					 | 
				
			||||||
         k31, k32, k33, k34, k35, k36,      k38, k39, k3a, k3b, k3c, k3d,   k3e,    \
 | 
					 | 
				
			||||||
         k41,      k43,      k45, k46,           k49,      k4b,                k4f  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f }, \
 | 
					 | 
				
			||||||
    { k10, k11, k12, k13, k14, k15, k16, XXX, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f }, \
 | 
					 | 
				
			||||||
    { k20, k21, k22, k23, k24, k25, k26, XXX, k28, k29, k2a, k2b, k2c, k2d, XXX, k2f }, \
 | 
					 | 
				
			||||||
    { XXX, k31, k32, k33, k34, k35, k36, XXX, k38, k39, k3a, k3b, k3c, k3d, k3e, k3f }, \
 | 
					 | 
				
			||||||
    { XXX, k41, XXX, k43, XXX, k45, k46, XXX, XXX, k49, XXX, k4b, XXX, XXX, XXX, k4f }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Full backspace
 | 
					 | 
				
			||||||
// Full right shift
 | 
					 | 
				
			||||||
#define LAYOUT_alice_full_rshift( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d,   k0f,    \
 | 
					 | 
				
			||||||
    k10, k11, k12, k13, k14, k15, k16,      k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, \
 | 
					 | 
				
			||||||
    k20, k21, k22, k23, k24, k25, k26,      k28, k29, k2a, k2b, k2c, k2d,      k2f, \
 | 
					 | 
				
			||||||
         k31, k32, k33, k34, k35, k36,      k38, k39, k3a, k3b, k3c, k3d,   k3e,    \
 | 
					 | 
				
			||||||
         k41,      k43,      k45, k46,           k49,      k4b,                k4f  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, XXX, k0f }, \
 | 
					 | 
				
			||||||
    { k10, k11, k12, k13, k14, k15, k16, XXX, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f }, \
 | 
					 | 
				
			||||||
    { k20, k21, k22, k23, k24, k25, k26, XXX, k28, k29, k2a, k2b, k2c, k2d, XXX, k2f }, \
 | 
					 | 
				
			||||||
    { XXX, k31, k32, k33, k34, k35, k36, XXX, k38, k39, k3a, k3b, k3c, k3d, k3e, k3f }, \
 | 
					 | 
				
			||||||
    { XXX, k41, XXX, k43, XXX, k45, k46, XXX, XXX, k49, XXX, k4b, XXX, XXX, XXX, k4f }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -30,294 +30,322 @@
 | 
				
			|||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":17, "y":0.25, "w":2},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 15], "x": 17, "y": 0.25, "w": 2},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":18.75, "y":3.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17, "y": 3.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 15], "x": 18.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 15], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Del", "x":17, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":18, "y":0.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 14], "x": 17, "y": 0.25},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					                {"matrix": [0, 15], "x": 18, "y": 0.25},
 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":18.75, "y":3.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17, "y": 3.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 15], "x": 18.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 15], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice_split_bs_full_rshift": {
 | 
					        "LAYOUT_alice_split_bs_full_rshift": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Del", "x":17, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":18, "y":0.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 14], "x": 17, "y": 0.25},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					                {"matrix": [0, 15], "x": 18, "y": 0.25},
 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":2.75},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17, "y": 3.25, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 15], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice_full_rshift": {
 | 
					        "LAYOUT_alice_full_rshift": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":17, "y":0.25, "w":2},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 15], "x": 17, "y": 0.25, "w": 2},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":2.75},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17, "y": 3.25, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 15], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -11,7 +11,7 @@ GNU General Public License for more details.
 | 
				
			|||||||
You should have received a copy of the GNU General Public License
 | 
					You should have received a copy of the GNU General Public License
 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
*/
 | 
					*/
 | 
				
			||||||
#include "edda.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void keyboard_pre_init_kb(void) {
 | 
					void keyboard_pre_init_kb(void) {
 | 
				
			||||||
  // Call the keyboard pre init code.
 | 
					  // Call the keyboard pre init code.
 | 
				
			||||||
 | 
				
			|||||||
@ -1,47 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2021 Martin Arnstad
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define KNO KC_NO
 | 
					 | 
				
			||||||
#define LAYOUT_default LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \
 | 
					 | 
				
			||||||
  K10, K11, K12, K13, K14, K15, K16,      K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \
 | 
					 | 
				
			||||||
  K20, K21, K22, K23, K24, K25, K26,      K28, K29, K2A, K2B, K2C, K2D,      K2F, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,      K38, K39, K3A, K3B, K3C, K3D, K3E, K3F,         \
 | 
					 | 
				
			||||||
       K41,      K43, K44,      K46,           K49,      K4B,                K4F \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  {  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F  }, \
 | 
					 | 
				
			||||||
  {  K10, K11, K12, K13, K14, K15, K16, KNO, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F  }, \
 | 
					 | 
				
			||||||
  {  K20, K21, K22, K23, K24, K25, K26, KNO, K28, K29, K2A, K2B, K2C, K2D, KNO, K2F  }, \
 | 
					 | 
				
			||||||
  {  KNO, K31, K32, K33, K34, K35, K36, KNO, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F  }, \
 | 
					 | 
				
			||||||
  {  KNO, K41, KNO, K43, K44, KNO, K46, KNO, KNO, K49, KNO, K4B, KNO, KNO, KNO, K4F  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D,      K0F, \
 | 
					 | 
				
			||||||
  K10, K11, K12, K13, K14, K15, K16,      K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \
 | 
					 | 
				
			||||||
  K20, K21, K22, K23, K24, K25, K26,      K28, K29, K2A, K2B, K2C, K2D,      K2F, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,      K38, K39, K3A, K3B, K3C, K3D, K3E, K3F,         \
 | 
					 | 
				
			||||||
       K41,      K43, K44,      K46,           K49,      K4B,                K4F \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  {  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, KNO, K0F  }, \
 | 
					 | 
				
			||||||
  {  K10, K11, K12, K13, K14, K15, K16, KNO, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F  }, \
 | 
					 | 
				
			||||||
  {  K20, K21, K22, K23, K24, K25, K26, KNO, K28, K29, K2A, K2B, K2C, K2D, KNO, K2F  }, \
 | 
					 | 
				
			||||||
  {  KNO, K31, K32, K33, K34, K35, K36, KNO, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F  }, \
 | 
					 | 
				
			||||||
  {  KNO, K41, KNO, K43, K44, KNO, K46, KNO, KNO, K49, KNO, K4B, KNO, KNO, KNO, K4F  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -16,152 +16,169 @@
 | 
				
			|||||||
    "processor": "atmega32u4",
 | 
					    "processor": "atmega32u4",
 | 
				
			||||||
    "bootloader": "qmk-dfu",
 | 
					    "bootloader": "qmk-dfu",
 | 
				
			||||||
    "community_layouts": ["alice", "alice_split_bs"],
 | 
					    "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_default": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Del", "x":17, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":18, "y":0.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 14], "x": 17, "y": 0.25},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					                {"matrix": [0, 15], "x": 18, "y": 0.25},
 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":18.75, "y":3.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17, "y": 3.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 15], "x": 18.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 15], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":17, "y":0.25, "w":2},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 15], "x": 17, "y": 0.25, "w": 2},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":18.75, "y":3.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17, "y": 3.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 15], "x": 18.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 15], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -140,152 +140,6 @@ typedef union {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
extern keyboard_config_t keyboard_config;
 | 
					extern keyboard_config_t keyboard_config;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
 *   LEFT HAND: LINES 115-122
 | 
					 | 
				
			||||||
 *  RIGHT HAND: LINES 124-131
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox(                                         \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
    k00,k01,k02,k03,k04,k05,k06,                                \
 | 
					 | 
				
			||||||
    k10,k11,k12,k13,k14,k15,k16,                                \
 | 
					 | 
				
			||||||
    k20,k21,k22,k23,k24,k25,                                    \
 | 
					 | 
				
			||||||
    k30,k31,k32,k33,k34,k35,k36,                                \
 | 
					 | 
				
			||||||
    k40,k41,k42,k43,k44,                                        \
 | 
					 | 
				
			||||||
                            k55,k56,                            \
 | 
					 | 
				
			||||||
                                k54,                            \
 | 
					 | 
				
			||||||
                        k53,k52,k51,                            \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
        k07,k08,k09,k0A,k0B,k0C,k0D,                            \
 | 
					 | 
				
			||||||
        k17,k18,k19,k1A,k1B,k1C,k1D,                            \
 | 
					 | 
				
			||||||
            k28,k29,k2A,k2B,k2C,k2D,                            \
 | 
					 | 
				
			||||||
        k37,k38,k39,k3A,k3B,k3C,k3D,                            \
 | 
					 | 
				
			||||||
                k49,k4A,k4B,k4C,k4D,                            \
 | 
					 | 
				
			||||||
    k57,k58,                                                    \
 | 
					 | 
				
			||||||
    k59,                                                        \
 | 
					 | 
				
			||||||
    k5C,k5B,k5A )                                               \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
   /* matrix positions */                                       \
 | 
					 | 
				
			||||||
   {                                                            \
 | 
					 | 
				
			||||||
    { k00, k10, k20, k30, k40, KC_NO },   \
 | 
					 | 
				
			||||||
    { k01, k11, k21, k31, k41, k51 },   \
 | 
					 | 
				
			||||||
    { k02, k12, k22, k32, k42, k52 },   \
 | 
					 | 
				
			||||||
    { k03, k13, k23, k33, k43, k53 },   \
 | 
					 | 
				
			||||||
    { k04, k14, k24, k34, k44, k54 },   \
 | 
					 | 
				
			||||||
    { k05, k15, k25, k35, KC_NO, k55 },   \
 | 
					 | 
				
			||||||
    { k06, k16, KC_NO, k36, KC_NO, k56 },   \
 | 
					 | 
				
			||||||
                                                                 \
 | 
					 | 
				
			||||||
    { k07, k17, KC_NO, k37,KC_NO, k57 },   \
 | 
					 | 
				
			||||||
    { k08, k18, k28, k38,KC_NO, k58 },   \
 | 
					 | 
				
			||||||
    { k09, k19, k29, k39, k49, k59 },   \
 | 
					 | 
				
			||||||
    { k0A, k1A, k2A, k3A, k4A, k5A },   \
 | 
					 | 
				
			||||||
    { k0B, k1B, k2B, k3B, k4B, k5B },   \
 | 
					 | 
				
			||||||
    { k0C, k1C, k2C, k3C, k4C, k5C },   \
 | 
					 | 
				
			||||||
    { k0D, k1D, k2D, k3D, k4D, KC_NO }    \
 | 
					 | 
				
			||||||
   }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
 *   LEFT HAND: LINES 158-165
 | 
					 | 
				
			||||||
 *  RIGHT HAND: LINES 167-174
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox_80(                                      \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
    k00,k01,k02,k03,k04,k05,k06,                                \
 | 
					 | 
				
			||||||
    k10,k11,k12,k13,k14,k15,k16,                                \
 | 
					 | 
				
			||||||
    k20,k21,k22,k23,k24,k25,                                    \
 | 
					 | 
				
			||||||
    k30,k31,k32,k33,k34,k35,k36,                                \
 | 
					 | 
				
			||||||
    k40,k41,k42,k43,k44,                                        \
 | 
					 | 
				
			||||||
                            k55,k56,                            \
 | 
					 | 
				
			||||||
                        k45,k46,k54,                            \
 | 
					 | 
				
			||||||
                        k53,k52,k51,                            \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
        k07,k08,k09,k0A,k0B,k0C,k0D,                            \
 | 
					 | 
				
			||||||
        k17,k18,k19,k1A,k1B,k1C,k1D,                            \
 | 
					 | 
				
			||||||
            k28,k29,k2A,k2B,k2C,k2D,                            \
 | 
					 | 
				
			||||||
        k37,k38,k39,k3A,k3B,k3C,k3D,                            \
 | 
					 | 
				
			||||||
                k49,k4A,k4B,k4C,k4D,                            \
 | 
					 | 
				
			||||||
    k57,k58,                                                    \
 | 
					 | 
				
			||||||
    k59,k47,k48,                                                \
 | 
					 | 
				
			||||||
    k5C,k5B,k5A )                                               \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
   /* matrix positions */                                       \
 | 
					 | 
				
			||||||
   {                                                            \
 | 
					 | 
				
			||||||
    { k00, k10, k20, k30, k40, KC_NO },   \
 | 
					 | 
				
			||||||
    { k01, k11, k21, k31, k41, k51 },   \
 | 
					 | 
				
			||||||
    { k02, k12, k22, k32, k42, k52 },   \
 | 
					 | 
				
			||||||
    { k03, k13, k23, k33, k43, k53 },   \
 | 
					 | 
				
			||||||
    { k04, k14, k24, k34, k44, k54 },   \
 | 
					 | 
				
			||||||
    { k05, k15, k25, k35, k45, k55 },   \
 | 
					 | 
				
			||||||
    { k06, k16, KC_NO, k36, k46, k56 },   \
 | 
					 | 
				
			||||||
                                                                 \
 | 
					 | 
				
			||||||
    { k07, k17, KC_NO, k37, k47, k57 },   \
 | 
					 | 
				
			||||||
    { k08, k18, k28, k38, k48, k58 },   \
 | 
					 | 
				
			||||||
    { k09, k19, k29, k39, k49, k59 },   \
 | 
					 | 
				
			||||||
    { k0A, k1A, k2A, k3A, k4A, k5A },   \
 | 
					 | 
				
			||||||
    { k0B, k1B, k2B, k3B, k4B, k5B },   \
 | 
					 | 
				
			||||||
    { k0C, k1C, k2C, k3C, k4C, k5C },   \
 | 
					 | 
				
			||||||
    { k0D, k1D, k2D, k3D, k4D, KC_NO }    \
 | 
					 | 
				
			||||||
   }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*  ---------- LEFT HAND -----------   ---------- RIGHT HAND ---------- */
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox_pretty(                                           \
 | 
					 | 
				
			||||||
    L00,L01,L02,L03,L04,L05,L06,           R00,R01,R02,R03,R04,R05,R06,  \
 | 
					 | 
				
			||||||
    L10,L11,L12,L13,L14,L15,L16,           R10,R11,R12,R13,R14,R15,R16,  \
 | 
					 | 
				
			||||||
    L20,L21,L22,L23,L24,L25,                   R21,R22,R23,R24,R25,R26,  \
 | 
					 | 
				
			||||||
    L30,L31,L32,L33,L34,L35,L36,           R30,R31,R32,R33,R34,R35,R36,  \
 | 
					 | 
				
			||||||
    L40,L41,L42,L43,L44,                           R42,R43,R44,R45,R46,  \
 | 
					 | 
				
			||||||
                            L55,L56,   R50,R51,                          \
 | 
					 | 
				
			||||||
                                L54,   R52,                              \
 | 
					 | 
				
			||||||
                        L53,L52,L51,   R55,R54,R53 )                     \
 | 
					 | 
				
			||||||
                                          \
 | 
					 | 
				
			||||||
   /* matrix positions */                 \
 | 
					 | 
				
			||||||
    {                                     \
 | 
					 | 
				
			||||||
    { L00, L10, L20, L30, L40, KC_NO },   \
 | 
					 | 
				
			||||||
    { L01, L11, L21, L31, L41, L51 },     \
 | 
					 | 
				
			||||||
    { L02, L12, L22, L32, L42, L52 },     \
 | 
					 | 
				
			||||||
    { L03, L13, L23, L33, L43, L53 },     \
 | 
					 | 
				
			||||||
    { L04, L14, L24, L34, L44, L54 },     \
 | 
					 | 
				
			||||||
    { L05, L15, L25, L35, KC_NO, L55 },   \
 | 
					 | 
				
			||||||
    { L06, L16, KC_NO, L36, KC_NO, L56 }, \
 | 
					 | 
				
			||||||
                                          \
 | 
					 | 
				
			||||||
    { R00, R10, KC_NO, R30,KC_NO, R50 },  \
 | 
					 | 
				
			||||||
    { R01, R11, R21, R31,KC_NO, R51 },    \
 | 
					 | 
				
			||||||
    { R02, R12, R22, R32, R42, R52 },     \
 | 
					 | 
				
			||||||
    { R03, R13, R23, R33, R43, R53 },     \
 | 
					 | 
				
			||||||
    { R04, R14, R24, R34, R44, R54 },     \
 | 
					 | 
				
			||||||
    { R05, R15, R25, R35, R45, R55 },     \
 | 
					 | 
				
			||||||
    { R06, R16, R26, R36, R46, KC_NO }    \
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*  ---------- LEFT HAND -----------   ---------- RIGHT HAND ---------- */
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox_pretty_80(                                        \
 | 
					 | 
				
			||||||
    L00,L01,L02,L03,L04,L05,L06,           R00,R01,R02,R03,R04,R05,R06,  \
 | 
					 | 
				
			||||||
    L10,L11,L12,L13,L14,L15,L16,           R10,R11,R12,R13,R14,R15,R16,  \
 | 
					 | 
				
			||||||
    L20,L21,L22,L23,L24,L25,                   R21,R22,R23,R24,R25,R26,  \
 | 
					 | 
				
			||||||
    L30,L31,L32,L33,L34,L35,L36,           R30,R31,R32,R33,R34,R35,R36,  \
 | 
					 | 
				
			||||||
    L40,L41,L42,L43,L44,                           R42,R43,R44,R45,R46,  \
 | 
					 | 
				
			||||||
                            L55,L56,   R50,R51,                          \
 | 
					 | 
				
			||||||
                        L45,L46,L54,   R52,R40,R41,                      \
 | 
					 | 
				
			||||||
                        L53,L52,L51,   R55,R54,R53 )                     \
 | 
					 | 
				
			||||||
                                          \
 | 
					 | 
				
			||||||
      /* matrix positions */              \
 | 
					 | 
				
			||||||
    {                                     \
 | 
					 | 
				
			||||||
    { L00, L10, L20, L30, L40, KC_NO },   \
 | 
					 | 
				
			||||||
    { L01, L11, L21, L31, L41, L51 },     \
 | 
					 | 
				
			||||||
    { L02, L12, L22, L32, L42, L52 },     \
 | 
					 | 
				
			||||||
    { L03, L13, L23, L33, L43, L53 },     \
 | 
					 | 
				
			||||||
    { L04, L14, L24, L34, L44, L54 },     \
 | 
					 | 
				
			||||||
    { L05, L15, L25, L35, L45, L55 },     \
 | 
					 | 
				
			||||||
    { L06, L16, KC_NO, L36, L46, L56 },   \
 | 
					 | 
				
			||||||
                                          \
 | 
					 | 
				
			||||||
    { R00, R10, KC_NO, R30, R40, R50 },   \
 | 
					 | 
				
			||||||
    { R01, R11, R21, R31, R41, R51 },     \
 | 
					 | 
				
			||||||
    { R02, R12, R22, R32, R42, R52 },     \
 | 
					 | 
				
			||||||
    { R03, R13, R23, R33, R43, R53 },     \
 | 
					 | 
				
			||||||
    { R04, R14, R24, R34, R44, R54 },     \
 | 
					 | 
				
			||||||
    { R05, R15, R25, R35, R45, R55 },     \
 | 
					 | 
				
			||||||
    { R06, R16, R26, R36, R46, KC_NO }    \
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*  ---- LEFT HAND ----     ---- RIGHT HAND ---- */
 | 
					/*  ---- LEFT HAND ----     ---- RIGHT HAND ---- */
 | 
				
			||||||
#define LED_LAYOUT_ergodox_pretty(                \
 | 
					#define LED_LAYOUT_ergodox_pretty(                \
 | 
				
			||||||
    L01,L02,L03,L04,L05,    R01,R02,R03,R04,R05,  \
 | 
					    L01,L02,L03,L04,L05,    R01,R02,R03,R04,R05,  \
 | 
				
			||||||
 | 
				
			|||||||
@ -13,96 +13,385 @@
 | 
				
			|||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_ergodox": {
 | 
					        "LAYOUT_ergodox": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
              {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
              {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 0.375},
 | 
				
			||||||
              {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					                {"matrix": [2, 0], "x": 2.5, "y": 0.125},
 | 
				
			||||||
              {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					                {"matrix": [3, 0], "x": 3.5, "y": 0},
 | 
				
			||||||
                     {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					                {"matrix": [4, 0], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                            {"x":6, "y":5}, {"x":7, "y":5},
 | 
					                {"matrix": [0, 1], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
                                                            {"x":7, "y":6},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
              {"x":5, "y":6, "h":2}, {"x":6, "y":6, "h":2}, {"x":7, "y":7},
 | 
					                {"matrix": [2, 1], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                         {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					                {"matrix": [0, 3], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
                {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					                {"matrix": [1, 3], "x": 1.5, "y": 3.375},
 | 
				
			||||||
                                              {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					                {"matrix": [2, 3], "x": 2.5, "y": 3.125},
 | 
				
			||||||
                {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					                {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
                                                                    {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					                {"matrix": [4, 3], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":9, "y":5}, {"x":10, "y":5},
 | 
					                {"matrix": [5, 5], "x": 6, "y": 5},
 | 
				
			||||||
              {"x":9, "y":6},
 | 
					                {"matrix": [6, 5], "x": 7, "y": 5},
 | 
				
			||||||
              {"x":9, "y":7}, {"x":10, "y":6, "h":2}, {"x":11, "y":6, "h":2}
 | 
					                {"matrix": [4, 5], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 5, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 0], "x": 9.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 0], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [11, 0], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 0], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 0], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 1], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 1], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [11, 1], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 1], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 1], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 10.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 2], "x": 11.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 2], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [11, 2], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 2], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 2], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [11, 3], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 3], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 3], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 4], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 4], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [11, 4], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 4], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 4], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [12, 5], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [11, 5], "x": 10, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [10, 5], "x": 11, "y": 6, "h": 2}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_ergodox_pretty": {
 | 
					        "LAYOUT_ergodox_pretty": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
              {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
              {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 2.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					                {"matrix": [7, 0], "x": 9.5, "y": 0.25},
 | 
				
			||||||
              {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					                {"matrix": [8, 0], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 0], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [11, 0], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 0], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 0], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 1], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
              {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					                {"matrix": [7, 1], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
              {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					                {"matrix": [8, 1], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 1], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 1], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [11, 1], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 1], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 1], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                     {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					                {"matrix": [0, 2], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
                                                                    {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					                {"matrix": [1, 2], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                            {"x":6, "y":5}, {"x":7, "y":5},      {"x":9, "y":5}, {"x":10, "y":5},
 | 
					                {"matrix": [8, 2], "x": 10.5, "y": 2.25},
 | 
				
			||||||
                                                            {"x":7, "y":6},      {"x":9, "y":6},
 | 
					                {"matrix": [9, 2], "x": 11.5, "y": 2.125},
 | 
				
			||||||
              {"x":5, "y":6, "h":2}, {"x":6, "y":6, "h":2}, {"x":7, "y":7},      {"x":9, "y":7}, {"x":10, "y":6, "h":2}, {"x":11, "y":6, "h":2}
 | 
					                {"matrix": [10, 2], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [11, 2], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 2], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 2], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 1.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 2.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [11, 3], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 3], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 3], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 4], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 4], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [11, 4], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 4], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 4], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 6, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 7, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 5, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [12, 5], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [11, 5], "x": 10, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [10, 5], "x": 11, "y": 6, "h": 2}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_ergodox_80": {
 | 
					        "LAYOUT_ergodox_80": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
            {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
            {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 0.375},
 | 
				
			||||||
            {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					                {"matrix": [2, 0], "x": 2.5, "y": 0.125},
 | 
				
			||||||
            {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					                {"matrix": [3, 0], "x": 3.5, "y": 0},
 | 
				
			||||||
                   {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					                {"matrix": [4, 0], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                          {"x":6, "y":5}, {"x":7, "y":5},
 | 
					                {"matrix": [0, 1], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
                          {"x":5, "y":6}, {"x":6, "y":6}, {"x":7, "y":6},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
                          {"x":5, "y":7}, {"x":6, "y":7}, {"x":7, "y":7},
 | 
					                {"matrix": [2, 1], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                          {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					                {"matrix": [0, 3], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
                          {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					                {"matrix": [1, 3], "x": 1.5, "y": 3.375},
 | 
				
			||||||
                                                        {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					                {"matrix": [2, 3], "x": 2.5, "y": 3.125},
 | 
				
			||||||
                          {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					                {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
                                                                              {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					                {"matrix": [4, 3], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            {"x":9, "y":5}, {"x":10, "y":5},
 | 
					                {"matrix": [5, 5], "x": 6, "y": 5},
 | 
				
			||||||
            {"x":9, "y":6}, {"x":10, "y":6}, {"x":11, "y":6},
 | 
					                {"matrix": [6, 5], "x": 7, "y": 5},
 | 
				
			||||||
            {"x":9, "y":7}, {"x":10, "y":7}, {"x":11, "y":7}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 5, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 6, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 5, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 0], "x": 9.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 0], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [11, 0], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 0], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 0], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 1], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 1], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [11, 1], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 1], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 1], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 10.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 2], "x": 11.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 2], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [11, 2], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 2], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 2], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [11, 3], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 3], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 3], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 4], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 4], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [11, 4], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 4], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 4], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 10, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [12, 5], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [11, 5], "x": 10, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [10, 5], "x": 11, "y": 7}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_ergodox_pretty_80": {
 | 
					        "LAYOUT_ergodox_pretty_80": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
            {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
            {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 2.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					                {"matrix": [7, 0], "x": 9.5, "y": 0.25},
 | 
				
			||||||
            {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					                {"matrix": [8, 0], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 0], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [11, 0], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 0], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 0], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 1], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
            {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					                {"matrix": [7, 1], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
            {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					                {"matrix": [8, 1], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 1], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 1], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [11, 1], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 1], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 1], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                   {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					                {"matrix": [0, 2], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
                                                                  {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					                {"matrix": [1, 2], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                          {"x":6, "y":5}, {"x":7, "y":5},      {"x":9, "y":5}, {"x":10, "y":5},
 | 
					                {"matrix": [8, 2], "x": 10.5, "y": 2.25},
 | 
				
			||||||
                          {"x":5, "y":6}, {"x":6, "y":6}, {"x":7, "y":6},      {"x":9, "y":6}, {"x":10, "y":6}, {"x":11, "y":6},
 | 
					                {"matrix": [9, 2], "x": 11.5, "y": 2.125},
 | 
				
			||||||
                          {"x":5, "y":7}, {"x":6, "y":7}, {"x":7, "y":7},      {"x":9, "y":7}, {"x":10, "y":7}, {"x":11, "y":7}
 | 
					                {"matrix": [10, 2], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [11, 2], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 2], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 2], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 1.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 2.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [11, 3], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 3], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 3], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 4], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 4], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [11, 4], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 4], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 4], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 6, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 7, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 5, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 6, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 10, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 5, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [12, 5], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [11, 5], "x": 10, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [10, 5], "x": 11, "y": 7}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -35,80 +35,3 @@ extern volatile int mcp23017_status;
 | 
				
			|||||||
uint8_t init_mcp23017(void);
 | 
					uint8_t init_mcp23017(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void ergodox_blink_all_leds(void);
 | 
					void ergodox_blink_all_leds(void);
 | 
				
			||||||
 | 
					 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
 *   LEFT HAND: LINES 115-122
 | 
					 | 
				
			||||||
 *  RIGHT HAND: LINES 124-131
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox(                     \
 | 
					 | 
				
			||||||
                                            \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06,      \
 | 
					 | 
				
			||||||
    k10, k11, k12, k13, k14, k15, k16,      \
 | 
					 | 
				
			||||||
    k20, k21, k22, k23, k24, k25,           \
 | 
					 | 
				
			||||||
    k30, k31, k32, k33, k34, k35, k36,      \
 | 
					 | 
				
			||||||
    k40, k41, k42, k43, k44,                \
 | 
					 | 
				
			||||||
    k55, k56,                               \
 | 
					 | 
				
			||||||
    k54,                                    \
 | 
					 | 
				
			||||||
    k53, k52, k51,                          \
 | 
					 | 
				
			||||||
                                            \
 | 
					 | 
				
			||||||
    k07, k08, k09, k0A, k0B, k0C, k0D,      \
 | 
					 | 
				
			||||||
    k17, k18, k19, k1A, k1B, k1C, k1D,      \
 | 
					 | 
				
			||||||
    k28, k29, k2A, k2B, k2C, k2D,           \
 | 
					 | 
				
			||||||
    k37, k38, k39, k3A, k3B, k3C, k3D,      \
 | 
					 | 
				
			||||||
    k49, k4A, k4B, k4C, k4D,                \
 | 
					 | 
				
			||||||
    k57, k58,                               \
 | 
					 | 
				
			||||||
    k59,                                    \
 | 
					 | 
				
			||||||
    k5C, k5B, k5A)                          \
 | 
					 | 
				
			||||||
                                            \
 | 
					 | 
				
			||||||
  /* matrix positions */                    \
 | 
					 | 
				
			||||||
  {                                         \
 | 
					 | 
				
			||||||
    {k00, k10, k20, k30, k40, KC_NO},       \
 | 
					 | 
				
			||||||
        {k01, k11, k21, k31, k41, k51},     \
 | 
					 | 
				
			||||||
        {k02, k12, k22, k32, k42, k52},     \
 | 
					 | 
				
			||||||
        {k03, k13, k23, k33, k43, k53},     \
 | 
					 | 
				
			||||||
        {k04, k14, k24, k34, k44, k54},     \
 | 
					 | 
				
			||||||
        {k05, k15, k25, k35, KC_NO, k55},   \
 | 
					 | 
				
			||||||
        {k06, k16, KC_NO, k36, KC_NO, k56}, \
 | 
					 | 
				
			||||||
                                            \
 | 
					 | 
				
			||||||
        {k07, k17, KC_NO, k37, KC_NO, k57}, \
 | 
					 | 
				
			||||||
        {k08, k18, k28, k38, KC_NO, k58},   \
 | 
					 | 
				
			||||||
        {k09, k19, k29, k39, k49, k59},     \
 | 
					 | 
				
			||||||
        {k0A, k1A, k2A, k3A, k4A, k5A},     \
 | 
					 | 
				
			||||||
        {k0B, k1B, k2B, k3B, k4B, k5B},     \
 | 
					 | 
				
			||||||
        {k0C, k1C, k2C, k3C, k4C, k5C},     \
 | 
					 | 
				
			||||||
    {                                       \
 | 
					 | 
				
			||||||
      k0D, k1D, k2D, k3D, k4D, KC_NO        \
 | 
					 | 
				
			||||||
    }                                       \
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*  ---------- LEFT HAND -----------   ---------- RIGHT HAND ---------- */
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox_pretty(                                            \
 | 
					 | 
				
			||||||
    L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
 | 
					 | 
				
			||||||
    L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
 | 
					 | 
				
			||||||
    L20, L21, L22, L23, L24, L25, R21, R22, R23, R24, R25, R26,           \
 | 
					 | 
				
			||||||
    L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
 | 
					 | 
				
			||||||
    L40, L41, L42, L43, L44, R42, R43, R44, R45, R46,                     \
 | 
					 | 
				
			||||||
    L55, L56, R50, R51,                                                   \
 | 
					 | 
				
			||||||
    L54, R52,                                                             \
 | 
					 | 
				
			||||||
    L53, L52, L51, R55, R54, R53)                                         \
 | 
					 | 
				
			||||||
                                                                          \
 | 
					 | 
				
			||||||
  /* matrix positions */                                                  \
 | 
					 | 
				
			||||||
  {                                                                       \
 | 
					 | 
				
			||||||
    {L00, L10, L20, L30, L40, KC_NO},                                     \
 | 
					 | 
				
			||||||
        {L01, L11, L21, L31, L41, L51},                                   \
 | 
					 | 
				
			||||||
        {L02, L12, L22, L32, L42, L52},                                   \
 | 
					 | 
				
			||||||
        {L03, L13, L23, L33, L43, L53},                                   \
 | 
					 | 
				
			||||||
        {L04, L14, L24, L34, L44, L54},                                   \
 | 
					 | 
				
			||||||
        {L05, L15, L25, L35, KC_NO, L55},                                 \
 | 
					 | 
				
			||||||
        {L06, L16, KC_NO, L36, KC_NO, L56},                               \
 | 
					 | 
				
			||||||
                                                                          \
 | 
					 | 
				
			||||||
        {R00, R10, KC_NO, R30, KC_NO, R50},                               \
 | 
					 | 
				
			||||||
        {R01, R11, R21, R31, KC_NO, R51},                                 \
 | 
					 | 
				
			||||||
        {R02, R12, R22, R32, R42, R52},                                   \
 | 
					 | 
				
			||||||
        {R03, R13, R23, R33, R43, R53},                                   \
 | 
					 | 
				
			||||||
        {R04, R14, R24, R34, R44, R54},                                   \
 | 
					 | 
				
			||||||
        {R05, R15, R25, R35, R45, R55},                                   \
 | 
					 | 
				
			||||||
    {                                                                     \
 | 
					 | 
				
			||||||
      R06, R16, R26, R36, R46, KC_NO                                      \
 | 
					 | 
				
			||||||
    }                                                                     \
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
				
			|||||||
@ -8,52 +8,196 @@
 | 
				
			|||||||
        "pid": "0x1308",
 | 
					        "pid": "0x1308",
 | 
				
			||||||
        "device_version": "1.0.1"
 | 
					        "device_version": "1.0.1"
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					"layouts": {
 | 
				
			||||||
        "LAYOUT_ergodox": {
 | 
					        "LAYOUT_ergodox": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
              {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
              {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 0.375},
 | 
				
			||||||
              {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					                {"matrix": [2, 0], "x": 2.5, "y": 0.125},
 | 
				
			||||||
              {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					                {"matrix": [3, 0], "x": 3.5, "y": 0},
 | 
				
			||||||
                     {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					                {"matrix": [4, 0], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                            {"x":6, "y":5}, {"x":7, "y":5},
 | 
					                {"matrix": [0, 1], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
                                                            {"x":7, "y":6},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
              {"x":5, "y":6, "h":2}, {"x":6, "y":6, "h":2}, {"x":7, "y":7},
 | 
					                {"matrix": [2, 1], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                         {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					                {"matrix": [0, 3], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
                {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					                {"matrix": [1, 3], "x": 1.5, "y": 3.375},
 | 
				
			||||||
                                              {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					                {"matrix": [2, 3], "x": 2.5, "y": 3.125},
 | 
				
			||||||
                {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					                {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
                                                                    {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					                {"matrix": [4, 3], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 6, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 7, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":9, "y":5}, {"x":10, "y":5},
 | 
					                {"matrix": [3, 5], "x": 5, "y": 6, "h": 2},
 | 
				
			||||||
              {"x":9, "y":6},
 | 
					                {"matrix": [2, 5], "x": 6, "y": 6, "h": 2},
 | 
				
			||||||
              {"x":9, "y":7}, {"x":10, "y":6, "h":2}, {"x":11, "y":6, "h":2}
 | 
					                {"matrix": [1, 5], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 0], "x": 9.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 0], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [11, 0], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 0], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 0], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 1], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 1], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [11, 1], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 1], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 1], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 10.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 2], "x": 11.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 2], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [11, 2], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 2], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 2], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [11, 3], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 3], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 3], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 4], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 4], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [11, 4], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 4], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 4], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [12, 5], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 5], "x": 10, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [10, 5], "x": 11, "y": 6, "h": 2}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_ergodox_pretty": {
 | 
					        "LAYOUT_ergodox_pretty": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
              {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
              {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 2.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					                {"matrix": [7, 0], "x": 9.5, "y": 0.25},
 | 
				
			||||||
              {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					                {"matrix": [8, 0], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 0], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [11, 0], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 0], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 0], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 1], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
              {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					                {"matrix": [7, 1], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
              {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					                {"matrix": [8, 1], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 1], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 1], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [11, 1], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 1], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 1], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                     {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					                {"matrix": [0, 2], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
                                                                    {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					                {"matrix": [1, 2], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                            {"x":6, "y":5}, {"x":7, "y":5},      {"x":9, "y":5}, {"x":10, "y":5},
 | 
					                {"matrix": [8, 2], "x": 10.5, "y": 2.25},
 | 
				
			||||||
                                                            {"x":7, "y":6},      {"x":9, "y":6},
 | 
					                {"matrix": [9, 2], "x": 11.5, "y": 2.125},
 | 
				
			||||||
              {"x":5, "y":6, "h":2}, {"x":6, "y":6, "h":2}, {"x":7, "y":7},      {"x":9, "y":7}, {"x":10, "y":6, "h":2}, {"x":11, "y":6, "h":2}
 | 
					                {"matrix": [10, 2], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [11, 2], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 2], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 2], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 1.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 2.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [11, 3], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 3], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 3], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 4], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 4], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [11, 4], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [12, 4], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [13, 4], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 6, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 7, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 5, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [12, 5], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 5], "x": 10, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [10, 5], "x": 11, "y": 6, "h": 2}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -27,144 +27,169 @@
 | 
				
			|||||||
    "processor": "atmega32u4",
 | 
					    "processor": "atmega32u4",
 | 
				
			||||||
    "bootloader": "qmk-dfu",
 | 
					    "bootloader": "qmk-dfu",
 | 
				
			||||||
    "community_layouts": ["alice", "alice_split_bs"],
 | 
					    "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"k10", "x":0, "y":0},
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
                {"label":"k00", "x":1.25, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"k01", "x":2.25, "y":0},
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
                {"label":"k02", "x":3.25, "y":0},
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
                {"label":"k03", "x":4.25, "y":0},
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
                {"label":"k04", "x":5.25, "y":0},
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
                {"label":"k05", "x":6.25, "y":0},
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
                {"label":"k06", "x":7.25, "y":0},
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
                {"label":"k07", "x":10.25, "y":0},
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
                {"label":"k08", "x":11.25, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"k09", "x":12.25, "y":0},
 | 
					                {"matrix": [0, 7], "x": 10.25, "y": 0},
 | 
				
			||||||
                {"label":"k0a", "x":13.25, "y":0},
 | 
					                {"matrix": [0, 8], "x": 11.25, "y": 0},
 | 
				
			||||||
                {"label":"k0b", "x":14.25, "y":0},
 | 
					                {"matrix": [0, 9], "x": 12.25, "y": 0},
 | 
				
			||||||
                {"label":"k0c", "x":15.25, "y":0},
 | 
					                {"matrix": [0, 10], "x": 13.25, "y": 0},
 | 
				
			||||||
                {"label":"k0d", "x":16.25, "y":0},
 | 
					                {"matrix": [0, 11], "x": 14.25, "y": 0},
 | 
				
			||||||
                {"label":"k0e", "x":17.25, "y":0},
 | 
					                {"matrix": [0, 12], "x": 15.25, "y": 0},
 | 
				
			||||||
                {"label":"k20", "x":0, "y":1},
 | 
					                {"matrix": [0, 13], "x": 16.25, "y": 0},
 | 
				
			||||||
                {"label":"k11", "x":1.25, "y":1, "w":1.5},
 | 
					                {"matrix": [0, 14], "x": 17.25, "y": 0},
 | 
				
			||||||
                {"label":"k12", "x":2.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"k13", "x":3.75, "y":1},
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
                {"label":"k14", "x":4.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"k15", "x":5.75, "y":1},
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"k16", "x":6.75, "y":1},
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
                {"label":"k17", "x":9.75, "y":1},
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
                {"label":"k18", "x":10.75, "y":1},
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
                {"label":"k19", "x":11.75, "y":1},
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
                {"label":"k1a", "x":12.75, "y":1},
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
                {"label":"k1b", "x":13.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"k1c", "x":14.75, "y":1},
 | 
					                {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
                {"label":"k1d", "x":15.75, "y":1},
 | 
					                {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
                {"label":"k1e", "x":16.75, "y":1, "w":1.5},
 | 
					                {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
                {"label":"k30", "x":0, "y":2},
 | 
					                {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
                {"label":"k21", "x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
                {"label":"k22", "x":3, "y":2},
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
                {"label":"k23", "x":4, "y":2},
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
                {"label":"k24", "x":5, "y":2},
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"k25", "x":6, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"k26", "x":7, "y":2},
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
                {"label":"k27", "x":10, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"k28", "x":11, "y":2},
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
                {"label":"k29", "x":12, "y":2},
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
                {"label":"k2a", "x":13, "y":2},
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
                {"label":"k2b", "x":14, "y":2},
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
                {"label":"k2c", "x":15, "y":2},
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
                {"label":"k2e", "x":16, "y":2, "w":2.25},
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
                {"label":"k31", "x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
                {"label":"k32", "x":3.5, "y":3},
 | 
					                {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
                {"label":"k33", "x":4.5, "y":3},
 | 
					                {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
                {"label":"k34", "x":5.5, "y":3},
 | 
					                {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
                {"label":"k35", "x":6.5, "y":3},
 | 
					                {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
                {"label":"k36", "x":7.5, "y":3},
 | 
					                {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
                {"label":"k37", "x":9.5, "y":3},
 | 
					                {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
                {"label":"k38", "x":10.5, "y":3},
 | 
					                {"matrix": [2, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
                {"label":"k39", "x":11.5, "y":3},
 | 
					
 | 
				
			||||||
                {"label":"k3a", "x":12.5, "y":3},
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
                {"label":"k3b", "x":13.5, "y":3},
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
                {"label":"k3c", "x":14.5, "y":3},
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
                {"label":"k3d", "x":15.5, "y":3, "w":1.75},
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
                {"label":"k3e", "x":17.25, "y":3},
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
                {"label":"k41", "x":1.25, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
                {"label":"k43", "x":4.25, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
                {"label":"k45", "x":5.75, "y":4, "w":2},
 | 
					                {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
                {"label":"k46", "x":7.75, "y":4, "w":1.25},
 | 
					                {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
                {"label":"k48", "x":9.5, "y":4, "w":2.75},
 | 
					                {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
                {"label":"k4a", "x":12.25, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
                {"label":"k4e", "x":16.75, "y":4, "w":1.5}
 | 
					                {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"k10", "x":0, "y":0},
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
                {"label":"k00", "x":1.25, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"k01", "x":2.25, "y":0},
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
                {"label":"k02", "x":3.25, "y":0},
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
                {"label":"k03", "x":4.25, "y":0},
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
                {"label":"k04", "x":5.25, "y":0},
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
                {"label":"k05", "x":6.25, "y":0},
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
                {"label":"k06", "x":7.25, "y":0},
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
                {"label":"k07", "x":10.25, "y":0},
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
                {"label":"k08", "x":11.25, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"k09", "x":12.25, "y":0},
 | 
					                {"matrix": [0, 7], "x": 10.25, "y": 0},
 | 
				
			||||||
                {"label":"k0a", "x":13.25, "y":0},
 | 
					                {"matrix": [0, 8], "x": 11.25, "y": 0},
 | 
				
			||||||
                {"label":"k0b", "x":14.25, "y":0},
 | 
					                {"matrix": [0, 9], "x": 12.25, "y": 0},
 | 
				
			||||||
                {"label":"k0c", "x":15.25, "y":0},
 | 
					                {"matrix": [0, 10], "x": 13.25, "y": 0},
 | 
				
			||||||
                {"label":"k0e", "x":16.25, "y":0, "w":2},
 | 
					                {"matrix": [0, 11], "x": 14.25, "y": 0},
 | 
				
			||||||
                {"label":"k20", "x":0, "y":1},
 | 
					                {"matrix": [0, 12], "x": 15.25, "y": 0},
 | 
				
			||||||
                {"label":"k11", "x":1.25, "y":1, "w":1.5},
 | 
					                {"matrix": [0, 14], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
                {"label":"k12", "x":2.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"k13", "x":3.75, "y":1},
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
                {"label":"k14", "x":4.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"k15", "x":5.75, "y":1},
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"k16", "x":6.75, "y":1},
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
                {"label":"k17", "x":9.75, "y":1},
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
                {"label":"k18", "x":10.75, "y":1},
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
                {"label":"k19", "x":11.75, "y":1},
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
                {"label":"k1a", "x":12.75, "y":1},
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
                {"label":"k1b", "x":13.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"k1c", "x":14.75, "y":1},
 | 
					                {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
                {"label":"k1d", "x":15.75, "y":1},
 | 
					                {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
                {"label":"k1e", "x":16.75, "y":1, "w":1.5},
 | 
					                {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
                {"label":"k30", "x":0, "y":2},
 | 
					                {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
                {"label":"k21", "x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
                {"label":"k22", "x":3, "y":2},
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
                {"label":"k23", "x":4, "y":2},
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
                {"label":"k24", "x":5, "y":2},
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"k25", "x":6, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"k26", "x":7, "y":2},
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
                {"label":"k27", "x":10, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"k28", "x":11, "y":2},
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
                {"label":"k29", "x":12, "y":2},
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
                {"label":"k2a", "x":13, "y":2},
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
                {"label":"k2b", "x":14, "y":2},
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
                {"label":"k2c", "x":15, "y":2},
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
                {"label":"k2e", "x":16, "y":2, "w":2.25},
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
                {"label":"k31", "x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
                {"label":"k32", "x":3.5, "y":3},
 | 
					                {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
                {"label":"k33", "x":4.5, "y":3},
 | 
					                {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
                {"label":"k34", "x":5.5, "y":3},
 | 
					                {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
                {"label":"k35", "x":6.5, "y":3},
 | 
					                {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
                {"label":"k36", "x":7.5, "y":3},
 | 
					                {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
                {"label":"k37", "x":9.5, "y":3},
 | 
					                {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
                {"label":"k38", "x":10.5, "y":3},
 | 
					                {"matrix": [2, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
                {"label":"k39", "x":11.5, "y":3},
 | 
					
 | 
				
			||||||
                {"label":"k3a", "x":12.5, "y":3},
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
                {"label":"k3b", "x":13.5, "y":3},
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
                {"label":"k3c", "x":14.5, "y":3},
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
                {"label":"k3d", "x":15.5, "y":3, "w":1.75},
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
                {"label":"k3e", "x":17.25, "y":3},
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
                {"label":"k41", "x":1.25, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
                {"label":"k43", "x":4.25, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
                {"label":"k45", "x":5.75, "y":4, "w":2},
 | 
					                {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
                {"label":"k46", "x":7.75, "y":4, "w":1.25},
 | 
					                {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
                {"label":"k48", "x":9.5, "y":4, "w":2.75},
 | 
					                {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
                {"label":"k4a", "x":12.25, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
                {"label":"k4e", "x":16.75, "y":4, "w":1.5}
 | 
					                {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,39 +0,0 @@
 | 
				
			|||||||
#pragma once
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// readability
 | 
					 | 
				
			||||||
#define XXX KC_NO
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    k10, k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, \
 | 
					 | 
				
			||||||
    k20, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, \
 | 
					 | 
				
			||||||
    k30, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c,      k2e, \
 | 
					 | 
				
			||||||
         k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, \
 | 
					 | 
				
			||||||
         k41,           k43, k45, k46,      k48, k4a,                     k4e  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    {k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e}, \
 | 
					 | 
				
			||||||
    {k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e}, \
 | 
					 | 
				
			||||||
    {k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, XXX, k2e}, \
 | 
					 | 
				
			||||||
    {k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e}, \
 | 
					 | 
				
			||||||
    {XXX, k41, XXX, k43, XXX, k45, k46, XXX, k48, XXX, k4a, XXX, XXX, XXX, k4e}  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    k10, k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, \
 | 
					 | 
				
			||||||
    k20, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, \
 | 
					 | 
				
			||||||
    k30, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c,      k2e, \
 | 
					 | 
				
			||||||
         k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, \
 | 
					 | 
				
			||||||
         k41,           k43, k45, k46,      k48, k4a,                     k4e  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    {k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, XXX, k0e}, \
 | 
					 | 
				
			||||||
    {k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e}, \
 | 
					 | 
				
			||||||
    {k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, XXX, k2e}, \
 | 
					 | 
				
			||||||
    {k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e}, \
 | 
					 | 
				
			||||||
    {XXX, k41, XXX, k43, XXX, k45, k46, XXX, k48, XXX, k4a, XXX, XXX, XXX, k4e}  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
void matrix_init_user(void);
 | 
					 | 
				
			||||||
void matrix_scan_user(void);
 | 
					 | 
				
			||||||
@ -14,7 +14,7 @@
 | 
				
			|||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "fallacy.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
#include "indicators.h"
 | 
					#include "indicators.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void matrix_init_kb(void) {
 | 
					void matrix_init_kb(void) {
 | 
				
			||||||
 | 
				
			|||||||
@ -1,57 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 B. Fletcher (toraifu) <typefast@kyaa.gg>
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* All keys in matrix active: 
 | 
					 | 
				
			||||||
 * - Split Backspace
 | 
					 | 
				
			||||||
 * - Split Right Shift
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    K100,   K000, K001, K002, K003, K004, K005, K006,       K007, K008, K009, K010, K011, K012, K013, K014, \
 | 
					 | 
				
			||||||
    K200,   K101, K102, K103, K104, K105, K106,       K107, K108, K109, K110, K111, K112, K113, K114, \
 | 
					 | 
				
			||||||
    K300,   K201, K202, K203, K204, K205, K206,       K207, K208, K209, K210, K211, K212,       K214, \
 | 
					 | 
				
			||||||
            K301, K302, K303, K304, K305, K306,       K307, K308, K309, K310, K311, K312, K313, K314, \
 | 
					 | 
				
			||||||
            K401,       K403,       K405, K406,             K408,       K410,                   K414  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K000,  K001,  K002,  K003,  K004,  K005,  K006,  K007,  K008,  K009,  K010,  K011,  K012,  K013,  K014 }, \
 | 
					 | 
				
			||||||
    { K100,  K101,  K102,  K103,  K104,  K105,  K106,  K107,  K108,  K109,  K110,  K111,  K112,  K113,  K114 }, \
 | 
					 | 
				
			||||||
    { K200,  K201,  K202,  K203,  K204,  K205,  K206,  K207,  K208,  K209,  K210,  K211,  K212,  KC_NO, K214 }, \
 | 
					 | 
				
			||||||
    { K300,  K301,  K302,  K303,  K304,  K305,  K306,  K307,  K308,  K309,  K310,  K311,  K312,  K313,  K314 }, \
 | 
					 | 
				
			||||||
    { KC_NO, K401,  KC_NO, K403,  KC_NO, K405,  K406,  KC_NO, K408,  KC_NO, K410,  KC_NO, KC_NO, KC_NO, K414 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Disable position 013 and 314 for:
 | 
					 | 
				
			||||||
 * - Full size Backspace
 | 
					 | 
				
			||||||
 * - Full size Right Shift
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K100,   K000, K001, K002, K003, K004, K005, K006,       K007, K008, K009, K010, K011, K012,       K014, \
 | 
					 | 
				
			||||||
    K200,   K101, K102, K103, K104, K105, K106,       K107, K108, K109, K110, K111, K112, K113, K114, \
 | 
					 | 
				
			||||||
    K300,   K201, K202, K203, K204, K205, K206,       K207, K208, K209, K210, K211, K212,       K214, \
 | 
					 | 
				
			||||||
            K301, K302, K303, K304, K305, K306,       K307, K308, K309, K310, K311, K312, K313, K314, \
 | 
					 | 
				
			||||||
            K401,       K403,       K405, K406,             K408,       K410,                   K414  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K000,  K001,  K002,  K003,  K004,  K005,  K006,  K007,  K008,  K009,  K010,  K011,  K012,  KC_NO, K014 }, \
 | 
					 | 
				
			||||||
    { K100,  K101,  K102,  K103,  K104,  K105,  K106,  K107,  K108,  K109,  K110,  K111,  K112,  K113,  K114 }, \
 | 
					 | 
				
			||||||
    { K200,  K201,  K202,  K203,  K204,  K205,  K206,  K207,  K208,  K209,  K210,  K211,  K212,  KC_NO, K214 }, \
 | 
					 | 
				
			||||||
    { K300,  K301,  K302,  K303,  K304,  K305,  K306,  K307,  K308,  K309,  K310,  K311,  K312,  K313,  K314 }, \
 | 
					 | 
				
			||||||
    { KC_NO, K401,  KC_NO, K403,  KC_NO, K405,  K406,  KC_NO, K408,  KC_NO, K410,  KC_NO, KC_NO, KC_NO, K414 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_default LAYOUT_alice
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -15,144 +15,170 @@
 | 
				
			|||||||
    "processor": "atmega32u4",
 | 
					    "processor": "atmega32u4",
 | 
				
			||||||
    "bootloader": "atmel-dfu",
 | 
					    "bootloader": "atmel-dfu",
 | 
				
			||||||
    "community_layouts": ["alice", "alice_split_bs"],
 | 
					    "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs",
 | 
				
			||||||
 | 
					        "LAYOUT_default": "LAYOUT_alice"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [1, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"~", "x":1.75, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"!", "x":2.75, "y":0},
 | 
					                {"matrix": [0, 0], "x": 1.75, "y": 0},
 | 
				
			||||||
                {"label":"@", "x":3.75, "y":0},
 | 
					                {"matrix": [0, 1], "x": 2.75, "y": 0},
 | 
				
			||||||
                {"label":"#", "x":4.75, "y":0},
 | 
					                {"matrix": [0, 2], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"$", "x":5.75, "y":0},
 | 
					                {"matrix": [0, 3], "x": 4.75, "y": 0},
 | 
				
			||||||
                {"label":"%", "x":6.75, "y":0},
 | 
					                {"matrix": [0, 4], "x": 5.75, "y": 0},
 | 
				
			||||||
                {"label":"^", "x":7.75, "y":0},
 | 
					                {"matrix": [0, 5], "x": 6.75, "y": 0},
 | 
				
			||||||
                {"label":"&", "x":10, "y":0},
 | 
					                {"matrix": [0, 6], "x": 7.75, "y": 0},
 | 
				
			||||||
                {"label":"*", "x":11, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"(", "x":12, "y":0},
 | 
					                {"matrix": [0, 7], "x": 10, "y": 0},
 | 
				
			||||||
                {"label":")", "x":13, "y":0},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0},
 | 
				
			||||||
                {"label":"_", "x":14, "y":0},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0},
 | 
				
			||||||
                {"label":"+", "x":15, "y":0},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0},
 | 
				
			||||||
                {"label":"|", "x":16, "y":0},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0},
 | 
				
			||||||
                {"label":"~", "x":17, "y":0},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1, "w":1.5},
 | 
					                {"matrix": [0, 14], "x": 17, "y": 0},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"W", "x":4, "y":1},
 | 
					                {"matrix": [2, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"E", "x":5, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"R", "x":6, "y":1},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"T", "x":7, "y":1},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1},
 | 
				
			||||||
                {"label":"Y", "x":9.75, "y":1},
 | 
					                {"matrix": [1, 3], "x": 4, "y": 1},
 | 
				
			||||||
                {"label":"U", "x":10.75, "y":1},
 | 
					                {"matrix": [1, 4], "x": 5, "y": 1},
 | 
				
			||||||
                {"label":"I", "x":11.75, "y":1},
 | 
					                {"matrix": [1, 5], "x": 6, "y": 1},
 | 
				
			||||||
                {"label":"O", "x":12.75, "y":1},
 | 
					                {"matrix": [1, 6], "x": 7, "y": 1},
 | 
				
			||||||
                {"label":"P", "x":13.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"{", "x":14.75, "y":1},
 | 
					                {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
                {"label":"}", "x":15.75, "y":1},
 | 
					                {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
                {"label":"Backspace", "x":16.75, "y":1, "w":1.5},
 | 
					                {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
                {"label":"Control", "x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
                {"label":"A", "x":3, "y":2},
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
                {"label":"S", "x":4, "y":2},
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
                {"label":"D", "x":5, "y":2},
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"F", "x":6, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"G", "x":7, "y":2},
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
                {"label":"H", "x":10.25, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"J", "x":11.25, "y":2},
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
                {"label":"K", "x":12.25, "y":2},
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
                {"label":"L", "x":13.25, "y":2},
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
                {"label":":", "x":14.25, "y":2}, 
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
                {"label":"\"", "x":15.25, "y":2},
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
                {"label":"Enter", "x":16.25, "y":2, "w":2.25},
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
                {"label":"Shift", "x":1, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
                {"label":"Z", "x":3.25, "y":3},
 | 
					                {"matrix": [2, 7], "x": 10.25, "y": 2},
 | 
				
			||||||
                {"label":"X", "x":4.25, "y":3}, 
 | 
					                {"matrix": [2, 8], "x": 11.25, "y": 2},
 | 
				
			||||||
                {"label":"C", "x":5.25, "y":3}, 
 | 
					                {"matrix": [2, 9], "x": 12.25, "y": 2},
 | 
				
			||||||
                {"label":"V", "x":6.25, "y":3}, 
 | 
					                {"matrix": [2, 10], "x": 13.25, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":7.25, "y":3}, 
 | 
					                {"matrix": [2, 11], "x": 14.25, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":10, "y":3},
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2},
 | 
				
			||||||
                {"label":"N", "x":11, "y":3},
 | 
					                {"matrix": [2, 14], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
                {"label":"M", "x":12, "y":3},
 | 
					
 | 
				
			||||||
                {"label":"<", "x":13, "y":3},
 | 
					                {"matrix": [3, 1], "x": 1, "y": 3, "w": 2.25},
 | 
				
			||||||
                {"label":">", "x":14, "y":3},
 | 
					                {"matrix": [3, 2], "x": 3.25, "y": 3},
 | 
				
			||||||
                {"label":"?", "x":15, "y":3},
 | 
					                {"matrix": [3, 3], "x": 4.25, "y": 3},
 | 
				
			||||||
                {"label":"Shift", "x":16, "y":3, "w":1.75}, 
 | 
					                {"matrix": [3, 4], "x": 5.25, "y": 3},
 | 
				
			||||||
                {"label":"Fn1", "x":17.75, "y":3},
 | 
					                {"matrix": [3, 5], "x": 6.25, "y": 3},
 | 
				
			||||||
                {"label":"Ctrl", "x":1, "y":4, "w":1.5}, 
 | 
					                {"matrix": [3, 6], "x": 7.25, "y": 3},
 | 
				
			||||||
                {"label":"Alt", "x":4, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
                {"label":"LSpace", "x":5.5, "y":4, "w":2.25},
 | 
					                {"matrix": [3, 7], "x": 10, "y": 3},
 | 
				
			||||||
                {"label":"Fn2", "x":7.75, "y":4}, 
 | 
					                {"matrix": [3, 8], "x": 11, "y": 3},
 | 
				
			||||||
                {"label":"RSpace", "x":10, "y":4, "w":2.75}, 
 | 
					                {"matrix": [3, 9], "x": 12, "y": 3},
 | 
				
			||||||
                {"label":"RAlt", "x":12.75, "y":4, "w":1.5}, 
 | 
					                {"matrix": [3, 10], "x": 13, "y": 3},
 | 
				
			||||||
                {"label":"RCtl", "x":17, "y":4, "w":1.5}
 | 
					                {"matrix": [3, 11], "x": 14, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 7.75, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 10, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.75, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [1, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"~", "x":1.75, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"!", "x":2.75, "y":0},
 | 
					                {"matrix": [0, 0], "x": 1.75, "y": 0},
 | 
				
			||||||
                {"label":"@", "x":3.75, "y":0},
 | 
					                {"matrix": [0, 1], "x": 2.75, "y": 0},
 | 
				
			||||||
                {"label":"#", "x":4.75, "y":0},
 | 
					                {"matrix": [0, 2], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"$", "x":5.75, "y":0},
 | 
					                {"matrix": [0, 3], "x": 4.75, "y": 0},
 | 
				
			||||||
                {"label":"%", "x":6.75, "y":0},
 | 
					                {"matrix": [0, 4], "x": 5.75, "y": 0},
 | 
				
			||||||
                {"label":"^", "x":7.75, "y":0},
 | 
					                {"matrix": [0, 5], "x": 6.75, "y": 0},
 | 
				
			||||||
                {"label":"&", "x":10, "y":0},
 | 
					                {"matrix": [0, 6], "x": 7.75, "y": 0},
 | 
				
			||||||
                {"label":"*", "x":11, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"(", "x":12, "y":0},
 | 
					                {"matrix": [0, 7], "x": 10, "y": 0},
 | 
				
			||||||
                {"label":")", "x":13, "y":0},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0},
 | 
				
			||||||
                {"label":"_", "x":14, "y":0},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0},
 | 
				
			||||||
                {"label":"+", "x":15, "y":0},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0},
 | 
				
			||||||
                {"label":"Backspace", "x":16, "y":0, "w":2},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0},
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1, "w":1.5},
 | 
					                {"matrix": [0, 14], "x": 16, "y": 0, "w": 2},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"W", "x":4, "y":1},
 | 
					                {"matrix": [2, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"E", "x":5, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"R", "x":6, "y":1},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"T", "x":7, "y":1},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1},
 | 
				
			||||||
                {"label":"Y", "x":9.75, "y":1},
 | 
					                {"matrix": [1, 3], "x": 4, "y": 1},
 | 
				
			||||||
                {"label":"U", "x":10.75, "y":1},
 | 
					                {"matrix": [1, 4], "x": 5, "y": 1},
 | 
				
			||||||
                {"label":"I", "x":11.75, "y":1},
 | 
					                {"matrix": [1, 5], "x": 6, "y": 1},
 | 
				
			||||||
                {"label":"O", "x":12.75, "y":1},
 | 
					                {"matrix": [1, 6], "x": 7, "y": 1},
 | 
				
			||||||
                {"label":"P", "x":13.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"{", "x":14.75, "y":1},
 | 
					                {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
                {"label":"}", "x":15.75, "y":1},
 | 
					                {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
                {"label":"Backspace", "x":16.75, "y":1, "w":1.5},
 | 
					                {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
                {"label":"Control", "x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
                {"label":"A", "x":3, "y":2},
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
                {"label":"S", "x":4, "y":2},
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
                {"label":"D", "x":5, "y":2},
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"F", "x":6, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"G", "x":7, "y":2},
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
                {"label":"H", "x":10.25, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"J", "x":11.25, "y":2},
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
                {"label":"K", "x":12.25, "y":2},
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
                {"label":"L", "x":13.25, "y":2},
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
                {"label":":", "x":14.25, "y":2}, 
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
                {"label":"\"", "x":15.25, "y":2},
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
                {"label":"Enter", "x":16.25, "y":2, "w":2.25},
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
                {"label":"Shift", "x":1, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
                {"label":"Z", "x":3.25, "y":3},
 | 
					                {"matrix": [2, 7], "x": 10.25, "y": 2},
 | 
				
			||||||
                {"label":"X", "x":4.25, "y":3}, 
 | 
					                {"matrix": [2, 8], "x": 11.25, "y": 2},
 | 
				
			||||||
                {"label":"C", "x":5.25, "y":3}, 
 | 
					                {"matrix": [2, 9], "x": 12.25, "y": 2},
 | 
				
			||||||
                {"label":"V", "x":6.25, "y":3}, 
 | 
					                {"matrix": [2, 10], "x": 13.25, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":7.25, "y":3}, 
 | 
					                {"matrix": [2, 11], "x": 14.25, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":10, "y":3},
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2},
 | 
				
			||||||
                {"label":"N", "x":11, "y":3},
 | 
					                {"matrix": [2, 14], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
                {"label":"M", "x":12, "y":3},
 | 
					
 | 
				
			||||||
                {"label":"<", "x":13, "y":3},
 | 
					                {"matrix": [3, 1], "x": 1, "y": 3, "w": 2.25},
 | 
				
			||||||
                {"label":">", "x":14, "y":3},
 | 
					                {"matrix": [3, 2], "x": 3.25, "y": 3},
 | 
				
			||||||
                {"label":"?", "x":15, "y":3},
 | 
					                {"matrix": [3, 3], "x": 4.25, "y": 3},
 | 
				
			||||||
                {"label":"Shift", "x":16, "y":3, "w":1.75}, 
 | 
					                {"matrix": [3, 4], "x": 5.25, "y": 3},
 | 
				
			||||||
                {"label":"Fn1", "x":17.75, "y":3},
 | 
					                {"matrix": [3, 5], "x": 6.25, "y": 3},
 | 
				
			||||||
                {"label":"Ctrl", "x":1, "y":4, "w":1.5}, 
 | 
					                {"matrix": [3, 6], "x": 7.25, "y": 3},
 | 
				
			||||||
                {"label":"Alt", "x":4, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
                {"label":"LSpace", "x":5.5, "y":4, "w":2.25},
 | 
					                {"matrix": [3, 7], "x": 10, "y": 3},
 | 
				
			||||||
                {"label":"Fn2", "x":7.75, "y":4}, 
 | 
					                {"matrix": [3, 8], "x": 11, "y": 3},
 | 
				
			||||||
                {"label":"RSpace", "x":10, "y":4, "w":2.75}, 
 | 
					                {"matrix": [3, 9], "x": 12, "y": 3},
 | 
				
			||||||
                {"label":"RAlt", "x":12.75, "y":4, "w":1.5}, 
 | 
					                {"matrix": [3, 10], "x": 13, "y": 3},
 | 
				
			||||||
                {"label":"RCtl", "x":17, "y":4, "w":1.5}
 | 
					                {"matrix": [3, 11], "x": 14, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 7.75, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 10, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.75, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -18,87 +18,80 @@
 | 
				
			|||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_all": {
 | 
					        "LAYOUT_alice_all": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"x": 0, "y": 0},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
                {"x": 1, "y": 0},
 | 
					                {"matrix": [0, 1], "x": 1, "y": 0},
 | 
				
			||||||
                {"x": 2, "y": 0},
 | 
					                {"matrix": [0, 2], "x": 2, "y": 0},
 | 
				
			||||||
                {"x": 3, "y": 0},
 | 
					                {"matrix": [0, 3], "x": 3, "y": 0},
 | 
				
			||||||
                {"x": 4, "y": 0},
 | 
					                {"matrix": [0, 4], "x": 4, "y": 0},
 | 
				
			||||||
                {"x": 5, "y": 0},
 | 
					                {"matrix": [0, 5], "x": 5, "y": 0},
 | 
				
			||||||
                {"x": 6, "y": 0},
 | 
					                {"matrix": [0, 6], "x": 6, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 8.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 9.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 16.75, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x": 8.5, "y": 0},
 | 
					                {"matrix": [1, 1], "x": 0, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"x": 9.5, "y": 0},
 | 
					                {"matrix": [1, 2], "x": 1.5, "y": 1},
 | 
				
			||||||
                {"x": 10.5, "y": 0},
 | 
					                {"matrix": [1, 3], "x": 2.5, "y": 1},
 | 
				
			||||||
                {"x": 11.5, "y": 0},
 | 
					                {"matrix": [1, 4], "x": 3.5, "y": 1},
 | 
				
			||||||
                {"x": 12.5, "y": 0},
 | 
					                {"matrix": [1, 5], "x": 4.5, "y": 1},
 | 
				
			||||||
                {"x": 13.5, "y": 0},
 | 
					                {"matrix": [1, 6], "x": 5.5, "y": 1},
 | 
				
			||||||
                {"x": 14.5, "y": 0},
 | 
					                {"matrix": [1, 7], "x": 8, "y": 1},
 | 
				
			||||||
                {"x": 15.5, "y": 0},
 | 
					                {"matrix": [1, 8], "x": 9, "y": 1},
 | 
				
			||||||
                {"x": 16.75, "y": 0},
 | 
					                {"matrix": [1, 9], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 15, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 16.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x": 0, "y": 1, "w": 1.5},
 | 
					                {"matrix": [2, 1], "x": 0, "y": 2, "w": 1.75},
 | 
				
			||||||
                {"x": 1.5, "y": 1},
 | 
					                {"matrix": [2, 2], "x": 1.75, "y": 2},
 | 
				
			||||||
                {"x": 2.5, "y": 1},
 | 
					                {"matrix": [2, 3], "x": 2.75, "y": 2},
 | 
				
			||||||
                {"x": 3.5, "y": 1},
 | 
					                {"matrix": [2, 4], "x": 3.75, "y": 2},
 | 
				
			||||||
                {"x": 4.5, "y": 1},
 | 
					                {"matrix": [2, 5], "x": 4.75, "y": 2},
 | 
				
			||||||
                {"x": 5.5, "y": 1},
 | 
					                {"matrix": [2, 6], "x": 5.75, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 8.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 9.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 14.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 16.75, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x": 8, "y": 1},
 | 
					                {"matrix": [3, 1], "x": 0, "y": 3, "w": 2.25},
 | 
				
			||||||
                {"x": 9, "y": 1},
 | 
					                {"matrix": [3, 2], "x": 2.25, "y": 3},
 | 
				
			||||||
                {"x": 10, "y": 1},
 | 
					                {"matrix": [3, 3], "x": 3.25, "y": 3},
 | 
				
			||||||
                {"x": 11, "y": 1},
 | 
					                {"matrix": [3, 4], "x": 4.25, "y": 3},
 | 
				
			||||||
                {"x": 12, "y": 1},
 | 
					                {"matrix": [3, 5], "x": 5.25, "y": 3},
 | 
				
			||||||
                {"x": 13, "y": 1},
 | 
					                {"matrix": [3, 6], "x": 6.25, "y": 3},
 | 
				
			||||||
                {"x": 14, "y": 1},
 | 
					                {"matrix": [3, 7], "x": 8, "y": 3},
 | 
				
			||||||
                {"x": 15, "y": 1, "w": 1.5},
 | 
					                {"matrix": [3, 8], "x": 9, "y": 3},
 | 
				
			||||||
                {"x": 16.75, "y": 1},
 | 
					                {"matrix": [3, 9], "x": 10, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 11, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 12, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 13, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14, "y": 3, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 15.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x": 0, "y": 2, "w": 1.75},
 | 
					                {"matrix": [4, 1], "x": 0, "y": 4, "w": 1.25},
 | 
				
			||||||
                {"x": 1.75, "y": 2},
 | 
					                {"matrix": [4, 2], "x": 1.25, "y": 4, "w": 1.25},
 | 
				
			||||||
                {"x": 2.75, "y": 2},
 | 
					                {"matrix": [4, 4], "x": 3.25, "y": 4, "w": 1.25},
 | 
				
			||||||
                {"x": 3.75, "y": 2},
 | 
					                {"matrix": [4, 5], "x": 4.5, "y": 4, "w": 2.75},
 | 
				
			||||||
                {"x": 4.75, "y": 2},
 | 
					                {"matrix": [4, 7], "x": 8, "y": 4, "w": 2.25},
 | 
				
			||||||
                {"x": 5.75, "y": 2},
 | 
					                {"matrix": [4, 8], "x": 10.25, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12, "y": 4, "w": 1.25},
 | 
				
			||||||
                {"x": 8.25, "y": 2},
 | 
					                {"matrix": [4, 11], "x": 13.25, "y": 4, "w": 1.25},
 | 
				
			||||||
                {"x": 9.25, "y": 2},
 | 
					                {"matrix": [4, 12], "x": 14.75, "y": 4.25},
 | 
				
			||||||
                {"x": 10.25, "y": 2},
 | 
					                {"matrix": [4, 13], "x": 15.75, "y": 4.25},
 | 
				
			||||||
                {"x": 11.25, "y": 2},
 | 
					                {"matrix": [4, 14], "x": 16.75, "y": 4.25}
 | 
				
			||||||
                {"x": 12.25, "y": 2},
 | 
					 | 
				
			||||||
                {"x": 13.25, "y": 2},
 | 
					 | 
				
			||||||
                {"x": 14.25, "y": 2, "w": 2.25},
 | 
					 | 
				
			||||||
                {"x": 16.75, "y": 2},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"x": 0, "y": 3, "w": 2.25},
 | 
					 | 
				
			||||||
                {"x": 2.25, "y": 3},
 | 
					 | 
				
			||||||
                {"x": 3.25, "y": 3},
 | 
					 | 
				
			||||||
                {"x": 4.25, "y": 3},
 | 
					 | 
				
			||||||
                {"x": 5.25, "y": 3},
 | 
					 | 
				
			||||||
                {"x": 6.25, "y": 3},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"x": 8, "y": 3},
 | 
					 | 
				
			||||||
                {"x": 9, "y": 3},
 | 
					 | 
				
			||||||
                {"x": 10, "y": 3},
 | 
					 | 
				
			||||||
                {"x": 11, "y": 3},
 | 
					 | 
				
			||||||
                {"x": 12, "y": 3},
 | 
					 | 
				
			||||||
                {"x": 13, "y": 3},
 | 
					 | 
				
			||||||
                {"x": 14, "y": 3, "w": 1.5},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"x": 15.75, "y": 3.25},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"x": 0, "y": 4, "w": 1.25},
 | 
					 | 
				
			||||||
                {"x": 1.25, "y": 4, "w": 1.25},
 | 
					 | 
				
			||||||
                {"x": 3.25, "y": 4, "w": 1.25},
 | 
					 | 
				
			||||||
                {"x": 4.5, "y": 4, "w": 2.75},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"x": 8, "y": 4, "w": 2.25},
 | 
					 | 
				
			||||||
                {"x": 10.25, "y": 4, "w": 1.25},
 | 
					 | 
				
			||||||
                {"x": 12, "y": 4, "w": 1.25},
 | 
					 | 
				
			||||||
                {"x": 13.25, "y": 4, "w": 1.25},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"x": 14.75, "y": 4.25},
 | 
					 | 
				
			||||||
                {"x": 15.75, "y": 4.25},
 | 
					 | 
				
			||||||
                {"x": 16.75, "y": 4.25}
 | 
					 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,32 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2022 <me@fjlaboratories.com>
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* === All used matrix spots populated === */
 | 
					 | 
				
			||||||
#define LAYOUT_alice_all( \
 | 
					 | 
				
			||||||
    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
 | 
					 | 
				
			||||||
    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \
 | 
					 | 
				
			||||||
    K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B,      K3D, K3E, \
 | 
					 | 
				
			||||||
    K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D,      \
 | 
					 | 
				
			||||||
    K50, K51, K52,      K54,  K55,     K57, K58,      K5A, K5B, K5C, K5D, K5E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00, K01, K02, K03,   K04,   K05, K06,   K07,   K08,   K09,   K0A, K0B,   K0C,   K0D, K0E   },  \
 | 
					 | 
				
			||||||
    { K10, K11, K12, K13,   K14,   K15, K16,   K17,   K18,   K19,   K1A, K1B,   K1C,   K1D, K1E   },  \
 | 
					 | 
				
			||||||
    { K30, K31, K32, K33,   K34,   K35, K36,   K37,   K38,   K39,   K3A, K3B,   KC_NO, K3D, K3E   },  \
 | 
					 | 
				
			||||||
    { K40, K41, K42, K43,   K44,   K45, K46,   K47,   K48,   K49,   K4A, K4B,   K4C,   K4D, KC_NO },  \
 | 
					 | 
				
			||||||
    { K50, K51, K52, KC_NO, K54,   K55, KC_NO, K57,   K58,   KC_NO, K5A, K5B,   K5C,   K5D, K5E   }   \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -13,7 +13,8 @@
 | 
				
			|||||||
 * You should have received a copy of the GNU General Public License
 | 
					 * You should have received a copy of the GNU General Public License
 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#include "colorlice.h"
 | 
					
 | 
				
			||||||
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef RGB_MATRIX_ENABLE
 | 
					#ifdef RGB_MATRIX_ENABLE
 | 
				
			||||||
led_config_t g_led_config = { {
 | 
					led_config_t g_led_config = { {
 | 
				
			||||||
 | 
				
			|||||||
@ -1,43 +0,0 @@
 | 
				
			|||||||
/* Copyright 2019 marhalloweenvt
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* This a shortcut to help you visually see your layout.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The first section contains all of the arguments representing the physical
 | 
					 | 
				
			||||||
 * layout of the board and position of the keys.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The second converts the arguments into a two-dimensional array which
 | 
					 | 
				
			||||||
 * represents the switch matrix.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, \
 | 
					 | 
				
			||||||
    k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e,      \
 | 
					 | 
				
			||||||
    k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c,      K2e,      \
 | 
					 | 
				
			||||||
    k30, k31, k32, k33, k34, k35,      k37, k38, k39, k3a, k3b, k3c, k3d, k3e,      \
 | 
					 | 
				
			||||||
    k40,      k42, k43, k44,           k47,           k4a,                k4e       \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k00,  k01,   k02,   k03,  k04,  k05,   k06,   k07,   k08,  k09,   k0a,  k0b,  k0c,    k0d,    k0e, k0f    }, \
 | 
					 | 
				
			||||||
    { k10,  k11,   k12,   k13,  k14,  k15,   k16,   k17,   k18,  k19,   k1a,  k1b,  k1c,    k1d,    k1e, KC_NO  }, \
 | 
					 | 
				
			||||||
    { k20,  k21,   k22,   k23,  k24,  k25,   k26,   k27,   k28,  k29,   k2a,  k2b,  k2c,    KC_NO,  K2e, KC_NO  }, \
 | 
					 | 
				
			||||||
    { k30,  k31,   k32,   k33,  k34,  k35,   KC_NO, k37,   k38,  k39,   k3a,  k3b,  k3c,    k3d,    k3e, KC_NO  }, \
 | 
					 | 
				
			||||||
    { k40,  KC_NO, k42,   k43,  k44,  KC_NO, KC_NO, k47, KC_NO,  KC_NO, k4a,  KC_NO,KC_NO,  KC_NO,  k4e, KC_NO  }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -16,76 +16,90 @@
 | 
				
			|||||||
    "processor": "atmega32u4",
 | 
					    "processor": "atmega32u4",
 | 
				
			||||||
    "bootloader": "atmel-dfu",
 | 
					    "bootloader": "atmel-dfu",
 | 
				
			||||||
    "community_layouts": ["alice_split_bs"],
 | 
					    "community_layouts": ["alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
      "LAYOUT_alice_split_bs": {
 | 
					      "LAYOUT_alice_split_bs": {
 | 
				
			||||||
        "layout": [
 | 
					        "layout": [
 | 
				
			||||||
          {"label":"K63", "x":0, "y":0},
 | 
					          {"label": "K63", "matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
          {"label":"K00", "x":1.25, "y":0},
 | 
					
 | 
				
			||||||
          {"label":"K01", "x":2.25, "y":0},
 | 
					          {"label": "K00", "matrix": [0, 1], "x": 1.25, "y": 0},
 | 
				
			||||||
          {"label":"K02", "x":3.25, "y":0},
 | 
					          {"label": "K01", "matrix": [0, 2], "x": 2.25, "y": 0},
 | 
				
			||||||
          {"label":"K03", "x":4.25, "y":0},
 | 
					          {"label": "K02", "matrix": [0, 3], "x": 3.25, "y": 0},
 | 
				
			||||||
          {"label":"K04", "x":5.25, "y":0},
 | 
					          {"label": "K03", "matrix": [0, 4], "x": 4.25, "y": 0},
 | 
				
			||||||
          {"label":"K05", "x":6.25, "y":0},
 | 
					          {"label": "K04", "matrix": [0, 5], "x": 5.25, "y": 0},
 | 
				
			||||||
          {"label":"K06", "x":7.25, "y":0},
 | 
					          {"label": "K05", "matrix": [0, 6], "x": 6.25, "y": 0},
 | 
				
			||||||
          {"label":"K07", "x":10.25, "y":0},
 | 
					          {"label": "K06", "matrix": [0, 7], "x": 7.25, "y": 0},
 | 
				
			||||||
          {"label":"K08", "x":11.25, "y":0},
 | 
					
 | 
				
			||||||
          {"label":"K09", "x":12.25, "y":0},
 | 
					          {"label": "K07", "matrix": [0, 8], "x": 10.25, "y": 0},
 | 
				
			||||||
          {"label":"K10", "x":13.25, "y":0},
 | 
					          {"label": "K08", "matrix": [0, 9], "x": 11.25, "y": 0},
 | 
				
			||||||
          {"label":"K11", "x":14.25, "y":0},
 | 
					          {"label": "K09", "matrix": [0, 10], "x": 12.25, "y": 0},
 | 
				
			||||||
          {"label":"K12", "x":15.25, "y":0},
 | 
					          {"label": "K10", "matrix": [0, 11], "x": 13.25, "y": 0},
 | 
				
			||||||
          {"label":"K13", "x":16.25, "y":0},
 | 
					          {"label": "K11", "matrix": [0, 12], "x": 14.25, "y": 0},
 | 
				
			||||||
          {"label":"K14", "x":17.25, "y":0},
 | 
					          {"label": "K12", "matrix": [0, 13], "x": 15.25, "y": 0},
 | 
				
			||||||
          {"label":"K64", "x":0, "y":1},
 | 
					          {"label": "K13", "matrix": [0, 14], "x": 16.25, "y": 0},
 | 
				
			||||||
          {"label":"K15", "x":1.25, "y":1, "w":1.5},
 | 
					          {"label": "K14", "matrix": [0, 15], "x": 17.25, "y": 0},
 | 
				
			||||||
          {"label":"K16", "x":2.75, "y":1},
 | 
					
 | 
				
			||||||
          {"label":"K17", "x":3.75, "y":1},
 | 
					          {"label": "K64", "matrix": [1, 0], "x": 0, "y": 1},
 | 
				
			||||||
          {"label":"K18", "x":4.75, "y":1},
 | 
					
 | 
				
			||||||
          {"label":"K19", "x":5.75, "y":1},
 | 
					          {"label": "K15", "matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
          {"label":"K20", "x":6.75, "y":1},
 | 
					          {"label": "K16", "matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
          {"label":"K21", "x":9.75, "y":1},
 | 
					          {"label": "K17", "matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
          {"label":"K22", "x":10.75, "y":1},
 | 
					          {"label": "K18", "matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
          {"label":"K23", "x":11.75, "y":1},
 | 
					          {"label": "K19", "matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
          {"label":"K24", "x":12.75, "y":1},
 | 
					          {"label": "K20", "matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
          {"label":"K25", "x":13.75, "y":1},
 | 
					
 | 
				
			||||||
          {"label":"K26", "x":14.75, "y":1},
 | 
					          {"label": "K21", "matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
          {"label":"K27", "x":15.75, "y":1},
 | 
					          {"label": "K22", "matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
          {"label":"K28", "x":16.75, "y":1, "w":1.5},
 | 
					          {"label": "K23", "matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
          {"label":"K65", "x":0, "y":2},
 | 
					          {"label": "K24", "matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
          {"label":"K29", "x":1.25, "y":2, "w":1.75},
 | 
					          {"label": "K25", "matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
          {"label":"K30", "x":3, "y":2},
 | 
					          {"label": "K26", "matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
          {"label":"K31", "x":4, "y":2},
 | 
					          {"label": "K27", "matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
          {"label":"K32", "x":5, "y":2},
 | 
					          {"label": "K28", "matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
          {"label":"K33", "x":6, "y":2},
 | 
					
 | 
				
			||||||
          {"label":"K34", "x":7, "y":2},
 | 
					          {"label": "K65", "matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
          {"label":"K35", "x":10, "y":2},
 | 
					
 | 
				
			||||||
          {"label":"K36", "x":11, "y":2},
 | 
					          {"label": "K29", "matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
          {"label":"K37", "x":12, "y":2},
 | 
					          {"label": "K30", "matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
          {"label":"K38", "x":13, "y":2},
 | 
					          {"label": "K31", "matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
          {"label":"K39", "x":14, "y":2},
 | 
					          {"label": "K32", "matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
          {"label":"K40", "x":15, "y":2},
 | 
					          {"label": "K33", "matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
          {"label":"K41", "x":16, "y":2, "w":2.25},
 | 
					          {"label": "K34", "matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
          {"label":"K42", "x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
          {"label":"K43", "x":3.5, "y":3},
 | 
					          {"label": "K35", "matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
          {"label":"K44", "x":4.5, "y":3},
 | 
					          {"label": "K36", "matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
          {"label":"K45", "x":5.5, "y":3},
 | 
					          {"label": "K37", "matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
          {"label":"K46", "x":6.5, "y":3},
 | 
					          {"label": "K38", "matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
          {"label":"K47", "x":7.5, "y":3},
 | 
					          {"label": "K39", "matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
          {"label":"K48", "x":9.5, "y":3},
 | 
					          {"label": "K40", "matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
          {"label":"K49", "x":10.5, "y":3},
 | 
					          {"label": "K41", "matrix": [2, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
          {"label":"K50", "x":11.5, "y":3},
 | 
					
 | 
				
			||||||
          {"label":"K51", "x":12.5, "y":3},
 | 
					          {"label": "K42", "matrix": [3, 0], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
          {"label":"K52", "x":13.5, "y":3},
 | 
					          {"label": "K43", "matrix": [3, 1], "x": 3.5, "y": 3},
 | 
				
			||||||
          {"label":"K53", "x":14.5, "y":3},
 | 
					          {"label": "K44", "matrix": [3, 2], "x": 4.5, "y": 3},
 | 
				
			||||||
          {"label":"K54", "x":15.5, "y":3, "w":1.75},
 | 
					          {"label": "K45", "matrix": [3, 3], "x": 5.5, "y": 3},
 | 
				
			||||||
          {"label":"K55", "x":17.25, "y":3},
 | 
					          {"label": "K46", "matrix": [3, 4], "x": 6.5, "y": 3},
 | 
				
			||||||
          {"label":"K56", "x":1.25, "y":4, "w":1.5},
 | 
					          {"label": "K47", "matrix": [3, 5], "x": 7.5, "y": 3},
 | 
				
			||||||
          {"label":"K57", "x":4.25, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
          {"label":"K58", "x":5.75, "y":4, "w":2},
 | 
					          {"label": "K48", "matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
          {"label":"K59", "x":7.75, "y":4, "w":1.25},
 | 
					          {"label": "K49", "matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
          {"label":"K60", "x":9.5, "y":4, "w":2.75},
 | 
					          {"label": "K50", "matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
          {"label":"K61", "x":12.25, "y":4, "w":1.5},
 | 
					          {"label": "K51", "matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
          {"label":"K62", "x":16.75, "y":4, "w":1.5}
 | 
					          {"label": "K52", "matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					          {"label": "K53", "matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					          {"label": "K54", "matrix": [3, 13], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					          {"label": "K55", "matrix": [3, 14], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          {"label": "K56", "matrix": [4, 0], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"label": "K57", "matrix": [4, 2], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"label": "K58", "matrix": [4, 3], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					          {"label": "K59", "matrix": [4, 4], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					          {"label": "K60", "matrix": [4, 7], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					          {"label": "K61", "matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"label": "K62", "matrix": [4, 14], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
        ]
 | 
					        ]
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -12,18 +12,344 @@
 | 
				
			|||||||
    "bootloader": "caterina",
 | 
					    "bootloader": "caterina",
 | 
				
			||||||
    "debounce": 9,
 | 
					    "debounce": 9,
 | 
				
			||||||
    "community_layouts": ["alice", "alice_split_bs"],
 | 
					    "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_owlet60_60_percent_full_bsp": "LAYOUT_alice",
 | 
				
			||||||
 | 
					        "LAYOUT_owlet60_60_percent_split_bsp": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_owlet60_full_bsp": {
 | 
					        "LAYOUT_owlet60_full_bsp": {
 | 
				
			||||||
            "layout": [{"label":"F1", "x":0.5, "y":0}, {"label":"~", "x":1.75, "y":0}, {"label":"!", "x":2.75, "y":0}, {"label":"@", "x":3.75, "y":0}, {"label":"#", "x":4.75, "y":0}, {"label":"$", "x":5.75, "y":0}, {"label":"%", "x":6.75, "y":0}, {"label":"^", "x":7.75, "y":0}, {"label":"&", "x":9.25, "y":0}, {"label":"*", "x":10.25, "y":0}, {"label":"(", "x":11.25, "y":0}, {"label":")", "x":12.25, "y":0}, {"label":"_", "x":13.25, "y":0}, {"label":"+", "x":14.25, "y":0}, {"label":"Backspace", "x":15.25, "y":0, "w":2}, {"label":"PgUp", "x":17.25, "y":0}, {"label":"F2", "x":0.25, "y":1}, {"label":"Tab", "x":1.5, "y":1, "w":1.5}, {"label":"Q", "x":3, "y":1}, {"label":"W", "x":4, "y":1}, {"label":"E", "x":5, "y":1}, {"label":"R", "x":6, "y":1}, {"label":"T", "x":7, "y":1}, {"label":"Y", "x":9, "y":1}, {"label":"U", "x":10, "y":1}, {"label":"I", "x":11, "y":1}, {"label":"O", "x":12, "y":1}, {"label":"P", "x":13, "y":1}, {"label":"{", "x":14, "y":1}, {"label":"}", "x":15, "y":1}, {"label":"|", "x":16, "y":1, "w":1.5}, {"label":"PgDn", "x":17.5, "y":1}, {"label":"F3", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":9.5, "y":2}, {"label":"J", "x":10.5, "y":2}, {"label":"K", "x":11.5, "y":2}, {"label":"L", "x":12.5, "y":2}, {"label":":", "x":13.5, "y":2}, {"label":"\"", "x":14.5, "y":2}, {"label":"Enter", "x":15.5, "y":2, "w":2.25}, {"label":"Home", "x":17.75, "y":2}, {"label":"Shift", "x":1, "y":3, "w":2.25}, {"label":"Z", "x":3.25, "y":3}, {"label":"X", "x":4.25, "y":3}, {"label":"C", "x":5.25, "y":3}, {"label":"V", "x":6.25, "y":3}, {"label":"B", "x":7.25, "y":3}, {"label":"B", "x":9.25, "y":3}, {"label":"N", "x":10.25, "y":3}, {"label":"M", "x":11.25, "y":3}, {"label":"<", "x":12.25, "y":3}, {"label":">", "x":13.25, "y":3}, {"label":"?", "x":14.25, "y":3}, {"label":"Shift", "x":15.25, "y":3, "w":1.75}, {"label":"Up", "x":17, "y":3}, {"label":"End", "x":18, "y":3}, {"label":"Ctrl", "x":1, "y":4, "w":1.5}, {"label":"Alt", "x":3.5, "y":4, "w":1.5}, {"x":5, "y":4, "w":2.25}, {"label":"Super", "x":7.25, "y":4, "w":1.25}, {"x":9.25, "y":4, "w":2}, {"label":"Alt", "x":11.25, "y":4, "w":1.5}, {"label":"Left", "x":16, "y":4}, {"label":"Down", "x":17, "y":4}, {"label":"Right", "x":18, "y":4}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 0], "x": 1.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 2.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 3.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 4.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 5.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 6.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 7.75, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 9.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 15.25, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 9, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 16, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [6, 7], "x": 17.5, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 9.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 10.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 11.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 13.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 14.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 15.5, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 17.75, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 5.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 6.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 7.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 9.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 10.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 11.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 12.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 13.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 14.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 15.25, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 17, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 7], "x": 18, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 3.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 7.25, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 9.25, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 11.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 16, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 17, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 18, "y": 4}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_owlet60_split_bsp": {
 | 
					        "LAYOUT_owlet60_split_bsp": {
 | 
				
			||||||
            "layout": [{"label":"F1", "x":0.5, "y":0}, {"label":"~", "x":1.75, "y":0}, {"label":"!", "x":2.75, "y":0}, {"label":"@", "x":3.75, "y":0}, {"label":"#", "x":4.75, "y":0}, {"label":"$", "x":5.75, "y":0}, {"label":"%", "x":6.75, "y":0}, {"label":"^", "x":7.75, "y":0}, {"label":"&", "x":9.25, "y":0}, {"label":"*", "x":10.25, "y":0}, {"label":"(", "x":11.25, "y":0}, {"label":")", "x":12.25, "y":0}, {"label":"_", "x":13.25, "y":0}, {"label":"+", "x":14.25, "y":0}, {"label":"Bsp", "x":15.25, "y":0}, {"label":"Del", "x":16.25, "y":0}, {"label":"PgUp", "x":17.25, "y":0}, {"label":"F2", "x":0.25, "y":1}, {"label":"Tab", "x":1.5, "y":1, "w":1.5}, {"label":"Q", "x":3, "y":1}, {"label":"W", "x":4, "y":1}, {"label":"E", "x":5, "y":1}, {"label":"R", "x":6, "y":1}, {"label":"T", "x":7, "y":1}, {"label":"Y", "x":9, "y":1}, {"label":"U", "x":10, "y":1}, {"label":"I", "x":11, "y":1}, {"label":"O", "x":12, "y":1}, {"label":"P", "x":13, "y":1}, {"label":"{", "x":14, "y":1}, {"label":"}", "x":15, "y":1}, {"label":"|", "x":16, "y":1, "w":1.5}, {"label":"PgDn", "x":17.5, "y":1}, {"label":"F3", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":9.5, "y":2}, {"label":"J", "x":10.5, "y":2}, {"label":"K", "x":11.5, "y":2}, {"label":"L", "x":12.5, "y":2}, {"label":":", "x":13.5, "y":2}, {"label":"\"", "x":14.5, "y":2}, {"label":"Enter", "x":15.5, "y":2, "w":2.25}, {"label":"Home", "x":17.75, "y":2}, {"label":"Shift", "x":1, "y":3, "w":2.25}, {"label":"Z", "x":3.25, "y":3}, {"label":"X", "x":4.25, "y":3}, {"label":"C", "x":5.25, "y":3}, {"label":"V", "x":6.25, "y":3}, {"label":"B", "x":7.25, "y":3}, {"label":"B", "x":9.25, "y":3}, {"label":"N", "x":10.25, "y":3}, {"label":"M", "x":11.25, "y":3}, {"label":"<", "x":12.25, "y":3}, {"label":">", "x":13.25, "y":3}, {"label":"?", "x":14.25, "y":3}, {"label":"Shift", "x":15.25, "y":3, "w":1.75}, {"label":"Up", "x":17, "y":3}, {"label":"End", "x":18, "y":3}, {"label":"Ctrl", "x":1, "y":4, "w":1.5}, {"label":"Alt", "x":3.5, "y":4, "w":1.5}, {"x":5, "y":4, "w":2.25}, {"label":"Super", "x":7.25, "y":4, "w":1.25}, {"x":9.25, "y":4, "w":2}, {"label":"Alt", "x":11.25, "y":4, "w":1.5}, {"label":"Left", "x":16, "y":4}, {"label":"Down", "x":17, "y":4}, {"label":"Right", "x":18, "y":4}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 0], "x": 1.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 2.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 3.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 4.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 5.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 6.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 7.75, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 9.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 7], "x": 16.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 9, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 16, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [6, 7], "x": 17.5, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 9.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 10.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 11.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 13.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 14.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 15.5, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 17.75, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 5.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 6.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 7.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 9.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 10.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 11.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 12.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 13.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 14.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 15.25, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 17, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 7], "x": 18, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 3.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 7.25, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 9.25, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 11.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 16, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 17, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 18, "y": 4}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [{"label":"F1", "x":0.5, "y":0}, {"label":"~", "x":1.75, "y":0}, {"label":"!", "x":2.75, "y":0}, {"label":"@", "x":3.75, "y":0}, {"label":"#", "x":4.75, "y":0}, {"label":"$", "x":5.75, "y":0}, {"label":"%", "x":6.75, "y":0}, {"label":"^", "x":7.75, "y":0}, {"label":"&", "x":9.25, "y":0}, {"label":"*", "x":10.25, "y":0}, {"label":"(", "x":11.25, "y":0}, {"label":")", "x":12.25, "y":0}, {"label":"_", "x":13.25, "y":0}, {"label":"+", "x":14.25, "y":0}, {"label":"Bsp", "x":15.25, "y":0}, {"label":"Del", "x":16.25, "y":0}, {"label":"F2", "x":0.25, "y":1}, {"label":"Tab", "x":1.5, "y":1, "w":1.5}, {"label":"Q", "x":3, "y":1}, {"label":"W", "x":4, "y":1}, {"label":"E", "x":5, "y":1}, {"label":"R", "x":6, "y":1}, {"label":"T", "x":7, "y":1}, {"label":"Y", "x":9, "y":1}, {"label":"U", "x":10, "y":1}, {"label":"I", "x":11, "y":1}, {"label":"O", "x":12, "y":1}, {"label":"P", "x":13, "y":1}, {"label":"{", "x":14, "y":1}, {"label":"}", "x":15, "y":1}, {"label":"|", "x":16, "y":1, "w":1.5}, {"label":"F3", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":9.5, "y":2}, {"label":"J", "x":10.5, "y":2}, {"label":"K", "x":11.5, "y":2}, {"label":"L", "x":12.5, "y":2}, {"label":":", "x":13.5, "y":2}, {"label":"\"", "x":14.5, "y":2}, {"label":"Enter", "x":15.5, "y":2, "w":2.25}, {"label":"Shift", "x":1, "y":3, "w":2.25}, {"label":"Z", "x":3.25, "y":3}, {"label":"X", "x":4.25, "y":3}, {"label":"C", "x":5.25, "y":3}, {"label":"V", "x":6.25, "y":3}, {"label":"B", "x":7.25, "y":3}, {"label":"B", "x":9.25, "y":3}, {"label":"N", "x":10.25, "y":3}, {"label":"M", "x":11.25, "y":3}, {"label":"<", "x":12.25, "y":3}, {"label":">", "x":13.25, "y":3}, {"label":"?", "x":14.25, "y":3}, {"label":"Shift", "x":15.25, "y":3, "w":1.75}, {"label":"Up", "x":17, "y":3}, {"label":"Ctrl", "x":1, "y":4, "w":1.5}, {"label":"Alt", "x":3.5, "y":4, "w":1.5}, {"x":5, "y":4, "w":2.25}, {"label":"Super", "x":7.25, "y":4, "w":1.25}, {"x":9.25, "y":4, "w":2}, {"label":"Alt", "x":11.25, "y":4, "w":1.5}, {"label":"Ctrl", "x":16.25, "y":4, "w":1.5}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 0], "x": 1.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 2.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 3.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 4.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 5.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 6.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 7.75, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 9.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 7], "x": 16.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 9, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 16, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 9.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 10.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 11.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 13.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 14.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 15.5, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 5.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 6.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 7.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 9.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 10.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 11.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 12.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 13.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 14.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 15.25, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 17, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 3.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 7.25, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 9.25, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 11.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 16.25, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [{"label":"F1", "x":0.5, "y":0}, {"label":"~", "x":1.75, "y":0}, {"label":"!", "x":2.75, "y":0}, {"label":"@", "x":3.75, "y":0}, {"label":"#", "x":4.75, "y":0}, {"label":"$", "x":5.75, "y":0}, {"label":"%", "x":6.75, "y":0}, {"label":"^", "x":7.75, "y":0}, {"label":"&", "x":9.25, "y":0}, {"label":"*", "x":10.25, "y":0}, {"label":"(", "x":11.25, "y":0}, {"label":")", "x":12.25, "y":0}, {"label":"_", "x":13.25, "y":0}, {"label":"+", "x":14.25, "y":0}, {"label":"Bsp", "x":15.25, "y":0, "w":2}, {"label":"F2", "x":0.25, "y":1}, {"label":"Tab", "x":1.5, "y":1, "w":1.5}, {"label":"Q", "x":3, "y":1}, {"label":"W", "x":4, "y":1}, {"label":"E", "x":5, "y":1}, {"label":"R", "x":6, "y":1}, {"label":"T", "x":7, "y":1}, {"label":"Y", "x":9, "y":1}, {"label":"U", "x":10, "y":1}, {"label":"I", "x":11, "y":1}, {"label":"O", "x":12, "y":1}, {"label":"P", "x":13, "y":1}, {"label":"{", "x":14, "y":1}, {"label":"}", "x":15, "y":1}, {"label":"|", "x":16, "y":1, "w":1.5}, {"label":"F3", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":9.5, "y":2}, {"label":"J", "x":10.5, "y":2}, {"label":"K", "x":11.5, "y":2}, {"label":"L", "x":12.5, "y":2}, {"label":":", "x":13.5, "y":2}, {"label":"\"", "x":14.5, "y":2}, {"label":"Enter", "x":15.5, "y":2, "w":2.25}, {"label":"Shift", "x":1, "y":3, "w":2.25}, {"label":"Z", "x":3.25, "y":3}, {"label":"X", "x":4.25, "y":3}, {"label":"C", "x":5.25, "y":3}, {"label":"V", "x":6.25, "y":3}, {"label":"B", "x":7.25, "y":3}, {"label":"B", "x":9.25, "y":3}, {"label":"N", "x":10.25, "y":3}, {"label":"M", "x":11.25, "y":3}, {"label":"<", "x":12.25, "y":3}, {"label":">", "x":13.25, "y":3}, {"label":"?", "x":14.25, "y":3}, {"label":"Shift", "x":15.25, "y":3, "w":1.75}, {"label":"Up", "x":17, "y":3}, {"label":"Ctrl", "x":1, "y":4, "w":1.5}, {"label":"Alt", "x":3.5, "y":4, "w":1.5}, {"x":5, "y":4, "w":2.25}, {"label":"Super", "x":7.25, "y":4, "w":1.25}, {"x":9.25, "y":4, "w":2}, {"label":"Alt", "x":11.25, "y":4, "w":1.5}, {"label":"Ctrl", "x":16.25, "y":4, "w":1.5}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 0], "x": 1.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 2.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 3.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 4.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 5.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 6.75, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 7.75, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 9.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 15.25, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 9, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 16, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 9.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 10.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 11.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 13.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 14.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 15.5, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 5.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 6.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 7.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 9.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 10.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 11.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 12.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 13.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 14.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 15.25, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 17, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 3.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 7.25, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 9.25, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 11.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 16.25, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -21,7 +21,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			|||||||
 */
 | 
					 */
 | 
				
			||||||
#include <stdint.h>
 | 
					#include <stdint.h>
 | 
				
			||||||
#include <stdbool.h>
 | 
					#include <stdbool.h>
 | 
				
			||||||
#include "owlet60.h"
 | 
					 | 
				
			||||||
#include "wait.h"
 | 
					#include "wait.h"
 | 
				
			||||||
#include "print.h"
 | 
					#include "print.h"
 | 
				
			||||||
#include "debug.h"
 | 
					#include "debug.h"
 | 
				
			||||||
 | 
				
			|||||||
@ -1,101 +0,0 @@
 | 
				
			|||||||
/* Copyright 2019 worthlessowl
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* This a shortcut to help you visually see your layout.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The first section contains all of the arguments representing the physical
 | 
					 | 
				
			||||||
 * layout of the board and position of the keys.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The second converts the arguments into a two-dimensional array which
 | 
					 | 
				
			||||||
 * represents the switch matrix.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_owlet60_split_bsp( \
 | 
					 | 
				
			||||||
    k50, k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, \
 | 
					 | 
				
			||||||
    k51, k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d,      k1e, \
 | 
					 | 
				
			||||||
    k52, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c,           k2d, \
 | 
					 | 
				
			||||||
         k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d,      k3e, \
 | 
					 | 
				
			||||||
         k40,      k41,      k42, k43, k44,           k45,          k46,  k47,      k48 \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k50, k11, k13, k15, k07, k19, k1b, k1d}, \
 | 
					 | 
				
			||||||
    { k51, k21, k23, k25, k17, k29, k2b, k3d}, \
 | 
					 | 
				
			||||||
    { k52, k31, k33, k35, k27, k39, k3b, k47}, \
 | 
					 | 
				
			||||||
    { k40, k41, k42, k43, k37, k45, k46, k48}, \
 | 
					 | 
				
			||||||
    { k30, k32, k34, k44, k38, k3a, k3c, k3e}, \
 | 
					 | 
				
			||||||
    { k20, k22, k24, k36, k28, k2a, k2c, k2d}, \
 | 
					 | 
				
			||||||
    { k10, k12, k14, k26, k18, k1a, k1c, k1e}, \
 | 
					 | 
				
			||||||
    { k00, k02, k04, k16, k08, k0a, k0c, k0f}, \
 | 
					 | 
				
			||||||
    { k01, k03, k05, k06, k09, k0b, k0d, k0e} \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_owlet60_full_bsp( \
 | 
					 | 
				
			||||||
    k50,  k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c,    k0d,   k0f, \
 | 
					 | 
				
			||||||
    k51,  k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d,      k1e, \
 | 
					 | 
				
			||||||
    k52,  k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c,           k2d, \
 | 
					 | 
				
			||||||
          k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d,      k3e, \
 | 
					 | 
				
			||||||
          k40,      k41,      k42, k43, k44,           k45,          k46,  k47,      k48 \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k50, k11, k13, k15, k07, k19, k1b, k1d}, \
 | 
					 | 
				
			||||||
    { k51, k21, k23, k25, k17, k29, k2b, k3d}, \
 | 
					 | 
				
			||||||
    { k52, k31, k33, k35, k27, k39, k3b, k47}, \
 | 
					 | 
				
			||||||
    { k40, k41, k42, k43, k37, k45, k46, k48}, \
 | 
					 | 
				
			||||||
    { k30, k32, k34, k44, k38, k3a, k3c, k3e}, \
 | 
					 | 
				
			||||||
    { k20, k22, k24, k36, k28, k2a, k2c, k2d}, \
 | 
					 | 
				
			||||||
    { k10, k12, k14, k26, k18, k1a, k1c, k1e}, \
 | 
					 | 
				
			||||||
    { k00, k02, k04, k16, k08, k0a, k0c, k0f}, \
 | 
					 | 
				
			||||||
    { k01, k03, k05, k06, k09, k0b, k0d, KC_NO} \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    k50, k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, \
 | 
					 | 
				
			||||||
    k51, k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d,      \
 | 
					 | 
				
			||||||
    k52, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c,           \
 | 
					 | 
				
			||||||
         k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d,      \
 | 
					 | 
				
			||||||
         k40,      k41,      k42, k43, k44,           k45,                k47      \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k50, k11, k13, k15, k07, k19, k1b, k1d}, \
 | 
					 | 
				
			||||||
    { k51, k21, k23, k25, k17, k29, k2b, k3d}, \
 | 
					 | 
				
			||||||
    { k52, k31, k33, k35, k27, k39, k3b, k47}, \
 | 
					 | 
				
			||||||
    { k40, k41, k42, k43, k37, k45, KC_NO, KC_NO}, \
 | 
					 | 
				
			||||||
    { k30, k32, k34, k44, k38, k3a, k3c, KC_NO}, \
 | 
					 | 
				
			||||||
    { k20, k22, k24, k36, k28, k2a, k2c, KC_NO}, \
 | 
					 | 
				
			||||||
    { k10, k12, k14, k26, k18, k1a, k1c, KC_NO}, \
 | 
					 | 
				
			||||||
    { k00, k02, k04, k16, k08, k0a, k0c, KC_NO}, \
 | 
					 | 
				
			||||||
    { k01, k03, k05, k06, k09, k0b, k0d, k0e} \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    k50, k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d,  \
 | 
					 | 
				
			||||||
    k51, k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d,  \
 | 
					 | 
				
			||||||
    k52, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c,       \
 | 
					 | 
				
			||||||
         k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d,  \
 | 
					 | 
				
			||||||
         k40,      k41,      k42, k43, k44,           k45,                k47  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k50, k11, k13, k15, k07, k19, k1b, k1d}, \
 | 
					 | 
				
			||||||
    { k51, k21, k23, k25, k17, k29, k2b, k3d}, \
 | 
					 | 
				
			||||||
    { k52, k31, k33, k35, k27, k39, k3b, k47}, \
 | 
					 | 
				
			||||||
    { k40, k41, k42, k43, k37, k45, KC_NO, KC_NO}, \
 | 
					 | 
				
			||||||
    { k30, k32, k34, k44, k38, k3a, k3c, KC_NO}, \
 | 
					 | 
				
			||||||
    { k20, k22, k24, k36, k28, k2a, k2c, KC_NO}, \
 | 
					 | 
				
			||||||
    { k10, k12, k14, k26, k18, k1a, k1c, KC_NO}, \
 | 
					 | 
				
			||||||
    { k00, k02, k04, k16, k08, k0a, k0c, KC_NO}, \
 | 
					 | 
				
			||||||
    { k01, k03, k05, k06, k09, k0b, k0d, KC_NO} \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_owlet60_60_percent_split_bsp LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
#define LAYOUT_owlet60_60_percent_full_bsp LAYOUT_alice
 | 
					 | 
				
			||||||
@ -69,116 +69,3 @@ inline void ergodox_right_led_set(uint8_t l, uint8_t n) {}
 | 
				
			|||||||
inline void ergodox_led_all_set(uint8_t n)              {}
 | 
					inline void ergodox_led_all_set(uint8_t n)              {}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void ergodox_blink_all_leds(void);
 | 
					void ergodox_blink_all_leds(void);
 | 
				
			||||||
 | 
					 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
 *   LEFT HAND: LINES 76-83
 | 
					 | 
				
			||||||
 *  RIGHT HAND: LINES 85-92
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox(                                         \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
    k00,k01,k02,k03,k04,k05,k06,                                \
 | 
					 | 
				
			||||||
    k10,k11,k12,k13,k14,k15,k16,                                \
 | 
					 | 
				
			||||||
    k20,k21,k22,k23,k24,k25,                                    \
 | 
					 | 
				
			||||||
    k30,k31,k32,k33,k34,k35,k36,                                \
 | 
					 | 
				
			||||||
    k40,k41,k42,k43,k44,                                        \
 | 
					 | 
				
			||||||
                            k55,k56,                            \
 | 
					 | 
				
			||||||
                                k54,                            \
 | 
					 | 
				
			||||||
                        k51,k52,k53,                            \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
        k07,k08,k09,k0A,k0B,k0C,k0D,                            \
 | 
					 | 
				
			||||||
        k17,k18,k19,k1A,k1B,k1C,k1D,                            \
 | 
					 | 
				
			||||||
            k28,k29,k2A,k2B,k2C,k2D,                            \
 | 
					 | 
				
			||||||
        k37,k38,k39,k3A,k3B,k3C,k3D,                            \
 | 
					 | 
				
			||||||
                k49,k4A,k4B,k4C,k4D,                            \
 | 
					 | 
				
			||||||
    k57,k58,                                                    \
 | 
					 | 
				
			||||||
    k59,                                                        \
 | 
					 | 
				
			||||||
    k5A,k5B,k5C )                                               \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
   /* matrix positions */                                       \
 | 
					 | 
				
			||||||
   {                                                            \
 | 
					 | 
				
			||||||
    { k00,   k01, k02, k03, k04, k05,   k06,      k07,   k08,   k09, k0A, k0B, k0C, k0D    }, \
 | 
					 | 
				
			||||||
    { k10,   k11, k12, k13, k14, k15,   k16,      k17,   k18,   k19, k1A, k1B, k1C, k1D    }, \
 | 
					 | 
				
			||||||
    { k20,   k21, k22, k23, k24, k25,   KC_NO,    KC_NO, k28,   k29, k2A, k2B, k2C, k2D    }, \
 | 
					 | 
				
			||||||
    { k30,   k31, k32, k33, k34, k35,   k36,      k37,   k38,   k39, k3A, k3B, k3C, k3D    }, \
 | 
					 | 
				
			||||||
    { k40,   k41, k42, k43, k44, KC_NO, KC_NO,    KC_NO, KC_NO, k49, k4A, k4B, k4C, k4D    }, \
 | 
					 | 
				
			||||||
    { KC_NO, k51, k52, k53, k54, k55,   k56,      k57,   k58,   k59, k5A, k5B, k5C, KC_NO  }  \
 | 
					 | 
				
			||||||
   }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
 *   LEFT HAND: LINES 110-117
 | 
					 | 
				
			||||||
 *  RIGHT HAND: LINES 119-126
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox_80(                                      \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
    k00,k01,k02,k03,k04,k05,k06,                                \
 | 
					 | 
				
			||||||
    k10,k11,k12,k13,k14,k15,k16,                                \
 | 
					 | 
				
			||||||
    k20,k21,k22,k23,k24,k25,                                    \
 | 
					 | 
				
			||||||
    k30,k31,k32,k33,k34,k35,k36,                                \
 | 
					 | 
				
			||||||
    k40,k41,k42,k43,k44,                                        \
 | 
					 | 
				
			||||||
                            k55,k56,                            \
 | 
					 | 
				
			||||||
                        k45,k46,k54,                            \
 | 
					 | 
				
			||||||
                        k53,k52,k51,                            \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
        k07,k08,k09,k0A,k0B,k0C,k0D,                            \
 | 
					 | 
				
			||||||
        k17,k18,k19,k1A,k1B,k1C,k1D,                            \
 | 
					 | 
				
			||||||
            k28,k29,k2A,k2B,k2C,k2D,                            \
 | 
					 | 
				
			||||||
        k37,k38,k39,k3A,k3B,k3C,k3D,                            \
 | 
					 | 
				
			||||||
                k49,k4A,k4B,k4C,k4D,                            \
 | 
					 | 
				
			||||||
    k57,k58,                                                    \
 | 
					 | 
				
			||||||
    k59,k47,k48,                                                \
 | 
					 | 
				
			||||||
    k5A,k5B,k5C )                                               \
 | 
					 | 
				
			||||||
                                                                \
 | 
					 | 
				
			||||||
   /* matrix positions */                                       \
 | 
					 | 
				
			||||||
   {                                                            \
 | 
					 | 
				
			||||||
    { k00,   k01, k02, k03, k04, k05, k06,      k07,   k08, k09, k0A, k0B, k0C, k0D    }, \
 | 
					 | 
				
			||||||
    { k10,   k11, k12, k13, k14, k15, k16,      k17,   k18, k19, k1A, k1B, k1C, k1D    }, \
 | 
					 | 
				
			||||||
    { k20,   k21, k22, k23, k24, k25, KC_NO,    KC_NO, k28, k29, k2A, k2B, k2C, k2D    }, \
 | 
					 | 
				
			||||||
    { k30,   k31, k32, k33, k34, k35, k36,      k37,   k38, k39, k3A, k3B, k3C, k3D    }, \
 | 
					 | 
				
			||||||
    { k40,   k41, k42, k43, k44, k45, k46,      k47,   k48, k49, k4A, k4B, k4C, k4D    }, \
 | 
					 | 
				
			||||||
    { KC_NO, k51, k52, k53, k54, k55, k56,      k57,   k58, k59, k5A, k5B, k5C, KC_NO  }  \
 | 
					 | 
				
			||||||
   }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*  ---------- LEFT HAND -----------       ---------- RIGHT HAND ---------- */
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox_pretty(                                                  \
 | 
					 | 
				
			||||||
                                                                                \
 | 
					 | 
				
			||||||
    L00,L01,L02,L03,L04,L05,L06,               R00,R01,R02,R03,R04,R05,R06,     \
 | 
					 | 
				
			||||||
    L10,L11,L12,L13,L14,L15,L16,               R10,R11,R12,R13,R14,R15,R16,     \
 | 
					 | 
				
			||||||
    L20,L21,L22,L23,L24,L25,                       R21,R22,R23,R24,R25,R26,     \
 | 
					 | 
				
			||||||
    L30,L31,L32,L33,L34,L35,L36,               R30,R31,R32,R33,R34,R35,R36,     \
 | 
					 | 
				
			||||||
    L40,L41,L42,L43,L44,                               R42,R43,R44,R45,R46,     \
 | 
					 | 
				
			||||||
                            L55,L56,       R50,R51,                             \
 | 
					 | 
				
			||||||
                                L54,       R52,                                 \
 | 
					 | 
				
			||||||
                        L51,L52,L53,       R53,R54,R55 )                        \
 | 
					 | 
				
			||||||
                                                                                \
 | 
					 | 
				
			||||||
   /* matrix positions */                                                       \
 | 
					 | 
				
			||||||
   {                                                                            \
 | 
					 | 
				
			||||||
    {   L00,L01,L02,L03,L04,L05,L06,            R00,R01,R02,R03,R04,R05,R06  }, \
 | 
					 | 
				
			||||||
    {   L10,L11,L12,L13,L14,L15,L16,            R10,R11,R12,R13,R14,R15,R16  }, \
 | 
					 | 
				
			||||||
    {   L20,L21,L22,L23,L24,L25,KC_NO,        KC_NO,R21,R22,R23,R24,R25,R26  }, \
 | 
					 | 
				
			||||||
    {   L30,L31,L32,L33,L34,L35,L36,            R30,R31,R32,R33,R34,R35,R36  }, \
 | 
					 | 
				
			||||||
    { L40,L41,L42,L43,L44,KC_NO,KC_NO,    KC_NO,KC_NO,R42,R43,R44,R45,R46    }, \
 | 
					 | 
				
			||||||
    { KC_NO,L51,L52,L53,L54,L55,L56,          R50,R51,R52,R53,R54,R55,KC_NO  }  \
 | 
					 | 
				
			||||||
   }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*  ---------- LEFT HAND -----------       ---------- RIGHT HAND ---------- */
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox_pretty_80(                                              \
 | 
					 | 
				
			||||||
                                                                               \
 | 
					 | 
				
			||||||
    L00,L01,L02,L03,L04,L05,L06,               R00,R01,R02,R03,R04,R05,R06,    \
 | 
					 | 
				
			||||||
    L10,L11,L12,L13,L14,L15,L16,               R10,R11,R12,R13,R14,R15,R16,    \
 | 
					 | 
				
			||||||
    L20,L21,L22,L23,L24,L25,                       R21,R22,R23,R24,R25,R26,    \
 | 
					 | 
				
			||||||
    L30,L31,L32,L33,L34,L35,L36,               R30,R31,R32,R33,R34,R35,R36,    \
 | 
					 | 
				
			||||||
    L40,L41,L42,L43,L44,                               R42,R43,R44,R45,R46,    \
 | 
					 | 
				
			||||||
                            L55,L56,       R50,R51,                            \
 | 
					 | 
				
			||||||
                        L45,L46,L54,       R52,R40,R41,                        \
 | 
					 | 
				
			||||||
                        L51,L52,L53,       R53,R54,R55 )                       \
 | 
					 | 
				
			||||||
                                                                               \
 | 
					 | 
				
			||||||
   /* matrix positions */                                                      \
 | 
					 | 
				
			||||||
   {                                                                           \
 | 
					 | 
				
			||||||
    {   L00,L01,L02,L03,L04,L05,L06,          R00,R01,R02,R03,R04,R05,R06   }, \
 | 
					 | 
				
			||||||
    {   L10,L11,L12,L13,L14,L15,L16,          R10,R11,R12,R13,R14,R15,R16   }, \
 | 
					 | 
				
			||||||
    {   L20,L21,L22,L23,L24,L25,KC_NO,      KC_NO,R21,R22,R23,R24,R25,R26   }, \
 | 
					 | 
				
			||||||
    {   L30,L31,L32,L33,L34,L35,L36,          R30,R31,R32,R33,R34,R35,R36   }, \
 | 
					 | 
				
			||||||
    {   L40,L41,L42,L43,L44,L45,L46,          R40,R41,R42,R43,R44,R45,R46   }, \
 | 
					 | 
				
			||||||
    { KC_NO,L51,L52,L53,L54,L55,L56,          R50,R51,R52,R53,R54,R55,KC_NO }  \
 | 
					 | 
				
			||||||
   }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
				
			|||||||
@ -15,101 +15,384 @@
 | 
				
			|||||||
    "community_layouts": ["ergodox"],
 | 
					    "community_layouts": ["ergodox"],
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
    "LAYOUT_ergodox": {
 | 
					    "LAYOUT_ergodox": {
 | 
				
			||||||
 | 
					 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
            {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					        {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
            {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					        {"matrix": [0, 1], "x": 1.5, "y": 0.375},
 | 
				
			||||||
            {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					        {"matrix": [0, 2], "x": 2.5, "y": 0.125},
 | 
				
			||||||
            {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					        {"matrix": [0, 3], "x": 3.5, "y": 0},
 | 
				
			||||||
                   {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					        {"matrix": [0, 4], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 5], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					        {"matrix": [0, 6], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                          {"x":6, "y":5}, {"x":7, "y":5},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
                                                          {"x":7, "y":6},
 | 
					        {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
            {"x":5, "y":6, "h":2}, {"x":6, "y":6, "h":2}, {"x":7, "y":7},
 | 
					        {"matrix": [1, 2], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 3], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [1, 4], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 5], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [1, 6], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [2, 0], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [2, 1], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					        {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 3], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [2, 4], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 5], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                       {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					        {"matrix": [3, 0], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
              {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					        {"matrix": [3, 1], "x": 1.5, "y": 3.375},
 | 
				
			||||||
                                            {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					        {"matrix": [3, 2], "x": 2.5, "y": 3.125},
 | 
				
			||||||
              {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					        {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
                                                                  {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					        {"matrix": [3, 4], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 5], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					        {"matrix": [3, 6], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 0], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					        {"matrix": [4, 2], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            {"x":9, "y":5}, {"x":10, "y":5},
 | 
					        {"matrix": [5, 5], "x": 6, "y": 5},
 | 
				
			||||||
            {"x":9, "y":6},
 | 
					        {"matrix": [5, 6], "x": 7, "y": 5},
 | 
				
			||||||
            {"x":9, "y":7}, {"x":10, "y":6, "h":2}, {"x":11, "y":6, "h":2}
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 4], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [5, 1], "x": 5, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 2], "x": 6, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 3], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [0, 7], "x": 9.5, "y": 0.25},
 | 
				
			||||||
 | 
					        {"matrix": [0, 8], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					        {"matrix": [0, 9], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 10], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 11], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 12], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					        {"matrix": [0, 13], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [1, 7], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [1, 9], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 10], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [1, 11], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 12], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					        {"matrix": [1, 13], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [2, 8], "x": 10.5, "y": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [2, 9], "x": 11.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 10], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [2, 11], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 12], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					        {"matrix": [2, 13], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					        {"matrix": [3, 13], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 9], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [4, 11], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 12], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					        {"matrix": [4, 13], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 7], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					        {"matrix": [5, 8], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 9], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 10], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 11], "x": 10, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 12], "x": 11, "y": 6, "h": 2}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "LAYOUT_ergodox_pretty": {
 | 
					    "LAYOUT_ergodox_pretty": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
            {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					        {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
            {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					        {"matrix": [0, 1], "x": 1.5, "y": 0.375},
 | 
				
			||||||
 | 
					        {"matrix": [0, 2], "x": 2.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 3], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 4], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 5], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					        {"matrix": [0, 6], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					        {"matrix": [0, 7], "x": 9.5, "y": 0.25},
 | 
				
			||||||
            {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					        {"matrix": [0, 8], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					        {"matrix": [0, 9], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 10], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 11], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 12], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					        {"matrix": [0, 13], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
            {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					        {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
 | 
					        {"matrix": [1, 2], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 3], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [1, 4], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 5], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [1, 6], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					        {"matrix": [1, 7], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
            {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					        {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [1, 9], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 10], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [1, 11], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 12], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					        {"matrix": [1, 13], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                   {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
                                                                  {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					        {"matrix": [2, 1], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					        {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 3], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [2, 4], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 5], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                          {"x":6, "y":5}, {"x":7, "y":5},      {"x":9, "y":5}, {"x":10, "y":5},
 | 
					        {"matrix": [2, 8], "x": 10.5, "y": 2.25},
 | 
				
			||||||
                                                          {"x":7, "y":6},      {"x":9, "y":6},
 | 
					        {"matrix": [2, 9], "x": 11.5, "y": 2.125},
 | 
				
			||||||
            {"x":5, "y":6, "h":2}, {"x":6, "y":6, "h":2}, {"x":7, "y":7},      {"x":9, "y":7}, {"x":10, "y":6, "h":2}, {"x":11, "y":6, "h":2}
 | 
					        {"matrix": [2, 10], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [2, 11], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 12], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					        {"matrix": [2, 13], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 0], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [3, 1], "x": 1.5, "y": 3.375},
 | 
				
			||||||
 | 
					        {"matrix": [3, 2], "x": 2.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 4], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 5], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					        {"matrix": [3, 6], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					        {"matrix": [3, 13], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 0], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					        {"matrix": [4, 2], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 9], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [4, 11], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 12], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					        {"matrix": [4, 13], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 5], "x": 6, "y": 5},
 | 
				
			||||||
 | 
					        {"matrix": [5, 6], "x": 7, "y": 5},
 | 
				
			||||||
 | 
					        {"matrix": [5, 7], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					        {"matrix": [5, 8], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 4], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [5, 9], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [5, 1], "x": 5, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 2], "x": 6, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 3], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					        {"matrix": [5, 10], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 11], "x": 10, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 12], "x": 11, "y": 6, "h": 2}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "LAYOUT_ergodox_80": {
 | 
					    "LAYOUT_ergodox_80": {
 | 
				
			||||||
 | 
					 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
          {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					        {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
          {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					        {"matrix": [0, 1], "x": 1.5, "y": 0.375},
 | 
				
			||||||
          {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					        {"matrix": [0, 2], "x": 2.5, "y": 0.125},
 | 
				
			||||||
          {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					        {"matrix": [0, 3], "x": 3.5, "y": 0},
 | 
				
			||||||
                 {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					        {"matrix": [0, 4], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 5], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					        {"matrix": [0, 6], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                        {"x":6, "y":5}, {"x":7, "y":5},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
 | 
					        {"matrix": [1, 2], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 3], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [1, 4], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 5], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [1, 6], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                        {"x":5, "y":6}, {"x":6, "y":6}, {"x":7, "y":6},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
                        {"x":5, "y":7}, {"x":6, "y":7}, {"x":7, "y":7},
 | 
					        {"matrix": [2, 1], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					        {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 3], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [2, 4], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 5], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 0], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [3, 1], "x": 1.5, "y": 3.375},
 | 
				
			||||||
 | 
					        {"matrix": [3, 2], "x": 2.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 4], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 5], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					        {"matrix": [3, 6], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                        {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					        {"matrix": [4, 0], "x": 0.5, "y": 4.375},
 | 
				
			||||||
                        {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					        {"matrix": [4, 1], "x": 1.5, "y": 4.375},
 | 
				
			||||||
                                                      {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					        {"matrix": [4, 2], "x": 2.5, "y": 4.125},
 | 
				
			||||||
                        {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					        {"matrix": [4, 3], "x": 3.5, "y": 4},
 | 
				
			||||||
                                                                            {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					        {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 5], "x": 6, "y": 5},
 | 
				
			||||||
 | 
					        {"matrix": [5, 6], "x": 7, "y": 5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 5, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 6, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [5, 4], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [5, 3], "x": 5, "y": 7},
 | 
				
			||||||
 | 
					        {"matrix": [5, 2], "x": 6, "y": 7},
 | 
				
			||||||
 | 
					        {"matrix": [5, 1], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          {"x":9, "y":5}, {"x":10, "y":5},
 | 
					        {"matrix": [0, 7], "x": 9.5, "y": 0.25},
 | 
				
			||||||
          {"x":9, "y":6}, {"x":10, "y":6}, {"x":11, "y":6},
 | 
					        {"matrix": [0, 8], "x": 10.5, "y": 0.25},
 | 
				
			||||||
          {"x":9, "y":7}, {"x":10, "y":7}, {"x":11, "y":7}
 | 
					        {"matrix": [0, 9], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 10], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 11], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 12], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					        {"matrix": [0, 13], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [1, 7], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [1, 9], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 10], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [1, 11], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 12], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					        {"matrix": [1, 13], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [2, 8], "x": 10.5, "y": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [2, 9], "x": 11.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 10], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [2, 11], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 12], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					        {"matrix": [2, 13], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					        {"matrix": [3, 13], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 9], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [4, 11], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 12], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					        {"matrix": [4, 13], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 7], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					        {"matrix": [5, 8], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 9], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [4, 7], "x": 10, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [4, 8], "x": 11, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 10], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					        {"matrix": [5, 11], "x": 10, "y": 7},
 | 
				
			||||||
 | 
					        {"matrix": [5, 12], "x": 11, "y": 7}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "LAYOUT_ergodox_pretty_80": {
 | 
					    "LAYOUT_ergodox_pretty_80": {
 | 
				
			||||||
 | 
					 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
          {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					        {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
          {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					        {"matrix": [0, 1], "x": 1.5, "y": 0.375},
 | 
				
			||||||
 | 
					        {"matrix": [0, 2], "x": 2.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 3], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 4], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 5], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					        {"matrix": [0, 6], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					        {"matrix": [0, 7], "x": 9.5, "y": 0.25},
 | 
				
			||||||
          {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					        {"matrix": [0, 8], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					        {"matrix": [0, 9], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 10], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 11], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					        {"matrix": [0, 12], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					        {"matrix": [0, 13], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
          {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					        {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
 | 
					        {"matrix": [1, 2], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 3], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [1, 4], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 5], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [1, 6], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					        {"matrix": [1, 7], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
          {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					        {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [1, 9], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 10], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [1, 11], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					        {"matrix": [1, 12], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					        {"matrix": [1, 13], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                 {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
                                                                {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					        {"matrix": [2, 1], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					        {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 3], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [2, 4], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 5], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                        {"x":6, "y":5}, {"x":7, "y":5},      {"x":9, "y":5}, {"x":10, "y":5},
 | 
					        {"matrix": [2, 8], "x": 10.5, "y": 2.25},
 | 
				
			||||||
                        {"x":5, "y":6}, {"x":6, "y":6}, {"x":7, "y":6},      {"x":9, "y":6}, {"x":10, "y":6}, {"x":11, "y":6},
 | 
					        {"matrix": [2, 9], "x": 11.5, "y": 2.125},
 | 
				
			||||||
                        {"x":5, "y":7}, {"x":6, "y":7}, {"x":7, "y":7},      {"x":9, "y":7}, {"x":10, "y":7}, {"x":11, "y":7}
 | 
					        {"matrix": [2, 10], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [2, 11], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					        {"matrix": [2, 12], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					        {"matrix": [2, 13], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 0], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [3, 1], "x": 1.5, "y": 3.375},
 | 
				
			||||||
 | 
					        {"matrix": [3, 2], "x": 2.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 4], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 5], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					        {"matrix": [3, 6], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					        {"matrix": [3, 13], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 0], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					        {"matrix": [4, 2], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 9], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [4, 11], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					        {"matrix": [4, 12], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					        {"matrix": [4, 13], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 5], "x": 6, "y": 5},
 | 
				
			||||||
 | 
					        {"matrix": [5, 6], "x": 7, "y": 5},
 | 
				
			||||||
 | 
					        {"matrix": [5, 7], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					        {"matrix": [5, 8], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 5, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 6, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [5, 4], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [5, 9], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [4, 7], "x": 10, "y": 6},
 | 
				
			||||||
 | 
					        {"matrix": [4, 8], "x": 11, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 1], "x": 5, "y": 7},
 | 
				
			||||||
 | 
					        {"matrix": [5, 2], "x": 6, "y": 7},
 | 
				
			||||||
 | 
					        {"matrix": [5, 3], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					        {"matrix": [5, 10], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					        {"matrix": [5, 11], "x": 10, "y": 7},
 | 
				
			||||||
 | 
					        {"matrix": [5, 12], "x": 11, "y": 7}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
				
			|||||||
@ -80,74 +80,3 @@ inline void ergodox_led_all_set(uint8_t n) {
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void ergodox_infinity_lcd_color(uint16_t r, uint16_t g, uint16_t b);
 | 
					void ergodox_infinity_lcd_color(uint16_t r, uint16_t g, uint16_t b);
 | 
				
			||||||
 | 
					 | 
				
			||||||
#define XXX KC_NO
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox( \
 | 
					 | 
				
			||||||
    A80, A70, A60, A50, A40, A30, A20, \
 | 
					 | 
				
			||||||
    A81, A71, A61, A51, A41, A31, A21, \
 | 
					 | 
				
			||||||
    A82, A72, A62, A52, A42, A32, \
 | 
					 | 
				
			||||||
    A83, A73, A63, A53, A43, A33, A23, \
 | 
					 | 
				
			||||||
    A84, A74, A64, A54, A44, \
 | 
					 | 
				
			||||||
                                  A13, A03, \
 | 
					 | 
				
			||||||
                                       A04, \
 | 
					 | 
				
			||||||
                             A34, A24, A14, \
 | 
					 | 
				
			||||||
\
 | 
					 | 
				
			||||||
         B20, B30, B40, B50, B60, B70, B80, \
 | 
					 | 
				
			||||||
         B21, B31, B41, B51, B61, B71, B81, \
 | 
					 | 
				
			||||||
              B32, B42, B52, B62, B72, B82, \
 | 
					 | 
				
			||||||
         B23, B33, B43, B53, B63, B73, B83, \
 | 
					 | 
				
			||||||
                   B44, B54, B64, B74, B84, \
 | 
					 | 
				
			||||||
    B03, B13, \
 | 
					 | 
				
			||||||
    B04, \
 | 
					 | 
				
			||||||
    B14, B24, B34 \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { XXX, XXX, XXX, A03, A04 }, \
 | 
					 | 
				
			||||||
    { XXX, XXX, XXX, A13, A14 }, \
 | 
					 | 
				
			||||||
    { A20, A21, XXX, A23, A24 }, \
 | 
					 | 
				
			||||||
    { A30, A31, A32, A33, A34 }, \
 | 
					 | 
				
			||||||
    { A40, A41, A42, A43, A44 }, \
 | 
					 | 
				
			||||||
    { A50, A51, A52, A53, A54 }, \
 | 
					 | 
				
			||||||
    { A60, A61, A62, A63, A64 }, \
 | 
					 | 
				
			||||||
    { A70, A71, A72, A73, A74 }, \
 | 
					 | 
				
			||||||
    { A80, A81, A82, A83, A84 }, \
 | 
					 | 
				
			||||||
    { XXX, XXX, XXX, B03, B04 }, \
 | 
					 | 
				
			||||||
    { XXX, XXX, XXX, B13, B14 }, \
 | 
					 | 
				
			||||||
    { B20, B21, XXX, B23, B24 }, \
 | 
					 | 
				
			||||||
    { B30, B31, B32, B33, B34 }, \
 | 
					 | 
				
			||||||
    { B40, B41, B42, B43, B44 }, \
 | 
					 | 
				
			||||||
    { B50, B51, B52, B53, B54 }, \
 | 
					 | 
				
			||||||
    { B60, B61, B62, B63, B64 }, \
 | 
					 | 
				
			||||||
    { B70, B71, B72, B73, B74 }, \
 | 
					 | 
				
			||||||
    { B80, B81, B82, B83, B84 } \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox_pretty( \
 | 
					 | 
				
			||||||
    A80, A70, A60, A50, A40, A30, A20,               B20, B30, B40, B50, B60, B70, B80, \
 | 
					 | 
				
			||||||
    A81, A71, A61, A51, A41, A31, A21,               B21, B31, B41, B51, B61, B71, B81, \
 | 
					 | 
				
			||||||
    A82, A72, A62, A52, A42, A32,                         B32, B42, B52, B62, B72, B82, \
 | 
					 | 
				
			||||||
    A83, A73, A63, A53, A43, A33, A23,               B23, B33, B43, B53, B63, B73, B83, \
 | 
					 | 
				
			||||||
    A84, A74, A64, A54, A44,                                   B44, B54, B64, B74, B84, \
 | 
					 | 
				
			||||||
                                  A13, A03,     B03, B13, \
 | 
					 | 
				
			||||||
                                       A04,     B04, \
 | 
					 | 
				
			||||||
                             A34, A24, A14,     B14, B24, B34 \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { XXX, XXX, XXX, A03, A04 }, \
 | 
					 | 
				
			||||||
    { XXX, XXX, XXX, A13, A14 }, \
 | 
					 | 
				
			||||||
    { A20, A21, XXX, A23, A24 }, \
 | 
					 | 
				
			||||||
    { A30, A31, A32, A33, A34 }, \
 | 
					 | 
				
			||||||
    { A40, A41, A42, A43, A44 }, \
 | 
					 | 
				
			||||||
    { A50, A51, A52, A53, A54 }, \
 | 
					 | 
				
			||||||
    { A60, A61, A62, A63, A64 }, \
 | 
					 | 
				
			||||||
    { A70, A71, A72, A73, A74 }, \
 | 
					 | 
				
			||||||
    { A80, A81, A82, A83, A84 }, \
 | 
					 | 
				
			||||||
    { XXX, XXX, XXX, B03, B04 }, \
 | 
					 | 
				
			||||||
    { XXX, XXX, XXX, B13, B14 }, \
 | 
					 | 
				
			||||||
    { B20, B21, XXX, B23, B24 }, \
 | 
					 | 
				
			||||||
    { B30, B31, B32, B33, B34 }, \
 | 
					 | 
				
			||||||
    { B40, B41, B42, B43, B44 }, \
 | 
					 | 
				
			||||||
    { B50, B51, B52, B53, B54 }, \
 | 
					 | 
				
			||||||
    { B60, B61, B62, B63, B64 }, \
 | 
					 | 
				
			||||||
    { B70, B71, B72, B73, B74 }, \
 | 
					 | 
				
			||||||
    { B80, B81, B82, B83, B84 } \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
				
			|||||||
@ -18,49 +18,190 @@
 | 
				
			|||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_ergodox": {
 | 
					        "LAYOUT_ergodox": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
          {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					                {"matrix": [8, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
          {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					                {"matrix": [7, 0], "x": 1.5, "y": 0.375},
 | 
				
			||||||
          {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					                {"matrix": [6, 0], "x": 2.5, "y": 0.125},
 | 
				
			||||||
          {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					                {"matrix": [5, 0], "x": 3.5, "y": 0},
 | 
				
			||||||
                 {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					                {"matrix": [4, 0], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                        {"x":6, "y":5}, {"x":7, "y":5},
 | 
					                {"matrix": [8, 1], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
                                                        {"x":7, "y":6},
 | 
					                {"matrix": [7, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
          {"x":5, "y":6, "h":2}, {"x":6, "y":6, "h":2}, {"x":7, "y":7},
 | 
					                {"matrix": [6, 1], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                     {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					                {"matrix": [8, 3], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
            {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					                {"matrix": [7, 3], "x": 1.5, "y": 3.375},
 | 
				
			||||||
                                          {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					                {"matrix": [6, 3], "x": 2.5, "y": 3.125},
 | 
				
			||||||
            {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					                {"matrix": [5, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
                                                                {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					                {"matrix": [4, 3], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          {"x":9, "y":5}, {"x":10, "y":5},
 | 
					                {"matrix": [1, 3], "x": 6, "y": 5},
 | 
				
			||||||
          {"x":9, "y":6},
 | 
					                {"matrix": [0, 3], "x": 7, "y": 5},
 | 
				
			||||||
          {"x":9, "y":7}, {"x":10, "y":6, "h":2}, {"x":11, "y":6, "h":2}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 0], "x": 9.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [12, 0], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [13, 0], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [14, 0], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [15, 0], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [16, 0], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [17, 0], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 1], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [12, 1], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [13, 1], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [14, 1], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [15, 1], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [16, 1], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [17, 1], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [12, 2], "x": 10.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [13, 2], "x": 11.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [14, 2], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [15, 2], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [16, 2], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [17, 2], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [11, 3], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [12, 3], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [13, 3], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [14, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [15, 3], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [16, 3], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [17, 3], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [13, 4], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [14, 4], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [15, 4], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [16, 4], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [17, 4], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [10, 3], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 4], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [10, 4], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 4], "x": 10, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [12, 4], "x": 11, "y": 6, "h": 2}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_ergodox_pretty": {
 | 
					        "LAYOUT_ergodox_pretty": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
          {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					                {"matrix": [8, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
          {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					                {"matrix": [7, 0], "x": 1.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 2.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					                {"matrix": [11, 0], "x": 9.5, "y": 0.25},
 | 
				
			||||||
          {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					                {"matrix": [12, 0], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [13, 0], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [14, 0], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [15, 0], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [16, 0], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [17, 0], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					                {"matrix": [8, 1], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
          {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					                {"matrix": [7, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					                {"matrix": [11, 1], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
          {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					                {"matrix": [12, 1], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [13, 1], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [14, 1], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [15, 1], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [16, 1], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [17, 1], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                 {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					                {"matrix": [8, 2], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
                                                                {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					                {"matrix": [7, 2], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                        {"x":6, "y":5}, {"x":7, "y":5},      {"x":9, "y":5}, {"x":10, "y":5},
 | 
					                {"matrix": [12, 2], "x": 10.5, "y": 2.25},
 | 
				
			||||||
                                                        {"x":7, "y":6},      {"x":9, "y":6},
 | 
					                {"matrix": [13, 2], "x": 11.5, "y": 2.125},
 | 
				
			||||||
          {"x":5, "y":6, "h":2}, {"x":6, "y":6, "h":2}, {"x":7, "y":7},      {"x":9, "y":7}, {"x":10, "y":6, "h":2}, {"x":11, "y":6, "h":2}
 | 
					                {"matrix": [14, 2], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [15, 2], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [16, 2], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [17, 2], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 1.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 2.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 3], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [12, 3], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [13, 3], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [14, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [15, 3], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [16, 3], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [17, 3], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [13, 4], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [14, 4], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [15, 4], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [16, 4], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [17, 4], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 6, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 7, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [10, 3], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [9, 4], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [10, 4], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 4], "x": 10, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [12, 4], "x": 11, "y": 6, "h": 2}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,17 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2021 KapCave
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
#include "arya.h"
 | 
					 | 
				
			||||||
@ -1,38 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2021 KapCave
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
  K81,   K36, K37, K46, K47, K56, K57, K66,      K67, K76, K77, K06, K07, K17, K26, K27, \
 | 
					 | 
				
			||||||
  K80,   K34, K35, K44, K45, K54, K55,      K64, K65, K75, K05, K15, K16, K25, K24,      \
 | 
					 | 
				
			||||||
  K82,   K32, K33, K43, K52, K53, K63,      K73, K74, K03, K04, K13, K14,      K23,      \
 | 
					 | 
				
			||||||
         K31, K41, K42, K51, K61, K62,      K71, K72, K01, K02, K11, K12, K21, K22,      \
 | 
					 | 
				
			||||||
         K30,      K40,      K50, K60,           K00,      K10,                K20       \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
  { K00  , K01  , K02  , K03  , K04  , K05  , K06  , K07 }, \
 | 
					 | 
				
			||||||
  { K10  , K11  , K12  , K13  , K14  , K15  , K16  , K17 }, \
 | 
					 | 
				
			||||||
  { K20  , K21  , K22  , K23  , K24  , K25  , K26  , K27 }, \
 | 
					 | 
				
			||||||
  { K30  , K31  , K32  , K33  , K34  , K35  , K36  , K37 }, \
 | 
					 | 
				
			||||||
  { K40  , K41  , K42  , K43  , K44  , K45  , K46  , K47 }, \
 | 
					 | 
				
			||||||
  { K50  , K51  , K52  , K53  , K54  , K55  , K56  , K57 }, \
 | 
					 | 
				
			||||||
  { K60  , K61  , K62  , K63  , K64  , K65  , K66  , K67 }, \
 | 
					 | 
				
			||||||
  { KC_NO  , K71  , K72  , K73  , K74  , K75  , K76  , K77 }, \
 | 
					 | 
				
			||||||
  { K80  , K81  , K82  , KC_NO, KC_NO, KC_NO, KC_NO, KC_NO}  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -26,76 +26,80 @@
 | 
				
			|||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"x":0.4, "y":0},
 | 
					                {"matrix": [8, 1], "x": 0.4, "y": 0},
 | 
				
			||||||
                {"x":1.55, "y":0.1},
 | 
					                {"matrix": [3, 6], "x": 1.55, "y": 0.1},
 | 
				
			||||||
                {"x":2.55, "y":0.1},
 | 
					                {"matrix": [3, 7], "x": 2.55, "y": 0.1},
 | 
				
			||||||
                {"x":3.55, "y":0},
 | 
					                {"matrix": [4, 6], "x": 3.55, "y": 0},
 | 
				
			||||||
                {"x":4.55, "y":0.1},
 | 
					                {"matrix": [4, 7], "x": 4.55, "y": 0.1},
 | 
				
			||||||
                {"x":5.55, "y":0.1},
 | 
					                {"matrix": [5, 6], "x": 5.55, "y": 0.1},
 | 
				
			||||||
                {"x":6.55, "y":0.1},
 | 
					                {"matrix": [5, 7], "x": 6.55, "y": 0.1},
 | 
				
			||||||
                {"x":7.55, "y":0.1},
 | 
					                {"matrix": [6, 6], "x": 7.55, "y": 0.1},
 | 
				
			||||||
                {"x":9.75, "y":0.1},
 | 
					 | 
				
			||||||
                {"x":10.75, "y":0.1},
 | 
					 | 
				
			||||||
                {"x":11.75, "y":0.1},
 | 
					 | 
				
			||||||
                {"x":12.75, "y":0.1},
 | 
					 | 
				
			||||||
                {"x":13.75, "y":0},
 | 
					 | 
				
			||||||
                {"x":14.75, "y":0.1},
 | 
					 | 
				
			||||||
                {"x":15.75, "y":0.1},
 | 
					 | 
				
			||||||
                {"x":16.75, "y":0.1},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0.2, "y":1},
 | 
					                {"matrix": [6, 7], "x": 9.75, "y": 0.1},
 | 
				
			||||||
                {"x":1.35, "y":1.1, "w":1.5},
 | 
					                {"matrix": [7, 6], "x": 10.75, "y": 0.1},
 | 
				
			||||||
                {"x":2.85, "y":1.1},
 | 
					                {"matrix": [7, 7], "x": 11.75, "y": 0.1},
 | 
				
			||||||
                {"x":3.85, "y":1.1},
 | 
					                {"matrix": [0, 6], "x": 12.75, "y": 0.1},
 | 
				
			||||||
                {"x":4.85, "y":1.1},
 | 
					                {"matrix": [0, 7], "x": 13.75, "y": 0},
 | 
				
			||||||
                {"x":5.85, "y":1.1},
 | 
					                {"matrix": [1, 7], "x": 14.75, "y": 0.1},
 | 
				
			||||||
                {"x":6.85, "y":1.1},
 | 
					                {"matrix": [2, 6], "x": 15.75, "y": 0.1},
 | 
				
			||||||
                {"x":9.45, "y":1.1},
 | 
					                {"matrix": [2, 7], "x": 16.75, "y": 0.1},
 | 
				
			||||||
                {"x":10.45, "y":1.1},
 | 
					 | 
				
			||||||
                {"x":11.45, "y":1.1},
 | 
					 | 
				
			||||||
                {"x":12.45, "y":1.1},
 | 
					 | 
				
			||||||
                {"x":13.45, "y":1.1},
 | 
					 | 
				
			||||||
                {"x":14.45, "y":1.1},
 | 
					 | 
				
			||||||
                {"x":15.45, "y":1.1},
 | 
					 | 
				
			||||||
                {"x":16.45, "y":1.1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0, "y":2},
 | 
					                {"matrix": [8, 0], "x": 0.2, "y": 1},
 | 
				
			||||||
                {"x":1.15, "y":2.1, "w":1.75},
 | 
					                {"matrix": [3, 4], "x": 1.35, "y": 1.1, "w": 1.5},
 | 
				
			||||||
                {"x":2.9, "y":2.1},
 | 
					                {"matrix": [3, 5], "x": 2.85, "y": 1.1},
 | 
				
			||||||
                {"x":3.9, "y":2.1},
 | 
					                {"matrix": [4, 4], "x": 3.85, "y": 1.1},
 | 
				
			||||||
                {"x":4.9, "y":2.1},
 | 
					                {"matrix": [4, 5], "x": 4.85, "y": 1.1},
 | 
				
			||||||
                {"x":5.9, "y":2.1},
 | 
					                {"matrix": [5, 4], "x": 5.85, "y": 1.1},
 | 
				
			||||||
                {"x":6.9, "y":2.1},
 | 
					                {"matrix": [5, 5], "x": 6.85, "y": 1.1},
 | 
				
			||||||
                {"x":9.9, "y":2.1},
 | 
					 | 
				
			||||||
                {"x":10.9, "y":2.1},
 | 
					 | 
				
			||||||
                {"x":11.9, "y":2.1},
 | 
					 | 
				
			||||||
                {"x":12.9, "y":2.1},
 | 
					 | 
				
			||||||
                {"x":13.9, "y":2.1},
 | 
					 | 
				
			||||||
                {"x":14.9, "y":2.1},
 | 
					 | 
				
			||||||
                {"x":15.9, "y":2.1, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0.95, "y":3.1, "w":2.25},
 | 
					                {"matrix": [6, 4], "x": 9.45, "y": 1.1},
 | 
				
			||||||
                {"x":3.2, "y":3.1},
 | 
					                {"matrix": [6, 5], "x": 10.45, "y": 1.1},
 | 
				
			||||||
                {"x":4.2, "y":3.1},
 | 
					                {"matrix": [7, 5], "x": 11.45, "y": 1.1},
 | 
				
			||||||
                {"x":5.2, "y":3.1},
 | 
					                {"matrix": [0, 5], "x": 12.45, "y": 1.1},
 | 
				
			||||||
                {"x":6.2, "y":3.1},
 | 
					                {"matrix": [1, 5], "x": 13.45, "y": 1.1},
 | 
				
			||||||
                {"x":7.2, "y":3.1},
 | 
					                {"matrix": [1, 6], "x": 14.45, "y": 1.1},
 | 
				
			||||||
                {"x":9.6, "y":3.1},
 | 
					                {"matrix": [2, 5], "x": 15.45, "y": 1.1},
 | 
				
			||||||
                {"x":10.6, "y":3.1},
 | 
					                {"matrix": [2, 4], "x": 16.45, "y": 1.1, "w": 1.5},
 | 
				
			||||||
                {"x":11.6, "y":3.1},
 | 
					 | 
				
			||||||
                {"x":12.6, "y":3.1},
 | 
					 | 
				
			||||||
                {"x":13.6, "y":3.1},
 | 
					 | 
				
			||||||
                {"x":14.6, "y":3.1},
 | 
					 | 
				
			||||||
                {"x":15.6, "y":3.1, "w":1.75},
 | 
					 | 
				
			||||||
                {"x":17.35, "y":3.1},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0.95, "y":4.1, "w":1.5},
 | 
					                {"matrix": [8, 2], "x": 0, "y": 2},
 | 
				
			||||||
                {"x":3.85, "y":4.1, "w":1.5},
 | 
					                {"matrix": [3, 2], "x": 1.15, "y": 2.1, "w": 1.75},
 | 
				
			||||||
                {"x":5.35, "y":4.1, "w":2},
 | 
					                {"matrix": [3, 3], "x": 2.9, "y": 2.1},
 | 
				
			||||||
                {"x":7.35, "y":4.1, "w":1.25},
 | 
					                {"matrix": [4, 3], "x": 3.9, "y": 2.1},
 | 
				
			||||||
                {"x":9.6, "y":4.1, "w":2.75},
 | 
					                {"matrix": [5, 2], "x": 4.9, "y": 2.1},
 | 
				
			||||||
                {"x":12.35, "y":4.1, "w":1.5},
 | 
					                {"matrix": [5, 3], "x": 5.9, "y": 2.1},
 | 
				
			||||||
                {"x":16.65, "y":4.1, "w":1.5}
 | 
					                {"matrix": [6, 3], "x": 6.9, "y": 2.1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 9.9, "y": 2.1},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 10.9, "y": 2.1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 11.9, "y": 2.1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 12.9, "y": 2.1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 13.9, "y": 2.1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 14.9, "y": 2.1},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 15.9, "y": 2.1, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 0.95, "y": 3.1, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 3.2, "y": 3.1},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.2, "y": 3.1},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 5.2, "y": 3.1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 6.2, "y": 3.1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 7.2, "y": 3.1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 9.6, "y": 3.1},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 10.6, "y": 3.1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 11.6, "y": 3.1},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 12.6, "y": 3.1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 13.6, "y": 3.1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 14.6, "y": 3.1},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 15.6, "y": 3.1, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 17.35, "y": 3.1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0.95, "y": 4.1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 3.85, "y": 4.1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 5.35, "y": 4.1, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 7.35, "y": 4.1, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 9.6, "y": 4.1, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 12.35, "y": 4.1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 16.65, "y": 4.1, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -19,281 +19,329 @@
 | 
				
			|||||||
  "processor": "atmega32a",
 | 
					  "processor": "atmega32a",
 | 
				
			||||||
  "bootloader": "usbasploader",
 | 
					  "bootloader": "usbasploader",
 | 
				
			||||||
  "community_layouts": ["alice", "alice_split_bs"],
 | 
					  "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
 | 
					  "layout_aliases": {
 | 
				
			||||||
 | 
					    "LAYOUT": "LAYOUT_alice",
 | 
				
			||||||
 | 
					    "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
  "layouts": {
 | 
					  "layouts": {
 | 
				
			||||||
    "LAYOUT_alice": {
 | 
					    "LAYOUT_alice": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
        {"x":0, "y":0},
 | 
					        {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":2.25, "y":0},
 | 
					        {"matrix": [0, 1], "x": 1.25, "y": 0},
 | 
				
			||||||
        {"x":3.25, "y":0},
 | 
					        {"matrix": [0, 2], "x": 2.25, "y": 0},
 | 
				
			||||||
        {"x":4.25, "y":0},
 | 
					        {"matrix": [0, 3], "x": 3.25, "y": 0},
 | 
				
			||||||
        {"x":5.25, "y":0},
 | 
					        {"matrix": [0, 4], "x": 4.25, "y": 0},
 | 
				
			||||||
        {"x":6.25, "y":0},
 | 
					        {"matrix": [0, 5], "x": 5.25, "y": 0},
 | 
				
			||||||
        {"x":7.25, "y":0},
 | 
					        {"matrix": [0, 6], "x": 6.25, "y": 0},
 | 
				
			||||||
        {"x":10.25, "y":0},
 | 
					        {"matrix": [0, 7], "x": 7.25, "y": 0},
 | 
				
			||||||
        {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":12.25, "y":0},
 | 
					        {"matrix": [0, 8], "x": 10.25, "y": 0},
 | 
				
			||||||
        {"x":13.25, "y":0},
 | 
					        {"matrix": [0, 9], "x": 11.25, "y": 0},
 | 
				
			||||||
        {"x":14.25, "y":0},
 | 
					        {"matrix": [0, 10], "x": 12.25, "y": 0},
 | 
				
			||||||
        {"x":15.25, "y":0},
 | 
					        {"matrix": [0, 11], "x": 13.25, "y": 0},
 | 
				
			||||||
        {"x":16.25, "y":0, "w": 2},
 | 
					        {"matrix": [0, 12], "x": 14.25, "y": 0},
 | 
				
			||||||
        {"x":0, "y":1},
 | 
					        {"matrix": [0, 13], "x": 15.25, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":1, "w":1.5},
 | 
					        {"matrix": [0, 14], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
        {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":3.75, "y":1},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 1},
 | 
				
			||||||
        {"x":4.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":5.75, "y":1},
 | 
					        {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6.75, "y":1},
 | 
					        {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
        {"x":9.75, "y":1},
 | 
					        {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
        {"x":10.75, "y":1},
 | 
					        {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
        {"x":11.75, "y":1},
 | 
					        {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
        {"x":12.75, "y":1},
 | 
					        {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
        {"x":13.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":14.75, "y":1},
 | 
					        {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
        {"x":15.75, "y":1},
 | 
					        {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
        {"x":16.75, "y":1, "w":1.5},
 | 
					        {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
        {"x":0, "y":2},
 | 
					        {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
        {"x":1.25, "y":2, "w":1.75},
 | 
					        {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
        {"x":3, "y":2},
 | 
					        {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
        {"x":4, "y":2},
 | 
					        {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
        {"x":5, "y":2},
 | 
					        {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6, "y":2},
 | 
					
 | 
				
			||||||
        {"x":7, "y":2},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
        {"x":10, "y":2},
 | 
					
 | 
				
			||||||
        {"x":11, "y":2},
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
        {"x":12, "y":2},
 | 
					        {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
        {"x":13, "y":2},
 | 
					        {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
        {"x":14, "y":2},
 | 
					        {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
        {"x":15, "y":2},
 | 
					        {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
        {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
        {"x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
        {"x":3.5, "y":3},
 | 
					        {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
        {"x":4.5, "y":3},
 | 
					        {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
        {"x":5.5, "y":3},
 | 
					        {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
        {"x":6.5, "y":3},
 | 
					        {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
        {"x":7.5, "y":3},
 | 
					        {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
        {"x":9.5, "y":3},
 | 
					        {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
        {"x":10.5, "y":3},
 | 
					        {"matrix": [2, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
        {"x":11.5, "y":3},
 | 
					
 | 
				
			||||||
        {"x":12.5, "y":3},
 | 
					        {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
        {"x":13.5, "y":3},
 | 
					        {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
        {"x":14.5, "y":3},
 | 
					        {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
        {"x":15.5, "y":3, "w":1.75},
 | 
					        {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
        {"x":17.25, "y":3},
 | 
					        {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
        {"x":1.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
        {"x":4.25, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
        {"x":5.75, "y":4, "w":2},
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
        {"x":7.75, "y":4, "w":1.25},
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
        {"x":9.5, "y":4, "w":2.75},
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
        {"x":12.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
        {"x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [3, 14], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 13], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "LAYOUT_alice_split_bs": {
 | 
					    "LAYOUT_alice_split_bs": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
        {"x":0, "y":0},
 | 
					        {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":2.25, "y":0},
 | 
					        {"matrix": [0, 1], "x": 1.25, "y": 0},
 | 
				
			||||||
        {"x":3.25, "y":0},
 | 
					        {"matrix": [0, 2], "x": 2.25, "y": 0},
 | 
				
			||||||
        {"x":4.25, "y":0},
 | 
					        {"matrix": [0, 3], "x": 3.25, "y": 0},
 | 
				
			||||||
        {"x":5.25, "y":0},
 | 
					        {"matrix": [0, 4], "x": 4.25, "y": 0},
 | 
				
			||||||
        {"x":6.25, "y":0},
 | 
					        {"matrix": [0, 5], "x": 5.25, "y": 0},
 | 
				
			||||||
        {"x":7.25, "y":0},
 | 
					        {"matrix": [0, 6], "x": 6.25, "y": 0},
 | 
				
			||||||
        {"x":10.25, "y":0},
 | 
					        {"matrix": [0, 7], "x": 7.25, "y": 0},
 | 
				
			||||||
        {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":12.25, "y":0},
 | 
					        {"matrix": [0, 8], "x": 10.25, "y": 0},
 | 
				
			||||||
        {"x":13.25, "y":0},
 | 
					        {"matrix": [0, 9], "x": 11.25, "y": 0},
 | 
				
			||||||
        {"x":14.25, "y":0},
 | 
					        {"matrix": [0, 10], "x": 12.25, "y": 0},
 | 
				
			||||||
        {"x":15.25, "y":0},
 | 
					        {"matrix": [0, 11], "x": 13.25, "y": 0},
 | 
				
			||||||
        {"x":16.25, "y":0},
 | 
					        {"matrix": [0, 12], "x": 14.25, "y": 0},
 | 
				
			||||||
        {"x":17.25, "y":0},
 | 
					        {"matrix": [0, 13], "x": 15.25, "y": 0},
 | 
				
			||||||
        {"x":0, "y":1},
 | 
					        {"matrix": [2, 13], "x": 16.25, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":1, "w":1.5},
 | 
					        {"matrix": [0, 14], "x": 17.25, "y": 0},
 | 
				
			||||||
        {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":3.75, "y":1},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 1},
 | 
				
			||||||
        {"x":4.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":5.75, "y":1},
 | 
					        {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6.75, "y":1},
 | 
					        {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
        {"x":9.75, "y":1},
 | 
					        {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
        {"x":10.75, "y":1},
 | 
					        {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
        {"x":11.75, "y":1},
 | 
					        {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
        {"x":12.75, "y":1},
 | 
					        {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
        {"x":13.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":14.75, "y":1},
 | 
					        {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
        {"x":15.75, "y":1},
 | 
					        {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
        {"x":16.75, "y":1, "w":1.5},
 | 
					        {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
        {"x":0, "y":2},
 | 
					        {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
        {"x":1.25, "y":2, "w":1.75},
 | 
					        {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
        {"x":3, "y":2},
 | 
					        {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
        {"x":4, "y":2},
 | 
					        {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
        {"x":5, "y":2},
 | 
					        {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6, "y":2},
 | 
					
 | 
				
			||||||
        {"x":7, "y":2},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
        {"x":10, "y":2},
 | 
					
 | 
				
			||||||
        {"x":11, "y":2},
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
        {"x":12, "y":2},
 | 
					        {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
        {"x":13, "y":2},
 | 
					        {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
        {"x":14, "y":2},
 | 
					        {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
        {"x":15, "y":2},
 | 
					        {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
        {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
        {"x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
        {"x":3.5, "y":3},
 | 
					        {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
        {"x":4.5, "y":3},
 | 
					        {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
        {"x":5.5, "y":3},
 | 
					        {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
        {"x":6.5, "y":3},
 | 
					        {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
        {"x":7.5, "y":3},
 | 
					        {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
        {"x":9.5, "y":3},
 | 
					        {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
        {"x":10.5, "y":3},
 | 
					        {"matrix": [2, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
        {"x":11.5, "y":3},
 | 
					
 | 
				
			||||||
        {"x":12.5, "y":3},
 | 
					        {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
        {"x":13.5, "y":3},
 | 
					        {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
        {"x":14.5, "y":3},
 | 
					        {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
        {"x":15.5, "y":3, "w":1.75},
 | 
					        {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
        {"x":17.25, "y":3},
 | 
					        {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
        {"x":1.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
        {"x":4.25, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
        {"x":5.75, "y":4, "w":2},
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
        {"x":7.75, "y":4, "w":1.25},
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
        {"x":9.5, "y":4, "w":2.75},
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
        {"x":12.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
        {"x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [3, 14], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 13], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "LAYOUT_long_rshift": {
 | 
					    "LAYOUT_long_rshift": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
        {"x":0, "y":0},
 | 
					        {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":2.25, "y":0},
 | 
					        {"matrix": [0, 1], "x": 1.25, "y": 0},
 | 
				
			||||||
        {"x":3.25, "y":0},
 | 
					        {"matrix": [0, 2], "x": 2.25, "y": 0},
 | 
				
			||||||
        {"x":4.25, "y":0},
 | 
					        {"matrix": [0, 3], "x": 3.25, "y": 0},
 | 
				
			||||||
        {"x":5.25, "y":0},
 | 
					        {"matrix": [0, 4], "x": 4.25, "y": 0},
 | 
				
			||||||
        {"x":6.25, "y":0},
 | 
					        {"matrix": [0, 5], "x": 5.25, "y": 0},
 | 
				
			||||||
        {"x":7.25, "y":0},
 | 
					        {"matrix": [0, 6], "x": 6.25, "y": 0},
 | 
				
			||||||
        {"x":10.25, "y":0},
 | 
					        {"matrix": [0, 7], "x": 7.25, "y": 0},
 | 
				
			||||||
        {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":12.25, "y":0},
 | 
					        {"matrix": [0, 8], "x": 10.25, "y": 0},
 | 
				
			||||||
        {"x":13.25, "y":0},
 | 
					        {"matrix": [0, 9], "x": 11.25, "y": 0},
 | 
				
			||||||
        {"x":14.25, "y":0},
 | 
					        {"matrix": [0, 10], "x": 12.25, "y": 0},
 | 
				
			||||||
        {"x":15.25, "y":0},
 | 
					        {"matrix": [0, 11], "x": 13.25, "y": 0},
 | 
				
			||||||
        {"x":16.25, "y":0, "w":2},
 | 
					        {"matrix": [0, 12], "x": 14.25, "y": 0},
 | 
				
			||||||
        {"x":0, "y":1},
 | 
					        {"matrix": [0, 13], "x": 15.25, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":1, "w":1.5},
 | 
					        {"matrix": [0, 14], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
        {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":3.75, "y":1},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 1},
 | 
				
			||||||
        {"x":4.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":5.75, "y":1},
 | 
					        {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6.75, "y":1},
 | 
					        {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
        {"x":9.75, "y":1},
 | 
					        {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
        {"x":10.75, "y":1},
 | 
					        {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
        {"x":11.75, "y":1},
 | 
					        {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
        {"x":12.75, "y":1},
 | 
					        {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
        {"x":13.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":14.75, "y":1},
 | 
					        {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
        {"x":15.75, "y":1},
 | 
					        {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
        {"x":16.75, "y":1, "w":1.5},
 | 
					        {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
        {"x":0, "y":2},
 | 
					        {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
        {"x":1.25, "y":2, "w":1.75},
 | 
					        {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
        {"x":3, "y":2},
 | 
					        {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
        {"x":4, "y":2},
 | 
					        {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
        {"x":5, "y":2},
 | 
					        {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6, "y":2},
 | 
					
 | 
				
			||||||
        {"x":7, "y":2},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
        {"x":10, "y":2},
 | 
					
 | 
				
			||||||
        {"x":11, "y":2},
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
        {"x":12, "y":2},
 | 
					        {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
        {"x":13, "y":2},
 | 
					        {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
        {"x":14, "y":2},
 | 
					        {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
        {"x":15, "y":2},
 | 
					        {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
        {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
        {"x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
        {"x":3.5, "y":3},
 | 
					        {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
        {"x":4.5, "y":3},
 | 
					        {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
        {"x":5.5, "y":3},
 | 
					        {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
        {"x":6.5, "y":3},
 | 
					        {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
        {"x":7.5, "y":3},
 | 
					        {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
        {"x":9.5, "y":3},
 | 
					        {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
        {"x":10.5, "y":3},
 | 
					        {"matrix": [2, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
        {"x":11.5, "y":3},
 | 
					
 | 
				
			||||||
        {"x":12.5, "y":3},
 | 
					        {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
        {"x":13.5, "y":3},
 | 
					        {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
        {"x":14.5, "y":3},
 | 
					        {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
        {"x":15.5, "y":3, "w":2.75},
 | 
					        {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
        {"x":1.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
        {"x":4.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
        {"x":5.75, "y":4, "w":2},
 | 
					
 | 
				
			||||||
        {"x":7.75, "y":4, "w":1.25},
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
        {"x":9.5, "y":4, "w":2.75},
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
        {"x":12.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
        {"x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 13], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "LAYOUT_split_bs": {
 | 
					    "LAYOUT_split_bs": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
        {"x":0, "y":0},
 | 
					        {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":2.25, "y":0},
 | 
					        {"matrix": [0, 1], "x": 1.25, "y": 0},
 | 
				
			||||||
        {"x":3.25, "y":0},
 | 
					        {"matrix": [0, 2], "x": 2.25, "y": 0},
 | 
				
			||||||
        {"x":4.25, "y":0},
 | 
					        {"matrix": [0, 3], "x": 3.25, "y": 0},
 | 
				
			||||||
        {"x":5.25, "y":0},
 | 
					        {"matrix": [0, 4], "x": 4.25, "y": 0},
 | 
				
			||||||
        {"x":6.25, "y":0},
 | 
					        {"matrix": [0, 5], "x": 5.25, "y": 0},
 | 
				
			||||||
        {"x":7.25, "y":0},
 | 
					        {"matrix": [0, 6], "x": 6.25, "y": 0},
 | 
				
			||||||
        {"x":10.25, "y":0},
 | 
					        {"matrix": [0, 7], "x": 7.25, "y": 0},
 | 
				
			||||||
        {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
        {"x":12.25, "y":0},
 | 
					        {"matrix": [0, 8], "x": 10.25, "y": 0},
 | 
				
			||||||
        {"x":13.25, "y":0},
 | 
					        {"matrix": [0, 9], "x": 11.25, "y": 0},
 | 
				
			||||||
        {"x":14.25, "y":0},
 | 
					        {"matrix": [0, 10], "x": 12.25, "y": 0},
 | 
				
			||||||
        {"x":15.25, "y":0},
 | 
					        {"matrix": [0, 11], "x": 13.25, "y": 0},
 | 
				
			||||||
        {"x":16.25, "y":0},
 | 
					        {"matrix": [0, 12], "x": 14.25, "y": 0},
 | 
				
			||||||
        {"x":17.25, "y":0},
 | 
					        {"matrix": [0, 13], "x": 15.25, "y": 0},
 | 
				
			||||||
        {"x":0, "y":1},
 | 
					        {"matrix": [2, 13], "x": 16.25, "y": 0},
 | 
				
			||||||
        {"x":1.25, "y":1, "w":1.5},
 | 
					        {"matrix": [0, 14], "x": 17.25, "y": 0},
 | 
				
			||||||
        {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":3.75, "y":1},
 | 
					        {"matrix": [1, 0], "x": 0, "y": 1},
 | 
				
			||||||
        {"x":4.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":5.75, "y":1},
 | 
					        {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6.75, "y":1},
 | 
					        {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
        {"x":9.75, "y":1},
 | 
					        {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
        {"x":10.75, "y":1},
 | 
					        {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
        {"x":11.75, "y":1},
 | 
					        {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
        {"x":12.75, "y":1},
 | 
					        {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
        {"x":13.75, "y":1},
 | 
					
 | 
				
			||||||
        {"x":14.75, "y":1},
 | 
					        {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
        {"x":15.75, "y":1},
 | 
					        {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
        {"x":16.75, "y":1, "w":1.5},
 | 
					        {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
        {"x":0, "y":2},
 | 
					        {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
        {"x":1.25, "y":2, "w":1.75},
 | 
					        {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
        {"x":3, "y":2},
 | 
					        {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
        {"x":4, "y":2},
 | 
					        {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
        {"x":5, "y":2},
 | 
					        {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"x":6, "y":2},
 | 
					
 | 
				
			||||||
        {"x":7, "y":2},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
        {"x":10, "y":2},
 | 
					
 | 
				
			||||||
        {"x":11, "y":2},
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
        {"x":12, "y":2},
 | 
					        {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
        {"x":13, "y":2},
 | 
					        {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
        {"x":14, "y":2},
 | 
					        {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
        {"x":15, "y":2},
 | 
					        {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
        {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
        {"x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
        {"x":3.5, "y":3},
 | 
					        {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
        {"x":4.5, "y":3},
 | 
					        {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
        {"x":5.5, "y":3},
 | 
					        {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
        {"x":6.5, "y":3},
 | 
					        {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
        {"x":7.5, "y":3},
 | 
					        {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
        {"x":9.5, "y":3},
 | 
					        {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
        {"x":10.5, "y":3},
 | 
					        {"matrix": [2, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
        {"x":11.5, "y":3},
 | 
					
 | 
				
			||||||
        {"x":12.5, "y":3},
 | 
					        {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
        {"x":13.5, "y":3},
 | 
					        {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
        {"x":14.5, "y":3},
 | 
					        {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
        {"x":15.5, "y":3, "w":2.75},
 | 
					        {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
        {"x":1.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
        {"x":4.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
        {"x":5.75, "y":4, "w":2},
 | 
					
 | 
				
			||||||
        {"x":7.75, "y":4, "w":1.25},
 | 
					        {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
        {"x":9.5, "y":4, "w":2.75},
 | 
					        {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
        {"x":12.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
        {"x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 13], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,86 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 kb-elmo<mail@elmo.space>
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* This is a shortcut to help you visually see your layout.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The first section contains all of the arguments representing the physical
 | 
					 | 
				
			||||||
 * layout of the board and position of the keys.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The second converts the arguments into a two-dimensional array which
 | 
					 | 
				
			||||||
 * represents the switch matrix.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14, \
 | 
					 | 
				
			||||||
    k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \
 | 
					 | 
				
			||||||
    k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k40, k41, k42,      k44, \
 | 
					 | 
				
			||||||
         k45, k46, k47, k48, k49, k50, k51, k52, k53, k54, k55, k56, k57, k58, \
 | 
					 | 
				
			||||||
         k59,      k60,      k61, k62,      k63,      k64,           k65       \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k00,   k01,   k02,   k03,   k04,   k05,   k06,   k07,   k08,   k09,   k10,   k11,   k12,   k13,   k14   }, \
 | 
					 | 
				
			||||||
    { k15,   k16,   k17,   k18,   k19,   k20,   k21,   k22,   k23,   k24,   k25,   k26,   k27,   k28,   k29   }, \
 | 
					 | 
				
			||||||
    { k30,   k31,   k32,   k33,   k34,   k35,   k36,   k37,   k38,   k39,   k40,   k41,   k42,   KC_NO, k44   }, \
 | 
					 | 
				
			||||||
    { KC_NO, k45,   k46,   k47,   k48,   k49,   k50,   k51,   k52,   k53,   k54,   k55,   k56,   k57,   k58   }, \
 | 
					 | 
				
			||||||
    { KC_NO, k59,   KC_NO, k60,   KC_NO, k61,   k62,  KC_NO,  k63,   KC_NO, k64,   KC_NO, KC_NO, k65,   KC_NO }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k43, k14, \
 | 
					 | 
				
			||||||
    k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \
 | 
					 | 
				
			||||||
    k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k40, k41, k42,      k44, \
 | 
					 | 
				
			||||||
         k45, k46, k47, k48, k49, k50, k51, k52, k53, k54, k55, k56, k57, k58, \
 | 
					 | 
				
			||||||
         k59,      k60,      k61, k62,      k63,      k64,           k65       \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k00,   k01,   k02,   k03,   k04,   k05,   k06,   k07,   k08,   k09,   k10,   k11,   k12,   k13,   k14   }, \
 | 
					 | 
				
			||||||
    { k15,   k16,   k17,   k18,   k19,   k20,   k21,   k22,   k23,   k24,   k25,   k26,   k27,   k28,   k29   }, \
 | 
					 | 
				
			||||||
    { k30,   k31,   k32,   k33,   k34,   k35,   k36,   k37,   k38,   k39,   k40,   k41,   k42,   k43,   k44   }, \
 | 
					 | 
				
			||||||
    { KC_NO, k45,   k46,   k47,   k48,   k49,   k50,   k51,   k52,   k53,   k54,   k55,   k56,   k57,   k58   }, \
 | 
					 | 
				
			||||||
    { KC_NO, k59,   KC_NO, k60,   KC_NO, k61,   k62,  KC_NO,  k63,   KC_NO, k64,   KC_NO, KC_NO, k65,   KC_NO }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_long_rshift( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14, \
 | 
					 | 
				
			||||||
    k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \
 | 
					 | 
				
			||||||
    k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k40, k41, k42,      k44, \
 | 
					 | 
				
			||||||
         k45, k46, k47, k48, k49, k50, k51, k52, k53, k54, k55, k56, k57,      \
 | 
					 | 
				
			||||||
         k59,      k60,      k61, k62,      k63,      k64,           k65       \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k00,   k01,   k02,   k03,   k04,   k05,   k06,   k07,   k08,   k09,   k10,   k11,   k12,   k13,   k14   }, \
 | 
					 | 
				
			||||||
    { k15,   k16,   k17,   k18,   k19,   k20,   k21,   k22,   k23,   k24,   k25,   k26,   k27,   k28,   k29   }, \
 | 
					 | 
				
			||||||
    { k30,   k31,   k32,   k33,   k34,   k35,   k36,   k37,   k38,   k39,   k40,   k41,   k42,   KC_NO, k44   }, \
 | 
					 | 
				
			||||||
    { KC_NO, k45,   k46,   k47,   k48,   k49,   k50,   k51,   k52,   k53,   k54,   k55,   k56,   k57,   KC_NO }, \
 | 
					 | 
				
			||||||
    { KC_NO, k59,   KC_NO, k60,   KC_NO, k61,   k62,  KC_NO,  k63,   KC_NO, k64,   KC_NO, KC_NO, k65,   KC_NO }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_split_bs( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k43, k14, \
 | 
					 | 
				
			||||||
    k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \
 | 
					 | 
				
			||||||
    k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k40, k41, k42,      k44, \
 | 
					 | 
				
			||||||
         k45, k46, k47, k48, k49, k50, k51, k52, k53, k54, k55, k56, k57,      \
 | 
					 | 
				
			||||||
         k59,      k60,      k61, k62,      k63,      k64,           k65       \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { k00,   k01,   k02,   k03,   k04,   k05,   k06,   k07,   k08,   k09,   k10,   k11,   k12,   k13,   k14   }, \
 | 
					 | 
				
			||||||
    { k15,   k16,   k17,   k18,   k19,   k20,   k21,   k22,   k23,   k24,   k25,   k26,   k27,   k28,   k29   }, \
 | 
					 | 
				
			||||||
    { k30,   k31,   k32,   k33,   k34,   k35,   k36,   k37,   k38,   k39,   k40,   k41,   k42,   k43,   k44   }, \
 | 
					 | 
				
			||||||
    { KC_NO, k45,   k46,   k47,   k48,   k49,   k50,   k51,   k52,   k53,   k54,   k55,   k56,   k57,   KC_NO }, \
 | 
					 | 
				
			||||||
    { KC_NO, k59,   KC_NO, k60,   KC_NO, k61,   k62,  KC_NO,  k63,   KC_NO, k64,   KC_NO, KC_NO, k65,   KC_NO }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT LAYOUT_alice
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -1,17 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2021 Elliot Powell
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
#include "coarse60.h"
 | 
					 | 
				
			||||||
@ -1,50 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2021 Elliot Powell
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define KNO KC_NO
 | 
					 | 
				
			||||||
#define LAYOUT_default LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K2D,\
 | 
					 | 
				
			||||||
  K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \
 | 
					 | 
				
			||||||
  K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C,      K2E, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E,         \
 | 
					 | 
				
			||||||
       K41,           K44, K45, K46,      K48,      K4A,                K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  {  K00, K01, K02, K03, K04, K05, K06,  K07, K08, K09, K0A, K0B, K0C, K0D, K0E  }, \
 | 
					 | 
				
			||||||
  {  K10, K11, K12, K13, K14, K15, K16,  K17, K18, K19, K1A, K1B, K1C, K1D, K1E  }, \
 | 
					 | 
				
			||||||
  {  K20, K21, K22, K23, K24, K25, K26,  K27, K28, K29, K2A, K2B, K2C, K2D, K2E  }, \
 | 
					 | 
				
			||||||
  {  KNO, K31, K32, K33, K34, K35, K36,  K37, K38, K39, K3A, K3B, K3C, K3D, K3E  }, \
 | 
					 | 
				
			||||||
  {  KNO, K41, KNO, KNO, K44, K45, K46,  KNO, K48, KNO, K4A, KNO, KNO, KNO, K4E  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
 | 
					 | 
				
			||||||
  K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \
 | 
					 | 
				
			||||||
  K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C,      K2E, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E,         \
 | 
					 | 
				
			||||||
       K41,           K44, K45, K46,      K48,      K4A,                K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  {  K00, K01, K02, K03, K04, K05, K06,  K07, K08, K09, K0A, K0B, K0C, K0D, K0E  }, \
 | 
					 | 
				
			||||||
  {  K10, K11, K12, K13, K14, K15, K16,  K17, K18, K19, K1A, K1B, K1C, K1D, K1E  }, \
 | 
					 | 
				
			||||||
  {  K20, K21, K22, K23, K24, K25, K26,  K27, K28, K29, K2A, K2B, K2C, KNO, K2E  }, \
 | 
					 | 
				
			||||||
  {  KNO, K31, K32, K33, K34, K35, K36,  K37, K38, K39, K3A, K3B, K3C, K3D, K3E  }, \
 | 
					 | 
				
			||||||
  {  KNO, K41, KNO, KNO, K44, K45, K46,  KNO, K48, KNO, K4A, KNO, KNO, KNO, K4E  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -35,152 +35,169 @@
 | 
				
			|||||||
    "processor": "STM32F072",
 | 
					    "processor": "STM32F072",
 | 
				
			||||||
    "bootloader": "stm32-dfu",
 | 
					    "bootloader": "stm32-dfu",
 | 
				
			||||||
    "community_layouts": ["alice", "alice_split_bs"],
 | 
					    "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_default": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Del", "x":17, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":18, "y":0.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 14], "x": 17, "y": 0.25},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					                {"matrix": [2, 13], "x": 18, "y": 0.25},
 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":18.75, "y":3.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 17, "y": 3.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 18.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":17, "y":0.25, "w":2},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 14], "x": 17, "y": 0.25, "w": 2},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":18.75, "y":3.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 17, "y": 3.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 18.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,40 +0,0 @@
 | 
				
			|||||||
/* Copyright 2019 cfbender
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define KNO KC_NO
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
  K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16, K07, K17, \
 | 
					 | 
				
			||||||
  K20, K30, K21, K31, K22, K32, K23,      K33, K24, K34, K25, K35, K26, K36, K27, \
 | 
					 | 
				
			||||||
  K40, K50, K41, K51, K42, K52, K43,      K53, K44, K54, K45, K55, K46,      K47, \
 | 
					 | 
				
			||||||
       K60, K61, K71, K62, K72, K63,      K73, K64, K74, K65, K75, K66, K76, K67, \
 | 
					 | 
				
			||||||
       K80,      K81, K82,      K83,           K84,      K85,                K87  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  {  K00, K01, K02, K03, K04, K05, K06, K07  }, \
 | 
					 | 
				
			||||||
  {  K10, K11, K12, K13, K14, K15, K16, K17  }, \
 | 
					 | 
				
			||||||
  {  K20, K21, K22, K23, K24, K25, K26, K27  }, \
 | 
					 | 
				
			||||||
  {  K30, K31, K32, K33, K34, K35, K36, KNO  }, \
 | 
					 | 
				
			||||||
  {  K40, K41, K42, K43, K44, K45, K46, K47  }, \
 | 
					 | 
				
			||||||
  {  K50, K51, K52, K53, K54, K55, KNO, KNO  }, \
 | 
					 | 
				
			||||||
  {  K60, K61, K62, K63, K64, K65, K66, K67  }, \
 | 
					 | 
				
			||||||
  {  KNO, K71, K72, K73, K74, K75, K76, KNO  }, \
 | 
					 | 
				
			||||||
  {  K80, K81, K82, K83, K84, K85, KNO, K87  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -15,79 +15,82 @@
 | 
				
			|||||||
    "processor": "atmega32u4",
 | 
					    "processor": "atmega32u4",
 | 
				
			||||||
    "bootloader": "caterina",
 | 
					    "bootloader": "caterina",
 | 
				
			||||||
    "community_layouts": ["alice_split_bs"],
 | 
					    "community_layouts": ["alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"`", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"Esc", "x":1.75, "y":0.25},
 | 
					                {"matrix": [1, 0], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					                {"matrix": [0, 1], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					                {"matrix": [1, 1], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					                {"matrix": [0, 2], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					                {"matrix": [1, 2], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					                {"matrix": [0, 3], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					                {"matrix": [1, 3], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					                {"matrix": [0, 4], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					                {"matrix": [1, 4], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					                {"matrix": [0, 5], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					                {"matrix": [1, 5], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					                {"matrix": [0, 6], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					                {"matrix": [1, 6], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"|", "x":17, "y":0.25},
 | 
					                {"matrix": [0, 7], "x": 17, "y": 0.25},
 | 
				
			||||||
                {"label":"Del", "x":18, "y":0.25},
 | 
					                {"matrix": [1, 7], "x": 18, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [2, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [2, 1], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [3, 1], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [2, 2], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [3, 2], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [2, 3], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					                {"matrix": [3, 3], "x": 10.5, "y": 1.25},
 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					                {"matrix": [2, 4], "x": 11.5, "y": 1.25},
 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					                {"matrix": [3, 4], "x": 12.5, "y": 1.25},
 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					                {"matrix": [2, 5], "x": 13.5, "y": 1.25},
 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					                {"matrix": [3, 5], "x": 14.75, "y": 1.25},
 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					                {"matrix": [2, 6], "x": 15.75, "y": 1.25},
 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					                {"matrix": [3, 6], "x": 16.75, "y": 1.25},
 | 
				
			||||||
                {"label":"Backspace", "x":17.75, "y":1.25, "w":1.5},
 | 
					                {"matrix": [2, 7], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [4, 0], "x": 0, "y": 2},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [5, 0], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [4, 1], "x": 3.25, "y": 2.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [5, 1], "x": 4.5, "y": 2.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [4, 2], "x": 5.5, "y": 2.25},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [5, 2], "x": 6.5, "y": 2.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [4, 3], "x": 7.5, "y": 2.25},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					                {"matrix": [5, 3], "x": 10.75, "y": 2.25},
 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					                {"matrix": [4, 4], "x": 11.75, "y": 2.25},
 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					                {"matrix": [5, 4], "x": 12.75, "y": 2.25},
 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					                {"matrix": [4, 5], "x": 13.75, "y": 2.25},
 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					                {"matrix": [5, 5], "x": 15.25, "y": 2.25},
 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					                {"matrix": [4, 6], "x": 16.25, "y": 2.25},
 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					                {"matrix": [4, 7], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [6, 0], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					                {"matrix": [6, 1], "x": 3.75, "y": 3.25},
 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					                {"matrix": [7, 1], "x": 5, "y": 3.25},
 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					                {"matrix": [6, 2], "x": 6, "y": 3.25},
 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					                {"matrix": [7, 2], "x": 7, "y": 3.25},
 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					                {"matrix": [6, 3], "x": 8, "y": 3.25},
 | 
				
			||||||
                {"label":"B", "x":10.25, "y":3.25},
 | 
					                {"matrix": [7, 3], "x": 10.25, "y": 3.25},
 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					                {"matrix": [6, 4], "x": 11.25, "y": 3.25},
 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					                {"matrix": [7, 4], "x": 12.25, "y": 3.25},
 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					                {"matrix": [6, 5], "x": 13.25, "y": 3.25},
 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					                {"matrix": [7, 5], "x": 15, "y": 3.25},
 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					                {"matrix": [6, 6], "x": 16, "y": 3.25},
 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":1.75},
 | 
					                {"matrix": [7, 6], "x": 17, "y": 3.25, "w": 1.75},
 | 
				
			||||||
                {"label":"Fn", "x":18.75, "y":3.25},
 | 
					                {"matrix": [6, 7], "x": 18.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Os", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [8, 0], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [8, 1], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Enter", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [8, 2], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
                {"label":"Fn", "x":8.5, "y":4.25},
 | 
					                {"matrix": [8, 3], "x": 8.5, "y": 4.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.25},
 | 
					                {"matrix": [8, 4], "x": 10.25, "y": 4.25, "w": 2.25},
 | 
				
			||||||
                {"label":"Alt", "x":12.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [8, 5], "x": 12.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					                {"matrix": [8, 7], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -27,143 +27,167 @@
 | 
				
			|||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0, "y":0},
 | 
					                {"matrix": [0, 2], "x": 0, "y": 0},
 | 
				
			||||||
                {"label":"~", "x":1.25, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"!", "x":2.25, "y":0},
 | 
					                {"matrix": [1, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
                {"label":"@", "x":3.25, "y":0},
 | 
					                {"matrix": [1, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
                {"label":"#", "x":4.25, "y":0},
 | 
					                {"matrix": [1, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
                {"label":"$", "x":5.25, "y":0},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
                {"label":"%", "x":6.25, "y":0},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
                {"label":"^", "x":7.25, "y":0},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
                {"label":"&", "x":10.25, "y":0},
 | 
					                {"matrix": [0, 5], "x": 7.25, "y": 0},
 | 
				
			||||||
                {"label":"*", "x":11.25, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"(", "x":12.25, "y":0},
 | 
					                {"matrix": [0, 6], "x": 10.25, "y": 0},
 | 
				
			||||||
                {"label":")", "x":13.25, "y":0},
 | 
					                {"matrix": [1, 6], "x": 11.25, "y": 0},
 | 
				
			||||||
                {"label":"_", "x":14.25, "y":0},
 | 
					                {"matrix": [1, 7], "x": 12.25, "y": 0},
 | 
				
			||||||
                {"label":"+", "x":15.25, "y":0},
 | 
					                {"matrix": [1, 8], "x": 13.25, "y": 0},
 | 
				
			||||||
                {"label":"Backspace", "x":16.25, "y":0},
 | 
					                {"matrix": [1, 9], "x": 14.25, "y": 0},
 | 
				
			||||||
                {"label":"Del", "x":17.25, "y":0},
 | 
					                {"matrix": [1, 10], "x": 15.25, "y": 0},
 | 
				
			||||||
                {"label":"Mute", "x":0, "y":1},
 | 
					                {"matrix": [1, 11], "x": 16.25, "y": 0},
 | 
				
			||||||
                {"label":"Tab", "x":1.25, "y":1, "w":1.5},
 | 
					                {"matrix": [1, 12], "x": 17.25, "y": 0},
 | 
				
			||||||
                {"label":"Q", "x":2.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"W", "x":3.75, "y":1},
 | 
					                {"matrix": [0, 1], "x": 0, "y": 1},
 | 
				
			||||||
                {"label":"E", "x":4.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"R", "x":5.75, "y":1},
 | 
					                {"matrix": [2, 0], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"T", "x":6.75, "y":1},
 | 
					                {"matrix": [2, 1], "x": 2.75, "y": 1},
 | 
				
			||||||
                {"label":"Y", "x":9.75, "y":1},
 | 
					                {"matrix": [2, 2], "x": 3.75, "y": 1},
 | 
				
			||||||
                {"label":"U", "x":10.75, "y":1},
 | 
					                {"matrix": [2, 3], "x": 4.75, "y": 1},
 | 
				
			||||||
                {"label":"I", "x":11.75, "y":1},
 | 
					                {"matrix": [2, 4], "x": 5.75, "y": 1},
 | 
				
			||||||
                {"label":"O", "x":12.75, "y":1},
 | 
					                {"matrix": [2, 5], "x": 6.75, "y": 1},
 | 
				
			||||||
                {"label":"P", "x":13.75, "y":1},
 | 
					                {"matrix": [0, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
                {"label":"{", "x":14.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"}", "x":15.75, "y":1},
 | 
					                {"matrix": [2, 6], "x": 10.75, "y": 1},
 | 
				
			||||||
                {"label":"|", "x":16.75, "y":1, "w":1.5},
 | 
					                {"matrix": [2, 7], "x": 11.75, "y": 1},
 | 
				
			||||||
                {"label":"Vol-", "x":0, "y":2},
 | 
					                {"matrix": [2, 8], "x": 12.75, "y": 1},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [2, 9], "x": 13.75, "y": 1},
 | 
				
			||||||
                {"label":"A", "x":3, "y":2},
 | 
					                {"matrix": [2, 10], "x": 14.75, "y": 1},
 | 
				
			||||||
                {"label":"S", "x":4, "y":2},
 | 
					                {"matrix": [2, 11], "x": 15.75, "y": 1},
 | 
				
			||||||
                {"label":"D", "x":5, "y":2},
 | 
					                {"matrix": [2, 12], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"F", "x":6, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"G", "x":7, "y":2},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 2},
 | 
				
			||||||
                {"label":"H", "x":10, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"J", "x":11, "y":2},
 | 
					                {"matrix": [3, 0], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
                {"label":"K", "x":12, "y":2},
 | 
					                {"matrix": [3, 1], "x": 3, "y": 2},
 | 
				
			||||||
                {"label":"L", "x":13, "y":2},
 | 
					                {"matrix": [3, 2], "x": 4, "y": 2},
 | 
				
			||||||
                {"label":":", "x":14, "y":2},
 | 
					                {"matrix": [3, 3], "x": 5, "y": 2},
 | 
				
			||||||
                {"label":"\"", "x":15, "y":2},
 | 
					                {"matrix": [3, 4], "x": 6, "y": 2},
 | 
				
			||||||
                {"label":"Enter", "x":16, "y":2, "w":2.25},
 | 
					                {"matrix": [3, 5], "x": 7, "y": 2},
 | 
				
			||||||
                {"label":"Vol+", "x":0, "y":3},
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.25, "y":3, "w":2.25},
 | 
					                {"matrix": [3, 6], "x": 10, "y": 2},
 | 
				
			||||||
                {"label":"Z", "x":3.5, "y":3},
 | 
					                {"matrix": [3, 7], "x": 11, "y": 2},
 | 
				
			||||||
                {"label":"X", "x":4.5, "y":3},
 | 
					                {"matrix": [3, 8], "x": 12, "y": 2},
 | 
				
			||||||
                {"label":"C", "x":5.5, "y":3},
 | 
					                {"matrix": [3, 9], "x": 13, "y": 2},
 | 
				
			||||||
                {"label":"V", "x":6.5, "y":3},
 | 
					                {"matrix": [3, 10], "x": 14, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":7.5, "y":3},
 | 
					                {"matrix": [3, 11], "x": 15, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":9.5, "y":3},
 | 
					                {"matrix": [3, 12], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
                {"label":"N", "x":10.5, "y":3},
 | 
					
 | 
				
			||||||
                {"label":"M", "x":11.5, "y":3},
 | 
					                {"matrix": [0, 3], "x": 0, "y": 3},
 | 
				
			||||||
                {"label":"<", "x":12.5, "y":3},
 | 
					
 | 
				
			||||||
                {"label":">", "x":13.5, "y":3},
 | 
					                {"matrix": [4, 0], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
                {"label":"?", "x":14.5, "y":3},
 | 
					                {"matrix": [4, 1], "x": 3.5, "y": 3},
 | 
				
			||||||
                {"label":"Shift", "x":15.5, "y":3, "w":1.75},
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 3},
 | 
				
			||||||
                {"label":"Win", "x":17.25, "y":3},
 | 
					                {"matrix": [4, 3], "x": 5.5, "y": 3},
 | 
				
			||||||
                {"label":"Ctrl", "x":1.25, "y":4, "w":1.5},
 | 
					                {"matrix": [4, 4], "x": 6.5, "y": 3},
 | 
				
			||||||
                {"label":"Alt", "x":4.25, "y":4, "w":1.25},
 | 
					                {"matrix": [4, 5], "x": 7.5, "y": 3},
 | 
				
			||||||
                {"label":"Space", "x":5.5, "y":4, "w":2.25},
 | 
					
 | 
				
			||||||
                {"label":"FN", "x":7.75, "y":4, "w":1.25},
 | 
					                {"matrix": [4, 6], "x": 9.5, "y": 3},
 | 
				
			||||||
                {"label":"Space", "x":9.5, "y":4, "w":2.75},
 | 
					                {"matrix": [4, 7], "x": 10.5, "y": 3},
 | 
				
			||||||
                {"label":"Alt", "x":12.25, "y":4, "w":1.5},
 | 
					                {"matrix": [4, 8], "x": 11.5, "y": 3},
 | 
				
			||||||
                {"label":"Ctrl", "x":16.75, "y":4, "w":1.5}
 | 
					                {"matrix": [4, 9], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [5, 11], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 12], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 4.25, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 5.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [5, 9], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [5, 12], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0, "y":0},
 | 
					                {"matrix": [0, 2], "x": 0, "y": 0},
 | 
				
			||||||
                {"label":"~", "x":1.25, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"!", "x":2.25, "y":0},
 | 
					                {"matrix": [1, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
                {"label":"@", "x":3.25, "y":0},
 | 
					                {"matrix": [1, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
                {"label":"#", "x":4.25, "y":0},
 | 
					                {"matrix": [1, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
                {"label":"$", "x":5.25, "y":0},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
                {"label":"%", "x":6.25, "y":0},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
                {"label":"^", "x":7.25, "y":0},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
                {"label":"&", "x":10.25, "y":0},
 | 
					                {"matrix": [0, 5], "x": 7.25, "y": 0},
 | 
				
			||||||
                {"label":"*", "x":11.25, "y":0},
 | 
					
 | 
				
			||||||
                {"label":"(", "x":12.25, "y":0},
 | 
					                {"matrix": [0, 6], "x": 10.25, "y": 0},
 | 
				
			||||||
                {"label":")", "x":13.25, "y":0},
 | 
					                {"matrix": [1, 6], "x": 11.25, "y": 0},
 | 
				
			||||||
                {"label":"_", "x":14.25, "y":0},
 | 
					                {"matrix": [1, 7], "x": 12.25, "y": 0},
 | 
				
			||||||
                {"label":"+", "x":15.25, "y":0},
 | 
					                {"matrix": [1, 8], "x": 13.25, "y": 0},
 | 
				
			||||||
                {"label":"Backspace", "x":16.25, "y":0, "w":2},
 | 
					                {"matrix": [1, 9], "x": 14.25, "y": 0},
 | 
				
			||||||
                {"label":"Mute", "x":0, "y":1},
 | 
					                {"matrix": [1, 10], "x": 15.25, "y": 0},
 | 
				
			||||||
                {"label":"Tab", "x":1.25, "y":1, "w":1.5},
 | 
					                {"matrix": [1, 11], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
                {"label":"Q", "x":2.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"W", "x":3.75, "y":1},
 | 
					                {"matrix": [0, 1], "x": 0, "y": 1},
 | 
				
			||||||
                {"label":"E", "x":4.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"R", "x":5.75, "y":1},
 | 
					                {"matrix": [2, 0], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"T", "x":6.75, "y":1},
 | 
					                {"matrix": [2, 1], "x": 2.75, "y": 1},
 | 
				
			||||||
                {"label":"Y", "x":9.75, "y":1},
 | 
					                {"matrix": [2, 2], "x": 3.75, "y": 1},
 | 
				
			||||||
                {"label":"U", "x":10.75, "y":1},
 | 
					                {"matrix": [2, 3], "x": 4.75, "y": 1},
 | 
				
			||||||
                {"label":"I", "x":11.75, "y":1},
 | 
					                {"matrix": [2, 4], "x": 5.75, "y": 1},
 | 
				
			||||||
                {"label":"O", "x":12.75, "y":1},
 | 
					                {"matrix": [2, 5], "x": 6.75, "y": 1},
 | 
				
			||||||
                {"label":"P", "x":13.75, "y":1},
 | 
					
 | 
				
			||||||
                {"label":"{", "x":14.75, "y":1},
 | 
					                {"matrix": [0, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
                {"label":"}", "x":15.75, "y":1},
 | 
					                {"matrix": [2, 6], "x": 10.75, "y": 1},
 | 
				
			||||||
                {"label":"|", "x":16.75, "y":1, "w":1.5},
 | 
					                {"matrix": [2, 7], "x": 11.75, "y": 1},
 | 
				
			||||||
                {"label":"Vol-", "x":0, "y":2},
 | 
					                {"matrix": [2, 8], "x": 12.75, "y": 1},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [2, 9], "x": 13.75, "y": 1},
 | 
				
			||||||
                {"label":"A", "x":3, "y":2},
 | 
					                {"matrix": [2, 10], "x": 14.75, "y": 1},
 | 
				
			||||||
                {"label":"S", "x":4, "y":2},
 | 
					                {"matrix": [2, 11], "x": 15.75, "y": 1},
 | 
				
			||||||
                {"label":"D", "x":5, "y":2},
 | 
					                {"matrix": [2, 12], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"F", "x":6, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"G", "x":7, "y":2},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 2},
 | 
				
			||||||
                {"label":"H", "x":10, "y":2},
 | 
					
 | 
				
			||||||
                {"label":"J", "x":11, "y":2},
 | 
					                {"matrix": [3, 0], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
                {"label":"K", "x":12, "y":2},
 | 
					                {"matrix": [3, 1], "x": 3, "y": 2},
 | 
				
			||||||
                {"label":"L", "x":13, "y":2},
 | 
					                {"matrix": [3, 2], "x": 4, "y": 2},
 | 
				
			||||||
                {"label":":", "x":14, "y":2},
 | 
					                {"matrix": [3, 3], "x": 5, "y": 2},
 | 
				
			||||||
                {"label":"\"", "x":15, "y":2},
 | 
					                {"matrix": [3, 4], "x": 6, "y": 2},
 | 
				
			||||||
                {"label":"Enter", "x":16, "y":2, "w":2.25},
 | 
					                {"matrix": [3, 5], "x": 7, "y": 2},
 | 
				
			||||||
                {"label":"Vol+", "x":0, "y":3},
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.25, "y":3, "w":2.25},
 | 
					                {"matrix": [3, 6], "x": 10, "y": 2},
 | 
				
			||||||
                {"label":"Z", "x":3.5, "y":3},
 | 
					                {"matrix": [3, 7], "x": 11, "y": 2},
 | 
				
			||||||
                {"label":"X", "x":4.5, "y":3},
 | 
					                {"matrix": [3, 8], "x": 12, "y": 2},
 | 
				
			||||||
                {"label":"C", "x":5.5, "y":3},
 | 
					                {"matrix": [3, 9], "x": 13, "y": 2},
 | 
				
			||||||
                {"label":"V", "x":6.5, "y":3},
 | 
					                {"matrix": [3, 10], "x": 14, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":7.5, "y":3},
 | 
					                {"matrix": [3, 11], "x": 15, "y": 2},
 | 
				
			||||||
                {"label":"B", "x":9.5, "y":3},
 | 
					                {"matrix": [3, 12], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
                {"label":"N", "x":10.5, "y":3},
 | 
					
 | 
				
			||||||
                {"label":"M", "x":11.5, "y":3},
 | 
					                {"matrix": [0, 3], "x": 0, "y": 3},
 | 
				
			||||||
                {"label":"<", "x":12.5, "y":3},
 | 
					
 | 
				
			||||||
                {"label":">", "x":13.5, "y":3},
 | 
					                {"matrix": [4, 0], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
                {"label":"?", "x":14.5, "y":3},
 | 
					                {"matrix": [4, 1], "x": 3.5, "y": 3},
 | 
				
			||||||
                {"label":"Shift", "x":15.5, "y":3, "w":1.75},
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 3},
 | 
				
			||||||
                {"label":"Win", "x":17.25, "y":3},
 | 
					                {"matrix": [4, 3], "x": 5.5, "y": 3},
 | 
				
			||||||
                {"label":"Ctrl", "x":1.25, "y":4, "w":1.5},
 | 
					                {"matrix": [4, 4], "x": 6.5, "y": 3},
 | 
				
			||||||
                {"label":"Alt", "x":4.25, "y":4, "w":1.25},
 | 
					                {"matrix": [4, 5], "x": 7.5, "y": 3},
 | 
				
			||||||
                {"label":"Space", "x":5.5, "y":4, "w":2.25},
 | 
					
 | 
				
			||||||
                {"label":"FN", "x":7.75, "y":4, "w":1.25},
 | 
					                {"matrix": [4, 6], "x": 9.5, "y": 3},
 | 
				
			||||||
                {"label":"Space", "x":9.5, "y":4, "w":2.75},
 | 
					                {"matrix": [4, 7], "x": 10.5, "y": 3},
 | 
				
			||||||
                {"label":"Alt", "x":12.25, "y":4, "w":1.5},
 | 
					                {"matrix": [4, 8], "x": 11.5, "y": 3},
 | 
				
			||||||
                {"label":"Ctrl", "x":16.75, "y":4, "w":1.5}
 | 
					                {"matrix": [4, 9], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [5, 11], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 12], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 4.25, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 5.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [5, 9], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [5, 12], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,77 +0,0 @@
 | 
				
			|||||||
/* Copyright 2021 KiwiKey
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Layout Alice split-backspace
 | 
					 | 
				
			||||||
 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
 | 
					 | 
				
			||||||
 * │02 │ │10 │11 │12 │13 │14 │15 │05 │         │06 │16 │17 │18 │19 │1A │1B │1C │
 | 
					 | 
				
			||||||
 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
 | 
					 | 
				
			||||||
 * │01 │ │ 20  │21 │22 │23 │24 │25 │         │07 │26 │27 │28 │29 │2A │2B │ 2C  │
 | 
					 | 
				
			||||||
 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
 | 
					 | 
				
			||||||
 * │00 │ │  30  │31 │32 │33 │34 │35 │         │36 │37 │38 │39 │3A │3B │   3C   │
 | 
					 | 
				
			||||||
 * ├───┤ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
 | 
					 | 
				
			||||||
 * │03 │ │   40   │41 │42 │43 │44 │45 │     │46 │47 │48 │49 │4A │4B │  5B  │4C │
 | 
					 | 
				
			||||||
 * └───┘ ├──────┬─┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
 | 
					 | 
				
			||||||
 *       │  50  │    │ 52  │  53   │ 55 │   │    57    │ 59  │           │ 5C  │
 | 
					 | 
				
			||||||
 *       └──────┘    └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    k02, k10, k11, k12, k13, k14, k15, k05, k06, k16, k17, k18, k19, k1A, k1B, k1C,      \
 | 
					 | 
				
			||||||
    k01, k20, k21, k22, k23, k24, k25,      k07, k26, k27, k28, k29, k2A, k2B, k2C,      \
 | 
					 | 
				
			||||||
    k00, k30, k31, k32, k33, k34, k35,           k36, k37, k38, k39, k3A, k3B, k3C,      \
 | 
					 | 
				
			||||||
    k03, k40, k41, k42, k43, k44, k45,           k46, k47, k48, k49, k4A, k4B, k5B, k4C, \
 | 
					 | 
				
			||||||
         k50,      k52,   k53,    k55,                  k57,    k59,           k5C       \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
  { k00,   k01,   k02,   k03,   KC_NO, k05,   k06,   k07,   KC_NO, KC_NO, KC_NO, KC_NO, KC_NO },   \
 | 
					 | 
				
			||||||
  { k10,   k11,   k12,   k13,   k14,   k15,   k16,   k17,   k18,   k19,   k1A,   k1B,   k1C   },   \
 | 
					 | 
				
			||||||
  { k20,   k21,   k22,   k23,   k24,   k25,   k26,   k27,   k28,   k29,   k2A,   k2B,   k2C   },   \
 | 
					 | 
				
			||||||
  { k30,   k31,   k32,   k33,   k34,   k35,   k36,   k37,   k38,   k39,   k3A,   k3B,   k3C   },   \
 | 
					 | 
				
			||||||
  { k40,   k41,   k42,   k43,   k44,   k45,   k46,   k47,   k48,   k49,   k4A,   k4B,   k4C   },   \
 | 
					 | 
				
			||||||
  { k50,   KC_NO, k52,   k53,   KC_NO, k55,   KC_NO, k57,   KC_NO, k59,   KC_NO, k5B,   k5C   }    \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Layout Alice
 | 
					 | 
				
			||||||
 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───────┐
 | 
					 | 
				
			||||||
 * │02 │ │10 │11 │12 │13 │14 │15 │05 │         │06 │16 │17 │18 │19 │1A │  1B   │
 | 
					 | 
				
			||||||
 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
 | 
					 | 
				
			||||||
 * │01 │ │ 20  │21 │22 │23 │24 │25 │         │07 │26 │27 │28 │29 │2A │2B │ 2C  │
 | 
					 | 
				
			||||||
 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
 | 
					 | 
				
			||||||
 * │00 │ │  30  │31 │32 │33 │34 │35 │         │36 │37 │38 │39 │3A │3B │   3C   │
 | 
					 | 
				
			||||||
 * ├───┤ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
 | 
					 | 
				
			||||||
 * │03 │ │   40   │41 │42 │43 │44 │45 │     │46 │47 │48 │49 │4A │4B │  5B  │4C │
 | 
					 | 
				
			||||||
 * └───┘ ├──────┬─┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
 | 
					 | 
				
			||||||
 *       │  50  │    │ 52  │  53   │ 55 │   │    57    │ 59  │           │ 5C  │
 | 
					 | 
				
			||||||
 *       └──────┘    └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    k02, k10, k11, k12, k13, k14, k15, k05, k06, k16, k17, k18, k19, k1A, k1B,           \
 | 
					 | 
				
			||||||
    k01, k20, k21, k22, k23, k24, k25,      k07, k26, k27, k28, k29, k2A, k2B, k2C,      \
 | 
					 | 
				
			||||||
    k00, k30, k31, k32, k33, k34, k35,           k36, k37, k38, k39, k3A, k3B, k3C,      \
 | 
					 | 
				
			||||||
    k03, k40, k41, k42, k43, k44, k45,           k46, k47, k48, k49, k4A, k4B, k5B, k4C, \
 | 
					 | 
				
			||||||
         k50,      k52,   k53,    k55,                  k57,    k59,           k5C       \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
  { k00,   k01,   k02,   k03,   KC_NO, k05,   k06,   k07,   KC_NO, KC_NO, KC_NO, KC_NO, KC_NO },   \
 | 
					 | 
				
			||||||
  { k10,   k11,   k12,   k13,   k14,   k15,   k16,   k17,   k18,   k19,   k1A,   k1B,   KC_NO },   \
 | 
					 | 
				
			||||||
  { k20,   k21,   k22,   k23,   k24,   k25,   k26,   k27,   k28,   k29,   k2A,   k2B,   k2C   },   \
 | 
					 | 
				
			||||||
  { k30,   k31,   k32,   k33,   k34,   k35,   k36,   k37,   k38,   k39,   k3A,   k3B,   k3C   },   \
 | 
					 | 
				
			||||||
  { k40,   k41,   k42,   k43,   k44,   k45,   k46,   k47,   k48,   k49,   k4A,   k4B,   k4C   },   \
 | 
					 | 
				
			||||||
  { k50,   KC_NO, k52,   k53,   KC_NO, k55,   KC_NO, k57,   KC_NO, k59,   KC_NO, k5B,   k5C   }    \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,93 +0,0 @@
 | 
				
			|||||||
/* Copyright 221 Moritz Plattner
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K00,  K10,  K01,  K11,  K02,  K12,  K03,  K13,  K14,  K05,  K15,  K06,  K16,  K07,  K17,  \
 | 
					 | 
				
			||||||
    K20,  K30,  K21,  K22,  K32,  K23,  K33,  K24,  K34,  K25,  K35,  K26,  K36,  K27,  K37,  \
 | 
					 | 
				
			||||||
    K40,  K50,  K41,  K42,  K52,  K43,  K53,  K44,  K54,  K45,  K55,  K46,  K56,        K47,  \
 | 
					 | 
				
			||||||
          K70,  K61,  K62,  K72,  K63,  K73,  K64,  K74,  K65,  K75,  K66,  K76,  K67,  K77,  \
 | 
					 | 
				
			||||||
          K80,              K81,  K82,  K83,        K84,        K85,                    K87   \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  { K00,   K01,   K02,   K03,   KC_NO, K05,   K06,   K07,    }, \
 | 
					 | 
				
			||||||
  { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,    }, \
 | 
					 | 
				
			||||||
  { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,    }, \
 | 
					 | 
				
			||||||
  { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,    }, \
 | 
					 | 
				
			||||||
  { K40,   K41,   K42,   K43,   K44,   K45,   K46,   K47,    }, \
 | 
					 | 
				
			||||||
  { K50,   KC_NO, K52,   K53,   K54,   K55,   K56,   KC_NO,  }, \
 | 
					 | 
				
			||||||
  { KC_NO, K61,   K62,   K63,   K64,   K65,   K66,   K67,    }, \
 | 
					 | 
				
			||||||
  { K70,   KC_NO, K72,   K73,   K74,   K75,   K76,   K77,    }, \
 | 
					 | 
				
			||||||
  { K80,   K81,   K82,   K83,   K84,   K85,   KC_NO, K87     }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    K00,  K10,  K01,  K11,  K02,  K12,  K03,  K13,  K14,  K05,  K15,  K06,  K16,  K07,  K17,  K57,  \
 | 
					 | 
				
			||||||
    K20,  K30,  K21,  K22,  K32,  K23,  K33,  K24,  K34,  K25,  K35,  K26,  K36,  K27,  K37,  \
 | 
					 | 
				
			||||||
    K40,  K50,  K41,  K42,  K52,  K43,  K53,  K44,  K54,  K45,  K55,  K46,  K56,        K47,  \
 | 
					 | 
				
			||||||
          K70,  K61,  K62,  K72,  K63,  K73,  K64,  K74,  K65,  K75,  K66,  K76,  K67,  K77,  \
 | 
					 | 
				
			||||||
          K80,              K81,  K82,  K83,        K84,        K85,                    K87   \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  { K00,   K01,   K02,   K03,   KC_NO, K05,   K06,   K07,    }, \
 | 
					 | 
				
			||||||
  { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,    }, \
 | 
					 | 
				
			||||||
  { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,    }, \
 | 
					 | 
				
			||||||
  { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,    }, \
 | 
					 | 
				
			||||||
  { K40,   K41,   K42,   K43,   K44,   K45,   K46,   K47,    }, \
 | 
					 | 
				
			||||||
  { K50,   KC_NO, K52,   K53,   K54,   K55,   K56,   K57,    }, \
 | 
					 | 
				
			||||||
  { KC_NO, K61,   K62,   K63,   K64,   K65,   K66,   K67,    }, \
 | 
					 | 
				
			||||||
  { K70,   KC_NO, K72,   K73,   K74,   K75,   K76,   K77,    }, \
 | 
					 | 
				
			||||||
  { K80,   K81,   K82,   K83,   K84,   K85,   KC_NO, K87     }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_long_rshift( \
 | 
					 | 
				
			||||||
    K00,  K10,  K01,  K11,  K02,  K12,  K03,  K13,  K14,  K05,  K15,  K06,  K16,  K07,  K17,  \
 | 
					 | 
				
			||||||
    K20,  K30,  K21,  K22,  K32,  K23,  K33,  K24,  K34,  K25,  K35,  K26,  K36,  K27,  K37,  \
 | 
					 | 
				
			||||||
    K40,  K50,  K41,  K42,  K52,  K43,  K53,  K44,  K54,  K45,  K55,  K46,  K56,        K47,  \
 | 
					 | 
				
			||||||
          K70,  K61,  K62,  K72,  K63,  K73,  K64,  K74,  K65,  K75,  K66,  K76,  K67,        \
 | 
					 | 
				
			||||||
          K80,              K81,  K82,  K83,        K84,        K85,                    K87   \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  { K00,   K01,   K02,   K03,   KC_NO, K05,   K06,   K07,    }, \
 | 
					 | 
				
			||||||
  { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,    }, \
 | 
					 | 
				
			||||||
  { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,    }, \
 | 
					 | 
				
			||||||
  { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,    }, \
 | 
					 | 
				
			||||||
  { K40,   K41,   K42,   K43,   K44,   K45,   K46,   K47,    }, \
 | 
					 | 
				
			||||||
  { K50,   KC_NO, K52,   K53,   K54,   K55,   K56,   KC_NO,  }, \
 | 
					 | 
				
			||||||
  { KC_NO, K61,   K62,   K63,   K64,   K65,   K66,   K67,    }, \
 | 
					 | 
				
			||||||
  { K70,   KC_NO, K72,   K73,   K74,   K75,   K76,   KC_NO,  }, \
 | 
					 | 
				
			||||||
  { K80,   K81,   K82,   K83,   K84,   K85,   KC_NO, K87     }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_long_rshift_split_bs( \
 | 
					 | 
				
			||||||
    K00,  K10,  K01,  K11,  K02,  K12,  K03,  K13,  K14,  K05,  K15,  K06,  K16,  K07,  K17,  K57,  \
 | 
					 | 
				
			||||||
    K20,  K30,  K21,  K22,  K32,  K23,  K33,  K24,  K34,  K25,  K35,  K26,  K36,  K27,  K37,  \
 | 
					 | 
				
			||||||
    K40,  K50,  K41,  K42,  K52,  K43,  K53,  K44,  K54,  K45,  K55,  K46,  K56,        K47,  \
 | 
					 | 
				
			||||||
          K70,  K61,  K62,  K72,  K63,  K73,  K64,  K74,  K65,  K75,  K66,  K76,  K67,        \
 | 
					 | 
				
			||||||
          K80,              K81,  K82,  K83,        K84,        K85,                    K87   \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  { K00,   K01,   K02,   K03,   KC_NO, K05,   K06,   K07,    }, \
 | 
					 | 
				
			||||||
  { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,    }, \
 | 
					 | 
				
			||||||
  { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,    }, \
 | 
					 | 
				
			||||||
  { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,    }, \
 | 
					 | 
				
			||||||
  { K40,   K41,   K42,   K43,   K44,   K45,   K46,   K47,    }, \
 | 
					 | 
				
			||||||
  { K50,   KC_NO, K52,   K53,   K54,   K55,   K56,   K57,    }, \
 | 
					 | 
				
			||||||
  { KC_NO, K61,   K62,   K63,   K64,   K65,   K66,   K67,    }, \
 | 
					 | 
				
			||||||
  { K70,   KC_NO, K72,   K73,   K74,   K75,   K76,   KC_NO,  }, \
 | 
					 | 
				
			||||||
  { K80,   K81,   K82,   K83,   K84,   K85,   KC_NO, K87     }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -24,282 +24,329 @@
 | 
				
			|||||||
    },
 | 
					    },
 | 
				
			||||||
    "processor": "atmega32u4",
 | 
					    "processor": "atmega32u4",
 | 
				
			||||||
    "bootloader": "atmel-dfu",
 | 
					    "bootloader": "atmel-dfu",
 | 
				
			||||||
 | 
					        "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
      "LAYOUT_alice": {
 | 
					      "LAYOUT_alice": {
 | 
				
			||||||
        "layout": [
 | 
					        "layout": [
 | 
				
			||||||
          {"x":0, "y":0},
 | 
					          {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
          {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
          {"x":2.25, "y":0},
 | 
					          {"matrix": [1, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
          {"x":3.25, "y":0},
 | 
					          {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
          {"x":4.25, "y":0},
 | 
					          {"matrix": [1, 1], "x": 3.25, "y": 0},
 | 
				
			||||||
          {"x":5.25, "y":0},
 | 
					          {"matrix": [0, 2], "x": 4.25, "y": 0},
 | 
				
			||||||
          {"x":6.25, "y":0},
 | 
					          {"matrix": [1, 2], "x": 5.25, "y": 0},
 | 
				
			||||||
          {"x":7.25, "y":0},
 | 
					          {"matrix": [0, 3], "x": 6.25, "y": 0},
 | 
				
			||||||
          {"x":10.25, "y":0},
 | 
					          {"matrix": [1, 3], "x": 7.25, "y": 0},
 | 
				
			||||||
          {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
          {"x":12.25, "y":0},
 | 
					          {"matrix": [1, 4], "x": 10.25, "y": 0},
 | 
				
			||||||
          {"x":13.25, "y":0},
 | 
					          {"matrix": [0, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
          {"x":14.25, "y":0},
 | 
					          {"matrix": [1, 5], "x": 12.25, "y": 0},
 | 
				
			||||||
          {"x":15.25, "y":0},
 | 
					          {"matrix": [0, 6], "x": 13.25, "y": 0},
 | 
				
			||||||
          {"x":16.25, "y":0, "w": 2},
 | 
					          {"matrix": [1, 6], "x": 14.25, "y": 0},
 | 
				
			||||||
          {"x":0, "y":1},
 | 
					          {"matrix": [0, 7], "x": 15.25, "y": 0},
 | 
				
			||||||
          {"x":1.25, "y":1, "w":1.5},
 | 
					          {"matrix": [1, 7], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
          {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":3.75, "y":1},
 | 
					          {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
          {"x":4.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":5.75, "y":1},
 | 
					          {"matrix": [3, 0], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
          {"x":6.75, "y":1},
 | 
					          {"matrix": [2, 1], "x": 2.75, "y": 1},
 | 
				
			||||||
          {"x":9.75, "y":1},
 | 
					          {"matrix": [2, 2], "x": 3.75, "y": 1},
 | 
				
			||||||
          {"x":10.75, "y":1},
 | 
					          {"matrix": [3, 2], "x": 4.75, "y": 1},
 | 
				
			||||||
          {"x":11.75, "y":1},
 | 
					          {"matrix": [2, 3], "x": 5.75, "y": 1},
 | 
				
			||||||
          {"x":12.75, "y":1},
 | 
					          {"matrix": [3, 3], "x": 6.75, "y": 1},
 | 
				
			||||||
          {"x":13.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":14.75, "y":1},
 | 
					          {"matrix": [2, 4], "x": 9.75, "y": 1},
 | 
				
			||||||
          {"x":15.75, "y":1},
 | 
					          {"matrix": [3, 4], "x": 10.75, "y": 1},
 | 
				
			||||||
          {"x":16.75, "y":1, "w":1.5},
 | 
					          {"matrix": [2, 5], "x": 11.75, "y": 1},
 | 
				
			||||||
          {"x":0, "y":2},
 | 
					          {"matrix": [3, 5], "x": 12.75, "y": 1},
 | 
				
			||||||
          {"x":1.25, "y":2, "w":1.75},
 | 
					          {"matrix": [2, 6], "x": 13.75, "y": 1},
 | 
				
			||||||
          {"x":3, "y":2},
 | 
					          {"matrix": [3, 6], "x": 14.75, "y": 1},
 | 
				
			||||||
          {"x":4, "y":2},
 | 
					          {"matrix": [2, 7], "x": 15.75, "y": 1},
 | 
				
			||||||
          {"x":5, "y":2},
 | 
					          {"matrix": [3, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
          {"x":6, "y":2},
 | 
					
 | 
				
			||||||
          {"x":7, "y":2},
 | 
					          {"matrix": [4, 0], "x": 0, "y": 2},
 | 
				
			||||||
          {"x":10, "y":2},
 | 
					
 | 
				
			||||||
          {"x":11, "y":2},
 | 
					          {"matrix": [5, 0], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
          {"x":12, "y":2},
 | 
					          {"matrix": [4, 1], "x": 3, "y": 2},
 | 
				
			||||||
          {"x":13, "y":2},
 | 
					          {"matrix": [4, 2], "x": 4, "y": 2},
 | 
				
			||||||
          {"x":14, "y":2},
 | 
					          {"matrix": [5, 2], "x": 5, "y": 2},
 | 
				
			||||||
          {"x":15, "y":2},
 | 
					          {"matrix": [4, 3], "x": 6, "y": 2},
 | 
				
			||||||
          {"x":16, "y":2, "w":2.25},
 | 
					          {"matrix": [5, 3], "x": 7, "y": 2},
 | 
				
			||||||
          {"x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
          {"x":3.5, "y":3},
 | 
					          {"matrix": [4, 4], "x": 10, "y": 2},
 | 
				
			||||||
          {"x":4.5, "y":3},
 | 
					          {"matrix": [5, 4], "x": 11, "y": 2},
 | 
				
			||||||
          {"x":5.5, "y":3},
 | 
					          {"matrix": [4, 5], "x": 12, "y": 2},
 | 
				
			||||||
          {"x":6.5, "y":3},
 | 
					          {"matrix": [5, 5], "x": 13, "y": 2},
 | 
				
			||||||
          {"x":7.5, "y":3},
 | 
					          {"matrix": [4, 6], "x": 14, "y": 2},
 | 
				
			||||||
          {"x":9.5, "y":3},
 | 
					          {"matrix": [5, 6], "x": 15, "y": 2},
 | 
				
			||||||
          {"x":10.5, "y":3},
 | 
					          {"matrix": [4, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
          {"x":11.5, "y":3},
 | 
					
 | 
				
			||||||
          {"x":12.5, "y":3},
 | 
					          {"matrix": [7, 0], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
          {"x":13.5, "y":3},
 | 
					          {"matrix": [6, 1], "x": 3.5, "y": 3},
 | 
				
			||||||
          {"x":14.5, "y":3},
 | 
					          {"matrix": [6, 2], "x": 4.5, "y": 3},
 | 
				
			||||||
          {"x":15.5, "y":3, "w":1.75},
 | 
					          {"matrix": [7, 2], "x": 5.5, "y": 3},
 | 
				
			||||||
          {"x":17.25, "y":3},
 | 
					          {"matrix": [6, 3], "x": 6.5, "y": 3},
 | 
				
			||||||
          {"x":1.25, "y":4, "w":1.5},
 | 
					          {"matrix": [7, 3], "x": 7.5, "y": 3},
 | 
				
			||||||
          {"x":4.25, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
          {"x":5.75, "y":4, "w":2},
 | 
					          {"matrix": [6, 4], "x": 9.5, "y": 3},
 | 
				
			||||||
          {"x":7.75, "y":4, "w":1.25},
 | 
					          {"matrix": [7, 4], "x": 10.5, "y": 3},
 | 
				
			||||||
          {"x":9.5, "y":4, "w":2.75},
 | 
					          {"matrix": [6, 5], "x": 11.5, "y": 3},
 | 
				
			||||||
          {"x":12.25, "y":4, "w":1.5},
 | 
					          {"matrix": [7, 5], "x": 12.5, "y": 3},
 | 
				
			||||||
          {"x":16.75, "y":4, "w":1.5}
 | 
					          {"matrix": [6, 6], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					          {"matrix": [7, 6], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					          {"matrix": [6, 7], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					          {"matrix": [7, 7], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          {"matrix": [8, 0], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 1], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 2], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					          {"matrix": [8, 3], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					          {"matrix": [8, 4], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					          {"matrix": [8, 5], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 7], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
        ]
 | 
					        ]
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "LAYOUT_alice_split_bs": {
 | 
					      "LAYOUT_alice_split_bs": {
 | 
				
			||||||
        "layout": [
 | 
					        "layout": [
 | 
				
			||||||
          {"x":0, "y":0},
 | 
					          {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
          {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
          {"x":2.25, "y":0},
 | 
					          {"matrix": [1, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
          {"x":3.25, "y":0},
 | 
					          {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
          {"x":4.25, "y":0},
 | 
					          {"matrix": [1, 1], "x": 3.25, "y": 0},
 | 
				
			||||||
          {"x":5.25, "y":0},
 | 
					          {"matrix": [0, 2], "x": 4.25, "y": 0},
 | 
				
			||||||
          {"x":6.25, "y":0},
 | 
					          {"matrix": [1, 2], "x": 5.25, "y": 0},
 | 
				
			||||||
          {"x":7.25, "y":0},
 | 
					          {"matrix": [0, 3], "x": 6.25, "y": 0},
 | 
				
			||||||
          {"x":10.25, "y":0},
 | 
					          {"matrix": [1, 3], "x": 7.25, "y": 0},
 | 
				
			||||||
          {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
          {"x":12.25, "y":0},
 | 
					          {"matrix": [1, 4], "x": 10.25, "y": 0},
 | 
				
			||||||
          {"x":13.25, "y":0},
 | 
					          {"matrix": [0, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
          {"x":14.25, "y":0},
 | 
					          {"matrix": [1, 5], "x": 12.25, "y": 0},
 | 
				
			||||||
          {"x":15.25, "y":0},
 | 
					          {"matrix": [0, 6], "x": 13.25, "y": 0},
 | 
				
			||||||
          {"x":16.25, "y":0},
 | 
					          {"matrix": [1, 6], "x": 14.25, "y": 0},
 | 
				
			||||||
          {"x":17.25, "y":0},
 | 
					          {"matrix": [0, 7], "x": 15.25, "y": 0},
 | 
				
			||||||
          {"x":0, "y":1},
 | 
					          {"matrix": [1, 7], "x": 16.25, "y": 0},
 | 
				
			||||||
          {"x":1.25, "y":1, "w":1.5},
 | 
					          {"matrix": [5, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
          {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":3.75, "y":1},
 | 
					          {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
          {"x":4.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":5.75, "y":1},
 | 
					          {"matrix": [3, 0], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
          {"x":6.75, "y":1},
 | 
					          {"matrix": [2, 1], "x": 2.75, "y": 1},
 | 
				
			||||||
          {"x":9.75, "y":1},
 | 
					          {"matrix": [2, 2], "x": 3.75, "y": 1},
 | 
				
			||||||
          {"x":10.75, "y":1},
 | 
					          {"matrix": [3, 2], "x": 4.75, "y": 1},
 | 
				
			||||||
          {"x":11.75, "y":1},
 | 
					          {"matrix": [2, 3], "x": 5.75, "y": 1},
 | 
				
			||||||
          {"x":12.75, "y":1},
 | 
					          {"matrix": [3, 3], "x": 6.75, "y": 1},
 | 
				
			||||||
          {"x":13.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":14.75, "y":1},
 | 
					          {"matrix": [2, 4], "x": 9.75, "y": 1},
 | 
				
			||||||
          {"x":15.75, "y":1},
 | 
					          {"matrix": [3, 4], "x": 10.75, "y": 1},
 | 
				
			||||||
          {"x":16.75, "y":1, "w":1.5},
 | 
					          {"matrix": [2, 5], "x": 11.75, "y": 1},
 | 
				
			||||||
          {"x":0, "y":2},
 | 
					          {"matrix": [3, 5], "x": 12.75, "y": 1},
 | 
				
			||||||
          {"x":1.25, "y":2, "w":1.75},
 | 
					          {"matrix": [2, 6], "x": 13.75, "y": 1},
 | 
				
			||||||
          {"x":3, "y":2},
 | 
					          {"matrix": [3, 6], "x": 14.75, "y": 1},
 | 
				
			||||||
          {"x":4, "y":2},
 | 
					          {"matrix": [2, 7], "x": 15.75, "y": 1},
 | 
				
			||||||
          {"x":5, "y":2},
 | 
					          {"matrix": [3, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
          {"x":6, "y":2},
 | 
					
 | 
				
			||||||
          {"x":7, "y":2},
 | 
					          {"matrix": [4, 0], "x": 0, "y": 2},
 | 
				
			||||||
          {"x":10, "y":2},
 | 
					
 | 
				
			||||||
          {"x":11, "y":2},
 | 
					          {"matrix": [5, 0], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
          {"x":12, "y":2},
 | 
					          {"matrix": [4, 1], "x": 3, "y": 2},
 | 
				
			||||||
          {"x":13, "y":2},
 | 
					          {"matrix": [4, 2], "x": 4, "y": 2},
 | 
				
			||||||
          {"x":14, "y":2},
 | 
					          {"matrix": [5, 2], "x": 5, "y": 2},
 | 
				
			||||||
          {"x":15, "y":2},
 | 
					          {"matrix": [4, 3], "x": 6, "y": 2},
 | 
				
			||||||
          {"x":16, "y":2, "w":2.25},
 | 
					          {"matrix": [5, 3], "x": 7, "y": 2},
 | 
				
			||||||
          {"x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
          {"x":3.5, "y":3},
 | 
					          {"matrix": [4, 4], "x": 10, "y": 2},
 | 
				
			||||||
          {"x":4.5, "y":3},
 | 
					          {"matrix": [5, 4], "x": 11, "y": 2},
 | 
				
			||||||
          {"x":5.5, "y":3},
 | 
					          {"matrix": [4, 5], "x": 12, "y": 2},
 | 
				
			||||||
          {"x":6.5, "y":3},
 | 
					          {"matrix": [5, 5], "x": 13, "y": 2},
 | 
				
			||||||
          {"x":7.5, "y":3},
 | 
					          {"matrix": [4, 6], "x": 14, "y": 2},
 | 
				
			||||||
          {"x":9.5, "y":3},
 | 
					          {"matrix": [5, 6], "x": 15, "y": 2},
 | 
				
			||||||
          {"x":10.5, "y":3},
 | 
					          {"matrix": [4, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
          {"x":11.5, "y":3},
 | 
					
 | 
				
			||||||
          {"x":12.5, "y":3},
 | 
					          {"matrix": [7, 0], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
          {"x":13.5, "y":3},
 | 
					          {"matrix": [6, 1], "x": 3.5, "y": 3},
 | 
				
			||||||
          {"x":14.5, "y":3},
 | 
					          {"matrix": [6, 2], "x": 4.5, "y": 3},
 | 
				
			||||||
          {"x":15.5, "y":3, "w":1.75},
 | 
					          {"matrix": [7, 2], "x": 5.5, "y": 3},
 | 
				
			||||||
          {"x":17.25, "y":3},
 | 
					          {"matrix": [6, 3], "x": 6.5, "y": 3},
 | 
				
			||||||
          {"x":1.25, "y":4, "w":1.5},
 | 
					          {"matrix": [7, 3], "x": 7.5, "y": 3},
 | 
				
			||||||
          {"x":4.25, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
          {"x":5.75, "y":4, "w":2},
 | 
					          {"matrix": [6, 4], "x": 9.5, "y": 3},
 | 
				
			||||||
          {"x":7.75, "y":4, "w":1.25},
 | 
					          {"matrix": [7, 4], "x": 10.5, "y": 3},
 | 
				
			||||||
          {"x":9.5, "y":4, "w":2.75},
 | 
					          {"matrix": [6, 5], "x": 11.5, "y": 3},
 | 
				
			||||||
          {"x":12.25, "y":4, "w":1.5},
 | 
					          {"matrix": [7, 5], "x": 12.5, "y": 3},
 | 
				
			||||||
          {"x":16.75, "y":4, "w":1.5}
 | 
					          {"matrix": [6, 6], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					          {"matrix": [7, 6], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					          {"matrix": [6, 7], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					          {"matrix": [7, 7], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          {"matrix": [8, 0], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 1], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 2], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					          {"matrix": [8, 3], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					          {"matrix": [8, 4], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					          {"matrix": [8, 5], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 7], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
        ]
 | 
					        ]
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "LAYOUT_long_rshift": {
 | 
					      "LAYOUT_long_rshift": {
 | 
				
			||||||
        "layout": [
 | 
					        "layout": [
 | 
				
			||||||
          {"x":0, "y":0},
 | 
					          {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
          {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
          {"x":2.25, "y":0},
 | 
					          {"matrix": [1, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
          {"x":3.25, "y":0},
 | 
					          {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
          {"x":4.25, "y":0},
 | 
					          {"matrix": [1, 1], "x": 3.25, "y": 0},
 | 
				
			||||||
          {"x":5.25, "y":0},
 | 
					          {"matrix": [0, 2], "x": 4.25, "y": 0},
 | 
				
			||||||
          {"x":6.25, "y":0},
 | 
					          {"matrix": [1, 2], "x": 5.25, "y": 0},
 | 
				
			||||||
          {"x":7.25, "y":0},
 | 
					          {"matrix": [0, 3], "x": 6.25, "y": 0},
 | 
				
			||||||
          {"x":10.25, "y":0},
 | 
					          {"matrix": [1, 3], "x": 7.25, "y": 0},
 | 
				
			||||||
          {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
          {"x":12.25, "y":0},
 | 
					          {"matrix": [1, 4], "x": 10.25, "y": 0},
 | 
				
			||||||
          {"x":13.25, "y":0},
 | 
					          {"matrix": [0, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
          {"x":14.25, "y":0},
 | 
					          {"matrix": [1, 5], "x": 12.25, "y": 0},
 | 
				
			||||||
          {"x":15.25, "y":0},
 | 
					          {"matrix": [0, 6], "x": 13.25, "y": 0},
 | 
				
			||||||
          {"x":16.25, "y":0, "w":2},
 | 
					          {"matrix": [1, 6], "x": 14.25, "y": 0},
 | 
				
			||||||
          {"x":0, "y":1},
 | 
					          {"matrix": [0, 7], "x": 15.25, "y": 0},
 | 
				
			||||||
          {"x":1.25, "y":1, "w":1.5},
 | 
					          {"matrix": [1, 7], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
          {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":3.75, "y":1},
 | 
					          {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
          {"x":4.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":5.75, "y":1},
 | 
					          {"matrix": [3, 0], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
          {"x":6.75, "y":1},
 | 
					          {"matrix": [2, 1], "x": 2.75, "y": 1},
 | 
				
			||||||
          {"x":9.75, "y":1},
 | 
					          {"matrix": [2, 2], "x": 3.75, "y": 1},
 | 
				
			||||||
          {"x":10.75, "y":1},
 | 
					          {"matrix": [3, 2], "x": 4.75, "y": 1},
 | 
				
			||||||
          {"x":11.75, "y":1},
 | 
					          {"matrix": [2, 3], "x": 5.75, "y": 1},
 | 
				
			||||||
          {"x":12.75, "y":1},
 | 
					          {"matrix": [3, 3], "x": 6.75, "y": 1},
 | 
				
			||||||
          {"x":13.75, "y":1},
 | 
					          {"matrix": [2, 4], "x": 9.75, "y": 1},
 | 
				
			||||||
          {"x":14.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":15.75, "y":1},
 | 
					          {"matrix": [3, 4], "x": 10.75, "y": 1},
 | 
				
			||||||
          {"x":16.75, "y":1, "w":1.5},
 | 
					          {"matrix": [2, 5], "x": 11.75, "y": 1},
 | 
				
			||||||
          {"x":0, "y":2},
 | 
					          {"matrix": [3, 5], "x": 12.75, "y": 1},
 | 
				
			||||||
          {"x":1.25, "y":2, "w":1.75},
 | 
					          {"matrix": [2, 6], "x": 13.75, "y": 1},
 | 
				
			||||||
          {"x":3, "y":2},
 | 
					          {"matrix": [3, 6], "x": 14.75, "y": 1},
 | 
				
			||||||
          {"x":4, "y":2},
 | 
					          {"matrix": [2, 7], "x": 15.75, "y": 1},
 | 
				
			||||||
          {"x":5, "y":2},
 | 
					          {"matrix": [3, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
          {"x":6, "y":2},
 | 
					
 | 
				
			||||||
          {"x":7, "y":2},
 | 
					          {"matrix": [4, 0], "x": 0, "y": 2},
 | 
				
			||||||
          {"x":10, "y":2},
 | 
					
 | 
				
			||||||
          {"x":11, "y":2},
 | 
					          {"matrix": [5, 0], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
          {"x":12, "y":2},
 | 
					          {"matrix": [4, 1], "x": 3, "y": 2},
 | 
				
			||||||
          {"x":13, "y":2},
 | 
					          {"matrix": [4, 2], "x": 4, "y": 2},
 | 
				
			||||||
          {"x":14, "y":2},
 | 
					          {"matrix": [5, 2], "x": 5, "y": 2},
 | 
				
			||||||
          {"x":15, "y":2},
 | 
					          {"matrix": [4, 3], "x": 6, "y": 2},
 | 
				
			||||||
          {"x":16, "y":2, "w":2.25},
 | 
					          {"matrix": [5, 3], "x": 7, "y": 2},
 | 
				
			||||||
          {"x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
          {"x":3.5, "y":3},
 | 
					          {"matrix": [4, 4], "x": 10, "y": 2},
 | 
				
			||||||
          {"x":4.5, "y":3},
 | 
					          {"matrix": [5, 4], "x": 11, "y": 2},
 | 
				
			||||||
          {"x":5.5, "y":3},
 | 
					          {"matrix": [4, 5], "x": 12, "y": 2},
 | 
				
			||||||
          {"x":6.5, "y":3},
 | 
					          {"matrix": [5, 5], "x": 13, "y": 2},
 | 
				
			||||||
          {"x":7.5, "y":3},
 | 
					          {"matrix": [4, 6], "x": 14, "y": 2},
 | 
				
			||||||
          {"x":9.5, "y":3},
 | 
					          {"matrix": [5, 6], "x": 15, "y": 2},
 | 
				
			||||||
          {"x":10.5, "y":3},
 | 
					          {"matrix": [4, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
          {"x":11.5, "y":3},
 | 
					
 | 
				
			||||||
          {"x":12.5, "y":3},
 | 
					          {"matrix": [7, 0], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
          {"x":13.5, "y":3},
 | 
					          {"matrix": [6, 1], "x": 3.5, "y": 3},
 | 
				
			||||||
          {"x":14.5, "y":3},
 | 
					          {"matrix": [6, 2], "x": 4.5, "y": 3},
 | 
				
			||||||
          {"x":15.5, "y":3, "w":2.75},
 | 
					          {"matrix": [7, 2], "x": 5.5, "y": 3},
 | 
				
			||||||
          {"x":1.25, "y":4, "w":1.5},
 | 
					          {"matrix": [6, 3], "x": 6.5, "y": 3},
 | 
				
			||||||
          {"x":4.25, "y":4, "w":1.5},
 | 
					          {"matrix": [7, 3], "x": 7.5, "y": 3},
 | 
				
			||||||
          {"x":5.75, "y":4, "w":2},
 | 
					
 | 
				
			||||||
          {"x":7.75, "y":4, "w":1.25},
 | 
					          {"matrix": [6, 4], "x": 9.5, "y": 3},
 | 
				
			||||||
          {"x":9.5, "y":4, "w":2.75},
 | 
					          {"matrix": [7, 4], "x": 10.5, "y": 3},
 | 
				
			||||||
          {"x":12.25, "y":4, "w":1.5},
 | 
					          {"matrix": [6, 5], "x": 11.5, "y": 3},
 | 
				
			||||||
          {"x":16.75, "y":4, "w":1.5}
 | 
					          {"matrix": [7, 5], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					          {"matrix": [6, 6], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					          {"matrix": [7, 6], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					          {"matrix": [6, 7], "x": 15.5, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          {"matrix": [8, 0], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 1], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 2], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					          {"matrix": [8, 3], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					          {"matrix": [8, 4], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					          {"matrix": [8, 5], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 7], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
        ]
 | 
					        ]
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "LAYOUT_long_rshift_split_bs": {
 | 
					      "LAYOUT_long_rshift_split_bs": {
 | 
				
			||||||
        "layout": [
 | 
					        "layout": [
 | 
				
			||||||
          {"x":0, "y":0},
 | 
					          {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
          {"x":1.25, "y":0},
 | 
					
 | 
				
			||||||
          {"x":2.25, "y":0},
 | 
					          {"matrix": [1, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
          {"x":3.25, "y":0},
 | 
					          {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
          {"x":4.25, "y":0},
 | 
					          {"matrix": [1, 1], "x": 3.25, "y": 0},
 | 
				
			||||||
          {"x":5.25, "y":0},
 | 
					          {"matrix": [0, 2], "x": 4.25, "y": 0},
 | 
				
			||||||
          {"x":6.25, "y":0},
 | 
					          {"matrix": [1, 2], "x": 5.25, "y": 0},
 | 
				
			||||||
          {"x":7.25, "y":0},
 | 
					          {"matrix": [0, 3], "x": 6.25, "y": 0},
 | 
				
			||||||
          {"x":10.25, "y":0},
 | 
					          {"matrix": [1, 3], "x": 7.25, "y": 0},
 | 
				
			||||||
          {"x":11.25, "y":0},
 | 
					
 | 
				
			||||||
          {"x":12.25, "y":0},
 | 
					          {"matrix": [1, 4], "x": 10.25, "y": 0},
 | 
				
			||||||
          {"x":13.25, "y":0},
 | 
					          {"matrix": [0, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
          {"x":14.25, "y":0},
 | 
					          {"matrix": [1, 5], "x": 12.25, "y": 0},
 | 
				
			||||||
          {"x":15.25, "y":0},
 | 
					          {"matrix": [0, 6], "x": 13.25, "y": 0},
 | 
				
			||||||
          {"x":16.25, "y":0},
 | 
					          {"matrix": [1, 6], "x": 14.25, "y": 0},
 | 
				
			||||||
          {"x":17.25, "y":0},
 | 
					          {"matrix": [0, 7], "x": 15.25, "y": 0},
 | 
				
			||||||
          {"x":0, "y":1},
 | 
					          {"matrix": [1, 7], "x": 16.25, "y": 0},
 | 
				
			||||||
          {"x":1.25, "y":1, "w":1.5},
 | 
					          {"matrix": [5, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
          {"x":2.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":3.75, "y":1},
 | 
					          {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
          {"x":4.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":5.75, "y":1},
 | 
					          {"matrix": [3, 0], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
          {"x":6.75, "y":1},
 | 
					          {"matrix": [2, 1], "x": 2.75, "y": 1},
 | 
				
			||||||
          {"x":9.75, "y":1},
 | 
					          {"matrix": [2, 2], "x": 3.75, "y": 1},
 | 
				
			||||||
          {"x":10.75, "y":1},
 | 
					          {"matrix": [3, 2], "x": 4.75, "y": 1},
 | 
				
			||||||
          {"x":11.75, "y":1},
 | 
					          {"matrix": [2, 3], "x": 5.75, "y": 1},
 | 
				
			||||||
          {"x":12.75, "y":1},
 | 
					          {"matrix": [3, 3], "x": 6.75, "y": 1},
 | 
				
			||||||
          {"x":13.75, "y":1},
 | 
					
 | 
				
			||||||
          {"x":14.75, "y":1},
 | 
					          {"matrix": [2, 4], "x": 9.75, "y": 1},
 | 
				
			||||||
          {"x":15.75, "y":1},
 | 
					          {"matrix": [3, 4], "x": 10.75, "y": 1},
 | 
				
			||||||
          {"x":16.75, "y":1, "w":1.5},
 | 
					          {"matrix": [2, 5], "x": 11.75, "y": 1},
 | 
				
			||||||
          {"x":0, "y":2},
 | 
					          {"matrix": [3, 5], "x": 12.75, "y": 1},
 | 
				
			||||||
          {"x":1.25, "y":2, "w":1.75},
 | 
					          {"matrix": [2, 6], "x": 13.75, "y": 1},
 | 
				
			||||||
          {"x":3, "y":2},
 | 
					          {"matrix": [3, 6], "x": 14.75, "y": 1},
 | 
				
			||||||
          {"x":4, "y":2},
 | 
					          {"matrix": [2, 7], "x": 15.75, "y": 1},
 | 
				
			||||||
          {"x":5, "y":2},
 | 
					          {"matrix": [3, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
          {"x":6, "y":2},
 | 
					
 | 
				
			||||||
          {"x":7, "y":2},
 | 
					          {"matrix": [4, 0], "x": 0, "y": 2},
 | 
				
			||||||
          {"x":10, "y":2},
 | 
					
 | 
				
			||||||
          {"x":11, "y":2},
 | 
					          {"matrix": [5, 0], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
          {"x":12, "y":2},
 | 
					          {"matrix": [4, 1], "x": 3, "y": 2},
 | 
				
			||||||
          {"x":13, "y":2},
 | 
					          {"matrix": [4, 2], "x": 4, "y": 2},
 | 
				
			||||||
          {"x":14, "y":2},
 | 
					          {"matrix": [5, 2], "x": 5, "y": 2},
 | 
				
			||||||
          {"x":15, "y":2},
 | 
					          {"matrix": [4, 3], "x": 6, "y": 2},
 | 
				
			||||||
          {"x":16, "y":2, "w":2.25},
 | 
					          {"matrix": [5, 3], "x": 7, "y": 2},
 | 
				
			||||||
          {"x":1.25, "y":3, "w":2.25},
 | 
					
 | 
				
			||||||
          {"x":3.5, "y":3},
 | 
					          {"matrix": [4, 4], "x": 10, "y": 2},
 | 
				
			||||||
          {"x":4.5, "y":3},
 | 
					          {"matrix": [5, 4], "x": 11, "y": 2},
 | 
				
			||||||
          {"x":5.5, "y":3},
 | 
					          {"matrix": [4, 5], "x": 12, "y": 2},
 | 
				
			||||||
          {"x":6.5, "y":3},
 | 
					          {"matrix": [5, 5], "x": 13, "y": 2},
 | 
				
			||||||
          {"x":7.5, "y":3},
 | 
					          {"matrix": [4, 6], "x": 14, "y": 2},
 | 
				
			||||||
          {"x":9.5, "y":3},
 | 
					          {"matrix": [5, 6], "x": 15, "y": 2},
 | 
				
			||||||
          {"x":10.5, "y":3},
 | 
					          {"matrix": [4, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
          {"x":11.5, "y":3},
 | 
					
 | 
				
			||||||
          {"x":12.5, "y":3},
 | 
					          {"matrix": [7, 0], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
          {"x":13.5, "y":3},
 | 
					          {"matrix": [6, 1], "x": 3.5, "y": 3},
 | 
				
			||||||
          {"x":14.5, "y":3},
 | 
					          {"matrix": [6, 2], "x": 4.5, "y": 3},
 | 
				
			||||||
          {"x":15.5, "y":3, "w":2.75},
 | 
					          {"matrix": [7, 2], "x": 5.5, "y": 3},
 | 
				
			||||||
          {"x":1.25, "y":4, "w":1.5},
 | 
					          {"matrix": [6, 3], "x": 6.5, "y": 3},
 | 
				
			||||||
          {"x":4.25, "y":4, "w":1.5},
 | 
					          {"matrix": [7, 3], "x": 7.5, "y": 3},
 | 
				
			||||||
          {"x":5.75, "y":4, "w":2},
 | 
					
 | 
				
			||||||
          {"x":7.75, "y":4, "w":1.25},
 | 
					          {"matrix": [6, 4], "x": 9.5, "y": 3},
 | 
				
			||||||
          {"x":9.5, "y":4, "w":2.75},
 | 
					          {"matrix": [7, 4], "x": 10.5, "y": 3},
 | 
				
			||||||
          {"x":12.25, "y":4, "w":1.5},
 | 
					          {"matrix": [6, 5], "x": 11.5, "y": 3},
 | 
				
			||||||
          {"x":16.75, "y":4, "w":1.5}
 | 
					          {"matrix": [7, 5], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					          {"matrix": [6, 6], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					          {"matrix": [7, 6], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					          {"matrix": [6, 7], "x": 15.5, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          {"matrix": [8, 0], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 1], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 2], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					          {"matrix": [8, 3], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					          {"matrix": [8, 4], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					          {"matrix": [8, 5], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					          {"matrix": [8, 7], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
        ]
 | 
					        ]
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					}
 | 
				
			||||||
@ -6,302 +6,5 @@
 | 
				
			|||||||
        "vid": "0x4D4C",
 | 
					        "vid": "0x4D4C",
 | 
				
			||||||
        "device_version": "0.0.1"
 | 
					        "device_version": "0.0.1"
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "layout_aliases": {
 | 
					    "community_layouts": ["alice", "alice_split_bs"]
 | 
				
			||||||
        "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "community_layouts": ["alice", "alice_split_bs"],
 | 
					 | 
				
			||||||
    "layouts": {
 | 
					 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					 | 
				
			||||||
            "layout": [
 | 
					 | 
				
			||||||
                {"label":"K1E", "x":0, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K00", "x":1.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K01", "x":2.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K02", "x":3.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K03", "x":4.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K04", "x":5.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K05", "x":6.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K06", "x":7.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K07", "x":10.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K08", "x":11.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K09", "x":12.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0A", "x":13.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0B", "x":14.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0C", "x":15.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0D", "x":16.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0E", "x":17.5, "y":0},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K2E", "x":0, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K10", "x":1.5, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
                {"label":"K11", "x":3, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K12", "x":4, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K13", "x":5, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K14", "x":6, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K15", "x":7, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K16", "x":10, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K17", "x":11, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K18", "x":12, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K19", "x":13, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1A", "x":14, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1B", "x":15, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1C", "x":16, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1D", "x":17, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K3E", "x":0, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K20", "x":1.5, "y":2, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"K21", "x":3.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K22", "x":4.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K23", "x":5.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K24", "x":6.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K25", "x":7.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K26", "x":10.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K27", "x":11.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K28", "x":12.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K29", "x":13.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2A", "x":14.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2B", "x":15.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2D", "x":16.25, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K30", "x":1.5, "y":3, "w":2.25},
 | 
					 | 
				
			||||||
                {"label":"K32", "x":3.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K33", "x":4.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K34", "x":5.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K35", "x":6.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K36", "x":7.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K37", "x":9.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K38", "x":10.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K39", "x":11.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3A", "x":12.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3B", "x":13.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3D", "x":14.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3C", "x":15.75, "y":3, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"K4D", "x":17.5, "y":3},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K40", "x":1.5, "y":4, "w":1.5},
 | 
					 | 
				
			||||||
                {"label":"K42", "x":4.5, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K44", "x":5.75, "y":4, "w":2.25},
 | 
					 | 
				
			||||||
                {"label":"K46", "x":8, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K48", "x":9.75, "y":4, "w":2.75},
 | 
					 | 
				
			||||||
                {"label":"K4A", "x":12.5, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K4E", "x":17, "y":4, "w":1.5}
 | 
					 | 
				
			||||||
            ]
 | 
					 | 
				
			||||||
        },
 | 
					 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					 | 
				
			||||||
            "layout": [
 | 
					 | 
				
			||||||
                {"label":"K1E", "x":0, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K00", "x":1.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K01", "x":2.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K02", "x":3.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K03", "x":4.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K04", "x":5.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K05", "x":6.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K06", "x":7.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K07", "x":10.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K08", "x":11.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K09", "x":12.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0A", "x":13.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0B", "x":14.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0C", "x":15.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0D", "x":16.5, "y":0, "w":2},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K2E", "x":0, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K10", "x":1.5, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
                {"label":"K11", "x":3, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K12", "x":4, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K13", "x":5, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K14", "x":6, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K15", "x":7, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K16", "x":10, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K17", "x":11, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K18", "x":12, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K19", "x":13, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1A", "x":14, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1B", "x":15, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1C", "x":16, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1D", "x":17, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K3E", "x":0, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K20", "x":1.5, "y":2, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"K21", "x":3.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K22", "x":4.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K23", "x":5.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K24", "x":6.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K25", "x":7.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K26", "x":10.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K27", "x":11.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K28", "x":12.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K29", "x":13.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2A", "x":14.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2B", "x":15.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2D", "x":16.25, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K30", "x":1.5, "y":3, "w":2.25},
 | 
					 | 
				
			||||||
                {"label":"K32", "x":3.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K33", "x":4.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K34", "x":5.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K35", "x":6.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K36", "x":7.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K37", "x":9.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K38", "x":10.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K39", "x":11.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3A", "x":12.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3B", "x":13.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3D", "x":14.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3C", "x":15.75, "y":3, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"K4D", "x":17.5, "y":3},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K40", "x":1.5, "y":4, "w":1.5},
 | 
					 | 
				
			||||||
                {"label":"K42", "x":4.5, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K44", "x":5.75, "y":4, "w":2.25},
 | 
					 | 
				
			||||||
                {"label":"K46", "x":8, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K48", "x":9.75, "y":4, "w":2.75},
 | 
					 | 
				
			||||||
                {"label":"K4A", "x":12.5, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K4E", "x":17, "y":4, "w":1.5}
 | 
					 | 
				
			||||||
            ]
 | 
					 | 
				
			||||||
        },
 | 
					 | 
				
			||||||
        "LAYOUT_alice_split_bs_full_rshift": {
 | 
					 | 
				
			||||||
            "layout": [
 | 
					 | 
				
			||||||
                {"label":"K1E", "x":0, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K00", "x":1.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K01", "x":2.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K02", "x":3.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K03", "x":4.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K04", "x":5.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K05", "x":6.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K06", "x":7.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K07", "x":10.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K08", "x":11.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K09", "x":12.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0A", "x":13.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0B", "x":14.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0C", "x":15.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0D", "x":16.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0E", "x":17.5, "y":0},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K2E", "x":0, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K10", "x":1.5, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
                {"label":"K11", "x":3, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K12", "x":4, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K13", "x":5, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K14", "x":6, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K15", "x":7, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K16", "x":10, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K17", "x":11, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K18", "x":12, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K19", "x":13, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1A", "x":14, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1B", "x":15, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1C", "x":16, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1D", "x":17, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K3E", "x":0, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K20", "x":1.5, "y":2, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"K21", "x":3.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K22", "x":4.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K23", "x":5.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K24", "x":6.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K25", "x":7.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K26", "x":10.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K27", "x":11.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K28", "x":12.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K29", "x":13.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2A", "x":14.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2B", "x":15.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2D", "x":16.25, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K30", "x":1.5, "y":3, "w":2.25},
 | 
					 | 
				
			||||||
                {"label":"K32", "x":3.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K33", "x":4.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K34", "x":5.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K35", "x":6.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K36", "x":7.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K37", "x":9.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K38", "x":10.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K39", "x":11.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3A", "x":12.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3B", "x":13.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3D", "x":14.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3C", "x":15.75, "y":3, "w":2.75},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K40", "x":1.5, "y":4, "w":1.5},
 | 
					 | 
				
			||||||
                {"label":"K42", "x":4.5, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K44", "x":5.75, "y":4, "w":2.25},
 | 
					 | 
				
			||||||
                {"label":"K46", "x":8, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K48", "x":9.75, "y":4, "w":2.75},
 | 
					 | 
				
			||||||
                {"label":"K4A", "x":12.5, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K4E", "x":17, "y":4, "w":1.5}
 | 
					 | 
				
			||||||
            ]
 | 
					 | 
				
			||||||
        },
 | 
					 | 
				
			||||||
        "LAYOUT_alice_full_rshift": {
 | 
					 | 
				
			||||||
            "layout": [
 | 
					 | 
				
			||||||
                {"label":"K1E", "x":0, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K00", "x":1.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K01", "x":2.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K02", "x":3.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K03", "x":4.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K04", "x":5.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K05", "x":6.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K06", "x":7.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K07", "x":10.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K08", "x":11.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K09", "x":12.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0A", "x":13.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0B", "x":14.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0C", "x":15.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0D", "x":16.5, "y":0, "w":2},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K2E", "x":0, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K10", "x":1.5, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
                {"label":"K11", "x":3, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K12", "x":4, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K13", "x":5, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K14", "x":6, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K15", "x":7, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K16", "x":10, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K17", "x":11, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K18", "x":12, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K19", "x":13, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1A", "x":14, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1B", "x":15, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1C", "x":16, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1D", "x":17, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K3E", "x":0, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K20", "x":1.5, "y":2, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"K21", "x":3.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K22", "x":4.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K23", "x":5.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K24", "x":6.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K25", "x":7.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K26", "x":10.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K27", "x":11.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K28", "x":12.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K29", "x":13.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2A", "x":14.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2B", "x":15.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2D", "x":16.25, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K30", "x":1.5, "y":3, "w":2.25},
 | 
					 | 
				
			||||||
                {"label":"K32", "x":3.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K33", "x":4.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K34", "x":5.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K35", "x":6.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K36", "x":7.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K37", "x":9.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K38", "x":10.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K39", "x":11.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3A", "x":12.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3B", "x":13.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3D", "x":14.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3C", "x":15.75, "y":3, "w":2.75},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                {"label":"K40", "x":1.5, "y":4, "w":1.5},
 | 
					 | 
				
			||||||
                {"label":"K42", "x":4.5, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K44", "x":5.75, "y":4, "w":2.25},
 | 
					 | 
				
			||||||
                {"label":"K46", "x":8, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K48", "x":9.75, "y":4, "w":2.75},
 | 
					 | 
				
			||||||
                {"label":"K4A", "x":12.5, "y":4, "w":1.25},
 | 
					 | 
				
			||||||
                {"label":"K4E", "x":17, "y":4, "w":1.5}
 | 
					 | 
				
			||||||
            ]
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -15,5 +15,330 @@
 | 
				
			|||||||
        "caps_lock": "B2",
 | 
					        "caps_lock": "B2",
 | 
				
			||||||
        "num_lock": "C15",
 | 
					        "num_lock": "C15",
 | 
				
			||||||
        "scroll_lock": "B9"
 | 
					        "scroll_lock": "B9"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layouts": {
 | 
				
			||||||
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -14,7 +14,7 @@
 | 
				
			|||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "rev1.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef RGB_MATRIX_ENABLE
 | 
					#ifdef RGB_MATRIX_ENABLE
 | 
				
			||||||
led_config_t g_led_config = { {
 | 
					led_config_t g_led_config = { {
 | 
				
			||||||
 | 
				
			|||||||
@ -1,77 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 Team Mechlovin
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, K0E,\
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3D, K3C, K4D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, K4D,   K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3D, K3C, K4D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, K4D,   K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3D, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D,      \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3D, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -20,5 +20,330 @@
 | 
				
			|||||||
        "caps_lock": "B2",
 | 
					        "caps_lock": "B2",
 | 
				
			||||||
        "num_lock": "C15",
 | 
					        "num_lock": "C15",
 | 
				
			||||||
        "scroll_lock": "B9"
 | 
					        "scroll_lock": "B9"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layouts": {
 | 
				
			||||||
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -14,7 +14,7 @@
 | 
				
			|||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "rev2.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef RGB_MATRIX_ENABLE
 | 
					#ifdef RGB_MATRIX_ENABLE
 | 
				
			||||||
const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
 | 
					const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
 | 
				
			||||||
 | 
				
			|||||||
@ -1,77 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 Team Mechlovin
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, K0E,\
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3D, K3C, K4D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, K4D,   K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3D, K3C, K4D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, K4D,   K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3D, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D,      \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3D, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -22,5 +22,314 @@
 | 
				
			|||||||
    },
 | 
					    },
 | 
				
			||||||
    "ws2812": {
 | 
					    "ws2812": {
 | 
				
			||||||
        "driver": "spi"
 | 
					        "driver": "spi"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layouts": {
 | 
				
			||||||
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -14,7 +14,7 @@
 | 
				
			|||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "rev3.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef RGB_MATRIX_ENABLE
 | 
					#ifdef RGB_MATRIX_ENABLE
 | 
				
			||||||
const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
 | 
					const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
 | 
				
			||||||
 | 
				
			|||||||
@ -1,78 +0,0 @@
 | 
				
			|||||||
/* Copyright 2021 Team Mechlovin
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    K31, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, K0E,\
 | 
					 | 
				
			||||||
    K41, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K43, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3C, K3D, K3E,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D, KC_NO   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D, KC_NO   }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   K41,   K42,   K43,   K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K31, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D,\
 | 
					 | 
				
			||||||
    K41, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K43, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3C, K3D, K3E,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D, KC_NO   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D, KC_NO   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D, KC_NO   }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   K41,   K42,   K43,   K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs_full_rshift( \
 | 
					 | 
				
			||||||
    K31, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
 | 
					 | 
				
			||||||
    K41, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K43, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3C, K3D,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K40,   K41,   K42,   K43,   K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_full_rshift( \
 | 
					 | 
				
			||||||
    K31, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D,      \
 | 
					 | 
				
			||||||
    K41, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K43, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3C, K3D,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K40,   K41,   K42,   K43,   K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@ -4,5 +4,330 @@
 | 
				
			|||||||
    },
 | 
					    },
 | 
				
			||||||
    "processor": "STM32F303",
 | 
					    "processor": "STM32F303",
 | 
				
			||||||
    "board": "QMK_PROTON_C",
 | 
					    "board": "QMK_PROTON_C",
 | 
				
			||||||
    "bootloader": "stm32-dfu"
 | 
					    "bootloader": "stm32-dfu",
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layouts": {
 | 
				
			||||||
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,77 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 Team Mechlovin
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, K0E,\
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3D, K3C, K4D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, K4D,   K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3D, K3C, K4D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, K4D,   K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3D, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D,      \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3D, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -11,5 +11,330 @@
 | 
				
			|||||||
    },
 | 
					    },
 | 
				
			||||||
    "processor": "STM32F303",
 | 
					    "processor": "STM32F303",
 | 
				
			||||||
    "board": "QMK_PROTON_C",
 | 
					    "board": "QMK_PROTON_C",
 | 
				
			||||||
    "bootloader": "stm32-dfu"
 | 
					    "bootloader": "stm32-dfu",
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layouts": {
 | 
				
			||||||
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,77 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 Team Mechlovin
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, K0E,\
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3D, K3C, K4D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, K4D,   K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3D, K3C, K4D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, K4D,   K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3D, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D,      \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3D, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -8,5 +8,330 @@
 | 
				
			|||||||
            {"pin_a": "A4", "pin_b": "A3"},
 | 
					            {"pin_a": "A4", "pin_b": "A3"},
 | 
				
			||||||
            {"pin_a": "B7", "pin_b": "B6"}
 | 
					            {"pin_a": "B7", "pin_b": "B6"}
 | 
				
			||||||
        ]
 | 
					        ]
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layouts": {
 | 
				
			||||||
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,77 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 Team Mechlovin
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, K0E,\
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3D, K3C, K4D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, K4D,   K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K3D, K3C, K4D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4E \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, K4D,   K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3D, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D,      \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K3D, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4E  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, KC_NO, KC_NO, K4E   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -20,5 +20,330 @@
 | 
				
			|||||||
        "caps_lock": "E6",
 | 
					        "caps_lock": "E6",
 | 
				
			||||||
        "num_lock": "D7",
 | 
					        "num_lock": "D7",
 | 
				
			||||||
        "scroll_lock": "F7"
 | 
					        "scroll_lock": "F7"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "layouts": {
 | 
				
			||||||
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 12], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 12], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 12], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "LAYOUT_alice_split_bs_full_rshift": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 10.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 11.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 13.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 14.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 15.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 16.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 14], "x": 17.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 3, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 4, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 6, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 7, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [4, 12], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15.75, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,77 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 Team Mechlovin
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D, K0E,\
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K4C, K3C, K3D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4D \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, K4C,   K4D, KC_NO   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07,K08,K09, K0A, K0B, K0C, K0D,\
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16,K17,K18, K19, K1A, K1B, K1C, K1D,\
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26,K27,K28, K29, K2A, K2B, K2D,\
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37,K38,K39, K3A, K3B, K4C, K3C, K3D,\
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,             K48,     K4A,               K4D \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D, KC_NO   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   K3D,   K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, K4C,   K4D, KC_NO   }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K4C, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4D  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   K0E   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   KC_NO, K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, K4C,   K4D,   KC_NO }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_full_rshift( \
 | 
					 | 
				
			||||||
    K1E, K00, K01, K02, K03, K04, K05, K06,         K07, K08, K09, K0A, K0B, K0C, K0D,      \
 | 
					 | 
				
			||||||
    K2E, K10, K11, K12, K13, K14, K15,              K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
 | 
					 | 
				
			||||||
    K3E, K20, K21, K22, K23, K24, K25,              K26, K27, K28, K29, K2A, K2B, K2D,      \
 | 
					 | 
				
			||||||
         K30,      K32, K33, K34, K35, K36,         K37, K38, K39, K3A, K3B, K4C, K3C,      \
 | 
					 | 
				
			||||||
         K40,      K42,      K44,      K46,              K48,      K4A,                K4D  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B,   K0C,   K0D,   KC_NO }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B,   K1C,   K1D,   K1E   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B,   KC_NO, K2D,   K2E   }, \
 | 
					 | 
				
			||||||
    { K30,   KC_NO, K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B,   K3C,   KC_NO, K3E   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   KC_NO, K44,   KC_NO, K46,   KC_NO, K48,   KC_NO, K4A,   KC_NO, K4C,   K4D,   KC_NO }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -25,78 +25,154 @@
 | 
				
			|||||||
    "bootloader": "stm32-dfu",
 | 
					    "bootloader": "stm32-dfu",
 | 
				
			||||||
    "community_layouts": ["alice", "alice_split_bs"],
 | 
					    "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 7], "x": 8, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 8], "x": 9, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 9], "x": 10, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 10], "x": 11, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 11], "x": 12, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 12], "x": 13, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 13], "x": 14, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 15, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 16, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 17, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 18, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 19, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 20, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 21, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 22, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 23, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 24, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 26, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 27, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 28, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 29, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 30, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 31, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 32, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 33, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 34, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 35, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 36, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 37, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 38, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 39, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 40, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 41, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 42, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 43, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 44, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 45, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 46, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 47, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 48, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 49, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 50, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 51, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 52, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 53, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 54, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 55, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 56, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 57, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 58, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 59, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 60, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 61, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 62, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 63, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 64, "y": 0}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"x":0, "y":0},
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":2.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":3.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":4.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":5.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":6.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":7.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":10.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":11.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":12.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":13.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":14.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":15.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":16.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":17.25, "y":0},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0, "y":1},
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":1, "w":1.5},
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
                {"x":2.75, "y":1},
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
                {"x":3.75, "y":1},
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
                {"x":4.75, "y":1},
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
                {"x":5.75, "y":1},
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
                {"x":6.75, "y":1},
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
                {"x":9.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":10.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":11.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":12.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":13.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":14.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":15.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":16.75, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0, "y":2},
 | 
					                {"matrix": [0, 7], "x": 10.25, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [0, 8], "x": 11.25, "y": 0},
 | 
				
			||||||
                {"x":3, "y":2},
 | 
					                {"matrix": [0, 9], "x": 12.25, "y": 0},
 | 
				
			||||||
                {"x":4, "y":2},
 | 
					                {"matrix": [0, 10], "x": 13.25, "y": 0},
 | 
				
			||||||
                {"x":5, "y":2},
 | 
					                {"matrix": [0, 11], "x": 14.25, "y": 0},
 | 
				
			||||||
                {"x":6, "y":2},
 | 
					                {"matrix": [0, 12], "x": 15.25, "y": 0},
 | 
				
			||||||
                {"x":7, "y":2},
 | 
					                {"matrix": [0, 13], "x": 16.25, "y": 0},
 | 
				
			||||||
                {"x":10, "y":2},
 | 
					                {"matrix": [0, 14], "x": 17.25, "y": 0},
 | 
				
			||||||
                {"x":11, "y":2},
 | 
					 | 
				
			||||||
                {"x":12, "y":2},
 | 
					 | 
				
			||||||
                {"x":13, "y":2},
 | 
					 | 
				
			||||||
                {"x":14, "y":2},
 | 
					 | 
				
			||||||
                {"x":15, "y":2},
 | 
					 | 
				
			||||||
                {"x":16, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.25, "y":3, "w":2.25},
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
                {"x":3.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":4.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":5.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":6.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":7.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":9.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":10.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":11.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":12.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":13.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":14.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":15.5, "y":3, "w":1.75},
 | 
					 | 
				
			||||||
                {"x":17.25, "y":3},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"x":4.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
                {"x":5.75, "y":4, "w":2},
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
                {"x":7.75, "y":4, "w":1.25},
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
                {"x":9.5, "y":4, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
                {"x":12.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
                {"x":16.75, "y":4, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,48 +0,0 @@
 | 
				
			|||||||
/* Copyright 2021 Yiancar-Designs
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define XXX KC_NO
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    K10, K00, K01, K02, K03, K04, K05, K06,      K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
 | 
					 | 
				
			||||||
    K20, K11, K12, K13, K14, K15, K16,      K17, K18, K19, K1A, K1B, K1C, K1D, K1E,      \
 | 
					 | 
				
			||||||
    K30, K21, K22, K23, K24, K25, K26,      K27, K28, K29, K2A, K2B, K2C,      K2E,      \
 | 
					 | 
				
			||||||
         K31, K32, K33, K34, K35, K36,      K37, K38, K39, K3A, K3B, K3C, K3D, K3E,      \
 | 
					 | 
				
			||||||
         K41,      K43,      K45, K46,           K48,      K4A,                K4E       \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \
 | 
					 | 
				
			||||||
    { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \
 | 
					 | 
				
			||||||
    { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \
 | 
					 | 
				
			||||||
    { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \
 | 
					 | 
				
			||||||
    { XXX, K41, XXX, K43, XXX, K45, K46, XXX, K48, XXX, K4A, XXX, XXX, XXX, K4E }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K10, K00, K01, K02, K03, K04, K05, K06,      K07, K08, K09, K0A, K0B, K0C, K0D, \
 | 
					 | 
				
			||||||
    K20, K11, K12, K13, K14, K15, K16,      K17, K18, K19, K1A, K1B, K1C, K1D, K1E,      \
 | 
					 | 
				
			||||||
    K30, K21, K22, K23, K24, K25, K26,      K27, K28, K29, K2A, K2B, K2C,      K2E,      \
 | 
					 | 
				
			||||||
         K31, K32, K33, K34, K35, K36,      K37, K38, K39, K3A, K3B, K3C, K3D, K3E,      \
 | 
					 | 
				
			||||||
         K41,      K43,      K45, K46,           K48,      K4A,                K4E       \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \
 | 
					 | 
				
			||||||
    { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \
 | 
					 | 
				
			||||||
    { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \
 | 
					 | 
				
			||||||
    { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \
 | 
					 | 
				
			||||||
    { XXX, K41, XXX, K43, XXX, K45, K46, XXX, K48, XXX, K4A, XXX, XXX, XXX, K4E }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -21,79 +21,87 @@
 | 
				
			|||||||
    "processor": "atmega32u4",
 | 
					    "processor": "atmega32u4",
 | 
				
			||||||
    "bootloader": "atmel-dfu",
 | 
					    "bootloader": "atmel-dfu",
 | 
				
			||||||
    "community_layouts": ["alice_split_bs"],
 | 
					    "community_layouts": ["alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
				{"x":0.5, "y":0}, 
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
				{"x":2, "y":0}, 
 | 
					                {"matrix": [1, 0], "x": 2, "y": 0},
 | 
				
			||||||
				{"x":3, "y":0}, 
 | 
					                {"matrix": [0, 1], "x": 3, "y": 0},
 | 
				
			||||||
				{"x":4, "y":0}, 
 | 
					                {"matrix": [1, 1], "x": 4, "y": 0},
 | 
				
			||||||
				{"x":5, "y":0}, 
 | 
					                {"matrix": [0, 2], "x": 5, "y": 0},
 | 
				
			||||||
				{"x":6, "y":0}, 
 | 
					                {"matrix": [1, 2], "x": 6, "y": 0},
 | 
				
			||||||
				{"x":7, "y":0}, 
 | 
					                {"matrix": [0, 3], "x": 7, "y": 0},
 | 
				
			||||||
				{"x":8, "y":0}, 
 | 
					                {"matrix": [1, 3], "x": 8, "y": 0},
 | 
				
			||||||
				{"x":11.25, "y":0}, 
 | 
					 | 
				
			||||||
				{"x":12.25, "y":0}, 
 | 
					 | 
				
			||||||
				{"x":13.25, "y":0}, 
 | 
					 | 
				
			||||||
				{"x":14.25, "y":0}, 
 | 
					 | 
				
			||||||
				{"x":15.25, "y":0}, 
 | 
					 | 
				
			||||||
				{"x":16.25, "y":0}, 
 | 
					 | 
				
			||||||
				{"x":17.25, "y":0}, 
 | 
					 | 
				
			||||||
				{"x":18.25, "y":0}, 
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
				{"x":0.25, "y":1}, 
 | 
					                {"matrix": [0, 4], "x": 11.25, "y": 0},
 | 
				
			||||||
				{"x":1.75, "y":1, "w":1.5}, 
 | 
					                {"matrix": [1, 4], "x": 12.25, "y": 0},
 | 
				
			||||||
				{"x":3.25, "y":1}, 
 | 
					                {"matrix": [0, 5], "x": 13.25, "y": 0},
 | 
				
			||||||
				{"x":4.25, "y":1}, 
 | 
					                {"matrix": [1, 5], "x": 14.25, "y": 0},
 | 
				
			||||||
				{"x":5.25, "y":1}, 
 | 
					                {"matrix": [0, 6], "x": 15.25, "y": 0},
 | 
				
			||||||
				{"x":6.25, "y":1}, 
 | 
					                {"matrix": [1, 6], "x": 16.25, "y": 0},
 | 
				
			||||||
				{"x":7.25, "y":1}, 
 | 
					                {"matrix": [1, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
				{"x":11, "y":1}, 
 | 
					                {"matrix": [0, 7], "x": 18.25, "y": 0},
 | 
				
			||||||
				{"x":12, "y":1}, 
 | 
					 | 
				
			||||||
				{"x":13, "y":1}, 
 | 
					 | 
				
			||||||
				{"x":14, "y":1}, 
 | 
					 | 
				
			||||||
				{"x":15, "y":1}, 
 | 
					 | 
				
			||||||
				{"x":16, "y":1}, 
 | 
					 | 
				
			||||||
				{"x":17, "y":1}, 
 | 
					 | 
				
			||||||
				{"x":18, "y":1, "w":1.5}, 
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
				{"x":0, "y":2}, 
 | 
					                {"matrix": [2, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
				{"x":1.5, "y":2, "w":1.75}, 
 | 
					                {"matrix": [3, 0], "x": 1.75, "y": 1, "w": 1.5},
 | 
				
			||||||
				{"x":3.25, "y":2}, 
 | 
					                {"matrix": [2, 1], "x": 3.25, "y": 1},
 | 
				
			||||||
				{"x":4.5, "y":2}, 
 | 
					                {"matrix": [3, 1], "x": 4.25, "y": 1},
 | 
				
			||||||
				{"x":5.5, "y":2}, 
 | 
					                {"matrix": [2, 2], "x": 5.25, "y": 1},
 | 
				
			||||||
				{"x":6.5, "y":2}, 
 | 
					                {"matrix": [3, 2], "x": 6.25, "y": 1},
 | 
				
			||||||
				{"x":7.5, "y":2}, 
 | 
					                {"matrix": [2, 3], "x": 7.25, "y": 1},
 | 
				
			||||||
				{"x":11.25, "y":2}, 
 | 
					 | 
				
			||||||
				{"x":12.25, "y":2}, 
 | 
					 | 
				
			||||||
				{"x":13.25, "y":2}, 
 | 
					 | 
				
			||||||
				{"x":14.25, "y":2}, 
 | 
					 | 
				
			||||||
				{"x":15.5, "y":2}, 
 | 
					 | 
				
			||||||
				{"x":16.5, "y":2}, 
 | 
					 | 
				
			||||||
				{"x":17.5, "y":2, "w":2.25}, 
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
				{"x":1.25, "y":3, "w":2.25}, 
 | 
					                {"matrix": [2, 4], "x": 11, "y": 1},
 | 
				
			||||||
				{"x":3.5, "y":3}, 
 | 
					                {"matrix": [3, 4], "x": 12, "y": 1},
 | 
				
			||||||
				{"x":5, "y":3}, 
 | 
					                {"matrix": [2, 5], "x": 13, "y": 1},
 | 
				
			||||||
				{"x":6, "y":3}, 
 | 
					                {"matrix": [3, 5], "x": 14, "y": 1},
 | 
				
			||||||
				{"x":7, "y":3}, 
 | 
					                {"matrix": [2, 6], "x": 15, "y": 1},
 | 
				
			||||||
				{"x":8, "y":3}, 
 | 
					                {"matrix": [3, 6], "x": 16, "y": 1},
 | 
				
			||||||
				{"x":10.75, "y":3}, 
 | 
					                {"matrix": [2, 7], "x": 17, "y": 1},
 | 
				
			||||||
				{"x":11.75, "y":3}, 
 | 
					                {"matrix": [3, 7], "x": 18, "y": 1, "w": 1.5},
 | 
				
			||||||
				{"x":12.75, "y":3}, 
 | 
					 | 
				
			||||||
				{"x":13.75, "y":3}, 
 | 
					 | 
				
			||||||
				{"x":15.25, "y":3}, 
 | 
					 | 
				
			||||||
				{"x":16.25, "y":3}, 
 | 
					 | 
				
			||||||
				{"x":17.25, "y":3, "w":1.75}, 
 | 
					 | 
				
			||||||
				{"x":19, "y":3}, 
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
				{"x":1.25, "y":4, "w":1.5}, 
 | 
					                {"matrix": [4, 0], "x": 0, "y": 2},
 | 
				
			||||||
				{"x":5, "y":4, "w":1.5}, 
 | 
					                {"matrix": [5, 0], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
				{"x":6.5, "y":4, "w":2}, 
 | 
					                {"matrix": [5, 1], "x": 3.25, "y": 2},
 | 
				
			||||||
				{"x":8.5, "y":4, "w":1.25}, 
 | 
					                {"matrix": [4, 2], "x": 4.5, "y": 2},
 | 
				
			||||||
				{"x":10.5, "y":4, "w":2.75}, 
 | 
					                {"matrix": [5, 2], "x": 5.5, "y": 2},
 | 
				
			||||||
				{"x":13.25, "y":4, "w":1.5}, 
 | 
					                {"matrix": [4, 3], "x": 6.5, "y": 2},
 | 
				
			||||||
				{"x":18.25, "y":4, "w":1.5}]
 | 
					                {"matrix": [5, 3], "x": 7.5, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 15.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 16.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 7], "x": 17.5, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 0], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 6, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 7, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 8, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 15.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 16.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [6, 7], "x": 17.25, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [7, 7], "x": 19, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 2], "x": 6.5, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 8.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 10.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 13.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [8, 7], "x": 18.25, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,48 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 Neil Brian Ramirez
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* This is a shortcut to help you visually see your layout.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The first section contains all of the arguments representing the physical
 | 
					 | 
				
			||||||
 * layout of the board and position of the keys.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The second converts the arguments into a two-dimensional array which
 | 
					 | 
				
			||||||
 * represents the switch matrix.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
       K00,   K10, K01, K11, K02, K12, K03, K13,         K04, K14, K05, K15, K06, K16, K17, K07,     \
 | 
					 | 
				
			||||||
      K20,  K30,    K21,  K31, K22, K32, K23,          K24, K34, K25, K35,  K26, K36, K27, K37,      \
 | 
					 | 
				
			||||||
     K40,  K50,     K51,   K42, K52, K43, K53,          K44, K54, K45, K55,    K46, K56, K47,        \
 | 
					 | 
				
			||||||
          K70,       K71,     K62, K72, K63, K73,     K64, K74, K65, K75,    K66, K76, K67,     K77, \
 | 
					 | 
				
			||||||
          K90,               K82,   K92,      K83,    K84,         K95,                     K87      \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07   }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17   }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27   }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   KC_NO, K34,   K35,   K36,   K37   }, \
 | 
					 | 
				
			||||||
    { K40,   KC_NO, K42,   K43,   K44,   K45,   K46,   K47   }, \
 | 
					 | 
				
			||||||
    { K50,   K51,   K52,   K53,   K54,   K55,   K56,   KC_NO }, \
 | 
					 | 
				
			||||||
    { KC_NO, KC_NO, K62,   K63,   K64,   K65,   K66,   K67   }, \
 | 
					 | 
				
			||||||
    { K70,   K71,   K72,   K73,   K74,   K75,   K76,   K77   }, \
 | 
					 | 
				
			||||||
    { KC_NO, KC_NO, K82,   K83,   K84,   KC_NO, KC_NO, K87   }, \
 | 
					 | 
				
			||||||
    { K90,   KC_NO, K92,   KC_NO, KC_NO, K95,   KC_NO, KC_NO }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -22,49 +22,191 @@
 | 
				
			|||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_ergodox": {
 | 
					        "LAYOUT_ergodox": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
              {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
              {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					                {"matrix": [0, 1], "x": 1.5, "y": 0.375},
 | 
				
			||||||
              {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 2], "x": 2.5, "y": 0.125},
 | 
				
			||||||
              {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					                {"matrix": [0, 3], "x": 3.5, "y": 0},
 | 
				
			||||||
                     {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					                {"matrix": [0, 4], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                            {"x":6, "y":5}, {"x":7, "y":5},
 | 
					                {"matrix": [1, 0], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
                                                            {"x":7, "y":6},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
              {"x":5, "y":6, "h":2}, {"x":6, "y":6, "h":2}, {"x":7, "y":7},
 | 
					                {"matrix": [1, 2], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                         {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					                {"matrix": [3, 0], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
                {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.375},
 | 
				
			||||||
                                              {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					                {"matrix": [3, 2], "x": 2.5, "y": 3.125},
 | 
				
			||||||
                {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					                {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
                                                                    {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					                {"matrix": [3, 4], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":9, "y":5}, {"x":10, "y":5},
 | 
					                {"matrix": [5, 3], "x": 6, "y": 5},
 | 
				
			||||||
              {"x":9, "y":6},
 | 
					                {"matrix": [5, 4], "x": 7, "y": 5},
 | 
				
			||||||
              {"x":9, "y":7}, {"x":10, "y":6, "h":2}, {"x":11, "y":6, "h":2}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 5, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 6, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 9.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [7, 0], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 6], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 4], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [9, 2], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [9, 1], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [10, 4], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 3], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [10, 2], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 1], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [10, 0], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 4], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [11, 3], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 5], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 2], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 1], "x": 10, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [11, 0], "x": 11, "y": 6, "h": 2}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_ergodox_pretty": {
 | 
					        "LAYOUT_ergodox_pretty": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
              {"x":0, "y":0.375, "w":1.5}, {"x":1.5, "y":0.375}, {"x":2.5, "y":0.125}, {"x":3.5, "y":0}, {"x":4.5, "y":0.125}, {"x":5.5, "y":0.25}, {"x":6.5, "y":0.25},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5},
 | 
				
			||||||
              {"x":9.5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.375, "w":1.5},
 | 
					                {"matrix": [0, 1], "x": 1.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 2.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 3.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 4.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 5.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 6.5, "y": 0.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":0, "y":1.375, "w":1.5}, {"x":1.5, "y":1.375}, {"x":2.5, "y":1.125}, {"x":3.5, "y":1}, {"x":4.5, "y":1.125}, {"x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5},
 | 
					                {"matrix": [6, 0], "x": 9.5, "y": 0.25},
 | 
				
			||||||
              {"x":9.5, "y":1.25, "h":1.5}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.375, "w":1.5},
 | 
					                {"matrix": [6, 1], "x": 10.5, "y": 0.25},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 11.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 12.5, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 13.5, "y": 0.125},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 14.5, "y": 0.375},
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 15.5, "y": 0.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":0, "y":2.375, "w":1.5}, {"x":1.5, "y":2.375}, {"x":2.5, "y":2.125}, {"x":3.5, "y":2}, {"x":4.5, "y":2.125}, {"x":5.5, "y":2.25},
 | 
					                {"matrix": [1, 0], "x": 0, "y": 1.375, "w": 1.5},
 | 
				
			||||||
              {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.375, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 2.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 3.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 4.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 5.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 6.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
              {"x":0, "y":3.375, "w":1.5}, {"x":1.5, "y":3.375}, {"x":2.5, "y":3.125}, {"x":3.5, "y":3}, {"x":4.5, "y":3.125}, {"x":5.5, "y":3.25}, {"x":6.5, "y":2.75, "h":1.5},
 | 
					                {"matrix": [7, 0], "x": 9.5, "y": 1.25, "h": 1.5},
 | 
				
			||||||
              {"x":9.5, "y":2.75, "h":1.5}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.375, "w":1.5},
 | 
					                {"matrix": [7, 1], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 11.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 13.5, "y": 1.125},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 14.5, "y": 1.375},
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 15.5, "y": 1.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                     {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":2.5, "y":4.125}, {"x":3.5, "y":4}, {"x":4.5, "y":4.125},
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2.375, "w": 1.5},
 | 
				
			||||||
                                                                    {"x":11.5, "y":4.125}, {"x":12.5, "y":4}, {"x":13.5, "y":4.125}, {"x":14.5, "y":4.375}, {"x":15.5, "y":4.375},
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 2.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 3.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 4.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                            {"x":6, "y":5}, {"x":7, "y":5},      {"x":9, "y":5}, {"x":10, "y":5},
 | 
					                {"matrix": [8, 0], "x": 10.5, "y": 2.25},
 | 
				
			||||||
                                                            {"x":7, "y":6},      {"x":9, "y":6},
 | 
					                {"matrix": [8, 1], "x": 11.5, "y": 2.125},
 | 
				
			||||||
              {"x":5, "y":6, "h":2}, {"x":6, "y":6, "h":2}, {"x":7, "y":7},      {"x":9, "y":7}, {"x":10, "y":6, "h":2}, {"x":11, "y":6, "h":2}
 | 
					                {"matrix": [8, 2], "x": 12.5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 13.5, "y": 2.125},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 14.5, "y": 2.375},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 15.5, "y": 2.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 2.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 4.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 5.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 6.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 9.5, "y": 2.75, "h": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 1], "x": 10.5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [9, 2], "x": 11.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [9, 4], "x": 13.5, "y": 3.125},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 14.5, "y": 3.375},
 | 
				
			||||||
 | 
					                {"matrix": [9, 6], "x": 15.5, "y": 3.375, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 0], "x": 0.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [4, 2], "x": 2.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 3.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 4.5, "y": 4.125},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [10, 0], "x": 11.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 1], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [10, 2], "x": 13.5, "y": 4.125},
 | 
				
			||||||
 | 
					                {"matrix": [10, 3], "x": 14.5, "y": 4.375},
 | 
				
			||||||
 | 
					                {"matrix": [10, 4], "x": 15.5, "y": 4.375},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 6, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 7, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [11, 4], "x": 9, "y": 5},
 | 
				
			||||||
 | 
					                {"matrix": [11, 3], "x": 10, "y": 5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 7, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [11, 5], "x": 9, "y": 6},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 5, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 6, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 7, "y": 7},
 | 
				
			||||||
 | 
					                {"matrix": [11, 2], "x": 9, "y": 7},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [11, 1], "x": 10, "y": 6, "h": 2},
 | 
				
			||||||
 | 
					                {"matrix": [11, 0], "x": 11, "y": 6, "h": 2}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -28,67 +28,3 @@ inline void led3_on(void) { led_pin_on(6); };
 | 
				
			|||||||
inline void led1_off(void) { led_pin_off(8); };
 | 
					inline void led1_off(void) { led_pin_off(8); };
 | 
				
			||||||
inline void led2_off(void) { led_pin_off(5); };
 | 
					inline void led2_off(void) { led_pin_off(5); };
 | 
				
			||||||
inline void led3_off(void) { led_pin_off(6); };
 | 
					inline void led3_off(void) { led_pin_off(6); };
 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox(                    \
 | 
					 | 
				
			||||||
    k00,k01,k02,k03,k04,k05,k06,           \
 | 
					 | 
				
			||||||
    k10,k11,k12,k13,k14,k15,k16,           \
 | 
					 | 
				
			||||||
    k20,k21,k22,k23,k24,k25,               \
 | 
					 | 
				
			||||||
    k30,k31,k32,k33,k34,k35,k36,           \
 | 
					 | 
				
			||||||
    k40,k41,k42,k43,k44,                   \
 | 
					 | 
				
			||||||
                            k55,k56,       \
 | 
					 | 
				
			||||||
                                k54,       \
 | 
					 | 
				
			||||||
                        k53,k52,k51,       \
 | 
					 | 
				
			||||||
                                           \
 | 
					 | 
				
			||||||
        k07,k08,k09,k0A,k0B,k0C,k0D,       \
 | 
					 | 
				
			||||||
        k17,k18,k19,k1A,k1B,k1C,k1D,       \
 | 
					 | 
				
			||||||
            k28,k29,k2A,k2B,k2C,k2D,       \
 | 
					 | 
				
			||||||
        k37,k38,k39,k3A,k3B,k3C,k3D,       \
 | 
					 | 
				
			||||||
                k49,k4A,k4B,k4C,k4D,       \
 | 
					 | 
				
			||||||
    k57,k58,                               \
 | 
					 | 
				
			||||||
    k59,                                   \
 | 
					 | 
				
			||||||
    k5C,k5B,k5A )                          \
 | 
					 | 
				
			||||||
                                           \
 | 
					 | 
				
			||||||
   /* matrix positions */                  \
 | 
					 | 
				
			||||||
   {                                       \
 | 
					 | 
				
			||||||
    { k00, k01, k02, k03, k04, k05, k06 }, \
 | 
					 | 
				
			||||||
    { k10, k11, k12, k13, k14, k15, k16 }, \
 | 
					 | 
				
			||||||
    { k20, k21, k22, k23, k24, k25 },      \
 | 
					 | 
				
			||||||
    { k30, k31, k32, k33, k34, k35, k36 }, \
 | 
					 | 
				
			||||||
    { k40, k41, k42, k43, k44 },           \
 | 
					 | 
				
			||||||
    { k53, k52, k51, k55, k56, k54 },      \
 | 
					 | 
				
			||||||
                                           \
 | 
					 | 
				
			||||||
    { k0D, k0C, k0B, k0A, k09, k08, k07 }, \
 | 
					 | 
				
			||||||
    { k1D, k1C, k1B, k1A, k19, k18, k17 }, \
 | 
					 | 
				
			||||||
    { k2D, k2C, k2B, k2A, k29, k28 },      \
 | 
					 | 
				
			||||||
    { k3D, k3C, k3B, k3A, k39, k38, k37 }, \
 | 
					 | 
				
			||||||
    { k4D, k4C, k4B, k4A, k49  },          \
 | 
					 | 
				
			||||||
    { k5A, k5B, k5C, k58, k57, k59 },      \
 | 
					 | 
				
			||||||
   }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*  ---------- LEFT HAND -----------   ---------- RIGHT HAND ---------- */
 | 
					 | 
				
			||||||
#define LAYOUT_ergodox_pretty(                                           \
 | 
					 | 
				
			||||||
    L00,L01,L02,L03,L04,L05,L06,           R00,R01,R02,R03,R04,R05,R06,  \
 | 
					 | 
				
			||||||
    L10,L11,L12,L13,L14,L15,L16,           R10,R11,R12,R13,R14,R15,R16,  \
 | 
					 | 
				
			||||||
    L20,L21,L22,L23,L24,L25,                   R20,R21,R22,R23,R24,R25,  \
 | 
					 | 
				
			||||||
    L30,L31,L32,L33,L34,L35,L36,           R30,R31,R32,R33,R34,R35,R36,  \
 | 
					 | 
				
			||||||
    L40,L41,L42,L43,L44,                           R40,R41,R42,R43,R44,  \
 | 
					 | 
				
			||||||
                            L53,L54,   R54,R53,                          \
 | 
					 | 
				
			||||||
                                L55,   R55,                              \
 | 
					 | 
				
			||||||
                        L50,L51,L52,   R52,R51,R50 )                     \
 | 
					 | 
				
			||||||
                                          \
 | 
					 | 
				
			||||||
   /* matrix positions */                 \
 | 
					 | 
				
			||||||
    {                                     \
 | 
					 | 
				
			||||||
    { L00, L01, L02, L03, L04, L05, L06 },\
 | 
					 | 
				
			||||||
    { L10, L11, L12, L13, L14, L15, L16 },\
 | 
					 | 
				
			||||||
    { L20, L21, L22, L23, L24, L25, KC_NO },\
 | 
					 | 
				
			||||||
    { L30, L31, L32, L33, L34, L35, L36 },\
 | 
					 | 
				
			||||||
    { L40, L41, L42, L43, L44, KC_NO, KC_NO },\
 | 
					 | 
				
			||||||
    { L50, L51, L52, L53, L54, L55, KC_NO },\
 | 
					 | 
				
			||||||
                                          \
 | 
					 | 
				
			||||||
    { R00, R01, R02, R03, R04, R05, R06 },\
 | 
					 | 
				
			||||||
    { R10, R11, R12, R13, R14, R15, R16 },\
 | 
					 | 
				
			||||||
    { R20, R21, R22, R23, R24, R25, KC_NO },\
 | 
					 | 
				
			||||||
    { R30, R31, R32, R33, R34, R35, R36 },\
 | 
					 | 
				
			||||||
    { R40, R41, R42, R43, R44, KC_NO, KC_NO },\
 | 
					 | 
				
			||||||
    { R50, R51, R52, R53, R54, R55, KC_NO }\
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
#include "alice.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void keyboard_pre_init_kb(void) {
 | 
					void keyboard_pre_init_kb(void) {
 | 
				
			||||||
    setPinOutput(INDICATOR_PIN_0);
 | 
					    setPinOutput(INDICATOR_PIN_0);
 | 
				
			||||||
 | 
				
			|||||||
@ -1,34 +0,0 @@
 | 
				
			|||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define KNO KC_NO
 | 
					 | 
				
			||||||
#define LAYOUT_default LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \
 | 
					 | 
				
			||||||
  K10, K11, K12, K13, K14, K15, K16,      K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \
 | 
					 | 
				
			||||||
  K20, K21, K22, K23, K24, K25, K26,      K28, K29, K2A, K2B, K2C, K2D,      K2F, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,      K38, K39, K3A, K3B, K3C, K3D, K3E, K3F,         \
 | 
					 | 
				
			||||||
       K41,      K43, K44,      K46,           K49,      K4B,                K4F \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  {  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F  }, \
 | 
					 | 
				
			||||||
  {  K10, K11, K12, K13, K14, K15, K16, KNO, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F  }, \
 | 
					 | 
				
			||||||
  {  K20, K21, K22, K23, K24, K25, K26, KNO, K28, K29, K2A, K2B, K2C, K2D, KNO, K2F  }, \
 | 
					 | 
				
			||||||
  {  KNO, K31, K32, K33, K34, K35, K36, KNO, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F  }, \
 | 
					 | 
				
			||||||
  {  KNO, K41, KNO, K43, K44, KNO, K46, KNO, KNO, K49, KNO, K4B, KNO, KNO, KNO, K4F  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D,      K0F, \
 | 
					 | 
				
			||||||
  K10, K11, K12, K13, K14, K15, K16,      K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \
 | 
					 | 
				
			||||||
  K20, K21, K22, K23, K24, K25, K26,      K28, K29, K2A, K2B, K2C, K2D,      K2F, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,      K38, K39, K3A, K3B, K3C, K3D, K3E, K3F,         \
 | 
					 | 
				
			||||||
       K41,      K43, K44,      K46,           K49,      K4B,                K4F \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  {  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, KNO, K0F  }, \
 | 
					 | 
				
			||||||
  {  K10, K11, K12, K13, K14, K15, K16, KNO, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F  }, \
 | 
					 | 
				
			||||||
  {  K20, K21, K22, K23, K24, K25, K26, KNO, K28, K29, K2A, K2B, K2C, K2D, KNO, K2F  }, \
 | 
					 | 
				
			||||||
  {  KNO, K31, K32, K33, K34, K35, K36, KNO, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F  }, \
 | 
					 | 
				
			||||||
  {  KNO, K41, KNO, K43, K44, KNO, K46, KNO, KNO, K49, KNO, K4B, KNO, KNO, KNO, K4F  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -16,152 +16,168 @@
 | 
				
			|||||||
    "processor": "STM32F072",
 | 
					    "processor": "STM32F072",
 | 
				
			||||||
    "bootloader": "stm32-dfu",
 | 
					    "bootloader": "stm32-dfu",
 | 
				
			||||||
    "community_layouts": ["alice", "alice_split_bs"],
 | 
					    "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_default": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Del", "x":17, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":18, "y":0.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 14], "x": 17, "y": 0.25},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					                {"matrix": [0, 15], "x": 18, "y": 0.25},
 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":18.75, "y":3.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17, "y": 3.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 15], "x": 18.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 15], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"Esc", "x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
                {"label":"`", "x":1.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"1", "x":2.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"2", "x":3.75, "y":0},
 | 
					 | 
				
			||||||
                {"label":"3", "x":4.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"4", "x":5.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"5", "x":6.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"6", "x":7.75, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"7", "x":11, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"8", "x":12, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"9", "x":13, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"0", "x":14, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"-", "x":15, "y":0},
 | 
					 | 
				
			||||||
                {"label":"=", "x":16, "y":0.25},
 | 
					 | 
				
			||||||
                {"label":"Backspace", "x":17, "y":0.25, "w":2},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgUp", "x":0.25, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Tab", "x":1.5, "y":1.25, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Q", "x":3, "y":1.25},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"label":"W", "x":4.25, "y":1.25},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0.25},
 | 
				
			||||||
                {"label":"E", "x":5.25, "y":1.25},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0.25},
 | 
				
			||||||
                {"label":"R", "x":6.25, "y":1.25},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0.25},
 | 
				
			||||||
                {"label":"T", "x":7.25, "y":1.25},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0.25},
 | 
				
			||||||
                {"label":"Y", "x":10.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"U", "x":11.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"I", "x":12.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"O", "x":13.5, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"P", "x":14.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"{", "x":15.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"}", "x":16.75, "y":1.25},
 | 
					 | 
				
			||||||
                {"label":"|", "x":17.75, "y":1.25, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"PgDn", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0.25},
 | 
				
			||||||
                {"label":"Caps Lock", "x":1.5, "y":2.25, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0.25},
 | 
				
			||||||
                {"label":"A", "x":3.25, "y":2.25},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0.25},
 | 
				
			||||||
                {"label":"S", "x":4.5, "y":2.25},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0.25},
 | 
				
			||||||
                {"label":"D", "x":5.5, "y":2.25},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"label":"F", "x":6.5, "y":2.25},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0.25},
 | 
				
			||||||
                {"label":"G", "x":7.5, "y":2.25},
 | 
					                {"matrix": [0, 15], "x": 17, "y": 0.25, "w": 2},
 | 
				
			||||||
                {"label":"H", "x":10.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"J", "x":11.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"K", "x":12.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"L", "x":13.75, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":":", "x":15.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"\"", "x":16.25, "y":2.25},
 | 
					 | 
				
			||||||
                {"label":"Enter", "x":17.25, "y":2.25, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Shift", "x":1.5, "y":3.25, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"label":"Z", "x":3.75, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"X", "x":5, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"C", "x":6, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"V", "x":7, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"B", "x":8, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":10.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"N", "x":11.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"M", "x":12.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"<", "x":13.25, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":">", "x":15, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"?", "x":16, "y":3.25},
 | 
					 | 
				
			||||||
                {"label":"Shift", "x":17, "y":3.25, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"Fn", "x":18.75, "y":3.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"Ctrl", "x":1.5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5},
 | 
				
			||||||
                {"label":"Alt", "x":5, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":6.5, "y":4.25, "w":2},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Menu", "x":8.5, "y":4.25},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Space", "x":10.25, "y":4.25, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Alt", "x":13, "y":4.25, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1.25},
 | 
				
			||||||
                {"label":"Ctrl", "x":18, "y":4.25, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.75, "y": 1.25, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16.25, "y": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 17.25, "y": 2.25, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 15, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 16, "y": 3.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17, "y": 3.25, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 15], "x": 18.75, "y": 3.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 5, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 4], "x": 6.5, "y": 4.25, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.5, "y": 4.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4.25, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4.25, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 15], "x": 18, "y": 4.25, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,64 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 Ramon Imbao
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* This is a shortcut to help you visually see your layout.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The first section contains all of the arguments representing the physical
 | 
					 | 
				
			||||||
 * layout of the board and position of the keys.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The second converts the arguments into a two-dimensional array which
 | 
					 | 
				
			||||||
 * represents the switch matrix.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define XXX KC_NO
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Split backspace
 | 
					 | 
				
			||||||
// Split right shift
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, \
 | 
					 | 
				
			||||||
    k10, k11, k12, k13, k14, k15, k16,      k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, \
 | 
					 | 
				
			||||||
    k20, k21, k22, k23, k24, k25, k26,      k28, k29, k2a, k2b, k2c, k2d,      k2f, \
 | 
					 | 
				
			||||||
         k31, k32, k33, k34, k35, k36,      k38, k39, k3a, k3b, k3c, k3d, k3e, k3f, \
 | 
					 | 
				
			||||||
         k41,      k43, k44,      k46,           k49,      k4b,                k4f \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f }, \
 | 
					 | 
				
			||||||
    { k10, k11, k12, k13, k14, k15, k16, XXX, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f }, \
 | 
					 | 
				
			||||||
    { k20, k21, k22, k23, k24, k25, k26, XXX, k28, k29, k2a, k2b, k2c, k2d, XXX, k2f }, \
 | 
					 | 
				
			||||||
    { XXX, k31, k32, k33, k34, k35, k36, XXX, k38, k39, k3a, k3b, k3c, k3d, k3e, k3f }, \
 | 
					 | 
				
			||||||
    { XXX, k41, XXX, k43, k44, XXX, k46, XXX, XXX, k49, XXX, k4b, XXX, XXX, XXX, k4f }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// 2u backspace
 | 
					 | 
				
			||||||
// Split right shift
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d,   k0f, \
 | 
					 | 
				
			||||||
    k10, k11, k12, k13, k14, k15, k16,      k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, \
 | 
					 | 
				
			||||||
    k20, k21, k22, k23, k24, k25, k26,      k28, k29, k2a, k2b, k2c, k2d,      k2f, \
 | 
					 | 
				
			||||||
         k31, k32, k33, k34, k35, k36,      k38, k39, k3a, k3b, k3c, k3d, k3e, k3f, \
 | 
					 | 
				
			||||||
         k41,      k43, k44,      k46,           k49,      k4b,                k4f \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, XXX, k0f }, \
 | 
					 | 
				
			||||||
    { k10, k11, k12, k13, k14, k15, k16, XXX, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f }, \
 | 
					 | 
				
			||||||
    { k20, k21, k22, k23, k24, k25, k26, XXX, k28, k29, k2a, k2b, k2c, k2d, XXX, k2f }, \
 | 
					 | 
				
			||||||
    { XXX, k31, k32, k33, k34, k35, k36, XXX, k38, k39, k3a, k3b, k3c, k3d, k3e, k3f }, \
 | 
					 | 
				
			||||||
    { XXX, k41, XXX, k43, k44, XXX, k46, XXX, XXX, k49, XXX, k4b, XXX, XXX, XXX, k4f }, \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -19,163 +19,163 @@
 | 
				
			|||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.75, "y":0},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0},
 | 
				
			||||||
                {"x":2.75, "y":0},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0},
 | 
				
			||||||
                {"x":3.75, "y":0},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"x":4.75, "y":0},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0},
 | 
				
			||||||
                {"x":5.75, "y":0},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0},
 | 
				
			||||||
                {"x":6.75, "y":0},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0},
 | 
				
			||||||
                {"x":7.75, "y":0},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":11, "y":0},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0},
 | 
				
			||||||
                {"x":12, "y":0},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0},
 | 
				
			||||||
                {"x":13, "y":0},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0},
 | 
				
			||||||
                {"x":14, "y":0},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0},
 | 
				
			||||||
                {"x":15, "y":0},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"x":16, "y":0},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0},
 | 
				
			||||||
                {"x":17, "y":0},
 | 
					                {"matrix": [0, 14], "x": 17, "y": 0},
 | 
				
			||||||
                {"x":18, "y":0},
 | 
					                {"matrix": [0, 15], "x": 18, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0.25, "y":1},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"x":1.75, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
                {"x":3.25, "y":1},
 | 
					 | 
				
			||||||
                {"x":4.25, "y":1},
 | 
					 | 
				
			||||||
                {"x":5.25, "y":1},
 | 
					 | 
				
			||||||
                {"x":6.25, "y":1},
 | 
					 | 
				
			||||||
                {"x":7.25, "y":1},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":10.5, "y":1},
 | 
					                {"matrix": [1, 1], "x": 1.75, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"x":11.5, "y":1},
 | 
					                {"matrix": [1, 2], "x": 3.25, "y": 1},
 | 
				
			||||||
                {"x":12.5, "y":1},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1},
 | 
				
			||||||
                {"x":13.5, "y":1},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1},
 | 
				
			||||||
                {"x":14.5, "y":1},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1},
 | 
				
			||||||
                {"x":15.5, "y":1},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1},
 | 
				
			||||||
                {"x":16.5, "y":1},
 | 
					 | 
				
			||||||
                {"x":17.5, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0, "y":2},
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.75, "y":2, "w":1.75},
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
                {"x":3.5, "y":2},
 | 
					 | 
				
			||||||
                {"x":4.5, "y":2},
 | 
					 | 
				
			||||||
                {"x":5.5, "y":2},
 | 
					 | 
				
			||||||
                {"x":6.5, "y":2},
 | 
					 | 
				
			||||||
                {"x":7.5, "y":2},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":10.75, "y":2},
 | 
					                {"matrix": [2, 1], "x": 1.75, "y": 2, "w": 1.75},
 | 
				
			||||||
                {"x":11.75, "y":2},
 | 
					                {"matrix": [2, 2], "x": 3.5, "y": 2},
 | 
				
			||||||
                {"x":12.75, "y":2},
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2},
 | 
				
			||||||
                {"x":13.75, "y":2},
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2},
 | 
				
			||||||
                {"x":14.75, "y":2},
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2},
 | 
				
			||||||
                {"x":15.75, "y":2},
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2},
 | 
				
			||||||
                {"x":16.75, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.75, "y":3, "w":2.25},
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2},
 | 
				
			||||||
                {"x":4, "y":3},
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2},
 | 
				
			||||||
                {"x":5, "y":3},
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2},
 | 
				
			||||||
                {"x":6, "y":3},
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2},
 | 
				
			||||||
                {"x":7, "y":3},
 | 
					                {"matrix": [2, 12], "x": 14.75, "y": 2},
 | 
				
			||||||
                {"x":8, "y":3},
 | 
					                {"matrix": [2, 13], "x": 15.75, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 16.75, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":10.25, "y":3},
 | 
					                {"matrix": [3, 1], "x": 1.75, "y": 3, "w": 2.25},
 | 
				
			||||||
                {"x":11.25, "y":3},
 | 
					                {"matrix": [3, 2], "x": 4, "y": 3},
 | 
				
			||||||
                {"x":12.25, "y":3},
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3},
 | 
				
			||||||
                {"x":13.25, "y":3},
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3},
 | 
				
			||||||
                {"x":14.25, "y":3},
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3},
 | 
				
			||||||
                {"x":15.25, "y":3},
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3},
 | 
				
			||||||
                {"x":16.25, "y":3, "w":1.75},
 | 
					 | 
				
			||||||
                {"x":18, "y":3},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.75, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3},
 | 
				
			||||||
                {"x":4.5, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3},
 | 
				
			||||||
                {"x":6, "y":4, "w":2.25},
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3},
 | 
				
			||||||
                {"x":8.25, "y":4},
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 16.25, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 15], "x": 18, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":10.25, "y":4, "w":2.75},
 | 
					                {"matrix": [4, 1], "x": 1.75, "y": 4, "w": 1.5},
 | 
				
			||||||
                {"x":13, "y":4, "w":1.5},
 | 
					                {"matrix": [4, 3], "x": 4.5, "y": 4, "w": 1.5},
 | 
				
			||||||
                {"x":17.5, "y":4, "w":1.5}
 | 
					                {"matrix": [4, 4], "x": 6, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.25, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 15], "x": 17.5, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"x":0.5, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0.5, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.75, "y":0},
 | 
					                {"matrix": [0, 1], "x": 1.75, "y": 0},
 | 
				
			||||||
                {"x":2.75, "y":0},
 | 
					                {"matrix": [0, 2], "x": 2.75, "y": 0},
 | 
				
			||||||
                {"x":3.75, "y":0},
 | 
					                {"matrix": [0, 3], "x": 3.75, "y": 0},
 | 
				
			||||||
                {"x":4.75, "y":0},
 | 
					                {"matrix": [0, 4], "x": 4.75, "y": 0},
 | 
				
			||||||
                {"x":5.75, "y":0},
 | 
					                {"matrix": [0, 5], "x": 5.75, "y": 0},
 | 
				
			||||||
                {"x":6.75, "y":0},
 | 
					                {"matrix": [0, 6], "x": 6.75, "y": 0},
 | 
				
			||||||
                {"x":7.75, "y":0},
 | 
					                {"matrix": [0, 7], "x": 7.75, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":11, "y":0},
 | 
					                {"matrix": [0, 8], "x": 11, "y": 0},
 | 
				
			||||||
                {"x":12, "y":0},
 | 
					                {"matrix": [0, 9], "x": 12, "y": 0},
 | 
				
			||||||
                {"x":13, "y":0},
 | 
					                {"matrix": [0, 10], "x": 13, "y": 0},
 | 
				
			||||||
                {"x":14, "y":0},
 | 
					                {"matrix": [0, 11], "x": 14, "y": 0},
 | 
				
			||||||
                {"x":15, "y":0},
 | 
					                {"matrix": [0, 12], "x": 15, "y": 0},
 | 
				
			||||||
                {"x":16, "y":0},
 | 
					                {"matrix": [0, 13], "x": 16, "y": 0},
 | 
				
			||||||
                {"x":17, "y":0, "w":2},
 | 
					                {"matrix": [0, 15], "x": 17, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0.25, "y":1},
 | 
					                {"matrix": [1, 0], "x": 0.25, "y": 1},
 | 
				
			||||||
                {"x":1.75, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
                {"x":3.25, "y":1},
 | 
					 | 
				
			||||||
                {"x":4.25, "y":1},
 | 
					 | 
				
			||||||
                {"x":5.25, "y":1},
 | 
					 | 
				
			||||||
                {"x":6.25, "y":1},
 | 
					 | 
				
			||||||
                {"x":7.25, "y":1},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":10.5, "y":1},
 | 
					                {"matrix": [1, 1], "x": 1.75, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"x":11.5, "y":1},
 | 
					                {"matrix": [1, 2], "x": 3.25, "y": 1},
 | 
				
			||||||
                {"x":12.5, "y":1},
 | 
					                {"matrix": [1, 3], "x": 4.25, "y": 1},
 | 
				
			||||||
                {"x":13.5, "y":1},
 | 
					                {"matrix": [1, 4], "x": 5.25, "y": 1},
 | 
				
			||||||
                {"x":14.5, "y":1},
 | 
					                {"matrix": [1, 5], "x": 6.25, "y": 1},
 | 
				
			||||||
                {"x":15.5, "y":1},
 | 
					                {"matrix": [1, 6], "x": 7.25, "y": 1},
 | 
				
			||||||
                {"x":16.5, "y":1},
 | 
					 | 
				
			||||||
                {"x":17.5, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0, "y":2},
 | 
					                {"matrix": [1, 8], "x": 10.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.5, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17.5, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.75, "y":2, "w":1.75},
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
                {"x":3.5, "y":2},
 | 
					 | 
				
			||||||
                {"x":4.5, "y":2},
 | 
					 | 
				
			||||||
                {"x":5.5, "y":2},
 | 
					 | 
				
			||||||
                {"x":6.5, "y":2},
 | 
					 | 
				
			||||||
                {"x":7.5, "y":2},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":10.75, "y":2},
 | 
					                {"matrix": [2, 1], "x": 1.75, "y": 2, "w": 1.75},
 | 
				
			||||||
                {"x":11.75, "y":2},
 | 
					                {"matrix": [2, 2], "x": 3.5, "y": 2},
 | 
				
			||||||
                {"x":12.75, "y":2},
 | 
					                {"matrix": [2, 3], "x": 4.5, "y": 2},
 | 
				
			||||||
                {"x":13.75, "y":2},
 | 
					                {"matrix": [2, 4], "x": 5.5, "y": 2},
 | 
				
			||||||
                {"x":14.75, "y":2},
 | 
					                {"matrix": [2, 5], "x": 6.5, "y": 2},
 | 
				
			||||||
                {"x":15.75, "y":2},
 | 
					                {"matrix": [2, 6], "x": 7.5, "y": 2},
 | 
				
			||||||
                {"x":16.75, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.75, "y":3, "w":2.25},
 | 
					                {"matrix": [2, 8], "x": 10.75, "y": 2},
 | 
				
			||||||
                {"x":4, "y":3},
 | 
					                {"matrix": [2, 9], "x": 11.75, "y": 2},
 | 
				
			||||||
                {"x":5, "y":3},
 | 
					                {"matrix": [2, 10], "x": 12.75, "y": 2},
 | 
				
			||||||
                {"x":6, "y":3},
 | 
					                {"matrix": [2, 11], "x": 13.75, "y": 2},
 | 
				
			||||||
                {"x":7, "y":3},
 | 
					                {"matrix": [2, 12], "x": 14.75, "y": 2},
 | 
				
			||||||
                {"x":8, "y":3},
 | 
					                {"matrix": [2, 13], "x": 15.75, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 16.75, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":10.25, "y":3},
 | 
					                {"matrix": [3, 1], "x": 1.75, "y": 3, "w": 2.25},
 | 
				
			||||||
                {"x":11.25, "y":3},
 | 
					                {"matrix": [3, 2], "x": 4, "y": 3},
 | 
				
			||||||
                {"x":12.25, "y":3},
 | 
					                {"matrix": [3, 3], "x": 5, "y": 3},
 | 
				
			||||||
                {"x":13.25, "y":3},
 | 
					                {"matrix": [3, 4], "x": 6, "y": 3},
 | 
				
			||||||
                {"x":14.25, "y":3},
 | 
					                {"matrix": [3, 5], "x": 7, "y": 3},
 | 
				
			||||||
                {"x":15.25, "y":3},
 | 
					                {"matrix": [3, 6], "x": 8, "y": 3},
 | 
				
			||||||
                {"x":16.25, "y":3, "w":1.75},
 | 
					 | 
				
			||||||
                {"x":18, "y":3},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.75, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 8], "x": 10.25, "y": 3},
 | 
				
			||||||
                {"x":4.5, "y":4, "w":1.5},
 | 
					                {"matrix": [3, 9], "x": 11.25, "y": 3},
 | 
				
			||||||
                {"x":6, "y":4, "w":2.25},
 | 
					                {"matrix": [3, 10], "x": 12.25, "y": 3},
 | 
				
			||||||
                {"x":8.25, "y":4},
 | 
					                {"matrix": [3, 11], "x": 13.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.25, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 16.25, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 15], "x": 18, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":10.25, "y":4, "w":2.75},
 | 
					                {"matrix": [4, 1], "x": 1.75, "y": 4, "w": 1.5},
 | 
				
			||||||
                {"x":13, "y":4, "w":1.5},
 | 
					                {"matrix": [4, 3], "x": 4.5, "y": 4, "w": 1.5},
 | 
				
			||||||
                {"x":17.5, "y":4, "w":1.5}
 | 
					                {"matrix": [4, 4], "x": 6, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8.25, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 10.25, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 13, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 15], "x": 17.5, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -21,18 +21,330 @@
 | 
				
			|||||||
    "processor": "atmega32u4",
 | 
					    "processor": "atmega32u4",
 | 
				
			||||||
    "bootloader": "atmel-dfu",
 | 
					    "bootloader": "atmel-dfu",
 | 
				
			||||||
    "community_layouts": ["alice", "alice_split_bs"],
 | 
					    "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs",
 | 
				
			||||||
 | 
					        "LAYOUT_split_right_shift": "LAYOUT_alice"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_default_ansi": {
 | 
					        "LAYOUT_default_ansi": {
 | 
				
			||||||
            "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"~", "x":1.25, "y":0}, {"label":"!", "x":2.25, "y":0}, {"label":"@", "x":3.25, "y":0}, {"label":"#", "x":4.25, "y":0}, {"label":"$", "x":5.25, "y":0}, {"label":"%", "x":6.25, "y":0}, {"label":"^", "x":7.25, "y":0}, {"label":"&", "x":10.25, "y":0}, {"label":"*", "x":11.25, "y":0}, {"label":"(", "x":12.25, "y":0}, {"label":")", "x":13.25, "y":0}, {"label":"_", "x":14.25, "y":0}, {"label":"+", "x":15.25, "y":0}, {"label":"Backspace", "x":16.25, "y":0, "w":2}, {"label":"Page Up", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":9.75, "y":1}, {"label":"U", "x":10.75, "y":1}, {"label":"I", "x":11.75, "y":1}, {"label":"O", "x":12.75, "y":1}, {"label":"P", "x":13.75, "y":1}, {"label":"{", "x":14.75, "y":1}, {"label":"}", "x":15.75, "y":1}, {"label":"|", "x":16.75, "y":1, "w":1.5}, {"label":"Page Down", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":10, "y":2}, {"label":"J", "x":11, "y":2}, {"label":"K", "x":12, "y":2}, {"label":"L", "x":13, "y":2}, {"label":":", "x":14, "y":2}, {"label":"\"", "x":15, "y":2}, {"label":"Enter", "x":16, "y":2, "w":2.25}, {"label":"Shift", "x":1.25, "y":3, "w":2.25}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"B", "x":9.5, "y":3}, {"label":"N", "x":10.5, "y":3}, {"label":"M", "x":11.5, "y":3}, {"label":"<", "x":12.5, "y":3}, {"label":">", "x":13.5, "y":3}, {"label":"?", "x":14.5, "y":3}, {"label":"Shift", "x":15.5, "y":3, "w":2.75}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.5}, {"label":"Win", "x":4.25, "y":4, "w":1.5}, {"x":5.75, "y":4, "w":2.25}, {"label":"Fn", "x":8, "y":4}, {"x":9.5, "y":4, "w":2.75}, {"label":"Alt", "x":12.25, "y":4, "w":1.5}, {"label":"Ctrl", "x":16.75, "y":4, "w":1.5}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 7], "x": 15.5, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_split_backspace": {
 | 
					        "LAYOUT_split_backspace": {
 | 
				
			||||||
            "layout": [{"label":"Delete", "x":0, "y":0}, {"label":"Esc", "x":1.25, "y":0}, {"label":"!", "x":2.25, "y":0}, {"label":"@", "x":3.25, "y":0}, {"label":"#", "x":4.25, "y":0}, {"label":"$", "x":5.25, "y":0}, {"label":"%", "x":6.25, "y":0}, {"label":"^", "x":7.25, "y":0}, {"label":"&", "x":10.25, "y":0}, {"label":"*", "x":11.25, "y":0}, {"label":"(", "x":12.25, "y":0}, {"label":")", "x":13.25, "y":0}, {"label":"_", "x":14.25, "y":0}, {"label":"+", "x":15.25, "y":0}, {"label":"~", "x":16.25, "y":0}, {"label":"|", "x":17.25, "y":0}, {"label":"Page Up", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":9.75, "y":1}, {"label":"U", "x":10.75, "y":1}, {"label":"I", "x":11.75, "y":1}, {"label":"O", "x":12.75, "y":1}, {"label":"P", "x":13.75, "y":1}, {"label":"{", "x":14.75, "y":1}, {"label":"}", "x":15.75, "y":1}, {"label":"Backspace", "x":16.75, "y":1, "w":1.5}, {"label":"Page Down", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":10, "y":2}, {"label":"J", "x":11, "y":2}, {"label":"K", "x":12, "y":2}, {"label":"L", "x":13, "y":2}, {"label":":", "x":14, "y":2}, {"label":"\"", "x":15, "y":2}, {"label":"Enter", "x":16, "y":2, "w":2.25}, {"label":"Shift", "x":1.25, "y":3, "w":2.25}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"B", "x":9.5, "y":3}, {"label":"N", "x":10.5, "y":3}, {"label":"M", "x":11.5, "y":3}, {"label":"<", "x":12.5, "y":3}, {"label":">", "x":13.5, "y":3}, {"label":"?", "x":14.5, "y":3}, {"label":"Shift", "x":15.5, "y":3, "w":2.75}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.5}, {"label":"Win", "x":4.25, "y":4, "w":1.5}, {"x":5.75, "y":4, "w":2.25}, {"label":"Fn", "x":8, "y":4}, {"x":9.5, "y":4, "w":2.75}, {"label":"Alt", "x":12.25, "y":4, "w":1.5}, {"label":"Ctrl", "x":16.75, "y":4, "w":1.5}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 16.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 7], "x": 15.5, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"~", "x":1.25, "y":0}, {"label":"!", "x":2.25, "y":0}, {"label":"@", "x":3.25, "y":0}, {"label":"#", "x":4.25, "y":0}, {"label":"$", "x":5.25, "y":0}, {"label":"%", "x":6.25, "y":0}, {"label":"^", "x":7.25, "y":0}, {"label":"&", "x":10.25, "y":0}, {"label":"*", "x":11.25, "y":0}, {"label":"(", "x":12.25, "y":0}, {"label":")", "x":13.25, "y":0}, {"label":"_", "x":14.25, "y":0}, {"label":"+", "x":15.25, "y":0}, {"label":"Backspace", "x":16.25, "y":0, "w":2}, {"label":"Page Up", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":9.75, "y":1}, {"label":"U", "x":10.75, "y":1}, {"label":"I", "x":11.75, "y":1}, {"label":"O", "x":12.75, "y":1}, {"label":"P", "x":13.75, "y":1}, {"label":"{", "x":14.75, "y":1}, {"label":"}", "x":15.75, "y":1}, {"label":"|", "x":16.75, "y":1, "w":1.5}, {"label":"Page Down", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":10, "y":2}, {"label":"J", "x":11, "y":2}, {"label":"K", "x":12, "y":2}, {"label":"L", "x":13, "y":2}, {"label":":", "x":14, "y":2}, {"label":"\"", "x":15, "y":2}, {"label":"Enter", "x":16, "y":2, "w":2.25}, {"label":"Shift", "x":1.25, "y":3, "w":2.25}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"B", "x":9.5, "y":3}, {"label":"N", "x":10.5, "y":3}, {"label":"M", "x":11.5, "y":3}, {"label":"<", "x":12.5, "y":3}, {"label":">", "x":13.5, "y":3}, {"label":"?", "x":14.5, "y":3}, {"label":"Shift", "x":15.5, "y":3, "w":1.75}, {"label":"Fn", "x":17.25, "y":3}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.5}, {"label":"Win", "x":4.25, "y":4, "w":1.5}, {"x":5.75, "y":4, "w":2.25}, {"label":"Fn", "x":8, "y":4}, {"x":9.5, "y":4, "w":2.75}, {"label":"Alt", "x":12.25, "y":4, "w":1.5}, {"label":"Ctrl", "x":16.75, "y":4, "w":1.5}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [8, 7], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [{"label":"Delete", "x":0, "y":0}, {"label":"Esc", "x":1.25, "y":0}, {"label":"!", "x":2.25, "y":0}, {"label":"@", "x":3.25, "y":0}, {"label":"#", "x":4.25, "y":0}, {"label":"$", "x":5.25, "y":0}, {"label":"%", "x":6.25, "y":0}, {"label":"^", "x":7.25, "y":0}, {"label":"&", "x":10.25, "y":0}, {"label":"*", "x":11.25, "y":0}, {"label":"(", "x":12.25, "y":0}, {"label":")", "x":13.25, "y":0}, {"label":"_", "x":14.25, "y":0}, {"label":"+", "x":15.25, "y":0}, {"label":"~", "x":16.25, "y":0}, {"label":"|", "x":17.25, "y":0}, {"label":"Page Up", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":9.75, "y":1}, {"label":"U", "x":10.75, "y":1}, {"label":"I", "x":11.75, "y":1}, {"label":"O", "x":12.75, "y":1}, {"label":"P", "x":13.75, "y":1}, {"label":"{", "x":14.75, "y":1}, {"label":"}", "x":15.75, "y":1}, {"label":"Backspace", "x":16.75, "y":1, "w":1.5}, {"label":"Page Down", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":10, "y":2}, {"label":"J", "x":11, "y":2}, {"label":"K", "x":12, "y":2}, {"label":"L", "x":13, "y":2}, {"label":":", "x":14, "y":2}, {"label":"\"", "x":15, "y":2}, {"label":"Enter", "x":16, "y":2, "w":2.25}, {"label":"Shift", "x":1.25, "y":3, "w":2.25}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"B", "x":9.5, "y":3}, {"label":"N", "x":10.5, "y":3}, {"label":"M", "x":11.5, "y":3}, {"label":"<", "x":12.5, "y":3}, {"label":">", "x":13.5, "y":3}, {"label":"?", "x":14.5, "y":3}, {"label":"Shift", "x":15.5, "y":3, "w":1.75}, {"label":"Fn", "x":17.25, "y":3}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.5}, {"label":"Win", "x":4.25, "y":4, "w":1.5}, {"x":5.75, "y":4, "w":2.25}, {"label":"Fn", "x":8, "y":4}, {"x":9.5, "y":4, "w":2.75}, {"label":"Alt", "x":12.25, "y":4, "w":1.5}, {"label":"Ctrl", "x":16.75, "y":4, "w":1.5}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 16.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [8, 7], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,120 +0,0 @@
 | 
				
			|||||||
/* Copyright 2019 jrfhoutx
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* This a shortcut to help you visually see your layout.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The first section contains all of the arguments representing the physical
 | 
					 | 
				
			||||||
 * layout of the board and position of the keys.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The second converts the arguments into a two-dimensional array which
 | 
					 | 
				
			||||||
 * represents the switch matrix.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* LAYOUT
 | 
					 | 
				
			||||||
 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐┌────────┐
 | 
					 | 
				
			||||||
 * │10 │ │00 │01 │02 │03 │04 │05 │06 │         │56 │55 │54 │53 │52 │51 │50 │57 ││57      │
 | 
					 | 
				
			||||||
 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤└────────┘
 | 
					 | 
				
			||||||
 * │20 │ │11   │12 │13 │14 │15 │16 │         │66 │65 │64 │63 │62 │61 │60 │67   │
 | 
					 | 
				
			||||||
 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
 | 
					 | 
				
			||||||
 * │30 │ │21    │22 │23 │24 │25 │26 │         │76 │75 │74 │73 │72 │71 │77      │
 | 
					 | 
				
			||||||
 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤┌──────────┐
 | 
					 | 
				
			||||||
 *       │31      │32 │33 │34 │35 │36 │     │86 │85 │84 │83 │82 │81 │80    │87 ││87        │
 | 
					 | 
				
			||||||
 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤└──────────┘
 | 
					 | 
				
			||||||
 *       │41   │     │43   │45     │46  │   │95        │93   │           │90   │
 | 
					 | 
				
			||||||
 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_default_ansi( \
 | 
					 | 
				
			||||||
  K10, K00, K01, K02, K03, K04, K05, K06,   K56, K55, K54, K53, K52, K51,      K57, \
 | 
					 | 
				
			||||||
  K20, K11, K12, K13, K14, K15, K16,        K66, K65, K64, K63, K62, K61, K60, K67, \
 | 
					 | 
				
			||||||
  K30, K21, K22, K23, K24, K25, K26,        K76, K75, K74, K73, K72, K71,      K77, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,        K86, K85, K84, K83, K82, K81,      K87, \
 | 
					 | 
				
			||||||
       K41,      K43,      K45, K46,        K95,           K93,                K90  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K41,   KC_NO, K43,   KC_NO, K45,   K46,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K51,   K52,   K53,   K54,   K55,   K56,   K57    }, \
 | 
					 | 
				
			||||||
    { K60,   K61,   K62,   K63,   K64,   K65,   K66,   K67    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K71,   K72,   K73,   K74,   K75,   K76,   K77    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K81,   K82,   K83,   K84,   K85,   K86,   K87    }, \
 | 
					 | 
				
			||||||
    { K90,   KC_NO, KC_NO, K93,   KC_NO, K95,   KC_NO, KC_NO  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#define LAYOUT_split_backspace( \
 | 
					 | 
				
			||||||
  K10, K00, K01, K02, K03, K04, K05, K06,   K56, K55, K54, K53, K52, K51, K50, K57, \
 | 
					 | 
				
			||||||
  K20, K11, K12, K13, K14, K15, K16,        K66, K65, K64, K63, K62, K61, K60, K67, \
 | 
					 | 
				
			||||||
  K30, K21, K22, K23, K24, K25, K26,        K76, K75, K74, K73, K72, K71,      K77, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,        K86, K85, K84, K83, K82, K81,      K87, \
 | 
					 | 
				
			||||||
       K41,      K43,      K45, K46,        K95,           K93,                K90  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K41,   KC_NO, K43,   KC_NO, K45,   K46,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K50,   K51,   K52,   K53,   K54,   K55,   K56,   K57    }, \
 | 
					 | 
				
			||||||
    { K60,   K61,   K62,   K63,   K64,   K65,   K66,   K67    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K71,   K72,   K73,   K74,   K75,   K76,   K77    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K81,   K82,   K83,   K84,   K85,   K86,   K87    }, \
 | 
					 | 
				
			||||||
    { K90,   KC_NO, KC_NO, K93,   KC_NO, K95,   KC_NO, KC_NO  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
  K10, K00, K01, K02, K03, K04, K05, K06,   K56, K55, K54, K53, K52, K51,      K57, \
 | 
					 | 
				
			||||||
  K20, K11, K12, K13, K14, K15, K16,        K66, K65, K64, K63, K62, K61, K60, K67, \
 | 
					 | 
				
			||||||
  K30, K21, K22, K23, K24, K25, K26,        K76, K75, K74, K73, K72, K71,      K77, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,        K86, K85, K84, K83, K82, K81, K80, K87, \
 | 
					 | 
				
			||||||
       K41,      K43,      K45, K46,        K95,           K93,                K90  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K41,   KC_NO, K43,   KC_NO, K45,   K46,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K51,   K52,   K53,   K54,   K55,   K56,   K57    }, \
 | 
					 | 
				
			||||||
    { K60,   K61,   K62,   K63,   K64,   K65,   K66,   K67    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K71,   K72,   K73,   K74,   K75,   K76,   K77    }, \
 | 
					 | 
				
			||||||
    { K80,   K81,   K82,   K83,   K84,   K85,   K86,   K87    }, \
 | 
					 | 
				
			||||||
    { K90,   KC_NO, KC_NO, K93,   KC_NO, K95,   KC_NO, KC_NO  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
  K10, K00, K01, K02, K03, K04, K05, K06,   K56, K55, K54, K53, K52, K51, K50, K57, \
 | 
					 | 
				
			||||||
  K20, K11, K12, K13, K14, K15, K16,        K66, K65, K64, K63, K62, K61, K60, K67, \
 | 
					 | 
				
			||||||
  K30, K21, K22, K23, K24, K25, K26,        K76, K75, K74, K73, K72, K71,      K77, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,        K86, K85, K84, K83, K82, K81, K80, K87, \
 | 
					 | 
				
			||||||
       K41,      K43,      K45, K46,        K95,           K93,                K90  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K41,   KC_NO, K43,   KC_NO, K45,   K46,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K50,   K51,   K52,   K53,   K54,   K55,   K56,   K57    }, \
 | 
					 | 
				
			||||||
    { K60,   K61,   K62,   K63,   K64,   K65,   K66,   K67    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K71,   K72,   K73,   K74,   K75,   K76,   K77    }, \
 | 
					 | 
				
			||||||
    { K80,   K81,   K82,   K83,   K84,   K85,   K86,   K87    }, \
 | 
					 | 
				
			||||||
    { K90,   KC_NO, KC_NO, K93,   KC_NO, K95,   KC_NO, KC_NO  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_split_right_shift LAYOUT_alice
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License
 | 
				
			|||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
*/
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "aliceclone.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void keyboard_pre_init_kb(void) {
 | 
					void keyboard_pre_init_kb(void) {
 | 
				
			||||||
    setPinOutput(D7);
 | 
					    setPinOutput(D7);
 | 
				
			||||||
 | 
				
			|||||||
@ -1,60 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2020 Bryan Ong
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
	K020,   K000, K001, K002, K003, K004, K005, K006,       K010, K011, K012, K013, K014, K015, K016, K017, \
 | 
					 | 
				
			||||||
	K040,   K021,       K022, K023, K024, K025, K026,       K030, K031, K032, K033, K034, K035, K036, K037, \
 | 
					 | 
				
			||||||
	K060,   K041,       K042, K043, K044, K045, K046,       K050, K051, K052, K053, K054, K055,       K056, \
 | 
					 | 
				
			||||||
	        K061,       K062, K063, K064, K065, K066,       K070, K071, K072, K073, K074, K075, K076, K077, \
 | 
					 | 
				
			||||||
	        K081,                   K083, K085, K086,       K091, K093,                               K097  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
	{ K000,  K001,  K002,  K003,  K004,  K005,  K006,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ K010,  K011,  K012,  K013,  K014,  K015,  K016,  K017 }, \
 | 
					 | 
				
			||||||
	{ K020,  K021,  K022,  K023,  K024,  K025,  K026,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ K030,  K031,  K032,  K033,  K034,  K035,  K036,  K037 }, \
 | 
					 | 
				
			||||||
	{ K040,  K041,  K042,  K043,  K044,  K045,  K046,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ K050,  K051,  K052,  K053,  K054,  K055,  K056,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ K060,  K061,  K062,  K063,  K064,  K065,  K066,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ K070,  K071,  K072,  K073,  K074,  K075,  K076,  K077 }, \
 | 
					 | 
				
			||||||
	{ KC_NO, K081,  KC_NO, K083,  KC_NO, K085,  K086,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ KC_NO, K091,  KC_NO, K093,  KC_NO, KC_NO, KC_NO, K097 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K020,   K000, K001, K002, K003, K004, K005, K006,       K010, K011, K012, K013, K014, K015,       K016, \
 | 
					 | 
				
			||||||
    K040,   K021,       K022, K023, K024, K025, K026,       K030, K031, K032, K033, K034, K035, K036, K037, \
 | 
					 | 
				
			||||||
    K060,   K041,       K042, K043, K044, K045, K046,       K050, K051, K052, K053, K054, K055,       K056, \
 | 
					 | 
				
			||||||
            K061,       K062, K063, K064, K065, K066,       K070, K071, K072, K073, K074, K075, K076, K077, \
 | 
					 | 
				
			||||||
            K081,                   K083, K085, K086,       K091, K093,                               K097  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K000,  K001,  K002,  K003,  K004,  K005,  K006,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K010,  K011,  K012,  K013,  K014,  K015,  K016,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K020,  K021,  K022,  K023,  K024,  K025,  K026,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K030,  K031,  K032,  K033,  K034,  K035,  K036,  K037 }, \
 | 
					 | 
				
			||||||
    { K040,  K041,  K042,  K043,  K044,  K045,  K046,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K050,  K051,  K052,  K053,  K054,  K055,  K056,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K060,  K061,  K062,  K063,  K064,  K065,  K066,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K070,  K071,  K072,  K073,  K074,  K075,  K076,  K077 }, \
 | 
					 | 
				
			||||||
    { KC_NO, K081,  KC_NO, K083,  KC_NO, K085,  K086,  KC_NO }, \
 | 
					 | 
				
			||||||
    { KC_NO, K091,  KC_NO, K093,  KC_NO, KC_NO, KC_NO, K097 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -24,23 +24,166 @@
 | 
				
			|||||||
  "processor": "atmega32u4",
 | 
					  "processor": "atmega32u4",
 | 
				
			||||||
  "bootloader": "atmel-dfu",
 | 
					  "bootloader": "atmel-dfu",
 | 
				
			||||||
  "community_layouts": ["alice", "alice_split_bs"],
 | 
					  "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
  "layouts": {
 | 
					  "layout_aliases": {
 | 
				
			||||||
      "LAYOUT_alice_split_bs": {
 | 
					    "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
          "layout": [
 | 
					 | 
				
			||||||
              {"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.25, "y":0}, {"x":6.25, "y":0}, {"x":7.25, "y":0}, {"x":10.25, "y":0}, {"x":11.25, "y":0}, {"x":12.25, "y":0}, {"x":13.25, "y":0}, {"x":14.25, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0},
 | 
					 | 
				
			||||||
              {"x":0, "y":1}, {"x":1.25, "y":1, "w":1.5}, {"x":2.75, "y":1}, {"x":3.75, "y":1}, {"x":4.75, "y":1}, {"x":5.75, "y":1}, {"x":6.75, "y":1}, {"x":9.75, "y":1}, {"x":10.75, "y":1}, {"x":11.75, "y":1}, {"x":12.75, "y":1}, {"x":13.75, "y":1}, {"x":14.75, "y":1}, {"x":15.75, "y":1}, {"x":16.75, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
              {"x":0, "y":2}, {"x":1.25, "y":2, "w":1.75}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, {"x":12, "y":2}, {"x":13, "y":2}, {"x":14, "y":2}, {"x":15, "y":2}, {"x":16, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
              {"x":1.25, "y":3, "w":2.25}, {"x":3.5, "y":3}, {"x":4.5, "y":3}, {"x":5.5, "y":3}, {"x":6.5, "y":3}, {"x":7.5, "y":3}, {"x":9.5, "y":3}, {"x":10.5, "y":3}, {"x":11.5, "y":3}, {"x":12.5, "y":3}, {"x":13.5, "y":3}, {"x":14.5, "y":3}, {"x":15.5, "y":3, "w":1.75}, {"x":17.25, "y":3},
 | 
					 | 
				
			||||||
              {"x":1.25, "y":4, "w":1.5}, {"x":4, "y":4, "w":1.5}, {"x":5.5, "y":4, "w":2.25}, {"x":7.75, "y":4}, {"x":9.75, "y":4, "w":2.75}, {"x":12.5, "y":4, "w":1.5}, {"x":16.75, "y":4, "w":1.5}
 | 
					 | 
				
			||||||
			]
 | 
					 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
 | 
					  "layouts": {
 | 
				
			||||||
    "LAYOUT_alice": {
 | 
					    "LAYOUT_alice": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
              {"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.25, "y":0}, {"x":6.25, "y":0}, {"x":7.25, "y":0}, {"x":10.25, "y":0}, {"x":11.25, "y":0}, {"x":12.25, "y":0}, {"x":13.25, "y":0}, {"x":14.25, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0, "w":2},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 0},
 | 
				
			||||||
              {"x":0, "y":1}, {"x":1.25, "y":1, "w":1.5}, {"x":2.75, "y":1}, {"x":3.75, "y":1}, {"x":4.75, "y":1}, {"x":5.75, "y":1}, {"x":6.75, "y":1}, {"x":9.75, "y":1}, {"x":10.75, "y":1}, {"x":11.75, "y":1}, {"x":12.75, "y":1}, {"x":13.75, "y":1}, {"x":14.75, "y":1}, {"x":15.75, "y":1}, {"x":16.75, "y":1, "w":1.5},
 | 
					
 | 
				
			||||||
              {"x":0, "y":2}, {"x":1.25, "y":2, "w":1.75}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, {"x":12, "y":2}, {"x":13, "y":2}, {"x":14, "y":2}, {"x":15, "y":2}, {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
              {"x":1.25, "y":3, "w":2.25}, {"x":3.5, "y":3}, {"x":4.5, "y":3}, {"x":5.5, "y":3}, {"x":6.5, "y":3}, {"x":7.5, "y":3}, {"x":9.5, "y":3}, {"x":10.5, "y":3}, {"x":11.5, "y":3}, {"x":12.5, "y":3}, {"x":13.5, "y":3}, {"x":14.5, "y":3}, {"x":15.5, "y":3, "w":1.75}, {"x":17.25, "y":3},
 | 
					        {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
              {"x":1.25, "y":4, "w":1.5}, {"x":4, "y":4, "w":1.5}, {"x":5.5, "y":4, "w":2.25}, {"x":7.75, "y":4}, {"x":9.75, "y":4, "w":2.75}, {"x":12.5, "y":4, "w":1.5}, {"x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [1, 0], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 1], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 2], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 4], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 5], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 6], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [2, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 0], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 1], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 2], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 4], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 5], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 6], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 0], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 1], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 2], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 4], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 5], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 6], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [6, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [7, 0], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 1], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 2], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 4], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 5], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 6], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [7, 7], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [8, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [8, 3], "x": 4, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [8, 5], "x": 5.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [8, 6], "x": 7.75, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [9, 1], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [9, 3], "x": 12.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [9, 7], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					      ]
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "LAYOUT_alice_split_bs": {
 | 
				
			||||||
 | 
					      "layout": [
 | 
				
			||||||
 | 
					        {"matrix": [2, 0], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [1, 0], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 1], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 2], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 4], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 5], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 6], "x": 16.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [2, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 0], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 1], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 2], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 4], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 5], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 6], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 0], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 1], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 2], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 4], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 5], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 6], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [6, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [7, 0], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 1], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 2], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 4], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 5], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 6], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [7, 7], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [8, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [8, 3], "x": 4, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [8, 5], "x": 5.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [8, 6], "x": 7.75, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [9, 1], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [9, 3], "x": 12.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [9, 7], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,18 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2021 Bryan Ong
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "aliceclonergb.h"
 | 
					 | 
				
			||||||
@ -1,60 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2021 Bryan Ong
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
	K020,   K000, K001, K002, K003, K004, K005, K006,       K010, K011, K012, K013, K014, K015, K016, K017, \
 | 
					 | 
				
			||||||
	K040,   K021,       K022, K023, K024, K025, K026,       K030, K031, K032, K033, K034, K035, K036, K037, \
 | 
					 | 
				
			||||||
	K060,   K041,       K042, K043, K044, K045, K046,       K050, K051, K052, K053, K054, K055,       K056, \
 | 
					 | 
				
			||||||
	        K061,       K062, K063, K064, K065, K066,       K070, K071, K072, K073, K074, K075, K076, K077, \
 | 
					 | 
				
			||||||
	        K081,                   K083, K085, K086,       K091, K093,                               K097  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
	{ K000,  K001,  K002,  K003,  K004,  K005,  K006,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ K010,  K011,  K012,  K013,  K014,  K015,  K016,  K017 }, \
 | 
					 | 
				
			||||||
	{ K020,  K021,  K022,  K023,  K024,  K025,  K026,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ K030,  K031,  K032,  K033,  K034,  K035,  K036,  K037 }, \
 | 
					 | 
				
			||||||
	{ K040,  K041,  K042,  K043,  K044,  K045,  K046,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ K050,  K051,  K052,  K053,  K054,  K055,  K056,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ K060,  K061,  K062,  K063,  K064,  K065,  K066,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ K070,  K071,  K072,  K073,  K074,  K075,  K076,  K077 }, \
 | 
					 | 
				
			||||||
	{ KC_NO, K081,  KC_NO, K083,  KC_NO, K085,  K086,  KC_NO }, \
 | 
					 | 
				
			||||||
	{ KC_NO, K091,  KC_NO, K093,  KC_NO, KC_NO, KC_NO, K097 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    K020,   K000, K001, K002, K003, K004, K005, K006,       K010, K011, K012, K013, K014, K015,       K016, \
 | 
					 | 
				
			||||||
    K040,   K021,       K022, K023, K024, K025, K026,       K030, K031, K032, K033, K034, K035, K036, K037, \
 | 
					 | 
				
			||||||
    K060,   K041,       K042, K043, K044, K045, K046,       K050, K051, K052, K053, K054, K055,       K056, \
 | 
					 | 
				
			||||||
            K061,       K062, K063, K064, K065, K066,       K070, K071, K072, K073, K074, K075, K076, K077, \
 | 
					 | 
				
			||||||
            K081,                   K083, K085, K086,       K091, K093,                               K097  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
    { K000,  K001,  K002,  K003,  K004,  K005,  K006,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K010,  K011,  K012,  K013,  K014,  K015,  K016,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K020,  K021,  K022,  K023,  K024,  K025,  K026,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K030,  K031,  K032,  K033,  K034,  K035,  K036,  K037 }, \
 | 
					 | 
				
			||||||
    { K040,  K041,  K042,  K043,  K044,  K045,  K046,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K050,  K051,  K052,  K053,  K054,  K055,  K056,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K060,  K061,  K062,  K063,  K064,  K065,  K066,  KC_NO }, \
 | 
					 | 
				
			||||||
    { K070,  K071,  K072,  K073,  K074,  K075,  K076,  K077 }, \
 | 
					 | 
				
			||||||
    { KC_NO, K081,  KC_NO, K083,  KC_NO, K085,  K086,  KC_NO }, \
 | 
					 | 
				
			||||||
    { KC_NO, K091,  KC_NO, K093,  KC_NO, KC_NO, KC_NO, K097 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -29,23 +29,169 @@
 | 
				
			|||||||
  "processor": "atmega32u4",
 | 
					  "processor": "atmega32u4",
 | 
				
			||||||
  "bootloader": "atmel-dfu",
 | 
					  "bootloader": "atmel-dfu",
 | 
				
			||||||
  "community_layouts": ["alice", "alice_split_bs"],
 | 
					  "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
 | 
					  "layout_aliases": {
 | 
				
			||||||
 | 
					    "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
  "layouts": {
 | 
					  "layouts": {
 | 
				
			||||||
    "LAYOUT_alice_split_bs": {
 | 
					    "LAYOUT_alice_split_bs": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
              {"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.25, "y":0}, {"x":6.25, "y":0}, {"x":7.25, "y":0}, {"x":10.25, "y":0}, {"x":11.25, "y":0}, {"x":12.25, "y":0}, {"x":13.25, "y":0}, {"x":14.25, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 0},
 | 
				
			||||||
              {"x":0, "y":1}, {"x":1.25, "y":1, "w":1.5}, {"x":2.75, "y":1}, {"x":3.75, "y":1}, {"x":4.75, "y":1}, {"x":5.75, "y":1}, {"x":6.75, "y":1}, {"x":9.75, "y":1}, {"x":10.75, "y":1}, {"x":11.75, "y":1}, {"x":12.75, "y":1}, {"x":13.75, "y":1}, {"x":14.75, "y":1}, {"x":15.75, "y":1}, {"x":16.75, "y":1, "w":1.5},
 | 
					
 | 
				
			||||||
              {"x":0, "y":2}, {"x":1.25, "y":2, "w":1.75}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, {"x":12, "y":2}, {"x":13, "y":2}, {"x":14, "y":2}, {"x":15, "y":2}, {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
              {"x":1.25, "y":3, "w":2.25}, {"x":3.5, "y":3}, {"x":4.5, "y":3}, {"x":5.5, "y":3}, {"x":6.5, "y":3}, {"x":7.5, "y":3}, {"x":9.5, "y":3}, {"x":10.5, "y":3}, {"x":11.5, "y":3}, {"x":12.5, "y":3}, {"x":13.5, "y":3}, {"x":14.5, "y":3}, {"x":15.5, "y":3, "w":1.75}, {"x":17.25, "y":3},
 | 
					        {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
              {"x":1.25, "y":4, "w":1.5}, {"x":4, "y":4, "w":1.5}, {"x":5.5, "y":4, "w":2.25}, {"x":7.75, "y":4}, {"x":9.75, "y":4, "w":2.75}, {"x":12.5, "y":4, "w":1.5}, {"x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [1, 0], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 1], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 2], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 4], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 5], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 6], "x": 16.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [2, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 0], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 1], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 2], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 4], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 5], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 6], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 0], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 1], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 2], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 4], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 5], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 6], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [6, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [7, 0], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 1], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 2], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 4], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 5], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 6], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [7, 7], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [8, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [8, 3], "x": 4, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [8, 5], "x": 5.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [8, 6], "x": 7.75, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [9, 1], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [9, 3], "x": 12.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [9, 7], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "LAYOUT_alice": {
 | 
					    "LAYOUT_alice": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
              {"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.25, "y":0}, {"x":6.25, "y":0}, {"x":7.25, "y":0}, {"x":10.25, "y":0}, {"x":11.25, "y":0}, {"x":12.25, "y":0}, {"x":13.25, "y":0}, {"x":14.25, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0, "w":2},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 0},
 | 
				
			||||||
              {"x":0, "y":1}, {"x":1.25, "y":1, "w":1.5}, {"x":2.75, "y":1}, {"x":3.75, "y":1}, {"x":4.75, "y":1}, {"x":5.75, "y":1}, {"x":6.75, "y":1}, {"x":9.75, "y":1}, {"x":10.75, "y":1}, {"x":11.75, "y":1}, {"x":12.75, "y":1}, {"x":13.75, "y":1}, {"x":14.75, "y":1}, {"x":15.75, "y":1}, {"x":16.75, "y":1, "w":1.5},
 | 
					
 | 
				
			||||||
              {"x":0, "y":2}, {"x":1.25, "y":2, "w":1.75}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, {"x":12, "y":2}, {"x":13, "y":2}, {"x":14, "y":2}, {"x":15, "y":2}, {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
              {"x":1.25, "y":3, "w":2.25}, {"x":3.5, "y":3}, {"x":4.5, "y":3}, {"x":5.5, "y":3}, {"x":6.5, "y":3}, {"x":7.5, "y":3}, {"x":9.5, "y":3}, {"x":10.5, "y":3}, {"x":11.5, "y":3}, {"x":12.5, "y":3}, {"x":13.5, "y":3}, {"x":14.5, "y":3}, {"x":15.5, "y":3, "w":1.75}, {"x":17.25, "y":3},
 | 
					        {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
              {"x":1.25, "y":4, "w":1.5}, {"x":4, "y":4, "w":1.5}, {"x":5.5, "y":4, "w":2.25}, {"x":7.75, "y":4}, {"x":9.75, "y":4, "w":2.75}, {"x":12.5, "y":4, "w":1.5}, {"x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 0], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 1], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 2], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 4], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 5], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 6], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [2, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 0], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 1], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 2], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 4], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 5], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 6], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 0], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 1], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 2], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 4], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 5], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 6], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [6, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 0], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [7, 1], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 2], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 4], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 5], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 6], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [7, 7], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [8, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [8, 3], "x": 4, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [8, 5], "x": 5.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [8, 6], "x": 7.75, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [9, 1], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [9, 3], "x": 12.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [9, 7], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
				
			|||||||
@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License
 | 
				
			|||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
*/
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "ava.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool encoder_update_kb(uint8_t index, bool clockwise) {
 | 
					bool encoder_update_kb(uint8_t index, bool clockwise) {
 | 
				
			||||||
    if (!encoder_update_user(index,clockwise)) { return false; }
 | 
					    if (!encoder_update_user(index,clockwise)) { return false; }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,57 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2021 Bryan Ong
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
	K020,   K000, K001, K002, K003, K004, K005, K006,       K010, K011, K012, K013, K014, K015, K016, K017, \
 | 
					 | 
				
			||||||
	K040,   K021,       K022, K023, K024, K025, K026,       K030, K031, K032, K033, K034, K035, K036, K037, \
 | 
					 | 
				
			||||||
	K060,   K041,       K042, K043, K044, K045, K046,       K050, K051, K052, K053, K054, K055,       K056, \
 | 
					 | 
				
			||||||
	K007,   K061,       K062, K063, K064, K065, K066,       K070, K071, K072, K073, K074, K075, K076, K077, \
 | 
					 | 
				
			||||||
	        K027, K047,             K057, K067,                   K081, K083,             K085, K086, K087  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
	{ K000,  K001,  K002,  K003,  K004,  K005,  K006,  K007 }, \
 | 
					 | 
				
			||||||
	{ K010,  K011,  K012,  K013,  K014,  K015,  K016,  K017 }, \
 | 
					 | 
				
			||||||
	{ K020,  K021,  K022,  K023,  K024,  K025,  K026,  K027 }, \
 | 
					 | 
				
			||||||
	{ K030,  K031,  K032,  K033,  K034,  K035,  K036,  K037 }, \
 | 
					 | 
				
			||||||
	{ K040,  K041,  K042,  K043,  K044,  K045,  K046,  K047 }, \
 | 
					 | 
				
			||||||
	{ K050,  K051,  K052,  K053,  K054,  K055,  K056,  K057 }, \
 | 
					 | 
				
			||||||
	{ K060,  K061,  K062,  K063,  K064,  K065,  K066,  K067	}, \
 | 
					 | 
				
			||||||
	{ K070,  K071,  K072,  K073,  K074,  K075,  K076,  K077 }, \
 | 
					 | 
				
			||||||
	{ KC_NO, K081,  KC_NO, K083,  KC_NO, K085,  K086,  K087 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
	K020,   K000, K001, K002, K003, K004, K005, K006,       K010, K011, K012, K013, K014, K015,       K017, \
 | 
					 | 
				
			||||||
	K040,   K021,       K022, K023, K024, K025, K026,       K030, K031, K032, K033, K034, K035, K036, K037, \
 | 
					 | 
				
			||||||
	K060,   K041,       K042, K043, K044, K045, K046,       K050, K051, K052, K053, K054, K055,       K056, \
 | 
					 | 
				
			||||||
	K007,   K061,       K062, K063, K064, K065, K066,       K070, K071, K072, K073, K074, K075, K076, K077, \
 | 
					 | 
				
			||||||
	        K027, K047,             K057, K067,                   K081, K083,             K085, K086, K087  \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
	{ K000,  K001,  K002,  K003,  K004,  K005,  K006,  K007 }, \
 | 
					 | 
				
			||||||
	{ K010,  K011,  K012,  K013,  K014,  K015,  KC_NO, K017 }, \
 | 
					 | 
				
			||||||
	{ K020,  K021,  K022,  K023,  K024,  K025,  K026,  K027 }, \
 | 
					 | 
				
			||||||
	{ K030,  K031,  K032,  K033,  K034,  K035,  K036,  K037 }, \
 | 
					 | 
				
			||||||
	{ K040,  K041,  K042,  K043,  K044,  K045,  K046,  K047 }, \
 | 
					 | 
				
			||||||
	{ K050,  K051,  K052,  K053,  K054,  K055,  K056,  K057 }, \
 | 
					 | 
				
			||||||
	{ K060,  K061,  K062,  K063,  K064,  K065,  K066,  K067	}, \
 | 
					 | 
				
			||||||
	{ K070,  K071,  K072,  K073,  K074,  K075,  K076,  K077 }, \
 | 
					 | 
				
			||||||
	{ KC_NO, K081,  KC_NO, K083,  KC_NO, K085,  K086,  K087 }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@ -35,20 +35,171 @@
 | 
				
			|||||||
  "layouts": {
 | 
					  "layouts": {
 | 
				
			||||||
    "LAYOUT_alice_split_bs": {
 | 
					    "LAYOUT_alice_split_bs": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
              {"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.25, "y":0}, {"x":6.25, "y":0}, {"x":7.25, "y":0}, {"x":10.25, "y":0}, {"x":11.25, "y":0}, {"x":12.25, "y":0}, {"x":13.25, "y":0}, {"x":14.25, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 0},
 | 
				
			||||||
              {"x":0, "y":1}, {"x":1.25, "y":1, "w":1.5}, {"x":2.75, "y":1}, {"x":3.75, "y":1}, {"x":4.75, "y":1}, {"x":5.75, "y":1}, {"x":6.75, "y":1}, {"x":9.75, "y":1}, {"x":10.75, "y":1}, {"x":11.75, "y":1}, {"x":12.75, "y":1}, {"x":13.75, "y":1}, {"x":14.75, "y":1}, {"x":15.75, "y":1}, {"x":16.75, "y":1, "w":1.5},
 | 
					
 | 
				
			||||||
              {"x":0, "y":2}, {"x":1.25, "y":2, "w":1.75}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, {"x":12, "y":2}, {"x":13, "y":2}, {"x":14, "y":2}, {"x":15, "y":2}, {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
              {"x":0, "y":3}, {"x":1.25, "y":3, "w":2.25}, {"x":3.5, "y":3}, {"x":4.5, "y":3}, {"x":5.5, "y":3}, {"x":6.5, "y":3}, {"x":7.5, "y":3}, {"x":9.5, "y":3}, {"x":10.5, "y":3}, {"x":11.5, "y":3}, {"x":12.5, "y":3}, {"x":13.5, "y":3}, {"x":14.5, "y":3}, {"x":15.65, "y":3.25}, {"x":16.75, "y":3, "w":1.5},
 | 
					        {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
              {"x":1.25, "y":4, "w":1.5}, {"x":2.75, "y":4}, {"x":5, "y":4, "w":1.5}, {"x":6.5, "y":4, "w":2.25}, {"x":9.75, "y":4, "w":2.75}, {"x":12.5, "y":4}, {"x":14.65, "y":4.25}, {"x":15.65, "y":4.25}, {"x":16.65, "y":4.25}
 | 
					        {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [1, 0], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 1], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 2], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 4], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 5], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 6], "x": 16.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [2, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 0], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 1], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 2], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 4], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 5], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 6], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 0], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 1], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 2], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 4], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 5], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 6], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [0, 7], "x": 0, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [6, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [7, 0], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 1], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 2], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 4], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 5], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 6], "x": 15.65, "y": 3.25},
 | 
				
			||||||
 | 
					        {"matrix": [7, 7], "x": 16.75, "y": 3, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [2, 7], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 7], "x": 2.75, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [5, 7], "x": 5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [6, 7], "x": 6.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [8, 1], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [8, 3], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [8, 5], "x": 14.65, "y": 4.25},
 | 
				
			||||||
 | 
					        {"matrix": [8, 6], "x": 15.65, "y": 4.25},
 | 
				
			||||||
 | 
					        {"matrix": [8, 7], "x": 16.65, "y": 4.25}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "LAYOUT_alice": {
 | 
					    "LAYOUT_alice": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
              {"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.25, "y":0}, {"x":6.25, "y":0}, {"x":7.25, "y":0}, {"x":10.25, "y":0}, {"x":11.25, "y":0}, {"x":12.25, "y":0}, {"x":13.25, "y":0}, {"x":14.25, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0, "w":2},
 | 
					        {"matrix": [2, 0], "x": 0, "y": 0},
 | 
				
			||||||
              {"x":0, "y":1}, {"x":1.25, "y":1, "w":1.5}, {"x":2.75, "y":1}, {"x":3.75, "y":1}, {"x":4.75, "y":1}, {"x":5.75, "y":1}, {"x":6.75, "y":1}, {"x":9.75, "y":1}, {"x":10.75, "y":1}, {"x":11.75, "y":1}, {"x":12.75, "y":1}, {"x":13.75, "y":1}, {"x":14.75, "y":1}, {"x":15.75, "y":1}, {"x":16.75, "y":1, "w":1.5},
 | 
					
 | 
				
			||||||
              {"x":0, "y":2}, {"x":1.25, "y":2, "w":1.75}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, {"x":12, "y":2}, {"x":13, "y":2}, {"x":14, "y":2}, {"x":15, "y":2}, {"x":16, "y":2, "w":2.25},
 | 
					        {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
              {"x":0, "y":3}, {"x":1.25, "y":3, "w":2.25}, {"x":3.5, "y":3}, {"x":4.5, "y":3}, {"x":5.5, "y":3}, {"x":6.5, "y":3}, {"x":7.5, "y":3}, {"x":9.5, "y":3}, {"x":10.5, "y":3}, {"x":11.5, "y":3}, {"x":12.5, "y":3}, {"x":13.5, "y":3}, {"x":14.5, "y":3}, {"x":15.65, "y":3.25}, {"x":16.75, "y":3, "w":1.5},
 | 
					        {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
              {"x":1.25, "y":4, "w":1.5}, {"x":2.75, "y":4}, {"x":5, "y":4, "w":1.5}, {"x":6.5, "y":4, "w":2.25}, {"x":9.75, "y":4, "w":2.75}, {"x":12.5, "y":4}, {"x":14.65, "y":4.25}, {"x":15.65, "y":4.25}, {"x":16.65, "y":4.25}
 | 
					        {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [1, 0], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 1], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 2], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 4], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 5], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					        {"matrix": [1, 7], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [2, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [2, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [2, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [3, 0], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 1], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 2], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 4], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 5], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 6], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					        {"matrix": [3, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [5, 0], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 1], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 2], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 4], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 5], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					        {"matrix": [5, 6], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [0, 7], "x": 0, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [6, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [6, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [6, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [7, 0], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 1], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 2], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 4], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 5], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [7, 6], "x": 15.65, "y": 3.25},
 | 
				
			||||||
 | 
					        {"matrix": [7, 7], "x": 16.75, "y": 3, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [2, 7], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 7], "x": 2.75, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [5, 7], "x": 5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [6, 7], "x": 6.5, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					        {"matrix": [8, 1], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [8, 3], "x": 12.5, "y": 4},
 | 
				
			||||||
 | 
					        {"matrix": [8, 5], "x": 14.65, "y": 4.25},
 | 
				
			||||||
 | 
					        {"matrix": [8, 6], "x": 15.65, "y": 4.25},
 | 
				
			||||||
 | 
					        {"matrix": [8, 7], "x": 16.65, "y": 4.25}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,51 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2019 Felipe Coury <felipe.coury@gmail.com>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
(at your option) any later version.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
GNU General Public License for more details.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Layout
 | 
					 | 
				
			||||||
 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
 | 
					 | 
				
			||||||
 * │50 │ │00 │01 │02 │03 │04 │05 │06 │         │07 │08 │09 │0A │0B │0C │0D │0E │
 | 
					 | 
				
			||||||
 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
 | 
					 | 
				
			||||||
 * │51 │ │10   │11 │12 │13 │14 │15 │         │16 │17 │18 │19 │1A │1B │1C │1D   │
 | 
					 | 
				
			||||||
 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
 | 
					 | 
				
			||||||
 * │52 │ │20    │21 │22 │23 │24 │25 │         │26 │27 │28 │29 │2A │2B │2C      │
 | 
					 | 
				
			||||||
 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
 | 
					 | 
				
			||||||
 *       │30      │31 │32 │33 │34 │35 │     │36 │37 │38 │39 │4A │4B │4C    │4D │
 | 
					 | 
				
			||||||
 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
 | 
					 | 
				
			||||||
 *       │40   │     │41   │42     │43  │   │46        │47   │           │48   │
 | 
					 | 
				
			||||||
 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
  K50,   K00, K01, K02, K03, K04, K05, K06,      K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
 | 
					 | 
				
			||||||
  K51,   K10, K11, K12, K13, K14, K15,      K16, K17, K18, K19, K1A, K1B, K1C, K1D,      \
 | 
					 | 
				
			||||||
  K52,   K20, K21, K22, K23, K24, K25,      K26, K27, K28, K29, K2A, K2B,      K2C,      \
 | 
					 | 
				
			||||||
         K30, K31, K32, K33, K34, K35,      K36, K37, K38, K39, K4A, K4B, K4C, K4D,      \
 | 
					 | 
				
			||||||
         K40,      K41,      K42, K43,           K46,      K47,                K48       \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
  { K00  , K01  , K02  , K03  , K04  , K05  , K06  , K07  , K08  , K09  , K0A  , K0B  , K0C  , K0D  , K0E   }, \
 | 
					 | 
				
			||||||
  { K10  , K11  , K12  , K13  , K14  , K15  , K16  , K17  , K18  , K19  , K1A  , K1B  , K1C  , K1D  , KC_NO }, \
 | 
					 | 
				
			||||||
  { K20  , K21  , K22  , K23  , K24  , K25  , K26  , K27  , K28  , K29  , K2A  , K2B  , K2C  , KC_NO, KC_NO }, \
 | 
					 | 
				
			||||||
  { K30  , K31  , K32  , K33  , K34  , K35  , K36  , K37  , K38  , K39  , K4A  , K4B  , K4C  , K4D  , KC_NO }, \
 | 
					 | 
				
			||||||
  { K40  , K41  , K42  , K43  , KC_NO, KC_NO, K46  , K47  , K48  , KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }, \
 | 
					 | 
				
			||||||
  { K50  , K51  , K52  , KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -27,75 +27,88 @@
 | 
				
			|||||||
  "processor": "atmega32a",
 | 
					  "processor": "atmega32a",
 | 
				
			||||||
  "bootloader": "bootloadhid",
 | 
					  "bootloader": "bootloadhid",
 | 
				
			||||||
  "community_layouts": ["alice_split_bs"],
 | 
					  "community_layouts": ["alice_split_bs"],
 | 
				
			||||||
 | 
					  "layout_aliases": {
 | 
				
			||||||
 | 
					    "LAYOUT": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
  "layouts": {
 | 
					  "layouts": {
 | 
				
			||||||
    "LAYOUT_alice_split_bs": {
 | 
					    "LAYOUT_alice_split_bs": {
 | 
				
			||||||
      "layout": [
 | 
					      "layout": [
 | 
				
			||||||
        {"label":"K63", "x":0, "y":0},
 | 
					        {"matrix": [5, 0], "x": 0, "y": 0},
 | 
				
			||||||
        {"label":"K00", "x":1.25, "y":0},
 | 
					
 | 
				
			||||||
        {"label":"K01", "x":2.25, "y":0},
 | 
					        {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
        {"label":"K02", "x":3.25, "y":0},
 | 
					        {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
        {"label":"K03", "x":4.25, "y":0},
 | 
					        {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
        {"label":"K04", "x":5.25, "y":0},
 | 
					        {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
        {"label":"K05", "x":6.25, "y":0},
 | 
					        {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
        {"label":"K06", "x":7.25, "y":0},
 | 
					        {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
        {"label":"K07", "x":10.25, "y":0},
 | 
					        {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
        {"label":"K08", "x":11.25, "y":0},
 | 
					
 | 
				
			||||||
        {"label":"K09", "x":12.25, "y":0},
 | 
					        {"matrix": [0, 7], "x": 10.25, "y": 0},
 | 
				
			||||||
        {"label":"K10", "x":13.25, "y":0},
 | 
					        {"matrix": [0, 8], "x": 11.25, "y": 0},
 | 
				
			||||||
        {"label":"K11", "x":14.25, "y":0},
 | 
					        {"matrix": [0, 9], "x": 12.25, "y": 0},
 | 
				
			||||||
        {"label":"K12", "x":15.25, "y":0},
 | 
					        {"matrix": [0, 10], "x": 13.25, "y": 0},
 | 
				
			||||||
        {"label":"K13", "x":16.25, "y":0},
 | 
					        {"matrix": [0, 11], "x": 14.25, "y": 0},
 | 
				
			||||||
        {"label":"K14", "x":17.25, "y":0},
 | 
					        {"matrix": [0, 12], "x": 15.25, "y": 0},
 | 
				
			||||||
        {"label":"K64", "x":0, "y":1},
 | 
					        {"matrix": [0, 13], "x": 16.25, "y": 0},
 | 
				
			||||||
        {"label":"K15", "x":1.25, "y":1, "w":1.5},
 | 
					        {"matrix": [0, 14], "x": 17.25, "y": 0},
 | 
				
			||||||
        {"label":"K16", "x":2.75, "y":1},
 | 
					
 | 
				
			||||||
        {"label":"K17", "x":3.75, "y":1},
 | 
					        {"matrix": [5, 1], "x": 0, "y": 1},
 | 
				
			||||||
        {"label":"K18", "x":4.75, "y":1},
 | 
					
 | 
				
			||||||
        {"label":"K19", "x":5.75, "y":1},
 | 
					        {"matrix": [1, 0], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"label":"K20", "x":6.75, "y":1},
 | 
					        {"matrix": [1, 1], "x": 2.75, "y": 1},
 | 
				
			||||||
        {"label":"K21", "x":9.75, "y":1},
 | 
					        {"matrix": [1, 2], "x": 3.75, "y": 1},
 | 
				
			||||||
        {"label":"K22", "x":10.75, "y":1},
 | 
					        {"matrix": [1, 3], "x": 4.75, "y": 1},
 | 
				
			||||||
        {"label":"K23", "x":11.75, "y":1},
 | 
					        {"matrix": [1, 4], "x": 5.75, "y": 1},
 | 
				
			||||||
        {"label":"K24", "x":12.75, "y":1},
 | 
					        {"matrix": [1, 5], "x": 6.75, "y": 1},
 | 
				
			||||||
        {"label":"K25", "x":13.75, "y":1},
 | 
					
 | 
				
			||||||
        {"label":"K26", "x":14.75, "y":1},
 | 
					        {"matrix": [1, 6], "x": 9.75, "y": 1},
 | 
				
			||||||
        {"label":"K27", "x":15.75, "y":1},
 | 
					        {"matrix": [1, 7], "x": 10.75, "y": 1},
 | 
				
			||||||
        {"label":"K28", "x":16.75, "y":1, "w":1.5},
 | 
					        {"matrix": [1, 8], "x": 11.75, "y": 1},
 | 
				
			||||||
        {"label":"K65", "x":0, "y":2},
 | 
					        {"matrix": [1, 9], "x": 12.75, "y": 1},
 | 
				
			||||||
        {"label":"K29", "x":1.25, "y":2, "w":1.75},
 | 
					        {"matrix": [1, 10], "x": 13.75, "y": 1},
 | 
				
			||||||
        {"label":"K30", "x":3, "y":2},
 | 
					        {"matrix": [1, 11], "x": 14.75, "y": 1},
 | 
				
			||||||
        {"label":"K31", "x":4, "y":2},
 | 
					        {"matrix": [1, 12], "x": 15.75, "y": 1},
 | 
				
			||||||
        {"label":"K32", "x":5, "y":2},
 | 
					        {"matrix": [1, 13], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
        {"label":"K33", "x":6, "y":2},
 | 
					
 | 
				
			||||||
        {"label":"K34", "x":7, "y":2},
 | 
					        {"matrix": [5, 2], "x": 0, "y": 2},
 | 
				
			||||||
        {"label":"K35", "x":10, "y":2},
 | 
					        {"matrix": [2, 0], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
        {"label":"K36", "x":11, "y":2},
 | 
					        {"matrix": [2, 1], "x": 3, "y": 2},
 | 
				
			||||||
        {"label":"K37", "x":12, "y":2},
 | 
					        {"matrix": [2, 2], "x": 4, "y": 2},
 | 
				
			||||||
        {"label":"K38", "x":13, "y":2},
 | 
					        {"matrix": [2, 3], "x": 5, "y": 2},
 | 
				
			||||||
        {"label":"K39", "x":14, "y":2},
 | 
					        {"matrix": [2, 4], "x": 6, "y": 2},
 | 
				
			||||||
        {"label":"K40", "x":15, "y":2},
 | 
					        {"matrix": [2, 5], "x": 7, "y": 2},
 | 
				
			||||||
        {"label":"K41", "x":16, "y":2, "w":2.25},
 | 
					
 | 
				
			||||||
        {"label":"K42", "x":1.25, "y":3, "w":2.25},
 | 
					        {"matrix": [2, 6], "x": 10, "y": 2},
 | 
				
			||||||
        {"label":"K43", "x":3.5, "y":3},
 | 
					        {"matrix": [2, 7], "x": 11, "y": 2},
 | 
				
			||||||
        {"label":"K44", "x":4.5, "y":3},
 | 
					        {"matrix": [2, 8], "x": 12, "y": 2},
 | 
				
			||||||
        {"label":"K45", "x":5.5, "y":3},
 | 
					        {"matrix": [2, 9], "x": 13, "y": 2},
 | 
				
			||||||
        {"label":"K46", "x":6.5, "y":3},
 | 
					        {"matrix": [2, 10], "x": 14, "y": 2},
 | 
				
			||||||
        {"label":"K47", "x":7.5, "y":3},
 | 
					        {"matrix": [2, 11], "x": 15, "y": 2},
 | 
				
			||||||
        {"label":"K48", "x":9.5, "y":3},
 | 
					        {"matrix": [2, 12], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
        {"label":"K49", "x":10.5, "y":3},
 | 
					
 | 
				
			||||||
        {"label":"K50", "x":11.5, "y":3},
 | 
					        {"matrix": [3, 0], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
        {"label":"K51", "x":12.5, "y":3},
 | 
					        {"matrix": [3, 1], "x": 3.5, "y": 3},
 | 
				
			||||||
        {"label":"K52", "x":13.5, "y":3},
 | 
					        {"matrix": [3, 2], "x": 4.5, "y": 3},
 | 
				
			||||||
        {"label":"K53", "x":14.5, "y":3},
 | 
					        {"matrix": [3, 3], "x": 5.5, "y": 3},
 | 
				
			||||||
        {"label":"K54", "x":15.5, "y":3, "w":1.75},
 | 
					        {"matrix": [3, 4], "x": 6.5, "y": 3},
 | 
				
			||||||
        {"label":"K55", "x":17.25, "y":3},
 | 
					        {"matrix": [3, 5], "x": 7.5, "y": 3},
 | 
				
			||||||
        {"label":"K56", "x":1.25, "y":4, "w":1.5},
 | 
					
 | 
				
			||||||
        {"label":"K57", "x":4.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 6], "x": 9.5, "y": 3},
 | 
				
			||||||
        {"label":"K58", "x":5.75, "y":4, "w":2},
 | 
					        {"matrix": [3, 7], "x": 10.5, "y": 3},
 | 
				
			||||||
        {"label":"K59", "x":7.75, "y":4, "w":1.25},
 | 
					        {"matrix": [3, 8], "x": 11.5, "y": 3},
 | 
				
			||||||
        {"label":"K60", "x":9.5, "y":4, "w":2.75},
 | 
					        {"matrix": [3, 9], "x": 12.5, "y": 3},
 | 
				
			||||||
        {"label":"K61", "x":12.25, "y":4, "w":1.5},
 | 
					        {"matrix": [3, 10], "x": 13.5, "y": 3},
 | 
				
			||||||
        {"label":"K62", "x":16.75, "y":4, "w":1.5}
 | 
					        {"matrix": [3, 11], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					        {"matrix": [3, 12], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					        {"matrix": [3, 13], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"matrix": [4, 0], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 1], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 2], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					        {"matrix": [4, 3], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					        {"matrix": [4, 6], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					        {"matrix": [4, 7], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					        {"matrix": [4, 8], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
				
			|||||||
@ -20,18 +20,330 @@
 | 
				
			|||||||
    "processor": "atmega32u4",
 | 
					    "processor": "atmega32u4",
 | 
				
			||||||
    "bootloader": "atmel-dfu",
 | 
					    "bootloader": "atmel-dfu",
 | 
				
			||||||
    "community_layouts": ["alice", "alice_split_bs"],
 | 
					    "community_layouts": ["alice", "alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs",
 | 
				
			||||||
 | 
					        "LAYOUT_split_right_shift": "LAYOUT_alice"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_default_ansi": {
 | 
					        "LAYOUT_default_ansi": {
 | 
				
			||||||
            "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"~", "x":1.25, "y":0}, {"label":"!", "x":2.25, "y":0}, {"label":"@", "x":3.25, "y":0}, {"label":"#", "x":4.25, "y":0}, {"label":"$", "x":5.25, "y":0}, {"label":"%", "x":6.25, "y":0}, {"label":"^", "x":7.25, "y":0}, {"label":"&", "x":10.25, "y":0}, {"label":"*", "x":11.25, "y":0}, {"label":"(", "x":12.25, "y":0}, {"label":")", "x":13.25, "y":0}, {"label":"_", "x":14.25, "y":0}, {"label":"+", "x":15.25, "y":0}, {"label":"Backspace", "x":16.25, "y":0, "w":2}, {"label":"Page Up", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":9.75, "y":1}, {"label":"U", "x":10.75, "y":1}, {"label":"I", "x":11.75, "y":1}, {"label":"O", "x":12.75, "y":1}, {"label":"P", "x":13.75, "y":1}, {"label":"{", "x":14.75, "y":1}, {"label":"}", "x":15.75, "y":1}, {"label":"|", "x":16.75, "y":1, "w":1.5}, {"label":"Page Down", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":10, "y":2}, {"label":"J", "x":11, "y":2}, {"label":"K", "x":12, "y":2}, {"label":"L", "x":13, "y":2}, {"label":":", "x":14, "y":2}, {"label":"\"", "x":15, "y":2}, {"label":"Enter", "x":16, "y":2, "w":2.25}, {"label":"Shift", "x":1.25, "y":3, "w":2.25}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"B", "x":9.5, "y":3}, {"label":"N", "x":10.5, "y":3}, {"label":"M", "x":11.5, "y":3}, {"label":"<", "x":12.5, "y":3}, {"label":">", "x":13.5, "y":3}, {"label":"?", "x":14.5, "y":3}, {"label":"Shift", "x":15.5, "y":3, "w":2.75}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.5}, {"label":"Win", "x":4.25, "y":4, "w":1.5}, {"x":5.75, "y":4, "w":2.25}, {"label":"Fn", "x":8, "y":4}, {"x":9.5, "y":4, "w":2.75}, {"label":"Alt", "x":12.25, "y":4, "w":1.5}, {"label":"Ctrl", "x":16.75, "y":4, "w":1.5}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 7], "x": 15.5, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_split_backspace": {
 | 
					        "LAYOUT_split_backspace": {
 | 
				
			||||||
            "layout": [{"label":"Delete", "x":0, "y":0}, {"label":"Esc", "x":1.25, "y":0}, {"label":"!", "x":2.25, "y":0}, {"label":"@", "x":3.25, "y":0}, {"label":"#", "x":4.25, "y":0}, {"label":"$", "x":5.25, "y":0}, {"label":"%", "x":6.25, "y":0}, {"label":"^", "x":7.25, "y":0}, {"label":"&", "x":10.25, "y":0}, {"label":"*", "x":11.25, "y":0}, {"label":"(", "x":12.25, "y":0}, {"label":")", "x":13.25, "y":0}, {"label":"_", "x":14.25, "y":0}, {"label":"+", "x":15.25, "y":0}, {"label":"~", "x":16.25, "y":0}, {"label":"|", "x":17.25, "y":0}, {"label":"Page Up", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":9.75, "y":1}, {"label":"U", "x":10.75, "y":1}, {"label":"I", "x":11.75, "y":1}, {"label":"O", "x":12.75, "y":1}, {"label":"P", "x":13.75, "y":1}, {"label":"{", "x":14.75, "y":1}, {"label":"}", "x":15.75, "y":1}, {"label":"Backspace", "x":16.75, "y":1, "w":1.5}, {"label":"Page Down", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":10, "y":2}, {"label":"J", "x":11, "y":2}, {"label":"K", "x":12, "y":2}, {"label":"L", "x":13, "y":2}, {"label":":", "x":14, "y":2}, {"label":"\"", "x":15, "y":2}, {"label":"Enter", "x":16, "y":2, "w":2.25}, {"label":"Shift", "x":1.25, "y":3, "w":2.25}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"B", "x":9.5, "y":3}, {"label":"N", "x":10.5, "y":3}, {"label":"M", "x":11.5, "y":3}, {"label":"<", "x":12.5, "y":3}, {"label":">", "x":13.5, "y":3}, {"label":"?", "x":14.5, "y":3}, {"label":"Shift", "x":15.5, "y":3, "w":2.75}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.5}, {"label":"Win", "x":4.25, "y":4, "w":1.5}, {"x":5.75, "y":4, "w":2.25}, {"label":"Fn", "x":8, "y":4}, {"x":9.5, "y":4, "w":2.75}, {"label":"Alt", "x":12.25, "y":4, "w":1.5}, {"label":"Ctrl", "x":16.75, "y":4, "w":1.5}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 16.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 7], "x": 15.5, "y": 3, "w": 2.75},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"~", "x":1.25, "y":0}, {"label":"!", "x":2.25, "y":0}, {"label":"@", "x":3.25, "y":0}, {"label":"#", "x":4.25, "y":0}, {"label":"$", "x":5.25, "y":0}, {"label":"%", "x":6.25, "y":0}, {"label":"^", "x":7.25, "y":0}, {"label":"&", "x":10.25, "y":0}, {"label":"*", "x":11.25, "y":0}, {"label":"(", "x":12.25, "y":0}, {"label":")", "x":13.25, "y":0}, {"label":"_", "x":14.25, "y":0}, {"label":"+", "x":15.25, "y":0}, {"label":"Backspace", "x":16.25, "y":0, "w":2}, {"label":"Page Up", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":9.75, "y":1}, {"label":"U", "x":10.75, "y":1}, {"label":"I", "x":11.75, "y":1}, {"label":"O", "x":12.75, "y":1}, {"label":"P", "x":13.75, "y":1}, {"label":"{", "x":14.75, "y":1}, {"label":"}", "x":15.75, "y":1}, {"label":"|", "x":16.75, "y":1, "w":1.5}, {"label":"Page Down", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":10, "y":2}, {"label":"J", "x":11, "y":2}, {"label":"K", "x":12, "y":2}, {"label":"L", "x":13, "y":2}, {"label":":", "x":14, "y":2}, {"label":"\"", "x":15, "y":2}, {"label":"Enter", "x":16, "y":2, "w":2.25}, {"label":"Shift", "x":1.25, "y":3, "w":2.25}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"B", "x":9.5, "y":3}, {"label":"N", "x":10.5, "y":3}, {"label":"M", "x":11.5, "y":3}, {"label":"<", "x":12.5, "y":3}, {"label":">", "x":13.5, "y":3}, {"label":"?", "x":14.5, "y":3}, {"label":"Shift", "x":15.5, "y":3, "w":1.75}, {"label":"Fn", "x":17.25, "y":3}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.5}, {"label":"Win", "x":4.25, "y":4, "w":1.5}, {"x":5.75, "y":4, "w":2.25}, {"label":"Fn", "x":8, "y":4}, {"x":9.5, "y":4, "w":2.75}, {"label":"Alt", "x":12.25, "y":4, "w":1.5}, {"label":"Ctrl", "x":16.75, "y":4, "w":1.5}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 16.25, "y": 0, "w": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [8, 7], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [{"label":"Delete", "x":0, "y":0}, {"label":"Esc", "x":1.25, "y":0}, {"label":"!", "x":2.25, "y":0}, {"label":"@", "x":3.25, "y":0}, {"label":"#", "x":4.25, "y":0}, {"label":"$", "x":5.25, "y":0}, {"label":"%", "x":6.25, "y":0}, {"label":"^", "x":7.25, "y":0}, {"label":"&", "x":10.25, "y":0}, {"label":"*", "x":11.25, "y":0}, {"label":"(", "x":12.25, "y":0}, {"label":")", "x":13.25, "y":0}, {"label":"_", "x":14.25, "y":0}, {"label":"+", "x":15.25, "y":0}, {"label":"~", "x":16.25, "y":0}, {"label":"|", "x":17.25, "y":0}, {"label":"Page Up", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":9.75, "y":1}, {"label":"U", "x":10.75, "y":1}, {"label":"I", "x":11.75, "y":1}, {"label":"O", "x":12.75, "y":1}, {"label":"P", "x":13.75, "y":1}, {"label":"{", "x":14.75, "y":1}, {"label":"}", "x":15.75, "y":1}, {"label":"Backspace", "x":16.75, "y":1, "w":1.5}, {"label":"Page Down", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":10, "y":2}, {"label":"J", "x":11, "y":2}, {"label":"K", "x":12, "y":2}, {"label":"L", "x":13, "y":2}, {"label":":", "x":14, "y":2}, {"label":"\"", "x":15, "y":2}, {"label":"Enter", "x":16, "y":2, "w":2.25}, {"label":"Shift", "x":1.25, "y":3, "w":2.25}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"B", "x":9.5, "y":3}, {"label":"N", "x":10.5, "y":3}, {"label":"M", "x":11.5, "y":3}, {"label":"<", "x":12.5, "y":3}, {"label":">", "x":13.5, "y":3}, {"label":"?", "x":14.5, "y":3}, {"label":"Shift", "x":15.5, "y":3, "w":1.75}, {"label":"Fn", "x":17.25, "y":3}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.5}, {"label":"Win", "x":4.25, "y":4, "w":1.5}, {"x":5.75, "y":4, "w":2.25}, {"label":"Fn", "x":8, "y":4}, {"x":9.5, "y":4, "w":2.75}, {"label":"Alt", "x":12.25, "y":4, "w":1.5}, {"label":"Ctrl", "x":16.75, "y":4, "w":1.5}]
 | 
					            "layout": [
 | 
				
			||||||
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [5, 6], "x": 10.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 5], "x": 11.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 4], "x": 12.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 3], "x": 13.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 2], "x": 14.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 1], "x": 15.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 0], "x": 16.25, "y": 0},
 | 
				
			||||||
 | 
					                {"matrix": [5, 7], "x": 17.25, "y": 0},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [6, 6], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 5], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 4], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 3], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 2], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 1], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 0], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [6, 7], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [7, 6], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 5], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 4], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 3], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 2], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 1], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [7, 7], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [8, 6], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 5], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 4], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 3], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 2], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 1], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [8, 0], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [8, 7], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4},
 | 
				
			||||||
 | 
					                {"matrix": [9, 5], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [9, 3], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [9, 0], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -13,7 +13,7 @@
 | 
				
			|||||||
 * You should have received a copy of the GNU General Public License
 | 
					 * You should have received a copy of the GNU General Public License
 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#include "osav2.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void keyboard_pre_init_kb(void) {
 | 
					void keyboard_pre_init_kb(void) {
 | 
				
			||||||
    setPinOutput(C7);
 | 
					    setPinOutput(C7);
 | 
				
			||||||
 | 
				
			|||||||
@ -1,120 +0,0 @@
 | 
				
			|||||||
/* Copyright 2019 jrfhoutx
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* This a shortcut to help you visually see your layout.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The first section contains all of the arguments representing the physical
 | 
					 | 
				
			||||||
 * layout of the board and position of the keys.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * The second converts the arguments into a two-dimensional array which
 | 
					 | 
				
			||||||
 * represents the switch matrix.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* LAYOUT
 | 
					 | 
				
			||||||
 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐┌────────┐
 | 
					 | 
				
			||||||
 * │10 │ │00 │01 │02 │03 │04 │05 │06 │         │56 │55 │54 │53 │52 │51 │50 │57 ││57      │
 | 
					 | 
				
			||||||
 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤└────────┘
 | 
					 | 
				
			||||||
 * │20 │ │11   │12 │13 │14 │15 │16 │         │66 │65 │64 │63 │62 │61 │60 │67   │
 | 
					 | 
				
			||||||
 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
 | 
					 | 
				
			||||||
 * │30 │ │21    │22 │23 │24 │25 │26 │         │76 │75 │74 │73 │72 │71 │77      │
 | 
					 | 
				
			||||||
 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤┌──────────┐
 | 
					 | 
				
			||||||
 *       │31      │32 │33 │34 │35 │36 │     │86 │85 │84 │83 │82 │81 │80    │87 ││87        │
 | 
					 | 
				
			||||||
 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤└──────────┘
 | 
					 | 
				
			||||||
 *       │41   │     │43   │45     │46  │   │95        │93   │           │90   │
 | 
					 | 
				
			||||||
 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
#define LAYOUT_default_ansi( \
 | 
					 | 
				
			||||||
  K10, K00, K01, K02, K03, K04, K05, K06,   K56, K55, K54, K53, K52, K51,      K57, \
 | 
					 | 
				
			||||||
  K20, K11, K12, K13, K14, K15, K16,        K66, K65, K64, K63, K62, K61, K60, K67, \
 | 
					 | 
				
			||||||
  K30, K21, K22, K23, K24, K25, K26,        K76, K75, K74, K73, K72, K71,      K77, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,        K86, K85, K84, K83, K82, K81,      K87, \
 | 
					 | 
				
			||||||
       K41,      K43,      K45, K46,        K95,           K93,                K90  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K41,   KC_NO, K43,   KC_NO, K45,   K46,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K51,   K52,   K53,   K54,   K55,   K56,   K57    }, \
 | 
					 | 
				
			||||||
    { K60,   K61,   K62,   K63,   K64,   K65,   K66,   K67    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K71,   K72,   K73,   K74,   K75,   K76,   K77    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K81,   K82,   K83,   K84,   K85,   K86,   K87    }, \
 | 
					 | 
				
			||||||
    { K90,   KC_NO, KC_NO, K93,   KC_NO, K95,   KC_NO, KC_NO  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#define LAYOUT_split_backspace( \
 | 
					 | 
				
			||||||
  K10, K00, K01, K02, K03, K04, K05, K06,   K56, K55, K54, K53, K52, K51, K50, K57, \
 | 
					 | 
				
			||||||
  K20, K11, K12, K13, K14, K15, K16,        K66, K65, K64, K63, K62, K61, K60, K67, \
 | 
					 | 
				
			||||||
  K30, K21, K22, K23, K24, K25, K26,        K76, K75, K74, K73, K72, K71,      K77, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,        K86, K85, K84, K83, K82, K81,      K87, \
 | 
					 | 
				
			||||||
       K41,      K43,      K45, K46,        K95,           K93,                K90  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K41,   KC_NO, K43,   KC_NO, K45,   K46,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K50,   K51,   K52,   K53,   K54,   K55,   K56,   K57    }, \
 | 
					 | 
				
			||||||
    { K60,   K61,   K62,   K63,   K64,   K65,   K66,   K67    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K71,   K72,   K73,   K74,   K75,   K76,   K77    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K81,   K82,   K83,   K84,   K85,   K86,   K87    }, \
 | 
					 | 
				
			||||||
    { K90,   KC_NO, KC_NO, K93,   KC_NO, K95,   KC_NO, KC_NO  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
  K10, K00, K01, K02, K03, K04, K05, K06,   K56, K55, K54, K53, K52, K51,      K57, \
 | 
					 | 
				
			||||||
  K20, K11, K12, K13, K14, K15, K16,        K66, K65, K64, K63, K62, K61, K60, K67, \
 | 
					 | 
				
			||||||
  K30, K21, K22, K23, K24, K25, K26,        K76, K75, K74, K73, K72, K71,      K77, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,        K86, K85, K84, K83, K82, K81, K80, K87, \
 | 
					 | 
				
			||||||
       K41,      K43,      K45, K46,        K95,           K93,                K90  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K41,   KC_NO, K43,   KC_NO, K45,   K46,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K51,   K52,   K53,   K54,   K55,   K56,   K57    }, \
 | 
					 | 
				
			||||||
    { K60,   K61,   K62,   K63,   K64,   K65,   K66,   K67    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K71,   K72,   K73,   K74,   K75,   K76,   K77    }, \
 | 
					 | 
				
			||||||
    { K80,   K81,   K82,   K83,   K84,   K85,   K86,   K87    }, \
 | 
					 | 
				
			||||||
    { K90,   KC_NO, KC_NO, K93,   KC_NO, K95,   KC_NO, KC_NO  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
  K10, K00, K01, K02, K03, K04, K05, K06,   K56, K55, K54, K53, K52, K51, K50, K57, \
 | 
					 | 
				
			||||||
  K20, K11, K12, K13, K14, K15, K16,        K66, K65, K64, K63, K62, K61, K60, K67, \
 | 
					 | 
				
			||||||
  K30, K21, K22, K23, K24, K25, K26,        K76, K75, K74, K73, K72, K71,      K77, \
 | 
					 | 
				
			||||||
       K31, K32, K33, K34, K35, K36,        K86, K85, K84, K83, K82, K81, K80, K87, \
 | 
					 | 
				
			||||||
       K41,      K43,      K45, K46,        K95,           K93,                K90  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { KC_NO, K41,   KC_NO, K43,   KC_NO, K45,   K46,   KC_NO  }, \
 | 
					 | 
				
			||||||
    { K50,   K51,   K52,   K53,   K54,   K55,   K56,   K57    }, \
 | 
					 | 
				
			||||||
    { K60,   K61,   K62,   K63,   K64,   K65,   K66,   K67    }, \
 | 
					 | 
				
			||||||
    { KC_NO, K71,   K72,   K73,   K74,   K75,   K76,   K77    }, \
 | 
					 | 
				
			||||||
    { K80,   K81,   K82,   K83,   K84,   K85,   K86,   K87    }, \
 | 
					 | 
				
			||||||
    { K90,   KC_NO, KC_NO, K93,   KC_NO, K95,   KC_NO, KC_NO  }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_split_right_shift LAYOUT_alice
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -18,75 +18,82 @@
 | 
				
			|||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice": {
 | 
					        "LAYOUT_alice": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"label":"K1E", "x":0, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
                {"label":"K00", "x":1.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K01", "x":2.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K02", "x":3.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K03", "x":4.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K04", "x":5.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K05", "x":6.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K06", "x":7.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K07", "x":10.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K08", "x":11.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K09", "x":12.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0A", "x":13.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0B", "x":14.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0C", "x":15.5, "y":0},
 | 
					 | 
				
			||||||
                {"label":"K0D", "x":16.5, "y":0, "w":2},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"K2E", "x":0, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.5, "y": 0},
 | 
				
			||||||
                {"label":"K10", "x":1.5, "y":1, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.5, "y": 0},
 | 
				
			||||||
                {"label":"K11", "x":3, "y":1},
 | 
					                {"matrix": [0, 3], "x": 3.5, "y": 0},
 | 
				
			||||||
                {"label":"K12", "x":4, "y":1},
 | 
					                {"matrix": [0, 4], "x": 4.5, "y": 0},
 | 
				
			||||||
                {"label":"K13", "x":5, "y":1},
 | 
					                {"matrix": [0, 5], "x": 5.5, "y": 0},
 | 
				
			||||||
                {"label":"K14", "x":6, "y":1},
 | 
					                {"matrix": [0, 6], "x": 6.5, "y": 0},
 | 
				
			||||||
                {"label":"K15", "x":7, "y":1},
 | 
					                {"matrix": [0, 7], "x": 7.5, "y": 0},
 | 
				
			||||||
                {"label":"K16", "x":10, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K17", "x":11, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K18", "x":12, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K19", "x":13, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1A", "x":14, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1B", "x":15, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1C", "x":16, "y":1},
 | 
					 | 
				
			||||||
                {"label":"K1D", "x":17, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"K3E", "x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 10.5, "y": 0},
 | 
				
			||||||
                {"label":"K20", "x":1.5, "y":2, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 11.5, "y": 0},
 | 
				
			||||||
                {"label":"K21", "x":3.25, "y":2},
 | 
					                {"matrix": [0, 10], "x": 12.5, "y": 0},
 | 
				
			||||||
                {"label":"K22", "x":4.25, "y":2},
 | 
					                {"matrix": [0, 11], "x": 13.5, "y": 0},
 | 
				
			||||||
                {"label":"K23", "x":5.25, "y":2},
 | 
					                {"matrix": [0, 13], "x": 14.5, "y": 0},
 | 
				
			||||||
                {"label":"K24", "x":6.25, "y":2},
 | 
					                {"matrix": [0, 14], "x": 15.5, "y": 0},
 | 
				
			||||||
                {"label":"K25", "x":7.25, "y":2},
 | 
					                {"matrix": [0, 15], "x": 16.5, "y": 0, "w": 2},
 | 
				
			||||||
                {"label":"K26", "x":10.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K27", "x":11.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K28", "x":12.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K29", "x":13.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2A", "x":14.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2B", "x":15.25, "y":2},
 | 
					 | 
				
			||||||
                {"label":"K2D", "x":16.25, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"K30", "x":1.5, "y":3, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0, "y": 1},
 | 
				
			||||||
                {"label":"K32", "x":3.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K33", "x":4.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K34", "x":5.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K35", "x":6.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K36", "x":7.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K37", "x":9.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K38", "x":10.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K39", "x":11.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3A", "x":12.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3B", "x":13.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3D", "x":14.75, "y":3},
 | 
					 | 
				
			||||||
                {"label":"K3C", "x":15.75, "y":3, "w":1.75},
 | 
					 | 
				
			||||||
                {"label":"K4D", "x":17.5, "y":3},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"label":"K40", "x":1.5, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.5, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"label":"K42", "x":4.5, "y":4, "w":1.25},
 | 
					                {"matrix": [1, 2], "x": 3, "y": 1},
 | 
				
			||||||
                {"label":"K44", "x":5.75, "y":4, "w":2.25},
 | 
					                {"matrix": [1, 3], "x": 4, "y": 1},
 | 
				
			||||||
                {"label":"K46", "x":8, "y":4, "w":1.25},
 | 
					                {"matrix": [1, 4], "x": 5, "y": 1},
 | 
				
			||||||
                {"label":"K48", "x":9.75, "y":4, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 6, "y": 1},
 | 
				
			||||||
                {"label":"K4A", "x":12.5, "y":4, "w":1.25},
 | 
					                {"matrix": [1, 6], "x": 7, "y": 1},
 | 
				
			||||||
                {"label":"K4E", "x":17, "y":4, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 15], "x": 17, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.5, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7.25, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 10.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 11.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 12.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 13.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 14.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 15.25, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 15], "x": 16.25, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.5, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.75, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 9.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 10.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 11.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 12.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 13.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 14.75, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 15.75, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 15], "x": 17.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.5, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 8, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 9], "x": 9.75, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 15], "x": 17, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,36 +0,0 @@
 | 
				
			|||||||
/* Copyright 2021 WestM
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define XXX KC_NO
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice( \
 | 
					 | 
				
			||||||
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b,      k0d, k0e, k0f,\
 | 
					 | 
				
			||||||
    k10, k11, k12, k13, k14, k15, k16,      k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, \
 | 
					 | 
				
			||||||
    k20, k21, k22, k23, k24, k25, k26,      k28, k29, k2a, k2b, k2c, k2d,      k2f, \
 | 
					 | 
				
			||||||
         k31, k32, k33, k34, k35, k36,      k38, k39, k3a, k3b, k3c, k3d, k3e, k3f, \
 | 
					 | 
				
			||||||
         k41,      k43,      k45, k46,           k49,      k4b,                k4f  \
 | 
					 | 
				
			||||||
) \
 | 
					 | 
				
			||||||
{ \
 | 
					 | 
				
			||||||
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, XXX, k0d, k0e, k0f },\
 | 
					 | 
				
			||||||
    { k10, k11, k12, k13, k14, k15, k16, XXX, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f }, \
 | 
					 | 
				
			||||||
    { k20, k21, k22, k23, k24, k25, k26, XXX, k28, k29, k2a, k2b, k2c, k2d, XXX, k2f }, \
 | 
					 | 
				
			||||||
    { XXX, k31, k32, k33, k34, k35, k36, XXX, k38, k39, k3a, k3b, k3c, k3d, k3e, k3f }, \
 | 
					 | 
				
			||||||
    { XXX, k41, XXX, k43, XXX, k45, k46, XXX, XXX, k49, XXX, k4b, XXX, XXX, XXX, k4f },  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -16,79 +16,89 @@
 | 
				
			|||||||
    "processor": "atmega32u4",
 | 
					    "processor": "atmega32u4",
 | 
				
			||||||
    "bootloader": "atmel-dfu",
 | 
					    "bootloader": "atmel-dfu",
 | 
				
			||||||
    "community_layouts": ["alice_split_bs"],
 | 
					    "community_layouts": ["alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"x":0, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":2.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":3.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":4.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":5.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":6.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":7.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":10.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":11.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":12.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":13.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":14.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":15.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":16.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":17.25, "y":0},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.25, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":1, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.25, "y": 0},
 | 
				
			||||||
                {"x":2.75, "y":1},
 | 
					                {"matrix": [0, 3], "x": 3.25, "y": 0},
 | 
				
			||||||
                {"x":3.75, "y":1},
 | 
					                {"matrix": [0, 4], "x": 4.25, "y": 0},
 | 
				
			||||||
                {"x":4.75, "y":1},
 | 
					                {"matrix": [0, 5], "x": 5.25, "y": 0},
 | 
				
			||||||
                {"x":5.75, "y":1},
 | 
					                {"matrix": [0, 6], "x": 6.25, "y": 0},
 | 
				
			||||||
                {"x":6.75, "y":1},
 | 
					                {"matrix": [0, 7], "x": 7.25, "y": 0},
 | 
				
			||||||
                {"x":9.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":10.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":11.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":12.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":13.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":14.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":15.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":16.75, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 10.25, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 11.25, "y": 0},
 | 
				
			||||||
                {"x":3, "y":2},
 | 
					                {"matrix": [0, 10], "x": 12.25, "y": 0},
 | 
				
			||||||
                {"x":4, "y":2},
 | 
					                {"matrix": [0, 11], "x": 13.25, "y": 0},
 | 
				
			||||||
                {"x":5, "y":2},
 | 
					                {"matrix": [0, 12], "x": 14.25, "y": 0},
 | 
				
			||||||
                {"x":6, "y":2},
 | 
					                {"matrix": [0, 13], "x": 15.25, "y": 0},
 | 
				
			||||||
                {"x":7, "y":2},
 | 
					                {"matrix": [0, 14], "x": 16.25, "y": 0},
 | 
				
			||||||
                {"x":10, "y":2},
 | 
					                {"matrix": [2, 14], "x": 17.25, "y": 0},
 | 
				
			||||||
                {"x":11, "y":2},
 | 
					 | 
				
			||||||
                {"x":12, "y":2},
 | 
					 | 
				
			||||||
                {"x":13, "y":2},
 | 
					 | 
				
			||||||
                {"x":14, "y":2},
 | 
					 | 
				
			||||||
                {"x":15, "y":2},
 | 
					 | 
				
			||||||
                {"x":16, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.25, "y":3, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0, "y": 1},
 | 
				
			||||||
                {"x":3.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":4.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":5.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":6.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":7.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":9.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":10.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":11.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":12.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":13.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":14.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":15.5, "y":3, "w":1.75},
 | 
					 | 
				
			||||||
                {"x":17.25, "y":3},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"x":4.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
                {"x":5.75, "y":4, "w":2},
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
                {"x":7.75, "y":4, "w":1.25},
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
                {"x":9.5, "y":4, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
                {"x":12.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
                {"x":16.75, "y":4, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,37 +0,0 @@
 | 
				
			|||||||
/* Copyright 2020 Harrison Chan (Xelus)
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define ____ KC_NO
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
  K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K214, \
 | 
					 | 
				
			||||||
  K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114,       \
 | 
					 | 
				
			||||||
  K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213,             \
 | 
					 | 
				
			||||||
        K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314,       \
 | 
					 | 
				
			||||||
        K401,       K403,       K405, K406,       K408,       K410,             K413              \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
 | 
					 | 
				
			||||||
  { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
 | 
					 | 
				
			||||||
  { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \
 | 
					 | 
				
			||||||
  { ____, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
 | 
					 | 
				
			||||||
  { ____, K401, ____, K403, ____, K405, K406, ____, K408, ____, K410, ____, ____, K413, ____ }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -19,79 +19,88 @@
 | 
				
			|||||||
    "processor": "STM32L422",
 | 
					    "processor": "STM32L422",
 | 
				
			||||||
    "bootloader": "stm32-dfu",
 | 
					    "bootloader": "stm32-dfu",
 | 
				
			||||||
    "community_layouts": ["alice_split_bs"],
 | 
					    "community_layouts": ["alice_split_bs"],
 | 
				
			||||||
 | 
					    "layout_aliases": {
 | 
				
			||||||
 | 
					        "LAYOUT_all": "LAYOUT_alice_split_bs"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"x":0, "y":0},
 | 
					                {"matrix": [0, 0], "x": 0, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":2.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":3.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":4.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":5.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":6.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":7.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":10.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":11.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":12.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":13.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":14.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":15.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":16.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":17.25, "y":0},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0, "y":1},
 | 
					                {"matrix": [0, 1], "x": 1.25, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":1, "w":1.5},
 | 
					                {"matrix": [0, 2], "x": 2.25, "y": 0},
 | 
				
			||||||
                {"x":2.75, "y":1},
 | 
					                {"matrix": [0, 3], "x": 3.25, "y": 0},
 | 
				
			||||||
                {"x":3.75, "y":1},
 | 
					                {"matrix": [0, 4], "x": 4.25, "y": 0},
 | 
				
			||||||
                {"x":4.75, "y":1},
 | 
					                {"matrix": [0, 5], "x": 5.25, "y": 0},
 | 
				
			||||||
                {"x":5.75, "y":1},
 | 
					                {"matrix": [0, 6], "x": 6.25, "y": 0},
 | 
				
			||||||
                {"x":6.75, "y":1},
 | 
					                {"matrix": [0, 7], "x": 7.25, "y": 0},
 | 
				
			||||||
                {"x":9.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":10.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":11.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":12.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":13.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":14.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":15.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":16.75, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0, "y":2},
 | 
					                {"matrix": [0, 8], "x": 10.25, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [0, 9], "x": 11.25, "y": 0},
 | 
				
			||||||
                {"x":3, "y":2},
 | 
					                {"matrix": [0, 10], "x": 12.25, "y": 0},
 | 
				
			||||||
                {"x":4, "y":2},
 | 
					                {"matrix": [0, 11], "x": 13.25, "y": 0},
 | 
				
			||||||
                {"x":5, "y":2},
 | 
					                {"matrix": [0, 12], "x": 14.25, "y": 0},
 | 
				
			||||||
                {"x":6, "y":2},
 | 
					                {"matrix": [0, 13], "x": 15.25, "y": 0},
 | 
				
			||||||
                {"x":7, "y":2},
 | 
					                {"matrix": [0, 14], "x": 16.25, "y": 0},
 | 
				
			||||||
                {"x":10, "y":2},
 | 
					                {"matrix": [2, 14], "x": 17.25, "y": 0},
 | 
				
			||||||
                {"x":11, "y":2},
 | 
					 | 
				
			||||||
                {"x":12, "y":2},
 | 
					 | 
				
			||||||
                {"x":13, "y":2},
 | 
					 | 
				
			||||||
                {"x":14, "y":2},
 | 
					 | 
				
			||||||
                {"x":15, "y":2},
 | 
					 | 
				
			||||||
                {"x":16, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.25, "y":3, "w":2.25},
 | 
					                {"matrix": [1, 0], "x": 0, "y": 1},
 | 
				
			||||||
                {"x":3.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":4.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":5.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":6.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":7.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":9.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":10.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":11.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":12.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":13.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":14.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":15.5, "y":3, "w":1.75},
 | 
					 | 
				
			||||||
                {"x":17.25, "y":3},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"x":4.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
                {"x":5.75, "y":4, "w":2},
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
                {"x":7.75, "y":4, "w":1.25},
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
                {"x":9.5, "y":4, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
                {"x":12.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
                {"x":16.75, "y":4, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 13], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 13], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -14,7 +14,7 @@
 | 
				
			|||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "rev2.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef RGB_MATRIX_ENABLE
 | 
					#ifdef RGB_MATRIX_ENABLE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,37 +0,0 @@
 | 
				
			|||||||
/* Copyright 2021 Harrison Chan (Xelus)
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 | 
				
			||||||
 * (at your option) any later version.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * This program is distributed in the hope that it will be useful,
 | 
					 | 
				
			||||||
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define ____ KC_NO
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_alice_split_bs( \
 | 
					 | 
				
			||||||
  K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K214, \
 | 
					 | 
				
			||||||
  K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114,       \
 | 
					 | 
				
			||||||
  K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213,             \
 | 
					 | 
				
			||||||
        K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314,       \
 | 
					 | 
				
			||||||
        K401,       K403,       K405, K406,       K408,       K410,             K413              \
 | 
					 | 
				
			||||||
) { \
 | 
					 | 
				
			||||||
  { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
 | 
					 | 
				
			||||||
  { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
 | 
					 | 
				
			||||||
  { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \
 | 
					 | 
				
			||||||
  { ____, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
 | 
					 | 
				
			||||||
  { ____, K401, ____, K403, ____, K405, K406, ____, K408, ____, K410, ____, ____, K413, ____ }  \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define LAYOUT_all LAYOUT_alice_split_bs
 | 
					 | 
				
			||||||
@ -17,76 +17,83 @@
 | 
				
			|||||||
    "layouts": {
 | 
					    "layouts": {
 | 
				
			||||||
        "LAYOUT_alice_split_bs": {
 | 
					        "LAYOUT_alice_split_bs": {
 | 
				
			||||||
            "layout": [
 | 
					            "layout": [
 | 
				
			||||||
                {"x":0, "y":0},
 | 
					                {"matrix": [1, 0], "x": 0, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":2.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":3.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":4.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":5.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":6.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":7.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":10.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":11.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":12.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":13.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":14.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":15.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":16.25, "y":0},
 | 
					 | 
				
			||||||
                {"x":17.25, "y":0},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0, "y":1},
 | 
					                {"matrix": [0, 0], "x": 1.25, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":1, "w":1.5},
 | 
					                {"matrix": [0, 1], "x": 2.25, "y": 0},
 | 
				
			||||||
                {"x":2.75, "y":1},
 | 
					                {"matrix": [0, 2], "x": 3.25, "y": 0},
 | 
				
			||||||
                {"x":3.75, "y":1},
 | 
					                {"matrix": [0, 3], "x": 4.25, "y": 0},
 | 
				
			||||||
                {"x":4.75, "y":1},
 | 
					                {"matrix": [0, 4], "x": 5.25, "y": 0},
 | 
				
			||||||
                {"x":5.75, "y":1},
 | 
					                {"matrix": [0, 5], "x": 6.25, "y": 0},
 | 
				
			||||||
                {"x":6.75, "y":1},
 | 
					                {"matrix": [0, 6], "x": 7.25, "y": 0},
 | 
				
			||||||
                {"x":9.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":10.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":11.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":12.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":13.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":14.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":15.75, "y":1},
 | 
					 | 
				
			||||||
                {"x":16.75, "y":1, "w":1.5},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":0, "y":2},
 | 
					                {"matrix": [0, 7], "x": 10.25, "y": 0},
 | 
				
			||||||
                {"x":1.25, "y":2, "w":1.75},
 | 
					                {"matrix": [0, 8], "x": 11.25, "y": 0},
 | 
				
			||||||
                {"x":3, "y":2},
 | 
					                {"matrix": [0, 9], "x": 12.25, "y": 0},
 | 
				
			||||||
                {"x":4, "y":2},
 | 
					                {"matrix": [0, 10], "x": 13.25, "y": 0},
 | 
				
			||||||
                {"x":5, "y":2},
 | 
					                {"matrix": [0, 11], "x": 14.25, "y": 0},
 | 
				
			||||||
                {"x":6, "y":2},
 | 
					                {"matrix": [0, 12], "x": 15.25, "y": 0},
 | 
				
			||||||
                {"x":7, "y":2},
 | 
					                {"matrix": [0, 13], "x": 16.25, "y": 0},
 | 
				
			||||||
                {"x":10, "y":2},
 | 
					                {"matrix": [0, 14], "x": 17.25, "y": 0},
 | 
				
			||||||
                {"x":11, "y":2},
 | 
					 | 
				
			||||||
                {"x":12, "y":2},
 | 
					 | 
				
			||||||
                {"x":13, "y":2},
 | 
					 | 
				
			||||||
                {"x":14, "y":2},
 | 
					 | 
				
			||||||
                {"x":15, "y":2},
 | 
					 | 
				
			||||||
                {"x":16, "y":2, "w":2.25},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.25, "y":3, "w":2.25},
 | 
					                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
				
			||||||
                {"x":3.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":4.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":5.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":6.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":7.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":9.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":10.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":11.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":12.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":13.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":14.5, "y":3},
 | 
					 | 
				
			||||||
                {"x":15.5, "y":3, "w":1.75},
 | 
					 | 
				
			||||||
                {"x":17.25, "y":3},
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                {"x":1.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
 | 
				
			||||||
                {"x":4.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 2], "x": 2.75, "y": 1},
 | 
				
			||||||
                {"x":5.75, "y":4, "w":2},
 | 
					                {"matrix": [1, 3], "x": 3.75, "y": 1},
 | 
				
			||||||
                {"x":7.75, "y":4, "w":1.25},
 | 
					                {"matrix": [1, 4], "x": 4.75, "y": 1},
 | 
				
			||||||
                {"x":9.5, "y":4, "w":2.75},
 | 
					                {"matrix": [1, 5], "x": 5.75, "y": 1},
 | 
				
			||||||
                {"x":12.25, "y":4, "w":1.5},
 | 
					                {"matrix": [1, 6], "x": 6.75, "y": 1},
 | 
				
			||||||
                {"x":16.75, "y":4, "w":1.5}
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [1, 7], "x": 9.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 8], "x": 10.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 9], "x": 11.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 10], "x": 12.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 11], "x": 13.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 12], "x": 14.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 13], "x": 15.75, "y": 1},
 | 
				
			||||||
 | 
					                {"matrix": [1, 14], "x": 16.75, "y": 1, "w": 1.5},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 0], "x": 0, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [2, 2], "x": 3, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 3], "x": 4, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 4], "x": 5, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 5], "x": 6, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 6], "x": 7, "y": 2},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [2, 7], "x": 10, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 8], "x": 11, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 9], "x": 12, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 10], "x": 13, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 11], "x": 14, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 12], "x": 15, "y": 2},
 | 
				
			||||||
 | 
					                {"matrix": [2, 14], "x": 16, "y": 2, "w": 2.25},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
 | 
				
			||||||
 | 
					                {"matrix": [3, 2], "x": 3.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 3], "x": 4.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 4], "x": 5.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 5], "x": 6.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 6], "x": 7.5, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [3, 7], "x": 9.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 8], "x": 10.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 9], "x": 11.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 10], "x": 12.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 11], "x": 13.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 12], "x": 14.5, "y": 3},
 | 
				
			||||||
 | 
					                {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 1.75},
 | 
				
			||||||
 | 
					                {"matrix": [3, 14], "x": 17.25, "y": 3},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2},
 | 
				
			||||||
 | 
					                {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25},
 | 
				
			||||||
 | 
					                {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75},
 | 
				
			||||||
 | 
					                {"matrix": [4, 10], "x": 12.25, "y": 4, "w": 1.5},
 | 
				
			||||||
 | 
					                {"matrix": [4, 14], "x": 16.75, "y": 4, "w": 1.5}
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user