Matthew Allum <mallum@o-hand.com> Ross Burton <ross@o-hand.com> Based on idea by Eero Tamminen