diff options
Diffstat (limited to 'keyboards/handwired')
-rw-r--r-- | keyboards/handwired/split89/info.json | 92 | ||||
-rw-r--r-- | keyboards/handwired/split89/keymaps/default/keymap.c | 30 | ||||
-rw-r--r-- | keyboards/handwired/split89/split89.c | 17 | ||||
-rw-r--r-- | keyboards/handwired/split89/split89.h | 50 |
4 files changed, 106 insertions, 83 deletions
diff --git a/keyboards/handwired/split89/info.json b/keyboards/handwired/split89/info.json index fda9b2c9f0..e4b98e458c 100644 --- a/keyboards/handwired/split89/info.json +++ b/keyboards/handwired/split89/info.json @@ -10,7 +10,97 @@ }, "layouts": { "LAYOUT": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":2, "y":0}, {"label":"F2", "x":3, "y":0}, {"label":"F3", "x":4, "y":0}, {"label":"F4", "x":5, "y":0}, {"label":"F5", "x":6, "y":0}, {"label":"F6", "x":10.25, "y":0}, {"label":"F7", "x":11.25, "y":0}, {"label":"F8", "x":12.25, "y":0}, {"label":"F9", "x":13.75, "y":0}, {"label":"F10", "x":14.75, "y":0}, {"label":"F11", "x":15.75, "y":0}, {"label":"F12", "x":16.75, "y":0}, {"label":"PrtSc", "x":18, "y":0}, {"label":"Scroll Lock", "x":19, "y":0}, {"label":"Pause", "x":20, "y":0}, {"label":"~", "x":0, "y":1.5}, {"label":"!", "x":1, "y":1.5}, {"label":"@", "x":2, "y":1.5}, {"label":"#", "x":3, "y":1.5}, {"label":"$", "x":4, "y":1.5}, {"label":"%", "x":5, "y":1.5}, {"label":"^", "x":6, "y":1.5}, {"label":"&", "x":9.75, "y":1.5}, {"label":"*", "x":10.75, "y":1.5}, {"label":"(", "x":11.75, "y":1.5}, {"label":")", "x":12.75, "y":1.5}, {"label":"_", "x":13.75, "y":1.5}, {"label":"+", "x":14.75, "y":1.5}, {"label":"Backspace", "x":15.75, "y":1.5, "w":2}, {"label":"Insert", "x":18, "y":1.5}, {"label":"Home", "x":19, "y":1.5}, {"label":"PgUp", "x":20, "y":1.5}, {"label":"Tab", "x":0, "y":2.5, "w":1.5}, {"label":"Q", "x":1.5, "y":2.5}, {"label":"W", "x":2.5, "y":2.5}, {"label":"E", "x":3.5, "y":2.5}, {"label":"R", "x":4.5, "y":2.5}, {"label":"T", "x":5.5, "y":2.5}, {"label":"Y", "x":9.25, "y":2.5}, {"label":"U", "x":10.25, "y":2.5}, {"label":"I", "x":11.25, "y":2.5}, {"label":"O", "x":12.25, "y":2.5}, {"label":"P", "x":13.25, "y":2.5}, {"label":"{", "x":14.25, "y":2.5}, {"label":"}", "x":15.25, "y":2.5}, {"label":"|", "x":16.25, "y":2.5, "w":1.5}, {"label":"Delete", "x":18, "y":2.5}, {"label":"End", "x":19, "y":2.5}, {"label":"PgDn", "x":20, "y":2.5}, {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75}, {"label":"A", "x":1.75, "y":3.5}, {"label":"S", "x":2.75, "y":3.5}, {"label":"D", "x":3.75, "y":3.5}, {"label":"F", "x":4.75, "y":3.5}, {"label":"G", "x":5.75, "y":3.5}, {"label":"H", "x":9.5, "y":3.5}, {"label":"J", "x":10.5, "y":3.5}, {"label":"K", "x":11.5, "y":3.5}, {"label":"L", "x":12.5, "y":3.5}, {"label":":", "x":13.5, "y":3.5}, {"label":"\"", "x":14.5, "y":3.5}, {"label":"Enter", "x":15.5, "y":3.5, "w":2.25}, {"label":"Shift", "x":0, "y":4.5, "w":2.25}, {"label":"Z", "x":2.25, "y":4.5}, {"label":"X", "x":3.25, "y":4.5}, {"label":"C", "x":4.25, "y":4.5}, {"label":"V", "x":5.25, "y":4.5}, {"label":"B", "x":6.25, "y":4.5}, {"label":"N", "x":10, "y":4.5}, {"label":"M", "x":11, "y":4.5}, {"label":"<", "x":12, "y":4.5}, {"label":">", "x":13, "y":4.5}, {"label":"?", "x":14, "y":4.5}, {"label":"Shift", "x":15, "y":4.5, "w":2.75}, {"label":"\u2191", "x":19, "y":4.5}, {"label":"Ctrl", "x":0, "y":5.5, "w":1.25}, {"label":"Fn", "x":1.25, "y":5.5, "w":1.25}, {"label":"Win", "x":2.5, "y":5.5, "w":1.25}, {"label":"Alt", "x":3.75, "y":5.5, "w":1.25}, {"x":5, "y":5.5, "w":2.25}, {"x":10, "y":5.5, "w":2.75}, {"label":"Alt", "x":12.75, "y":5.5, "w":1.25}, {"label":"Win", "x":14, "y":5.5, "w":1.25}, {"label":"Menu", "x":15.25, "y":5.5, "w":1.25}, {"label":"Ctrl", "x":16.5, "y":5.5, "w":1.25}, {"label":"\u2190", "x":18, "y":5.5}, {"label":"\u2193", "x":19, "y":5.5}, {"label":"\u2192", "x":20, "y":5.5}] + "layout": [ + {"label":"Esc", "matrix": [0, 4], "x":0 , "y":0}, + {"label":"F1" , "matrix": [0, 5], "x":2 , "y":0}, + {"label":"F2" , "matrix": [0, 6], "x":3 , "y":0}, + {"label":"F3" , "matrix": [0, 7], "x":4 , "y":0}, + {"label":"F4" , "matrix": [0, 8], "x":5 , "y":0}, + {"label":"F5" , "matrix": [0, 9], "x":6 , "y":0}, + {"label":"F6" , "matrix": [6, 0], "x":10.25 , "y":0}, + {"label":"F7" , "matrix": [6, 1], "x":11.25 , "y":0}, + {"label":"F8" , "matrix": [6, 2], "x":12.25 , "y":0}, + {"label":"F9" , "matrix": [6, 3], "x":13.75 , "y":0}, + {"label":"F10" , "matrix": [6, 4], "x":14.75 , "y":0}, + {"label":"F11" , "matrix": [6, 5], "x":15.75 , "y":0}, + {"label":"F12" , "matrix": [6, 6], "x":16.75 , "y":0}, + {"label":"PrtSc" , "matrix": [6, 7], "x":18 , "y":0}, + {"label":"Scroll Lock" , "matrix": [6, 8], "x":19 , "y":0}, + {"label":"Pause" , "matrix": [6, 9], "x":20 , "y":0}, + {"label":"~" , "matrix": [2, 4], "x":0 , "y":1.5}, + {"label":"1!" , "matrix": [1, 4], "x":1 , "y":1.5}, + {"label":"2@" , "matrix": [1, 5], "x":2 , "y":1.5}, + {"label":"3#" , "matrix": [1, 6], "x":3 , "y":1.5}, + {"label":"4$" , "matrix": [1, 7], "x":4 , "y":1.5}, + {"label":"5%" , "matrix": [1, 8], "x":5 , "y":1.5}, + {"label":"6^" , "matrix": [1, 9], "x":6 , "y":1.5}, + {"label":"7&" , "matrix": [7, 0], "x":9.75 , "y":1.5}, + {"label":"8*" , "matrix": [7, 1], "x":10.75 , "y":1.5}, + {"label":"9(" , "matrix": [7, 2], "x":11.75 , "y":1.5}, + {"label":"0)" , "matrix": [7, 3], "x":12.75 , "y":1.5}, + {"label":"-_" , "matrix": [7, 4], "x":13.75 , "y":1.5}, + {"label":"=+" , "matrix": [7, 5], "x":14.75 , "y":1.5}, + {"label":"Backspace" , "matrix": [7, 6], "x":15.75 , "y":1.5 , "w":2}, + {"label":"Insert" , "matrix": [7, 7], "x":18 , "y":1.5}, + {"label":"Home" , "matrix": [7, 8], "x":19 , "y":1.5}, + {"label":"PgUp" , "matrix": [7, 9], "x":20 , "y":1.5}, + {"label":"Tab" , "matrix": [3, 4], "x":0 , "y":2.5 , "w":1.5}, + {"label":"Q" , "matrix": [2, 5], "x":1.5 , "y":2.5}, + {"label":"W" , "matrix": [2, 6], "x":2.5 , "y":2.5}, + {"label":"E" , "matrix": [2, 7], "x":3.5 , "y":2.5}, + {"label":"R" , "matrix": [2, 8], "x":4.5 , "y":2.5}, + {"label":"T" , "matrix": [2, 9], "x":5.5 , "y":2.5}, + {"label":"Y" , "matrix": [9, 0], "x":9.25 , "y":2.5}, + {"label":"U" , "matrix": [8, 0], "x":10.25 , "y":2.5}, + {"label":"I" , "matrix": [8, 1], "x":11.25 , "y":2.5}, + {"label":"O" , "matrix": [8, 2], "x":12.25 , "y":2.5}, + {"label":"P" , "matrix": [8, 3], "x":13.25 , "y":2.5}, + {"label":"{" , "matrix": [8, 4], "x":14.25 , "y":2.5}, + {"label":"}" , "matrix": [8, 5], "x":15.25 , "y":2.5}, + {"label":"|" , "matrix": [8, 6], "x":16.25 , "y":2.5 , "w":1.5}, + {"label":"Delete" , "matrix": [8, 7], "x":18 , "y":2.5}, + {"label":"End" , "matrix": [8, 8], "x":19 , "y":2.5}, + {"label":"PgDn" , "matrix": [8, 9], "x":20 , "y":2.5}, + {"label":"Caps Lock" , "matrix": [4, 4], "x":0 , "y":3.5 , "w":1.75}, + {"label":"A" , "matrix": [3, 5], "x":1.75 , "y":3.5}, + {"label":"S" , "matrix": [3, 6], "x":2.75 , "y":3.5}, + {"label":"D" , "matrix": [3, 7], "x":3.75 , "y":3.5}, + {"label":"F" , "matrix": [3, 8], "x":4.75 , "y":3.5}, + {"label":"G" , "matrix": [3, 9], "x":5.75 , "y":3.5}, + {"label":"H" , "matrix": [10, 0], "x":9.5 , "y":3.5}, + {"label":"J" , "matrix": [9, 1], "x":10.5 , "y":3.5}, + {"label":"K" , "matrix": [9, 2], "x":11.5 , "y":3.5}, + {"label":"L" , "matrix": [9, 3], "x":12.5 , "y":3.5}, + {"label":":" , "matrix": [9, 4], "x":13.5 , "y":3.5}, + {"label":"\"" , "matrix": [9, 5], "x":14.5 , "y":3.5}, + {"label":"Enter" , "matrix": [9, 6], "x":15.5 , "y":3.5 , "w":2.25}, + {"label":"Shift" , "matrix": [5, 4], "x":0 , "y":4.5 , "w":2.25}, + {"label":"Z" , "matrix": [4, 5], "x":2.25 , "y":4.5}, + {"label":"X" , "matrix": [4, 6], "x":3.25 , "y":4.5}, + {"label":"C" , "matrix": [4, 7], "x":4.25 , "y":4.5}, + {"label":"V" , "matrix": [4, 8], "x":5.25 , "y":4.5}, + {"label":"B" , "matrix": [4, 9], "x":6.25 , "y":4.5}, + {"label":"N" , "matrix": [11, 0], "x":10 , "y":4.5}, + {"label":"M" , "matrix": [10, 1], "x":11 , "y":4.5}, + {"label":"<" , "matrix": [10, 2], "x":12 , "y":4.5}, + {"label":">" , "matrix": [10, 3], "x":13 , "y":4.5}, + {"label":"?" , "matrix": [10, 4], "x":14 , "y":4.5}, + {"label":"Shift" , "matrix": [10, 6], "x":15 , "y":4.5 , "w":2.75}, + {"label":"\u2191" , "matrix": [10, 8], "x":19 , "y":4.5}, + {"label":"Ctrl" , "matrix": [5, 5], "x":0 , "y":5.5 , "w":1.25}, + {"label":"Fn" , "matrix": [5, 6], "x":1.25 , "y":5.5 , "w":1.25}, + {"label":"Win" , "matrix": [5, 7], "x":2.5 , "y":5.5 , "w":1.25}, + {"label":"Alt" , "matrix": [5, 8], "x":3.75 , "y":5.5 , "w":1.25}, + {"label":"Space" , "matrix": [5, 9], "x":5 , "y":5.5 , "w":2.25}, + {"label":"Space" , "matrix": [11, 1], "x":10 , "y":5.5 , "w":2.75}, + {"label":"Alt" , "matrix": [11, 3], "x":12.75 , "y":5.5 , "w":1.25}, + {"label":"Win" , "matrix": [11, 4], "x":14 , "y":5.5 , "w":1.25}, + {"label":"Menu" , "matrix": [11, 5], "x":15.25 , "y":5.5 , "w":1.25}, + {"label":"Ctrl" , "matrix": [11, 6], "x":16.5 , "y":5.5 , "w":1.25}, + {"label":"\u2190" , "matrix": [11, 7], "x":18 , "y":5.5}, + {"label":"\u2193" , "matrix": [11, 8], "x":19 , "y":5.5}, + {"label":"\u2192" , "matrix": [11, 9], "x":20 , "y":5.5} + ] } } } diff --git a/keyboards/handwired/split89/keymaps/default/keymap.c b/keyboards/handwired/split89/keymaps/default/keymap.c index 393bfc6758..fef2a50c2c 100644 --- a/keyboards/handwired/split89/keymaps/default/keymap.c +++ b/keyboards/handwired/split89/keymaps/default/keymap.c @@ -21,22 +21,22 @@ enum layer_names { AUD, }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* Base */ + /* BASE */ [0] = LAYOUT( - KC_ESC, 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_PSCR, KC_SCRL, KC_PAUS, - KC_GRV,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_BSPC, KC_INS, KC_HOME, KC_PGUP, - KC_TAB,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_Y, 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_H, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL,MO(1),KC_LGUI,KC_LALT,KC_SPACE, KC_N, KC_SPACE, KC_RALT,KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + KC_ESC, 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_PSCR, KC_SCRL, KC_PAUS, + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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_DEL, KC_END, KC_PGDN, + 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, KC_UP, + KC_LCTL, MO(1), KC_LGUI,KC_LALT,KC_SPACE,KC_SPACE,KC_RALT,KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), - /* Volume */ + /* AUD */ [1] = LAYOUT( - 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, - 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_VOLU, - KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_MEDIA_PLAY_PAUSE, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT - ), + 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,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_VOLU, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_MEDIA_PLAY_PAUSE,KC_MEDIA_PLAY_PAUSE,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT + ) }; diff --git a/keyboards/handwired/split89/split89.c b/keyboards/handwired/split89/split89.c deleted file mode 100644 index 8cceee9c59..0000000000 --- a/keyboards/handwired/split89/split89.c +++ /dev/null @@ -1,17 +0,0 @@ -/* Copyright 2021 jurassic73 - * - * 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 "split89.h" diff --git a/keyboards/handwired/split89/split89.h b/keyboards/handwired/split89/split89.h deleted file mode 100644 index 7e94027078..0000000000 --- a/keyboards/handwired/split89/split89.h +++ /dev/null @@ -1,50 +0,0 @@ -/* Copyright 2021 jurassic73 - * - * 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 minus blanks in the matrix. - * - * The second converts the arguments into a two-dimensional array which - * represents the switch matrix which includes blanks in the wired out matrix. - */ -#define LAYOUT( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14, k15, \ - k32, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k30, k31, \ - k48, k33, k34, k35, k36, k37, k54, k38, k39, k40, k41, k42, k43, k44, k45, k46, k47, \ - k61, k49, k50, k51, k52, k53, k67, k55, k56, k57, k58, k59, k60, \ - k74, k62, k63, k64, k65, k66, k80, k68, k69, k70, k71, k72, k73, \ - k75, k76, k77, k78, k79, k81, k82, k83, k84, k85, k86, k87, k88 \ - ) \ - { \ - { KC_NO, KC_NO, KC_NO, KC_NO, k00, k01, k02, k03, k04, k05 }, \ - { KC_NO, KC_NO, KC_NO, KC_NO, k16, k17, k18, k19, k20, k21 }, \ - { KC_NO, KC_NO, KC_NO, KC_NO, k32, k33, k34, k35, k36, k37 }, \ - { KC_NO, KC_NO, KC_NO, KC_NO, k48, k49, k50, k51, k52, k53 }, \ - { KC_NO, KC_NO, KC_NO, KC_NO, k61, k62, k63, k64, k65, k66, }, \ - { KC_NO, KC_NO, KC_NO, KC_NO, k74, k75, k76, k77, k78, k79, }, \ - { k06, k07, k08, k09, k10, k11, k12, k13, k14, k15 }, \ - { k22, k23, k24, k25, k26, k27, k28, k29, k30, k31 }, \ - { k38, k39, k40, k41, k42, k43, k44, k45, k46, k47 }, \ - { k54, k55, k56, k57, k58, k59, k60, KC_NO, KC_NO, KC_NO }, \ - { k67, k68, k69, k70, k71, KC_NO, k72, KC_NO, k73, KC_NO }, \ - { k80, k81, KC_NO, k82, k83, k84, k85, k86, k87, k88 } \ -} |