-
-
Notifications
You must be signed in to change notification settings - Fork 39.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Create keymap.c * Create keymap.c * Create rules.mk * Add files via upload * Create keymap.c * Create keymap.c * Create rules.mk * Add files via upload * Update keymap.c * Update keymap.c * Update keyboards/keyten/diablo/keymaps/default/keymap.c Co-authored-by: jack <0x6a73@protonmail.com> * Delete keyboards/keyten/kt60hs_t directory * Update keyboards/keyten/diablo/readme.md Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com> * Update keyboards/keyten/diablo/readme.md Co-authored-by: Ryan <fauxpark@gmail.com> * Update info.json * Update info.json * Update keymap.c * Update keymap.c * Update keyboards/keyten/diablo/info.json Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com> * Update keyboards/keyten/diablo/info.json Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com> --------- Co-authored-by: jack <0x6a73@protonmail.com> Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
- Loading branch information
1 parent
7ea022b
commit 54200b7
Showing
6 changed files
with
300 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,226 @@ | ||
{ | ||
"manufacturer": "keyten", | ||
"keyboard_name": "Diablo", | ||
"maintainer": "key10iq", | ||
"bootloader": "atmel-dfu", | ||
"diode_direction": "COL2ROW", | ||
"features": { | ||
"bootmagic": true, | ||
"command": false, | ||
"console": false, | ||
"extrakey": true, | ||
"mousekey": true, | ||
"nkro": true | ||
}, | ||
"matrix_pins": { | ||
"cols": ["B7", "F0", "F1", "F4", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D5", "D3", "D2"], | ||
"rows": ["D4", "D1", "F7", "F6", "F5"] | ||
}, | ||
"processor": "atmega32u4", | ||
"usb": { | ||
"device_version": "0.0.1", | ||
"pid": "0x6003", | ||
"vid": "0xEB69" | ||
}, | ||
"community_layouts": [ | ||
"60_ansi_wkl_split_bs_rshift", | ||
"60_hhkb", | ||
"60_tsangan_hhkb" | ||
], | ||
"layouts": { | ||
"LAYOUT_60_tsangan_hhkb": { | ||
"layout": [ | ||
{"matrix": [0, 0], "x": 0, "y": 0}, | ||
{"matrix": [0, 1], "x": 1, "y": 0}, | ||
{"matrix": [0, 2], "x": 2, "y": 0}, | ||
{"matrix": [0, 3], "x": 3, "y": 0}, | ||
{"matrix": [0, 4], "x": 4, "y": 0}, | ||
{"matrix": [0, 5], "x": 5, "y": 0}, | ||
{"matrix": [0, 6], "x": 6, "y": 0}, | ||
{"matrix": [0, 7], "x": 7, "y": 0}, | ||
{"matrix": [0, 8], "x": 8, "y": 0}, | ||
{"matrix": [0, 9], "x": 9, "y": 0}, | ||
{"matrix": [0, 10], "x": 10, "y": 0}, | ||
{"matrix": [0, 11], "x": 11, "y": 0}, | ||
{"matrix": [0, 12], "x": 12, "y": 0}, | ||
{"matrix": [0, 13], "x": 13, "y": 0}, | ||
{"matrix": [2, 13], "x": 14, "y": 0}, | ||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, | ||
{"matrix": [1, 1], "x": 1.5, "y": 1}, | ||
{"matrix": [1, 2], "x": 2.5, "y": 1}, | ||
{"matrix": [1, 3], "x": 3.5, "y": 1}, | ||
{"matrix": [1, 4], "x": 4.5, "y": 1}, | ||
{"matrix": [1, 5], "x": 5.5, "y": 1}, | ||
{"matrix": [1, 6], "x": 6.5, "y": 1}, | ||
{"matrix": [1, 7], "x": 7.5, "y": 1}, | ||
{"matrix": [1, 8], "x": 8.5, "y": 1}, | ||
{"matrix": [1, 9], "x": 9.5, "y": 1}, | ||
{"matrix": [1, 10], "x": 10.5, "y": 1}, | ||
{"matrix": [1, 11], "x": 11.5, "y": 1}, | ||
{"matrix": [1, 12], "x": 12.5, "y": 1}, | ||
{"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, | ||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, | ||
{"matrix": [2, 1], "x": 1.75, "y": 2}, | ||
{"matrix": [2, 2], "x": 2.75, "y": 2}, | ||
{"matrix": [2, 3], "x": 3.75, "y": 2}, | ||
{"matrix": [2, 4], "x": 4.75, "y": 2}, | ||
{"matrix": [2, 5], "x": 5.75, "y": 2}, | ||
{"matrix": [2, 6], "x": 6.75, "y": 2}, | ||
{"matrix": [2, 7], "x": 7.75, "y": 2}, | ||
{"matrix": [2, 8], "x": 8.75, "y": 2}, | ||
{"matrix": [2, 9], "x": 9.75, "y": 2}, | ||
{"matrix": [2, 10], "x": 10.75, "y": 2}, | ||
{"matrix": [2, 11], "x": 11.75, "y": 2}, | ||
{"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, | ||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, | ||
{"matrix": [3, 1], "x": 2.25, "y": 3}, | ||
{"matrix": [3, 2], "x": 3.25, "y": 3}, | ||
{"matrix": [3, 3], "x": 4.25, "y": 3}, | ||
{"matrix": [3, 4], "x": 5.25, "y": 3}, | ||
{"matrix": [3, 5], "x": 6.25, "y": 3}, | ||
{"matrix": [3, 6], "x": 7.25, "y": 3}, | ||
{"matrix": [3, 7], "x": 8.25, "y": 3}, | ||
{"matrix": [3, 8], "x": 9.25, "y": 3}, | ||
{"matrix": [3, 9], "x": 10.25, "y": 3}, | ||
{"matrix": [3, 10], "x": 11.25, "y": 3}, | ||
{"matrix": [4, 12], "x": 12.25, "y": 3, "w": 1.75}, | ||
{"matrix": [3, 13], "x": 14, "y": 3}, | ||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, | ||
{"matrix": [4, 1], "x": 1.5, "y": 4}, | ||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, | ||
{"matrix": [4, 6], "x": 4, "y": 4, "w": 7}, | ||
{"matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, | ||
{"matrix": [4, 11], "x": 12.5, "y": 4}, | ||
{"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} | ||
] | ||
}, | ||
"LAYOUT_60_ansi_wkl_split_bs_rshift": { | ||
"layout": [ | ||
{"matrix": [0, 0], "x": 0, "y": 0}, | ||
{"matrix": [0, 1], "x": 1, "y": 0}, | ||
{"matrix": [0, 2], "x": 2, "y": 0}, | ||
{"matrix": [0, 3], "x": 3, "y": 0}, | ||
{"matrix": [0, 4], "x": 4, "y": 0}, | ||
{"matrix": [0, 5], "x": 5, "y": 0}, | ||
{"matrix": [0, 6], "x": 6, "y": 0}, | ||
{"matrix": [0, 7], "x": 7, "y": 0}, | ||
{"matrix": [0, 8], "x": 8, "y": 0}, | ||
{"matrix": [0, 9], "x": 9, "y": 0}, | ||
{"matrix": [0, 10], "x": 10, "y": 0}, | ||
{"matrix": [0, 11], "x": 11, "y": 0}, | ||
{"matrix": [0, 12], "x": 12, "y": 0}, | ||
{"matrix": [0, 13], "x": 13, "y": 0}, | ||
{"matrix": [2, 13], "x": 14, "y": 0}, | ||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, | ||
{"matrix": [1, 1], "x": 1.5, "y": 1}, | ||
{"matrix": [1, 2], "x": 2.5, "y": 1}, | ||
{"matrix": [1, 3], "x": 3.5, "y": 1}, | ||
{"matrix": [1, 4], "x": 4.5, "y": 1}, | ||
{"matrix": [1, 5], "x": 5.5, "y": 1}, | ||
{"matrix": [1, 6], "x": 6.5, "y": 1}, | ||
{"matrix": [1, 7], "x": 7.5, "y": 1}, | ||
{"matrix": [1, 8], "x": 8.5, "y": 1}, | ||
{"matrix": [1, 9], "x": 9.5, "y": 1}, | ||
{"matrix": [1, 10], "x": 10.5, "y": 1}, | ||
{"matrix": [1, 11], "x": 11.5, "y": 1}, | ||
{"matrix": [1, 12], "x": 12.5, "y": 1}, | ||
{"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, | ||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, | ||
{"matrix": [2, 1], "x": 1.75, "y": 2}, | ||
{"matrix": [2, 2], "x": 2.75, "y": 2}, | ||
{"matrix": [2, 3], "x": 3.75, "y": 2}, | ||
{"matrix": [2, 4], "x": 4.75, "y": 2}, | ||
{"matrix": [2, 5], "x": 5.75, "y": 2}, | ||
{"matrix": [2, 6], "x": 6.75, "y": 2}, | ||
{"matrix": [2, 7], "x": 7.75, "y": 2}, | ||
{"matrix": [2, 8], "x": 8.75, "y": 2}, | ||
{"matrix": [2, 9], "x": 9.75, "y": 2}, | ||
{"matrix": [2, 10], "x": 10.75, "y": 2}, | ||
{"matrix": [2, 11], "x": 11.75, "y": 2}, | ||
{"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, | ||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, | ||
{"matrix": [3, 1], "x": 2.25, "y": 3}, | ||
{"matrix": [3, 2], "x": 3.25, "y": 3}, | ||
{"matrix": [3, 3], "x": 4.25, "y": 3}, | ||
{"matrix": [3, 4], "x": 5.25, "y": 3}, | ||
{"matrix": [3, 5], "x": 6.25, "y": 3}, | ||
{"matrix": [3, 6], "x": 7.25, "y": 3}, | ||
{"matrix": [3, 7], "x": 8.25, "y": 3}, | ||
{"matrix": [3, 8], "x": 9.25, "y": 3}, | ||
{"matrix": [3, 9], "x": 10.25, "y": 3}, | ||
{"matrix": [3, 10], "x": 11.25, "y": 3}, | ||
{"matrix": [4, 12], "x": 12.25, "y": 3, "w": 1.75}, | ||
{"matrix": [3, 13], "x": 14, "y": 3}, | ||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, | ||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, | ||
{"matrix": [4, 6], "x": 4, "y": 4, "w": 7}, | ||
{"matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, | ||
{"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} | ||
] | ||
}, | ||
"LAYOUT_60_hhkb": { | ||
"layout": [ | ||
{"matrix": [0, 0], "x": 0, "y": 0}, | ||
{"matrix": [0, 1], "x": 1, "y": 0}, | ||
{"matrix": [0, 2], "x": 2, "y": 0}, | ||
{"matrix": [0, 3], "x": 3, "y": 0}, | ||
{"matrix": [0, 4], "x": 4, "y": 0}, | ||
{"matrix": [0, 5], "x": 5, "y": 0}, | ||
{"matrix": [0, 6], "x": 6, "y": 0}, | ||
{"matrix": [0, 7], "x": 7, "y": 0}, | ||
{"matrix": [0, 8], "x": 8, "y": 0}, | ||
{"matrix": [0, 9], "x": 9, "y": 0}, | ||
{"matrix": [0, 10], "x": 10, "y": 0}, | ||
{"matrix": [0, 11], "x": 11, "y": 0}, | ||
{"matrix": [0, 12], "x": 12, "y": 0}, | ||
{"matrix": [0, 13], "x": 13, "y": 0}, | ||
{"matrix": [2, 13], "x": 14, "y": 0}, | ||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, | ||
{"matrix": [1, 1], "x": 1.5, "y": 1}, | ||
{"matrix": [1, 2], "x": 2.5, "y": 1}, | ||
{"matrix": [1, 3], "x": 3.5, "y": 1}, | ||
{"matrix": [1, 4], "x": 4.5, "y": 1}, | ||
{"matrix": [1, 5], "x": 5.5, "y": 1}, | ||
{"matrix": [1, 6], "x": 6.5, "y": 1}, | ||
{"matrix": [1, 7], "x": 7.5, "y": 1}, | ||
{"matrix": [1, 8], "x": 8.5, "y": 1}, | ||
{"matrix": [1, 9], "x": 9.5, "y": 1}, | ||
{"matrix": [1, 10], "x": 10.5, "y": 1}, | ||
{"matrix": [1, 11], "x": 11.5, "y": 1}, | ||
{"matrix": [1, 12], "x": 12.5, "y": 1}, | ||
{"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, | ||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, | ||
{"matrix": [2, 1], "x": 1.75, "y": 2}, | ||
{"matrix": [2, 2], "x": 2.75, "y": 2}, | ||
{"matrix": [2, 3], "x": 3.75, "y": 2}, | ||
{"matrix": [2, 4], "x": 4.75, "y": 2}, | ||
{"matrix": [2, 5], "x": 5.75, "y": 2}, | ||
{"matrix": [2, 6], "x": 6.75, "y": 2}, | ||
{"matrix": [2, 7], "x": 7.75, "y": 2}, | ||
{"matrix": [2, 8], "x": 8.75, "y": 2}, | ||
{"matrix": [2, 9], "x": 9.75, "y": 2}, | ||
{"matrix": [2, 10], "x": 10.75, "y": 2}, | ||
{"matrix": [2, 11], "x": 11.75, "y": 2}, | ||
{"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, | ||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, | ||
{"matrix": [3, 1], "x": 2.25, "y": 3}, | ||
{"matrix": [3, 2], "x": 3.25, "y": 3}, | ||
{"matrix": [3, 3], "x": 4.25, "y": 3}, | ||
{"matrix": [3, 4], "x": 5.25, "y": 3}, | ||
{"matrix": [3, 5], "x": 6.25, "y": 3}, | ||
{"matrix": [3, 6], "x": 7.25, "y": 3}, | ||
{"matrix": [3, 7], "x": 8.25, "y": 3}, | ||
{"matrix": [3, 8], "x": 9.25, "y": 3}, | ||
{"matrix": [3, 9], "x": 10.25, "y": 3}, | ||
{"matrix": [3, 10], "x": 11.25, "y": 3}, | ||
{"matrix": [4, 12], "x": 12.25, "y": 3, "w": 1.75}, | ||
{"matrix": [3, 13], "x": 14, "y": 3}, | ||
{"matrix": [4, 1], "x": 1.5, "y": 4}, | ||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, | ||
{"matrix": [4, 6], "x": 4, "y": 4, "w": 7}, | ||
{"matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, | ||
{"matrix": [4, 11], "x": 12.5, "y": 4} | ||
] | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
// Copyright 2023 QMK | ||
// SPDX-License-Identifier: GPL-2.0-or-later | ||
|
||
#include QMK_KEYBOARD_H | ||
|
||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
|
||
[0] = LAYOUT_60_tsangan_hhkb( | ||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC, | ||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, | ||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, | ||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), | ||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL | ||
), | ||
|
||
[1] = LAYOUT_60_tsangan_hhkb( | ||
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS | ||
) | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
// Copyright 2023 QMK | ||
// SPDX-License-Identifier: GPL-2.0-or-later | ||
|
||
#include QMK_KEYBOARD_H | ||
|
||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
|
||
[0] = LAYOUT_60_tsangan_hhkb( | ||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC, | ||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, | ||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, | ||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), | ||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL | ||
), | ||
|
||
[1] = LAYOUT_60_tsangan_hhkb( | ||
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS | ||
) | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
VIA_ENABLE = yes |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# keyten Diablo | ||
|
||
Diablo - 60% keyboard with Leaf-Spring PCB Sandwich mount | ||
|
||
![Diablo image](https://i.imgur.com/zxOPpNih.jpg) | ||
|
||
* Keyboard Maintainer: [keyten](https://github.com/key10iq) | ||
* Hardware Supported: keyten Diablo | ||
* Hardware Availability: private GB | ||
|
||
Make example for this keyboard (after setting up your build environment): | ||
|
||
make keyten/diablo:default | ||
|
||
Flashing example for this keyboard: | ||
|
||
make keyten/diablo:default:flash | ||
|
||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). | ||
|
||
## Bootloader | ||
|
||
Enter the bootloader in 3 ways: | ||
|
||
* Bootmagic reset: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard | ||
* Keycode in layout: Press the key mapped to `QK_BOOT` if it is available | ||
* Physical reset button: Press the button on the back of the PCB |
Empty file.