Future optimization: replaced coffee-script 'args...' with js 'arguments' to avoid redundant computations in heavily loaded places.