each time we shift from one mode the other new event listeners are added even if they have been added before :(
(node:4346) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 keypress listeners added. Use emitter.setMaxListeners() to increase limit