Objective
Given an ASCII character, toggle its "shift-ness" on the standard US keyboard (ANSI-INCITS 154-1988 (R1999)), then output it.
Mapping
) ↔️ 0
! ↔️ 1
@ ↔️ 2
# ↔️ 3
$ ↔️ 4
% ↔️ 5
^ ↔️ 6
& ↔️ 7
* ↔️ 8
( ↔️ 9
" ↔️ '
+ ↔️ =
, ↔️ <
- ↔️ _
. ↔️ >
/ ↔️ ?
: ↔️ ;
(Capital Latin letters) ↔️ (Small Latin letters)
[ ↔️ {
\ ↔️ |
] ↔️ }
` ↔️ ~
(ASCII whitespaces and control characters are left intact)
Rule
- Non-ASCII characters fall into don't care situation.
Examples
Given a character 0
, output )
.
Given a character C
, output c
.
Given a character (space), output
.
Given a character \t
(horizontal tab), output \t
.
Given a character \a
(bell), output \a
.