Version 2. No window error handler. Fucking awesome eval