javascript is the worst programming language of all time. it's so inconsistent and full of weird quirks. why the hell would they make `nan` not equal to `nan`? and don't even get me started on the whole `this` debacle.