qmk_firmware/keyboards
zvecr 1a6a2a7b75 Relocate usb_detach to utils (#5121)
* Relocate usb_detach to utils

* Relocate usb_detach to utils - fix up files after move
2019-02-18 09:03:44 -08:00
..
1upkeyboards Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
6ball
9key
30wer
40percentclub Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
412_64 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
acr60 Migrate fn_actions for default keymaps (#4935) 2019-02-14 20:07:13 -08:00
aeboards/aegis [Keyboard] Added aeboards/aegis (#5099) 2019-02-12 17:05:34 -08:00
ai03 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
al1 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
alf Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
alice Fixed TGR Alice pinout and number of LEDs (#5018) 2019-01-31 07:42:12 -08:00
alpha
alps64
alu84
amj40 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
amj60 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
amj96 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
amjpad Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
at101_blackheart
atom47 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
atomic Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
atreus Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
atreus62 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
baguette Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
bantam44
bfake
bigseries
bigswitch Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
blockey Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
bpiphany Migrate ACTION_LAYER_TAP_TOGGLEs to TT() 2019-02-18 08:52:51 -08:00
bthlabs/geekpad Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
candybar
cannonkeys Add Satisfaction75 to QMK, Enable EEPROM on stm32f072 (#5094) 2019-02-13 08:03:26 -08:00
canoe update canoe/readme (#5014) 2019-01-30 18:12:43 -08:00
catch22 Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
chibios_test
chimera_ergo Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
chimera_ls
chimera_ortho
christmas_tree Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
ckeys Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
clueboard Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
comet46 Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
contra Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
converter Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
cospad Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
crawlpad
crkbd [omgvee:keymap] minor changes and fw size optimizations (#5150) 2019-02-16 18:21:01 -08:00
cu24 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
cu75 Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
daisy Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
dc01 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
deltasplit75 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
dichotomy Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
diverge3 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
divergetm2 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
dk60
do60 Migrate fn_actions for default keymaps (#4935) 2019-02-14 20:07:13 -08:00
doro67 [Keyboard] New Keyboard: Doro67 Regular PCB (#5115) 2019-02-13 08:59:38 -08:00
duck Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
dz60 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
dztech Update info.json (#5015) 2019-01-31 11:36:59 -08:00
eco Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
ep Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
ergo42 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
ergodash Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
ergodone Migrate ACTION_LAYER_TAP_TOGGLEs to TT() 2019-02-18 08:52:51 -08:00
ergodox_ez Migrate ACTION_LAYER_TAP_TOGGLEs to TT() 2019-02-18 08:52:51 -08:00
ergodox_infinity Migrate ACTION_LAYER_TAP_TOGGLEs to TT() 2019-02-18 08:52:51 -08:00
ergoinu
ergotravel Migrate ACTION_LAYER_TAP_TOGGLEs to TT() 2019-02-18 08:52:51 -08:00
espectro
evil80
exclusive Regroup all Exclusive keyboard in one directory 2019-02-07 15:22:55 -08:00
facew
fc660c Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
fc980c Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
felix
fleuron Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
fortitude60 Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
four_banger
fractal
gergo Update gergo.h 2019-02-05 22:16:41 -08:00
gh60 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
gh80_3000
gonnerd
gray_studio Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
gskt00
h87a Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
hadron Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
handwired Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
hecomi define new keyboard "Hecomi" (#5147) 2019-02-16 21:44:08 -08:00
helix Update Helix 'led_test' keymap 2019-02-18 19:01:37 +09:00
hhkb Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
hid_liber Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
honeycomb dd Honeycomb macropad (#5000) 2019-02-05 09:59:10 -08:00
hs60 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
idobo Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
infinity60
jc65
jd40
jd45 Migrate ACTION_LAYER_TAP_TOGGLEs to TT() 2019-02-18 08:52:51 -08:00
jj4x4 Relocate usb_detach to utils (#5121) 2019-02-18 09:03:44 -08:00
jj40 Relocate usb_detach to utils (#5121) 2019-02-18 09:03:44 -08:00
jj50
jm60 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
k_type Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
katana60 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
kbdfans Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
kc60 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
kc60se Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
keebio Migrate ACTION_LAYER_TAP_TOGGLEs to TT() 2019-02-18 08:52:51 -08:00
kinesis Migrate ACTION_LAYER_TAP_TOGGLEs to TT() 2019-02-18 08:52:51 -08:00
kira75 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
kmac Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
kmini Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
knops Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
kona_classic Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
laptreus [Keyboard] Initial commit of Laptreus Keyboard (#4967) 2019-02-06 14:41:17 -08:00
launchpad Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
lazydesigners/the50 [Keymap] Added my THE50 Keymap (#5093) 2019-02-10 12:52:03 -08:00
lets_split Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
lets_split_eh Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
lfkeyboards Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
lily58
m0lly [Keyboard] Initial support for TKC M0LLY (#5087) 2019-02-10 12:44:39 -08:00
m10a Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
massdrop
maxipad
mechmini Migrate fn_actions for default keymaps (#4935) 2019-02-14 20:07:13 -08:00
mehkee96
meira Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
meishi Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
melody96 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
meme Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
miniaxe Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
minidox Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
mint60 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
mitosis Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
miuni32 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
model01
mt40 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
mxss Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
namecard2x4 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
newgame40 Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
niu_mini Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
novelpad Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
noxary Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
ok60 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
omnikey_blackheart
orange75
org60 Migrate fn_actions for default keymaps (#4935) 2019-02-14 20:07:13 -08:00
orthodox Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
paladin64
panc60
pearl
phantom Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
pinky Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
plain60 [Keymap] Plain60 rgb (#5104) 2019-02-12 16:48:05 -08:00
planck Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
playkbtw [Keymap] rfvizarra's custom PK60 layout (#5156) 2019-02-17 08:44:27 -08:00
preonic Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
primekb Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
proton_c
ps2avrGB
puck
qwertyydox
rama Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
redox
redox_w [Keyboard] Redox Wireless configurator bugfix (#4961) 2019-01-30 11:02:05 -08:00
s7_elephant Fix layouts for S7 Elephant in info.json (#4989) 2019-01-28 15:24:34 -08:00
satan Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
scarletbandana Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
scrabblepad Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
sentraq Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
singa
sirius/unigo66 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
sixkeyboard
sixshooter Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
skog
snagpad
sol
southpole [Keyboard] Add Southpole keyboard (#4946) 2019-01-27 18:05:11 -08:00
speedo Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
staryu Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
subatomic Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
sx60
tada68 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
tanuki
telophase Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
tetris Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
the_ruler Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
thevankeyboards Migrate ACTION_LAYER_TAP_TOGGLEs to TT() 2019-02-18 08:52:51 -08:00
tkc1800
tmo50 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
toad
tokyo60
touchpad
treasure/type9 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
uk78
v60_type_r Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
vinta Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
vision_division Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
vitamins_included Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152) 2019-02-16 21:36:02 -08:00
westfoxtrot Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
whitefox Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
wilba_tech Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
winkeyless [Keyboard] Winkeyless Directory (#5163) 2019-02-18 08:35:34 -08:00
xd60 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
xd75 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
xd84 Inital port of xd84 (#5164) 2019-02-17 17:47:01 -08:00
xd87 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
xmmx
yd68 Remove CUSTOM_MATRIX option from diode direction (#5090) 2019-02-18 08:49:51 -08:00
ymd75
ymd96 Relocate usb_detach to utils (#5121) 2019-02-18 09:03:44 -08:00
ymdk_np21
z150_blackheart
zeal60 Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
zeal65
zen Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154) 2019-02-17 07:38:46 -08:00
zinc
zlant [Keymap] updated zlant default keymap with diagram (#4954) 2019-01-27 17:35:23 -08:00
readme.md

Included Keyboards

QMK runs on a diverse range of keyboards. Some of these keyboards are officially supported and see constant community contributions, while others are part of the repository for historical reasons.

Official QMK Keyboards

These keyboards are manufactured by the maintainers of QMK.

Ortholinear Keyboards - Jack Humbert

What makes OLKB keyboards shine is a combo of lean aesthetics, compact size, and killer tactile feel. These are available through olkb.com as well as through Massdrop from time to time, as easy to assemble kits.

  • Planck — A 40% DIY powerhouse of customizability and modification capability. It's a lean, mean, typing machine.
  • Preonic — Like the Planck, but bigger. 50%.
  • Atomic — Imagine the size of the Planck. Now imagine the size of the Preonic. Now imagine bigger. That is the Atomic. A 60% keyboard.

ErgoDox EZ - Erez Zukerman

Made in Taiwan using advanced robotic manufacturing, the ErgoDox EZ is a fully-assembled, premium ergonomic keyboard. Its split design allows you to place both halves shoulder width, and its custom-made wrist rests and tilt/tent kit make for incredibly comfortable typing. Available on ergodox-ez.com.

  • ErgoDox EZ — Our one and only product. Yes, it's that awesome. Comes with either printed or blank keycaps, and 7 different keyswitch types.

Clueboard - Zach White

Designed and built in Felton, CA, Clueboards keyboard emphasize quality and locally sourced components, available on clueboard.co

  • Clueboard — The 66% custom keyboard.
  • Cluecard — A small board to help you hack on QMK.
  • Cluepad — A mechanical numpad with QMK superpowers.

Community-supported QMK Keyboards

These keyboards are part of the QMK repository, but their manufacturers are not official maintainers of the repository.

  • 9key — A 9-key minipad sold by Bishop Keyboards.
  • Alps64 — A 60% keyboard for Alps keyswitches.
  • AMJ60 — DIY/Assembled compact 60% keyboard.
  • Arrow Pad — A custom creation by IBNobody.
  • Atreus — Made by Technomancy.
  • Bantam44 — It is a 44-key 40% staggered keyboard.
  • DataHand — DataHand keyboard converted to use a Teensy board.
  • Ergodox Infinity - Ergonomic Split Keyboard by Input Club.
  • GH60 — A 60% Geekhack community-driven project.
  • GON NerD — Korean custom 60% PCB
  • Happy Hacking Keyboard — The Happy Hacking keyboard can be hacked with a custom controller to run QMK.
  • Infinity 60% - — Compact community keyboard by Input Club.
  • JD45 — Another Geekhack community project, designed by jdcarpe.
  • JJ40 — ps2avrGB based ortholinear sold by KPrepublic
  • KBD75 — A 75% keyboard made by made by KBDFans.
  • KC60 — A programmable Chinese-made keyboard, lost in the mists of time.
  • Kinesis Advantage — Contoured ergonomic keyboard by Kinesis Computer Ergonomics.
  • KMAC — Korean custom keyboard.
  • The Kitten Paw — A replacement controller (2016 revision) for the Filco Majestouch by Bathroom Epiphanies.
  • Lets Split - Split ortholinear 40% keyboard.
  • Phantom — A tenkeyless kit by Teel, also from Geekhack.
  • Retro Refit — Another creation by IBNobody.
  • S60-x — DIY compact keyboard designed by VinnyCordeiro for Sentraq.
  • Satan — A GH60 variant.
  • SixKeyBoard — A 6-key keyboard made by TechKeys.
  • TheVan 44 — A 44-key staggered keybard by Evangs.
  • WhiteFox — A 65% keyboard designed as a partnership by matt3o, Massdrop and Input Club
  • Vision Division — Full Size / Split Linear Keyboard by IBNobody.
  • XD75 — 15x5 ortholinear keyboard by XIUDI.
  • YMDK NP21 — ps2avrGB based number pad (numpad) sold by YMDK on Aliexpress.