Uses CoffeeScript, resolve #24