keypress event framework
merge errors