A JavaScript scope analyzer