http://www.kylesterry.plus.com/blog/2007/07/13/how-keyboards-should-be/function.require