jslint be damned, this works