1
0
Fork 0

Move ortho & numpad layouts to data driven (#20183)

Co-authored-by: Nick Brassel <nick@tzarc.org>
This commit is contained in:
Ryan 2023-03-29 15:54:34 +11:00 committed by GitHub
parent 06664e8a94
commit 4869b8061c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
589 changed files with 19002 additions and 25368 deletions

View file

@ -23,176 +23,188 @@
"layouts": {
"LAYOUT_ortho_all": {
"layout": [
{"label":"k001", "x":0, "y":0},
{"label":"k002", "x":1.5, "y":0},
{"label":"k011", "x":10.5, "y":0},
{"label":"k012", "x":11.5, "y":0},
{"label":"k013", "x":12.5, "y":0},
{"label":"k101", "x":0, "y":1.5},
{"label":"k102", "x":1.5, "y":1.5},
{"label":"k103", "x":2.5, "y":1.5},
{"label":"k104", "x":3.5, "y":1.5},
{"label":"k105", "x":4.5, "y":1.5},
{"label":"k106", "x":5.5, "y":1.5},
{"label":"k107", "x":6.5, "y":1.5},
{"label":"k108", "x":7.5, "y":1.5},
{"label":"k109", "x":8.5, "y":1.5},
{"label":"k110", "x":9.5, "y":1.5},
{"label":"k111", "x":10.5, "y":1.5},
{"label":"k112", "x":11.5, "y":1.5},
{"label":"k113", "x":12.5, "y":1.5},
{"label":"k201", "x":0, "y":2.5},
{"label":"k202", "x":1.5, "y":2.5},
{"label":"k203", "x":2.5, "y":2.5},
{"label":"k204", "x":3.5, "y":2.5},
{"label":"k205", "x":4.5, "y":2.5},
{"label":"k206", "x":5.5, "y":2.5},
{"label":"k207", "x":6.5, "y":2.5},
{"label":"k208", "x":7.5, "y":2.5},
{"label":"k209", "x":8.5, "y":2.5},
{"label":"k210", "x":9.5, "y":2.5},
{"label":"k211", "x":10.5, "y":2.5},
{"label":"k212", "x":11.5, "y":2.5},
{"label":"k213", "x":12.5, "y":2.5},
{"label":"k301", "x":0, "y":3.5},
{"label":"k302", "x":1.5, "y":3.5},
{"label":"k303", "x":2.5, "y":3.5},
{"label":"k304", "x":3.5, "y":3.5},
{"label":"k305", "x":4.5, "y":3.5},
{"label":"k306", "x":5.5, "y":3.5},
{"label":"k307", "x":6.5, "y":3.5},
{"label":"k308", "x":7.5, "y":3.5},
{"label":"k309", "x":8.5, "y":3.5},
{"label":"k310", "x":9.5, "y":3.5},
{"label":"k311", "x":10.5, "y":3.5},
{"label":"k312", "x":11.5, "y":3.5},
{"label":"k313", "x":12.5, "y":3.5},
{"label":"k401", "x":0, "y":4.5},
{"label":"k402", "x":1.5, "y":4.5},
{"label":"k403", "x":2.5, "y":4.5},
{"label":"k404", "x":3.5, "y":4.5},
{"label":"k405", "x":4.5, "y":4.5},
{"label":"k406", "x":5.5, "y":4.5},
{"label":"k407", "x":6.5, "y":4.5},
{"label":"k408", "x":7.5, "y":4.5},
{"label":"k409", "x":8.5, "y":4.5},
{"label":"k410", "x":9.5, "y":4.5},
{"label":"k411", "x":10.5, "y":4.5},
{"label":"k412", "x":11.5, "y":4.5},
{"label":"k413", "x":12.5, "y":4.5}
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1.5, "y": 0},
{"matrix": [0, 10], "x": 10.5, "y": 0},
{"matrix": [0, 11], "x": 11.5, "y": 0},
{"matrix": [0, 12], "x": 12.5, "y": 0},
{"matrix": [1, 0], "x": 0, "y": 1.5},
{"matrix": [1, 1], "x": 1.5, "y": 1.5},
{"matrix": [1, 2], "x": 2.5, "y": 1.5},
{"matrix": [1, 3], "x": 3.5, "y": 1.5},
{"matrix": [1, 4], "x": 4.5, "y": 1.5},
{"matrix": [1, 5], "x": 5.5, "y": 1.5},
{"matrix": [1, 6], "x": 6.5, "y": 1.5},
{"matrix": [1, 7], "x": 7.5, "y": 1.5},
{"matrix": [1, 8], "x": 8.5, "y": 1.5},
{"matrix": [1, 9], "x": 9.5, "y": 1.5},
{"matrix": [1, 10], "x": 10.5, "y": 1.5},
{"matrix": [1, 11], "x": 11.5, "y": 1.5},
{"matrix": [1, 12], "x": 12.5, "y": 1.5},
{"matrix": [2, 0], "x": 0, "y": 2.5},
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
{"matrix": [3, 0], "x": 0, "y": 3.5},
{"matrix": [3, 1], "x": 1.5, "y": 3.5},
{"matrix": [3, 2], "x": 2.5, "y": 3.5},
{"matrix": [3, 3], "x": 3.5, "y": 3.5},
{"matrix": [3, 4], "x": 4.5, "y": 3.5},
{"matrix": [3, 5], "x": 5.5, "y": 3.5},
{"matrix": [3, 6], "x": 6.5, "y": 3.5},
{"matrix": [3, 7], "x": 7.5, "y": 3.5},
{"matrix": [3, 8], "x": 8.5, "y": 3.5},
{"matrix": [3, 9], "x": 9.5, "y": 3.5},
{"matrix": [3, 10], "x": 10.5, "y": 3.5},
{"matrix": [3, 11], "x": 11.5, "y": 3.5},
{"matrix": [3, 12], "x": 12.5, "y": 3.5},
{"matrix": [4, 0], "x": 0, "y": 4.5},
{"matrix": [4, 1], "x": 1.5, "y": 4.5},
{"matrix": [4, 2], "x": 2.5, "y": 4.5},
{"matrix": [4, 3], "x": 3.5, "y": 4.5},
{"matrix": [4, 4], "x": 4.5, "y": 4.5},
{"matrix": [4, 5], "x": 5.5, "y": 4.5},
{"matrix": [4, 6], "x": 6.5, "y": 4.5},
{"matrix": [4, 7], "x": 7.5, "y": 4.5},
{"matrix": [4, 8], "x": 8.5, "y": 4.5},
{"matrix": [4, 9], "x": 9.5, "y": 4.5},
{"matrix": [4, 10], "x": 10.5, "y": 4.5},
{"matrix": [4, 11], "x": 11.5, "y": 4.5},
{"matrix": [4, 12], "x": 12.5, "y": 4.5}
]
},
"LAYOUT_ortho_2x2u": {
"layout": [
{"label":"k001", "x":0, "y":0},
{"label":"k002", "x":1.5, "y":0},
{"label":"k011", "x":10.5, "y":0},
{"label":"k012", "x":11.5, "y":0},
{"label":"k013", "x":12.5, "y":0},
{"label":"k101", "x":0, "y":1.5},
{"label":"k102", "x":1.5, "y":1.5},
{"label":"k103", "x":2.5, "y":1.5},
{"label":"k104", "x":3.5, "y":1.5},
{"label":"k105", "x":4.5, "y":1.5},
{"label":"k106", "x":5.5, "y":1.5},
{"label":"k107", "x":6.5, "y":1.5},
{"label":"k108", "x":7.5, "y":1.5},
{"label":"k109", "x":8.5, "y":1.5},
{"label":"k110", "x":9.5, "y":1.5},
{"label":"k111", "x":10.5, "y":1.5},
{"label":"k112", "x":11.5, "y":1.5},
{"label":"k113", "x":12.5, "y":1.5},
{"label":"k201", "x":0, "y":2.5},
{"label":"k202", "x":1.5, "y":2.5},
{"label":"k203", "x":2.5, "y":2.5},
{"label":"k204", "x":3.5, "y":2.5},
{"label":"k205", "x":4.5, "y":2.5},
{"label":"k206", "x":5.5, "y":2.5},
{"label":"k207", "x":6.5, "y":2.5},
{"label":"k208", "x":7.5, "y":2.5},
{"label":"k209", "x":8.5, "y":2.5},
{"label":"k210", "x":9.5, "y":2.5},
{"label":"k211", "x":10.5, "y":2.5},
{"label":"k212", "x":11.5, "y":2.5},
{"label":"k213", "x":12.5, "y":2.5},
{"label":"k301", "x":0, "y":3.5},
{"label":"k302", "x":1.5, "y":3.5},
{"label":"k303", "x":2.5, "y":3.5},
{"label":"k304", "x":3.5, "y":3.5},
{"label":"k305", "x":4.5, "y":3.5},
{"label":"k306", "x":5.5, "y":3.5},
{"label":"k307", "x":6.5, "y":3.5},
{"label":"k308", "x":7.5, "y":3.5},
{"label":"k309", "x":8.5, "y":3.5},
{"label":"k310", "x":9.5, "y":3.5},
{"label":"k311", "x":10.5, "y":3.5},
{"label":"k312", "x":11.5, "y":3.5},
{"label":"k313", "x":12.5, "y":3.5},
{"label":"k401", "x":0, "y":4.5},
{"label":"k402", "x":1.5, "y":4.5},
{"label":"k403", "x":2.5, "y":4.5},
{"label":"k404", "x":3.5, "y":4.5},
{"label":"k405", "x":4.5, "y":4.5},
{"label":"k406", "x":5.5, "y":4.5, "w":2},
{"label":"k409", "x":7.5, "y":4.5, "w":2},
{"label":"k410", "x":9.5, "y":4.5},
{"label":"k411", "x":10.5, "y":4.5},
{"label":"k412", "x":11.5, "y":4.5},
{"label":"k413", "x":12.5, "y":4.5}
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1.5, "y": 0},
{"matrix": [0, 10], "x": 10.5, "y": 0},
{"matrix": [0, 11], "x": 11.5, "y": 0},
{"matrix": [0, 12], "x": 12.5, "y": 0},
{"matrix": [1, 0], "x": 0, "y": 1.5},
{"matrix": [1, 1], "x": 1.5, "y": 1.5},
{"matrix": [1, 2], "x": 2.5, "y": 1.5},
{"matrix": [1, 3], "x": 3.5, "y": 1.5},
{"matrix": [1, 4], "x": 4.5, "y": 1.5},
{"matrix": [1, 5], "x": 5.5, "y": 1.5},
{"matrix": [1, 6], "x": 6.5, "y": 1.5},
{"matrix": [1, 7], "x": 7.5, "y": 1.5},
{"matrix": [1, 8], "x": 8.5, "y": 1.5},
{"matrix": [1, 9], "x": 9.5, "y": 1.5},
{"matrix": [1, 10], "x": 10.5, "y": 1.5},
{"matrix": [1, 11], "x": 11.5, "y": 1.5},
{"matrix": [1, 12], "x": 12.5, "y": 1.5},
{"matrix": [2, 0], "x": 0, "y": 2.5},
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
{"matrix": [3, 0], "x": 0, "y": 3.5},
{"matrix": [3, 1], "x": 1.5, "y": 3.5},
{"matrix": [3, 2], "x": 2.5, "y": 3.5},
{"matrix": [3, 3], "x": 3.5, "y": 3.5},
{"matrix": [3, 4], "x": 4.5, "y": 3.5},
{"matrix": [3, 5], "x": 5.5, "y": 3.5},
{"matrix": [3, 6], "x": 6.5, "y": 3.5},
{"matrix": [3, 7], "x": 7.5, "y": 3.5},
{"matrix": [3, 8], "x": 8.5, "y": 3.5},
{"matrix": [3, 9], "x": 9.5, "y": 3.5},
{"matrix": [3, 10], "x": 10.5, "y": 3.5},
{"matrix": [3, 11], "x": 11.5, "y": 3.5},
{"matrix": [3, 12], "x": 12.5, "y": 3.5},
{"matrix": [4, 0], "x": 0, "y": 4.5},
{"matrix": [4, 1], "x": 1.5, "y": 4.5},
{"matrix": [4, 2], "x": 2.5, "y": 4.5},
{"matrix": [4, 3], "x": 3.5, "y": 4.5},
{"matrix": [4, 4], "x": 4.5, "y": 4.5},
{"matrix": [4, 5], "x": 5.5, "y": 4.5, "w": 2},
{"matrix": [4, 8], "x": 7.5, "y": 4.5, "w": 2},
{"matrix": [4, 9], "x": 9.5, "y": 4.5},
{"matrix": [4, 10], "x": 10.5, "y": 4.5},
{"matrix": [4, 11], "x": 11.5, "y": 4.5},
{"matrix": [4, 12], "x": 12.5, "y": 4.5}
]
},
"LAYOUT_ortho_big_boy": {
"layout": [
{"label":"k001", "x":0, "y":0},
{"label":"k002", "x":1.5, "y":0},
{"label":"k011", "x":10.5, "y":0},
{"label":"k012", "x":11.5, "y":0},
{"label":"k013", "x":12.5, "y":0},
{"label":"k101", "x":0, "y":1.5},
{"label":"k102", "x":1.5, "y":1.5},
{"label":"k103", "x":2.5, "y":1.5},
{"label":"k104", "x":3.5, "y":1.5},
{"label":"k105", "x":4.5, "y":1.5},
{"label":"k106", "x":5.5, "y":1.5},
{"label":"k107", "x":6.5, "y":1.5},
{"label":"k108", "x":7.5, "y":1.5},
{"label":"k109", "x":8.5, "y":1.5},
{"label":"k110", "x":9.5, "y":1.5},
{"label":"k111", "x":10.5, "y":1.5},
{"label":"k112", "x":11.5, "y":1.5},
{"label":"k113", "x":12.5, "y":1.5},
{"label":"k201", "x":0, "y":2.5},
{"label":"k202", "x":1.5, "y":2.5},
{"label":"k203", "x":2.5, "y":2.5},
{"label":"k204", "x":3.5, "y":2.5},
{"label":"k205", "x":4.5, "y":2.5},
{"label":"k206", "x":5.5, "y":2.5},
{"label":"k207", "x":6.5, "y":2.5},
{"label":"k208", "x":7.5, "y":2.5},
{"label":"k209", "x":8.5, "y":2.5},
{"label":"k210", "x":9.5, "y":2.5},
{"label":"k211", "x":10.5, "y":2.5},
{"label":"k212", "x":11.5, "y":2.5},
{"label":"k213", "x":12.5, "y":2.5},
{"label":"k301", "x":0, "y":3.5},
{"label":"k302", "x":1.5, "y":3.5},
{"label":"k303", "x":2.5, "y":3.5},
{"label":"k304", "x":3.5, "y":3.5},
{"label":"k305", "x":4.5, "y":3.5},
{"label":"k306", "x":5.5, "y":3.5},
{"label":"k307", "x":6.5, "y":3.5},
{"label":"k308", "x":7.5, "y":3.5},
{"label":"k309", "x":8.5, "y":3.5},
{"label":"k310", "x":9.5, "y":3.5},
{"label":"k311", "x":10.5, "y":3.5},
{"label":"k312", "x":11.5, "y":3.5},
{"label":"k313", "x":12.5, "y":3.5},
{"label":"k401", "x":0, "y":4.5},
{"label":"k402", "x":1.5, "y":4.5},
{"label":"k403", "x":2.5, "y":4.5, "w":1.5},
{"label":"k404", "x":4, "y":4.5, "w":7},
{"label":"k405", "x":11, "y":4.5, "w":1.5},
{"label":"k413", "x":12.5, "y":4.5}
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1.5, "y": 0},
{"matrix": [0, 10], "x": 10.5, "y": 0},
{"matrix": [0, 11], "x": 11.5, "y": 0},
{"matrix": [0, 12], "x": 12.5, "y": 0},
{"matrix": [1, 0], "x": 0, "y": 1.5},
{"matrix": [1, 1], "x": 1.5, "y": 1.5},
{"matrix": [1, 2], "x": 2.5, "y": 1.5},
{"matrix": [1, 3], "x": 3.5, "y": 1.5},
{"matrix": [1, 4], "x": 4.5, "y": 1.5},
{"matrix": [1, 5], "x": 5.5, "y": 1.5},
{"matrix": [1, 6], "x": 6.5, "y": 1.5},
{"matrix": [1, 7], "x": 7.5, "y": 1.5},
{"matrix": [1, 8], "x": 8.5, "y": 1.5},
{"matrix": [1, 9], "x": 9.5, "y": 1.5},
{"matrix": [1, 10], "x": 10.5, "y": 1.5},
{"matrix": [1, 11], "x": 11.5, "y": 1.5},
{"matrix": [1, 12], "x": 12.5, "y": 1.5},
{"matrix": [2, 0], "x": 0, "y": 2.5},
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
{"matrix": [3, 0], "x": 0, "y": 3.5},
{"matrix": [3, 1], "x": 1.5, "y": 3.5},
{"matrix": [3, 2], "x": 2.5, "y": 3.5},
{"matrix": [3, 3], "x": 3.5, "y": 3.5},
{"matrix": [3, 4], "x": 4.5, "y": 3.5},
{"matrix": [3, 5], "x": 5.5, "y": 3.5},
{"matrix": [3, 6], "x": 6.5, "y": 3.5},
{"matrix": [3, 7], "x": 7.5, "y": 3.5},
{"matrix": [3, 8], "x": 8.5, "y": 3.5},
{"matrix": [3, 9], "x": 9.5, "y": 3.5},
{"matrix": [3, 10], "x": 10.5, "y": 3.5},
{"matrix": [3, 11], "x": 11.5, "y": 3.5},
{"matrix": [3, 12], "x": 12.5, "y": 3.5},
{"matrix": [4, 0], "x": 0, "y": 4.5},
{"matrix": [4, 1], "x": 1.5, "y": 4.5},
{"matrix": [4, 2], "x": 2.5, "y": 4.5, "w": 1.5},
{"matrix": [4, 6], "x": 4, "y": 4.5, "w": 7},
{"matrix": [4, 11], "x": 11, "y": 4.5, "w": 1.5},
{"matrix": [4, 12], "x": 12.5, "y": 4.5}
]
}
}

View file

@ -1,67 +0,0 @@
/*
Copyright 2020 Garret Gartner
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 XXXX KC_NO
#define LAYOUT_ortho_all( \
k001, k002, k011, k012, k013, \
k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, \
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, \
k401, k402, k403, k404, k405, k406, k407, k408, k409, k410, k411, k412, k413 \
) \
{ \
{ k001, k002, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, k011, k012, k013 }, \
{ k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113 }, \
{ 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 }, \
{ k401, k402, k403, k404, k405, k406, k407, k408, k409, k410, k411, k412, k413 } \
}
#define LAYOUT_ortho_2x2u( \
k001, k002, k011, k012, k013, \
k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, \
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, \
k401, k402, k403, k404, k405, k406, k409, k410, k411, k412, k413 \
) \
{ \
{ k001, k002, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, k011, k012, k013 }, \
{ k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113 }, \
{ 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 }, \
{ k401, k402, k403, k404, k405, k406, XXXX, XXXX, k409, k410, k411, k412, k413 } \
}
#define LAYOUT_ortho_big_boy( \
k001, k002, k011, k012, k013, \
k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, \
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, \
k401, k402, k403, k407, k412, k413 \
) \
{ \
{ k001, k002, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, k011, k012, k013 }, \
{ k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113 }, \
{ 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 }, \
{ k401, k402, k403, XXXX, XXXX, XXXX, k407, XXXX, XXXX, XXXX, XXXX, k412, k413 } \
}