kmonad-0.4.4: Advanced keyboard remapping utility
Copyright(c) David Janssen 2019
LicenseMIT
Maintainerjanssen.dhj@gmail.com
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

KMonad.Keyboard.Keycode

Description

Keycodes are represented as a large enum lining up the keycodes defined in the Linux headers.

Synopsis

The core Keycode type

Keycodes are defined as a large ADT that mimics the keycodes from the Linux headers: https://github.com/torvalds/linux/blob/master/include/uapi/linux/input-event-codes.h.

Anywhere there are missing regions in the Linux headers, we've defined MissingXX values for the ADT.

Calling toEnum on a Linux keycode value should produce the corresponding Keycode value and vice-versa.

data Keycode Source #

The Keycode datatype, as an Enum of all the values a Keycode can take.

Constructors

KeyReserved 
KeyEsc 
Key1 
Key2 
Key3 
Key4 
Key5 
Key6 
Key7 
Key8 
Key9 
Key0 
KeyMinus 
KeyEqual 
KeyBackspace 
KeyTab 
KeyQ 
KeyW 
KeyE 
KeyR 
KeyT 
KeyY 
KeyU 
KeyI 
KeyO 
KeyP 
KeyLeftBrace 
KeyRightBrace 
KeyEnter 
KeyLeftCtrl 
KeyA 
KeyS 
KeyD 
KeyF 
KeyG 
KeyH 
KeyJ 
KeyK 
KeyL 
KeySemicolon 
KeyApostrophe 
KeyGrave 
KeyLeftShift 
KeyBackslash 
KeyZ 
KeyX 
KeyC 
KeyV 
KeyB 
KeyN 
KeyM 
KeyComma 
KeyDot 
KeySlash 
KeyRightShift 
KeyKpAsterisk 
KeyLeftAlt 
KeySpace 
KeyCapsLock 
KeyF1 
KeyF2 
KeyF3 
KeyF4 
KeyF5 
KeyF6 
KeyF7 
KeyF8 
KeyF9 
KeyF10 
KeyNumLock 
KeyScrollLock 
KeyKp7 
KeyKp8 
KeyKp9 
KeyKpMinus 
KeyKp4 
KeyKp5 
KeyKp6 
KeyKpPlus 
KeyKp1 
KeyKp2 
KeyKp3 
KeyKp0 
KeyKpDot 
Missing84 
KeyZenkakuHankaku 
Key102nd 
KeyF11 
KeyF12 
KeyRo 
KeyKatakana 
KeyHiragana 
KeyHenkan 
KeyKatakanaHiragana 
KeyMuhenkan 
KeyKpjpcomma 
KeyKpEnter 
KeyRightCtrl 
KeyKpSlash 
KeySysRq 
KeyRightAlt 
KeyLinefeed 
KeyHome 
KeyUp 
KeyPageUp 
KeyLeft 
KeyRight 
KeyEnd 
KeyDown 
KeyPageDown 
KeyInsert 
KeyDelete 
KeyMacro 
KeyMute 
KeyVolumeDown 
KeyVolumeUp 
KeyPower 
KeyKpEqual 
KeyKpPlusMinus 
KeyPause 
KeyScale 
KeyKpComma 
KeyHangeul 
KeyHanja 
KeyYen 
KeyLeftMeta 
KeyRightMeta 
KeyCompose 
KeyStop 
KeyAgain 
KeyProps 
KeyUndo 
KeyFront 
KeyCopy 
KeyOpen 
KeyPaste 
KeyFind 
KeyCut 
KeyHelp 
KeyMenu 
KeyCalc 
KeySetup 
KeySleep 
KeyWakeUp 
KeyFile 
KeySendFile 
KeyDeleteFile 
KeyXfer 
KeyProg1 
KeyProg2 
KeyWww 
KeyMsDos 
KeyCoffee 
KeyDirection 
KeyCycleWindows 
KeyMail 
KeyBookmarks 
KeyComputer 
KeyBack 
KeyForward 
KeyCloseCd 
KeyEjectCd 
KeyEjectCloseCd 
KeyNextSong 
KeyPlayPause 
KeyPreviousSong 
KeyStopCd 
KeyRecord 
KeyRewind 
KeyPhone 
KeyIso 
KeyConfig 
KeyHomepage 
KeyRefresh 
KeyExit 
KeyMove 
KeyEdit 
KeyScrollUp 
KeyScrollDown 
KeyKpLeftParen 
KeyKpRightParen 
KeyNew 
KeyRedo 
KeyF13 
KeyF14 
KeyF15 
KeyF16 
KeyF17 
KeyF18 
KeyF19 
KeyF20 
KeyF21 
KeyF22 
KeyF23 
KeyF24 
Missing195 
Missing196 
Missing197 
Missing198 
Missing199 
KeyPlayCd 
KeyPauseCd 
KeyProg3 
KeyProg4 
KeyDashboard 
KeySuspend 
KeyClose 
KeyPlay 
KeyFastForward 
KeyBassBoost 
KeyPrint 
KeyHp 
KeyCamera 
KeySound 
KeyQuestion 
KeyEmail 
KeyChat 
KeySearch 
KeyConnect 
KeyFinance 
KeySport 
KeyShop 
KeyAlterase 
KeyCancel 
KeyBrightnessDown 
KeyBrightnessUp 
KeyMedia 
KeySwitchVideoMode 
KeyKbdIllumToggle 
KeyKbdIllumDown 
KeyKbdIllumUp 
KeySend 
KeyReply 
KeyForwardMail 
KeySave 
KeyDocuments 
KeyBattery 
KeyBluetooth 
KeyWlan 
KeyUwb 
KeyUnknown 
KeyVideoNext 
KeyVideoPrev 
KeyBrightnessCycle 
KeyBrightnessZero 
KeyDisplayOff 
KeyWimax 
KeyRfkill 
KeyMicmute 
Missing249 
Missing250 
Missing251 
Missing252 
Missing253 
Missing254 
Missing255 
Btn0 
Btn1 
Btn2 
Btn3 
Btn4 
Btn5 
Btn6 
Btn7 
Btn8 
Btn9 
Missing0x10a 
Missing0x10b 
Missing0x10c 
Missing0x10d 
Missing0x10e 
Missing0x10f 
BtnLeft 
BtnRight 
BtnMiddle 
BtnSide 
BtnExtra 
BtnForward 
BtnBack 
BtnTask 
Missing0x118 
Missing0x119 
Missing0x11a 
Missing0x11b 
Missing0x11c 
Missing0x11d 
Missing0x11e 
Missing0x11f 
BtnJoystick 
BtnThumb 
BtnThumb2 
BtnTop 
BtnTop2 
BtnPinkie 
BtnBase 
BtnBase2 
BtnBase3 
BtnBase4 
BtnBase5 
BtnBase6 
Missing0x12c 
Missing0x12d 
Missing0x12e 
BtnDead 
BtnGamepad 
BtnB 
BtnC 
BtnX 
BtnY 
BtnZ 
BtnTL 
BtnTR 
BtnTL2 
BtnTR2 
BtnSelect 
BtnStart 
BtnMode 
BtnThumbL 
BtnThumbR 
Missing0x13f 
BtnDigi 
BtnToolRubber 
BtnToolBrush 
BtnToolPencil 
BtnToolAirbrush 
BtnToolFinger 
BtnToolMouse 
BtnToolLens 
BtnToolQuinttap 
BtnStylus3 
BtnTouch 
BtnStylus 
BtnStylus2 
BtnToolDoubletap 
BtnToolTripletap 
BtnToolQuadtap 
BtnGearDown 
BtnGearUp 
Missing0x152 
Missing0x153 
Missing0x154 
Missing0x155 
Missing0x156 
Missing0x157 
Missing0x158 
Missing0x159 
Missing0x15a 
Missing0x15b 
Missing0x15c 
Missing0x15d 
Missing0x15e 
Missing0x15f 
KeyOk 
KeySelect 
KeyGoTo 
KeyClear 
KeyPower2 
KeyOption 
KeyInfo 
KeyTime 
KeyVendor 
KeyArchive 
KeyProgram 
KeyChannel 
KeyFavorites 
KeyEpg 
KeyPvr 
KeyMhp 
KeyLanguage 
KeyTitle 
KeySubtitle 
KeyAngle 
KeyZoom 
KeyMode 
KeyKeyboard 
KeyScreen 
KeyPc 
KeyTv 
KeyTv2 
KeyVcr 
KeyVcr2 
KeySat 
KeySat2 
KeyCd 
KeyTape 
KeyRadio 
KeyTuner 
KeyPlayer 
KeyText 
KeyDvd 
KeyAux 
KeyMp3 
KeyAudio 
KeyVideo 
KeyDirectory 
KeyList 
KeyMemo 
KeyCalendar 
KeyRed 
KeyGreen 
KeyYellow 
KeyBlue 
KeyChannelUp 
KeyChannelDown 
KeyFirst 
KeyLast 
KeyAb 
KeyNextTask 
KeyRestart 
KeySlow 
KeyShuffle 
KeyBreak 
KeyPreviousTask 
KeyDigits 
KeyTeen 
KeyTwen 
KeyVideoPhone 
KeyGames 
KeyZoomIn 
KeyZoomOut 
KeyZoomReset 
KeyWordProcessor 
KeyEditor 
KeySpreadSheet 
KeyGraphicsEditor 
KeyPresentation 
KeyDatabase 
KeyNews 
KeyVoicemail 
KeyAddressBook 
KeyMessenger 
KeyBrightnessToggle 
KeySpellCheck 
KeyLogoff 
KeyDollar 
KeyEuro 
KeyFrameBack 
KeyFrameForward 
KeyContextMenu 
KeyMediaRepeat 
Key10channelsUp 
Key10channelsDown 
KeyImages 
Missing0x1bb 
KeyNotificationCenter 
KeyPickupPhone 
KeyHangupPhone 
Missing0x1bf 
KeyDelEol 
KeyDelEos 
KeyInsLine 
KeyDelLine 
Missing0x1c4 
Missing0x1c5 
Missing0x1c6 
Missing0x1c7 
Missing0x1c8 
Missing0x1c9 
Missing0x1ca 
Missing0x1cb 
Missing0x1cc 
Missing0x1cd 
Missing0x1ce 
Missing0x1cf 
KeyFn 
KeyFnEsc 
KeyFnF1 
KeyFnF2 
KeyFnF3 
KeyFnF4 
KeyFnF5 
KeyFnF6 
KeyFnF7 
KeyFnF8 
KeyFnF9 
KeyFnF10 
KeyFnF11 
KeyFnF12 
KeyFn1 
KeyFn2 
KeyFnD 
KeyFnE 
KeyFnF 
KeyFnS 
KeyFnB 
KeyFnRightShift 
Missing0x1e6 
Missing0x1e7 
Missing0x1e8 
Missing0x1e9 
Missing0x1ea 
Missing0x1eb 
Missing0x1ec 
Missing0x1ed 
Missing0x1ee 
Missing0x1ef 
Missing0x1f0 
KeyBrlDot1 
KeyBrlDot2 
KeyBrlDot3 
KeyBrlDot4 
KeyBrlDot5 
KeyBrlDot6 
KeyBrlDot7 
KeyBrlDot8 
KeyBrlDot9 
KeyBrlDot10 
Missing0x1fb 
Missing0x1fc 
Missing0x1fd 
Missing0x1fe 
Missing0x1ff 
KeyNumeric0 
KeyNumeric1 
KeyNumeric2 
KeyNumeric3 
KeyNumeric4 
KeyNumeric5 
KeyNumeric6 
KeyNumeric7 
KeyNumeric8 
KeyNumeric9 
KeyNumericStar 
KeyNumericPound 
KeyNumericA 
KeyNumericB 
KeyNumericC 
KeyNumericD 
KeyCameraFocus 
KeyWpsButton 
KeyTouchpadToggle 
KeyTouchpadOn 
KeyTouchpadOff 
KeyCameraZoomIn 
KeyCameraZoomOut 
KeyCameraUp 
KeyCameraDown 
KeyCameraLeft 
KeyCameraRight 
KeyAttendantOn 
KeyAttendantOff 
KeyAttendantToggle 
KeyLightsToggle 
Missing0x21f 
BtnDpadUp 
BtnDpadDown 
BtnDpadLeft 
BtnDpadRight 
Missing0x224 
Missing0x225 
Missing0x226 
Missing0x227 
Missing0x228 
Missing0x229 
Missing0x22a 
Missing0x22b 
Missing0x22c 
Missing0x22d 
Missing0x22e 
Missing0x22f 
KeyAlsToggle 
KeyRotateLockToggle 
KeyRefreshRateToggle 
Missing0x233 
Missing0x234 
Missing0x235 
Missing0x236 
Missing0x237 
Missing0x238 
Missing0x239 
Missing0x23a 
Missing0x23b 
Missing0x23c 
Missing0x23d 
Missing0x23e 
Missing0x23f 
KeyButtonconfig 
KeyTaskmanager 
KeyJournal 
KeyControlPanel 
KeyAppSelect 
KeyScreenSaver 
KeyVoicecommand 
KeyAssistant 
KeyKbdLayoutNext 
KeyEmojiPicker 
KeyDictate 
KeyCameraAccessEnable 
KeyCameraAccessDisable 
KeyCameraAccessToggle 
KeyAccessibility 
KeyDoNotDisturb 
KeyBrightnessMin 
KeyBrightnessMax 
Missing0x252 
Missing0x253 
Missing0x254 
Missing0x255 
Missing0x256 
Missing0x257 
Missing0x258 
Missing0x259 
Missing0x25a 
Missing0x25b 
Missing0x25c 
Missing0x25d 
Missing0x25e 
Missing0x25f 
KeyKbdInputAssistPrev 
KeyKbdInputAssistNext 
KeyKbdInputAssistPrevgroup 
KeyKbdInputAssistNextgroup 
KeyKbdInputAssistAccept 
KeyKbdInputAssistCancel 
KeyRightUp 
KeyRightDown 
KeyLeftUp 
KeyLeftDown 
KeyRootMenu 
KeyMediaTopMenu 
KeyNumeric11 
KeyNumeric12 
KeyAudioDesc 
Key3dMode 
KeyNextFavorite 
KeyStopRecord 
KeyPauseRecord 
KeyVod 
KeyUnmute 
KeyFastreverse 
KeySlowreverse 
KeyData 
KeyOnScreenKeyboard 
KeyPrivacyScreenToggle 
KeySelectiveScreenshot 
KeyNextElement 
KeyPreviousElement 
KeyAutopilotEngageToggle 
KeyMarkWaypoint 
KeySos 
KeyNavChart 
KeyFishingChart 
KeySingleRangeRadar 
KeyDualRangeRadar 
KeyRadarOverlay 
KeyTraditionalSonar 
KeyClearvuSonar 
KeySidevuSonar 
KeyNavInfo 
KeyBrightnessMenu 
Missing0x28a 
Missing0x28b 
Missing0x28c 
Missing0x28d 
Missing0x28e 
Missing0x28f 
KeyMacro1 
KeyMacro2 
KeyMacro3 
KeyMacro4 
KeyMacro5 
KeyMacro6 
KeyMacro7 
KeyMacro8 
KeyMacro9 
KeyMacro10 
KeyMacro11 
KeyMacro12 
KeyMacro13 
KeyMacro14 
KeyMacro15 
KeyMacro16 
KeyMacro17 
KeyMacro18 
KeyMacro19 
KeyMacro20 
KeyMacro21 
KeyMacro22 
KeyMacro23 
KeyMacro24 
KeyMacro25 
KeyMacro26 
KeyMacro27 
KeyMacro28 
KeyMacro29 
KeyMacro30 
Missing0x2ae 
Missing0x2af 
KeyMacroRecordStart 
KeyMacroRecordStop 
KeyMacroPresetCycle 
KeyMacroPreset1 
KeyMacroPreset2 
KeyMacroPreset3 
Missing0x2b6 
Missing0x2b7 
KeyKbdLcdMenu1 
KeyKbdLcdMenu2 
KeyKbdLcdMenu3 
KeyKbdLcdMenu4 
KeyKbdLcdMenu5 
Missing0x2bd 
Missing0x2be 
Missing0x2bf 
BtnTriggerHappy 
BtnTriggerHappy2 
BtnTriggerHappy3 
BtnTriggerHappy4 
BtnTriggerHappy5 
BtnTriggerHappy6 
BtnTriggerHappy7 
BtnTriggerHappy8 
BtnTriggerHappy9 
BtnTriggerHappy10 
BtnTriggerHappy11 
BtnTriggerHappy12 
BtnTriggerHappy13 
BtnTriggerHappy14 
BtnTriggerHappy15 
BtnTriggerHappy16 
BtnTriggerHappy17 
BtnTriggerHappy18 
BtnTriggerHappy19 
BtnTriggerHappy20 
BtnTriggerHappy21 
BtnTriggerHappy22 
BtnTriggerHappy23 
BtnTriggerHappy24 
BtnTriggerHappy25 
BtnTriggerHappy26 
BtnTriggerHappy27 
BtnTriggerHappy28 
BtnTriggerHappy29 
BtnTriggerHappy30 
BtnTriggerHappy31 
BtnTriggerHappy32 
BtnTriggerHappy33 
BtnTriggerHappy34 
BtnTriggerHappy35 
BtnTriggerHappy36 
BtnTriggerHappy37 
BtnTriggerHappy38 
BtnTriggerHappy39 
BtnTriggerHappy40 
Missing0x2e8 
Missing0x2e9 
Missing0x2ea 
Missing0x2eb 
Missing0x2ec 
Missing0x2ed 
Missing0x2ee 
Missing0x2ef 
Missing0x2f0 
Missing0x2f1 
Missing0x2f2 
Missing0x2f3 
Missing0x2f4 
Missing0x2f5 
Missing0x2f6 
Missing0x2f7 
Missing0x2f8 
Missing0x2f9 
Missing0x2fa 
Missing0x2fb 
Missing0x2fc 
Missing0x2fd 
Missing0x2fe 
KeyLaunchpad 
KeyMissionCtrl 
KeySpotlight 
KeyDictation 

Instances

Instances details
Data Keycode Source # 
Instance details

Defined in KMonad.Keyboard.Keycode

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Keycode -> c Keycode #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Keycode #

toConstr :: Keycode -> Constr #

dataTypeOf :: Keycode -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Keycode) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Keycode) #

gmapT :: (forall b. Data b => b -> b) -> Keycode -> Keycode #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Keycode -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Keycode -> r #

gmapQ :: (forall d. Data d => d -> u) -> Keycode -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Keycode -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Keycode -> m Keycode #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Keycode -> m Keycode #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Keycode -> m Keycode #

Bounded Keycode Source # 
Instance details

Defined in KMonad.Keyboard.Keycode

Enum Keycode Source # 
Instance details

Defined in KMonad.Keyboard.Keycode

Generic Keycode Source # 
Instance details

Defined in KMonad.Keyboard.Keycode

Associated Types

type Rep Keycode 
Instance details

Defined in KMonad.Keyboard.Keycode

type Rep Keycode = D1 ('MetaData "Keycode" "KMonad.Keyboard.Keycode" "kmonad-0.4.4-24ldZcMKw8mLOimHIQjvkA" 'False) (((((((((C1 ('MetaCons "KeyReserved" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyEsc" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key1" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Key2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Key3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key4" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Key5" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Key6" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key7" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Key8" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Key9" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key0" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyMinus" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyEqual" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBackspace" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyTab" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyQ" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyW" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyE" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyR" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyT" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyY" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyU" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyI" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyO" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyP" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLeftBrace" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyRightBrace" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyEnter" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLeftCtrl" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyA" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyS" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyD" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyF" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyG" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyH" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyJ" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyK" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyL" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySemicolon" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyApostrophe" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyGrave" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyLeftShift" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBackslash" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyZ" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyX" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyC" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyV" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyB" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyN" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyM" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyComma" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDot" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySlash" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyRightShift" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKpAsterisk" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLeftAlt" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySpace" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCapsLock" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF1" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyF2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF4" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyF5" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF6" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF7" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyF8" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF9" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF10" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyNumLock" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyScrollLock" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKp7" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyKp8" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKp9" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKpMinus" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyKp4" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKp5" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKp6" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyKpPlus" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKp1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKp2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyKp3" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKp0" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKpDot" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing84" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyZenkakuHankaku" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key102nd" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyF11" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF12" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRo" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyKatakana" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyHiragana" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyHenkan" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyKatakanaHiragana" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMuhenkan" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKpjpcomma" 'PrefixI 'False) (U1 :: Type -> Type)))))))) :+: ((((((C1 ('MetaCons "KeyKpEnter" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRightCtrl" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKpSlash" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySysRq" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRightAlt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLinefeed" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyHome" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPageUp" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyLeft" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRight" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEnd" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPageDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyInsert" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyDelete" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMute" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyVolumeDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVolumeUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPower" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyKpEqual" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKpPlusMinus" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPause" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyScale" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKpComma" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyHangeul" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyHanja" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyYen" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLeftMeta" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyRightMeta" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCompose" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyStop" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyAgain" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyProps" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyUndo" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyFront" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCopy" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyOpen" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyPaste" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFind" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCut" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyHelp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMenu" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCalc" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySetup" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySleep" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyWakeUp" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyFile" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySendFile" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDeleteFile" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyXfer" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyProg1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyProg2" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyWww" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMsDos" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCoffee" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyDirection" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCycleWindows" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMail" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyBookmarks" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyComputer" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBack" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyForward" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCloseCd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEjectCd" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyEjectCloseCd" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNextSong" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPlayPause" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyPreviousSong" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyStopCd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRecord" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyRewind" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPhone" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyIso" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyConfig" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyHomepage" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRefresh" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyExit" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMove" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEdit" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyScrollUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyScrollDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKpLeftParen" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyKpRightParen" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNew" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRedo" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyF13" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF14" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF15" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyF16" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF17" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF18" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyF19" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF20" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF21" 'PrefixI 'False) (U1 :: Type -> Type))))))))) :+: (((((((C1 ('MetaCons "KeyF22" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF23" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF24" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing195" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing196" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing197" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing198" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing199" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPlayCd" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyPauseCd" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyProg3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyProg4" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyDashboard" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySuspend" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyClose" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyPlay" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFastForward" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBassBoost" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyPrint" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyHp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCamera" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySound" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyQuestion" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEmail" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyChat" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySearch" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyConnect" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFinance" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySport" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyShop" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyAlterase" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCancel" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrightnessDown" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyBrightnessUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMedia" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySwitchVideoMode" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyKbdIllumToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKbdIllumDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKbdIllumUp" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySend" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyReply" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyForwardMail" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeySave" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDocuments" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBattery" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyBluetooth" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyWlan" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyUwb" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyUnknown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVideoNext" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyVideoPrev" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyBrightnessCycle" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrightnessZero" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDisplayOff" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyWimax" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRfkill" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMicmute" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing249" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing250" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing251" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing252" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing253" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing254" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing255" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Btn0" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Btn1" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Btn2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Btn3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Btn4" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Btn5" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Btn6" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Btn7" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Btn8" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Btn9" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x10a" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x10b" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x10c" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x10d" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x10e" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x10f" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnLeft" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnRight" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnMiddle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnSide" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "BtnExtra" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnForward" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnBack" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTask" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x118" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x119" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x11a" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x11b" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x11c" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x11d" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x11e" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x11f" 'PrefixI 'False) (U1 :: Type -> Type)))))))) :+: ((((((C1 ('MetaCons "BtnJoystick" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnThumb" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnThumb2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTop" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTop2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnPinkie" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnBase" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnBase2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnBase3" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnBase4" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnBase5" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnBase6" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x12c" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x12d" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x12e" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnDead" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnGamepad" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnB" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnC" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnX" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnY" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnZ" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTL" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTR" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "BtnTL2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTR2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnSelect" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnStart" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnMode" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnThumbL" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnThumbR" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x13f" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnDigi" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnToolRubber" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnToolBrush" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnToolPencil" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "BtnToolAirbrush" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnToolFinger" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnToolMouse" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnToolLens" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnToolQuinttap" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnStylus3" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnTouch" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnStylus" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnStylus2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnToolDoubletap" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnToolTripletap" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnToolQuadtap" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "BtnGearDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnGearUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x152" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x153" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x154" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x155" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x156" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x157" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x158" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x159" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x15a" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x15b" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x15c" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x15d" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x15e" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x15f" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyOk" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySelect" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyGoTo" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyClear" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPower2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyOption" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyInfo" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTime" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyVendor" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyArchive" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyProgram" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyChannel" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFavorites" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEpg" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyPvr" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMhp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLanguage" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyTitle" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySubtitle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAngle" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyZoom" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMode" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKeyboard" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyScreen" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPc" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTv" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyTv2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVcr" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyVcr2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "KeySat" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySat2" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "KeyCd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTape" 'PrefixI 'False) (U1 :: Type -> Type)))))))))) :+: ((((((((C1 ('MetaCons "KeyRadio" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyTuner" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPlayer" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyText" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDvd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAux" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMp3" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyAudio" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyVideo" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyDirectory" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyList" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMemo" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyCalendar" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRed" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyGreen" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyYellow" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBlue" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyChannelUp" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyChannelDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFirst" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLast" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyAb" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNextTask" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRestart" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeySlow" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyShuffle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBreak" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyPreviousTask" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDigits" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTeen" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyTwen" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVideoPhone" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyGames" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyZoomIn" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyZoomOut" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyZoomReset" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyWordProcessor" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyEditor" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySpreadSheet" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyGraphicsEditor" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPresentation" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDatabase" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyNews" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVoicemail" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAddressBook" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMessenger" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrightnessToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySpellCheck" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyLogoff" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDollar" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEuro" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFrameBack" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFrameForward" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyContextMenu" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMediaRepeat" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Key10channelsUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key10channelsDown" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyImages" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1bb" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNotificationCenter" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyPickupPhone" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyHangupPhone" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1bf" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyDelEol" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDelEos" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyInsLine" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyDelLine" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1c4" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1c5" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x1c6" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1c7" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1c8" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Missing0x1c9" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1ca" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1cb" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x1cc" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1cd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1ce" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x1cf" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFn" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnEsc" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFnF1" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnF2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnF3" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyFnF4" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnF5" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnF6" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFnF7" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnF8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnF9" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyFnF10" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnF11" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnF12" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFn1" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFn2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnD" 'PrefixI 'False) (U1 :: Type -> Type)))))))) :+: ((((((C1 ('MetaCons "KeyFnE" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnF" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnS" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFnB" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnRightShift" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1e6" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x1e7" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1e8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1e9" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x1ea" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1eb" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1ec" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x1ed" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1ee" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1ef" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x1f0" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrlDot1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrlDot2" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyBrlDot3" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrlDot4" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrlDot5" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyBrlDot6" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrlDot7" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrlDot8" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyBrlDot9" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrlDot10" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1fb" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x1fc" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1fd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1fe" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x1ff" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumeric0" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNumeric1" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyNumeric2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumeric3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNumeric4" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyNumeric5" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumeric6" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNumeric7" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyNumeric8" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumeric9" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNumericStar" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyNumericPound" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumericA" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNumericB" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyNumericC" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumericD" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCameraFocus" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyWpsButton" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyTouchpadToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTouchpadOn" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyTouchpadOff" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCameraZoomIn" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCameraZoomOut" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyCameraUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCameraDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCameraLeft" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyCameraRight" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyAttendantOn" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAttendantOff" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyAttendantToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyLightsToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x21f" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnDpadUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnDpadDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnDpadLeft" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnDpadRight" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x224" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x225" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x226" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x227" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x228" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Missing0x229" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x22a" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x22b" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x22c" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x22d" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x22e" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x22f" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyAlsToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRotateLockToggle" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyRefreshRateToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x233" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x234" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x235" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x236" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x237" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x238" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x239" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x23a" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x23b" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x23c" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x23d" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Missing0x23e" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x23f" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "KeyButtonconfig" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTaskmanager" 'PrefixI 'False) (U1 :: Type -> Type))))))))) :+: (((((((C1 ('MetaCons "KeyJournal" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyControlPanel" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAppSelect" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyScreenSaver" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVoicecommand" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAssistant" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyKbdLayoutNext" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyEmojiPicker" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDictate" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyCameraAccessEnable" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCameraAccessDisable" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCameraAccessToggle" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyAccessibility" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDoNotDisturb" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrightnessMin" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyBrightnessMax" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x252" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x253" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x254" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x255" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x256" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x257" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x258" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x259" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Missing0x25a" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x25b" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x25c" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x25d" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x25e" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x25f" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyKbdInputAssistPrev" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKbdInputAssistNext" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKbdInputAssistPrevgroup" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyKbdInputAssistNextgroup" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKbdInputAssistAccept" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKbdInputAssistCancel" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyRightUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRightDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLeftUp" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyLeftDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRootMenu" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMediaTopMenu" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyNumeric11" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumeric12" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAudioDesc" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Key3dMode" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNextFavorite" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyStopRecord" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyPauseRecord" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVod" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyUnmute" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFastreverse" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySlowreverse" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyData" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyOnScreenKeyboard" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPrivacyScreenToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySelectiveScreenshot" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyNextElement" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPreviousElement" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAutopilotEngageToggle" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyMarkWaypoint" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySos" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNavChart" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFishingChart" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySingleRangeRadar" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDualRangeRadar" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyRadarOverlay" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyTraditionalSonar" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyClearvuSonar" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySidevuSonar" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNavInfo" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrightnessMenu" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Missing0x28a" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x28b" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x28c" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x28d" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x28e" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x28f" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMacro1" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro3" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacro4" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro5" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro6" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyMacro7" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro9" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacro10" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro11" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro12" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMacro13" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro14" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro15" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacro16" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro17" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro18" 'PrefixI 'False) (U1 :: Type -> Type)))))))) :+: ((((((C1 ('MetaCons "KeyMacro19" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro20" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro21" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacro22" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro23" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro24" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMacro25" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro26" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro27" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacro28" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro29" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro30" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x2ae" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2af" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacroRecordStart" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacroRecordStop" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacroPresetCycle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacroPreset1" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMacroPreset2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacroPreset3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2b6" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x2b7" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKbdLcdMenu1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKbdLcdMenu2" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyKbdLcdMenu3" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKbdLcdMenu4" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKbdLcdMenu5" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x2bd" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2be" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2bf" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnTriggerHappy" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy3" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy4" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy5" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy6" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "BtnTriggerHappy7" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy9" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy10" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy11" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy12" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnTriggerHappy13" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy14" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy15" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy16" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy17" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy18" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "BtnTriggerHappy19" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy20" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy21" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy22" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy23" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy24" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnTriggerHappy25" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy26" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy27" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy28" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy29" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy30" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "BtnTriggerHappy31" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy32" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy33" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy34" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy35" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy36" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnTriggerHappy37" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy38" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy39" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy40" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2e8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2e9" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Missing0x2ea" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2eb" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2ec" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x2ed" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2ee" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2ef" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x2f0" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2f1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2f2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x2f3" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2f4" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2f5" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x2f6" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2f7" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2f8" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x2f9" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2fa" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2fb" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x2fc" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2fd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2fe" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "KeyLaunchpad" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMissionCtrl" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "KeySpotlight" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDictation" 'PrefixI 'False) (U1 :: Type -> Type)))))))))))

Methods

from :: Keycode -> Rep Keycode x

to :: Rep Keycode x -> Keycode

Show Keycode Source # 
Instance details

Defined in KMonad.Keyboard.Keycode

Methods

showsPrec :: Int -> Keycode -> ShowS

show :: Keycode -> String #

showList :: [Keycode] -> ShowS

Eq Keycode Source # 
Instance details

Defined in KMonad.Keyboard.Keycode

Methods

(==) :: Keycode -> Keycode -> Bool #

(/=) :: Keycode -> Keycode -> Bool #

Ord Keycode Source # 
Instance details

Defined in KMonad.Keyboard.Keycode

Hashable Keycode Source # 
Instance details

Defined in KMonad.Keyboard.Keycode

Methods

hashWithSalt :: Int -> Keycode -> Int

hash :: Keycode -> Int

Display Keycode Source # 
Instance details

Defined in KMonad.Keyboard.Keycode

type Rep Keycode Source # 
Instance details

Defined in KMonad.Keyboard.Keycode

type Rep Keycode = D1 ('MetaData "Keycode" "KMonad.Keyboard.Keycode" "kmonad-0.4.4-24ldZcMKw8mLOimHIQjvkA" 'False) (((((((((C1 ('MetaCons "KeyReserved" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyEsc" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key1" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Key2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Key3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key4" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Key5" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Key6" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key7" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Key8" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Key9" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key0" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyMinus" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyEqual" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBackspace" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyTab" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyQ" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyW" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyE" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyR" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyT" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyY" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyU" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyI" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyO" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyP" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLeftBrace" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyRightBrace" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyEnter" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLeftCtrl" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyA" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyS" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyD" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyF" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyG" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyH" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyJ" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyK" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyL" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySemicolon" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyApostrophe" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyGrave" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyLeftShift" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBackslash" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyZ" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyX" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyC" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyV" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyB" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyN" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyM" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyComma" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDot" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySlash" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyRightShift" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKpAsterisk" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLeftAlt" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySpace" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCapsLock" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF1" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyF2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF4" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyF5" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF6" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF7" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyF8" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF9" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF10" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyNumLock" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyScrollLock" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKp7" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyKp8" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKp9" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKpMinus" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyKp4" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKp5" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKp6" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyKpPlus" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKp1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKp2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyKp3" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKp0" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKpDot" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing84" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyZenkakuHankaku" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key102nd" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyF11" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF12" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRo" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyKatakana" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyHiragana" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyHenkan" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyKatakanaHiragana" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMuhenkan" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKpjpcomma" 'PrefixI 'False) (U1 :: Type -> Type)))))))) :+: ((((((C1 ('MetaCons "KeyKpEnter" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRightCtrl" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKpSlash" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySysRq" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRightAlt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLinefeed" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyHome" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPageUp" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyLeft" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRight" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEnd" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPageDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyInsert" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyDelete" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMute" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyVolumeDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVolumeUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPower" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyKpEqual" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKpPlusMinus" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPause" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyScale" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKpComma" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyHangeul" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyHanja" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyYen" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLeftMeta" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyRightMeta" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCompose" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyStop" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyAgain" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyProps" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyUndo" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyFront" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCopy" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyOpen" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyPaste" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFind" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCut" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyHelp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMenu" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCalc" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySetup" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySleep" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyWakeUp" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyFile" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySendFile" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDeleteFile" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyXfer" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyProg1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyProg2" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyWww" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMsDos" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCoffee" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyDirection" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCycleWindows" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMail" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyBookmarks" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyComputer" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBack" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyForward" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCloseCd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEjectCd" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyEjectCloseCd" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNextSong" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPlayPause" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyPreviousSong" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyStopCd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRecord" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyRewind" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPhone" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyIso" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyConfig" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyHomepage" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRefresh" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyExit" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMove" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEdit" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyScrollUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyScrollDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKpLeftParen" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyKpRightParen" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNew" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRedo" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyF13" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF14" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF15" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyF16" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF17" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF18" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyF19" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF20" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF21" 'PrefixI 'False) (U1 :: Type -> Type))))))))) :+: (((((((C1 ('MetaCons "KeyF22" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyF23" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyF24" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing195" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing196" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing197" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing198" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing199" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPlayCd" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyPauseCd" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyProg3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyProg4" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyDashboard" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySuspend" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyClose" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyPlay" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFastForward" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBassBoost" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyPrint" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyHp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCamera" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySound" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyQuestion" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEmail" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyChat" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySearch" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyConnect" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFinance" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySport" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyShop" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyAlterase" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCancel" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrightnessDown" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyBrightnessUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMedia" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySwitchVideoMode" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyKbdIllumToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKbdIllumDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKbdIllumUp" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySend" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyReply" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyForwardMail" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeySave" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDocuments" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBattery" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyBluetooth" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyWlan" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyUwb" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyUnknown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVideoNext" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyVideoPrev" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyBrightnessCycle" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrightnessZero" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDisplayOff" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyWimax" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRfkill" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMicmute" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing249" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing250" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing251" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing252" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing253" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing254" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing255" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Btn0" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Btn1" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Btn2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Btn3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Btn4" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Btn5" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Btn6" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Btn7" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Btn8" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Btn9" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x10a" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x10b" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x10c" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x10d" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x10e" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x10f" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnLeft" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnRight" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnMiddle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnSide" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "BtnExtra" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnForward" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnBack" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTask" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x118" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x119" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x11a" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x11b" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x11c" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x11d" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x11e" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x11f" 'PrefixI 'False) (U1 :: Type -> Type)))))))) :+: ((((((C1 ('MetaCons "BtnJoystick" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnThumb" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnThumb2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTop" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTop2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnPinkie" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnBase" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnBase2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnBase3" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnBase4" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnBase5" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnBase6" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x12c" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x12d" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x12e" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnDead" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnGamepad" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnB" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnC" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnX" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnY" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnZ" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTL" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTR" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "BtnTL2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTR2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnSelect" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnStart" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnMode" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnThumbL" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnThumbR" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x13f" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnDigi" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnToolRubber" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnToolBrush" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnToolPencil" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "BtnToolAirbrush" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnToolFinger" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnToolMouse" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnToolLens" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnToolQuinttap" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnStylus3" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnTouch" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnStylus" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnStylus2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnToolDoubletap" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnToolTripletap" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnToolQuadtap" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "BtnGearDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnGearUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x152" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x153" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x154" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x155" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x156" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x157" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x158" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x159" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x15a" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x15b" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x15c" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x15d" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x15e" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x15f" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyOk" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySelect" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyGoTo" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyClear" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPower2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyOption" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyInfo" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTime" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyVendor" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyArchive" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyProgram" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyChannel" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFavorites" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEpg" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyPvr" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMhp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLanguage" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyTitle" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySubtitle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAngle" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyZoom" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMode" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKeyboard" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyScreen" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPc" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTv" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyTv2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVcr" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyVcr2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "KeySat" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySat2" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "KeyCd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTape" 'PrefixI 'False) (U1 :: Type -> Type)))))))))) :+: ((((((((C1 ('MetaCons "KeyRadio" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyTuner" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyPlayer" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyText" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDvd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAux" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMp3" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyAudio" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyVideo" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyDirectory" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyList" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMemo" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyCalendar" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRed" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyGreen" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyYellow" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBlue" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyChannelUp" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyChannelDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFirst" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLast" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyAb" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNextTask" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRestart" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeySlow" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyShuffle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBreak" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyPreviousTask" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDigits" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTeen" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyTwen" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVideoPhone" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyGames" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyZoomIn" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyZoomOut" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyZoomReset" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyWordProcessor" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyEditor" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySpreadSheet" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyGraphicsEditor" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPresentation" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDatabase" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyNews" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVoicemail" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAddressBook" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMessenger" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrightnessToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySpellCheck" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyLogoff" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDollar" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyEuro" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFrameBack" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFrameForward" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyContextMenu" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMediaRepeat" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Key10channelsUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Key10channelsDown" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyImages" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1bb" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNotificationCenter" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyPickupPhone" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyHangupPhone" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1bf" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyDelEol" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDelEos" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyInsLine" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyDelLine" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1c4" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1c5" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x1c6" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1c7" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1c8" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Missing0x1c9" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1ca" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1cb" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x1cc" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1cd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1ce" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x1cf" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFn" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnEsc" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFnF1" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnF2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnF3" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyFnF4" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnF5" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnF6" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFnF7" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnF8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnF9" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyFnF10" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnF11" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnF12" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFn1" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFn2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnD" 'PrefixI 'False) (U1 :: Type -> Type)))))))) :+: ((((((C1 ('MetaCons "KeyFnE" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnF" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyFnS" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFnB" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyFnRightShift" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1e6" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x1e7" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1e8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1e9" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x1ea" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1eb" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1ec" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x1ed" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1ee" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1ef" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x1f0" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrlDot1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrlDot2" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyBrlDot3" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrlDot4" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrlDot5" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyBrlDot6" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrlDot7" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrlDot8" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyBrlDot9" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyBrlDot10" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1fb" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x1fc" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x1fd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x1fe" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x1ff" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumeric0" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNumeric1" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyNumeric2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumeric3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNumeric4" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyNumeric5" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumeric6" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNumeric7" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyNumeric8" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumeric9" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNumericStar" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyNumericPound" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumericA" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNumericB" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyNumericC" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumericD" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCameraFocus" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyWpsButton" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyTouchpadToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTouchpadOn" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyTouchpadOff" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCameraZoomIn" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCameraZoomOut" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyCameraUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCameraDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCameraLeft" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyCameraRight" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyAttendantOn" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAttendantOff" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyAttendantToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyLightsToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x21f" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnDpadUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnDpadDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnDpadLeft" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnDpadRight" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x224" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x225" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x226" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x227" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x228" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Missing0x229" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x22a" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x22b" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x22c" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x22d" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x22e" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x22f" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyAlsToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyRotateLockToggle" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyRefreshRateToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x233" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x234" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x235" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x236" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x237" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x238" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x239" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x23a" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x23b" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x23c" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x23d" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Missing0x23e" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x23f" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "KeyButtonconfig" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyTaskmanager" 'PrefixI 'False) (U1 :: Type -> Type))))))))) :+: (((((((C1 ('MetaCons "KeyJournal" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyControlPanel" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAppSelect" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyScreenSaver" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVoicecommand" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAssistant" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyKbdLayoutNext" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyEmojiPicker" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDictate" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyCameraAccessEnable" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyCameraAccessDisable" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyCameraAccessToggle" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyAccessibility" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyDoNotDisturb" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrightnessMin" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyBrightnessMax" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x252" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x253" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x254" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x255" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x256" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x257" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x258" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x259" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Missing0x25a" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x25b" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x25c" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x25d" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x25e" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x25f" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyKbdInputAssistPrev" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKbdInputAssistNext" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKbdInputAssistPrevgroup" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyKbdInputAssistNextgroup" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKbdInputAssistAccept" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKbdInputAssistCancel" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyRightUp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRightDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyLeftUp" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyLeftDown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyRootMenu" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMediaTopMenu" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyNumeric11" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNumeric12" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAudioDesc" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Key3dMode" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNextFavorite" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyStopRecord" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "KeyPauseRecord" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyVod" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyUnmute" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFastreverse" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySlowreverse" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyData" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyOnScreenKeyboard" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPrivacyScreenToggle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeySelectiveScreenshot" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyNextElement" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyPreviousElement" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyAutopilotEngageToggle" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyMarkWaypoint" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySos" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyNavChart" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyFishingChart" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeySingleRangeRadar" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDualRangeRadar" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyRadarOverlay" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyTraditionalSonar" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyClearvuSonar" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeySidevuSonar" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyNavInfo" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyBrightnessMenu" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Missing0x28a" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x28b" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x28c" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x28d" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x28e" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x28f" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMacro1" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro3" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacro4" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro5" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro6" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "KeyMacro7" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro9" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacro10" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro11" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro12" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMacro13" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro14" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro15" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacro16" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro17" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro18" 'PrefixI 'False) (U1 :: Type -> Type)))))))) :+: ((((((C1 ('MetaCons "KeyMacro19" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro20" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro21" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacro22" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro23" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro24" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMacro25" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro26" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro27" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacro28" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacro29" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacro30" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x2ae" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2af" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacroRecordStart" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "KeyMacroRecordStop" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacroPresetCycle" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMacroPreset1" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "KeyMacroPreset2" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyMacroPreset3" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2b6" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x2b7" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKbdLcdMenu1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKbdLcdMenu2" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "KeyKbdLcdMenu3" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "KeyKbdLcdMenu4" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyKbdLcdMenu5" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x2bd" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2be" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2bf" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnTriggerHappy" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy3" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy4" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy5" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy6" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "BtnTriggerHappy7" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy9" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy10" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy11" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy12" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnTriggerHappy13" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy14" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy15" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy16" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy17" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy18" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "BtnTriggerHappy19" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy20" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy21" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy22" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy23" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy24" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnTriggerHappy25" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy26" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy27" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy28" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy29" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy30" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "BtnTriggerHappy31" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy32" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy33" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy34" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy35" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy36" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "BtnTriggerHappy37" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BtnTriggerHappy38" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BtnTriggerHappy39" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "BtnTriggerHappy40" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2e8" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2e9" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Missing0x2ea" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2eb" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2ec" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x2ed" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2ee" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2ef" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x2f0" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2f1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2f2" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x2f3" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2f4" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2f5" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Missing0x2f6" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2f7" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2f8" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Missing0x2f9" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2fa" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2fb" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Missing0x2fc" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Missing0x2fd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Missing0x2fe" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "KeyLaunchpad" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyMissionCtrl" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "KeySpotlight" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KeyDictation" 'PrefixI 'False) (U1 :: Type -> Type)))))))))))

Naming utilities to refer to Keycodes

 

keyNames :: MultiMap Keycode Text Source #

A collection of Keycode to Text mappings