now using coffeescript => instead of -> to deal with the closure problems