6442791482
Some keyboard layouts (in particular, azerty / french) require pressing shift to obtain numerals. Therefore we should not cancel the switch when shift is pressed. Also, we should accept indifferently left or right modifiers.