def execute_debug(self, js):
code = translate_js(js, '<STR_LIT>')<EOL>filename = '<STR_LIT>' + os.sep + '<STR_LIT:_>' + hashlib.md5(<EOL>code.encode("<STR_LIT:utf-8>")).hexdigest() + '<STR_LIT>'<EOL>try:<EOL><INDENT>with open(filename, mode='<STR_LIT:w>') as f:<EOL><INDENT>f.write(code)<EOL><DEDENT>with open(filename, "<STR_LIT:r>") as f:<EOL><INDENT>pyCode = compile(f.read(), filename, '<STR_LIT>')<EOL>exec(pyCode, self._context)<EOL><DEDENT><DEDENT>except Exception as err:<EOL><INDENT>raise err<EOL><DEDENT>finally:<EOL><INDENT>os.remove(filename)<EOL>try:<EOL><INDENT>os.remove(filename + '<STR_LIT:c>')<EOL><DEDENT>except:<EOL><INDENT>pass<EOL><DEDENT><DEDENT>
executes javascript js in current context
        as opposed to the (faster) self.execute method, you can use your regular debugger
        to set breakpoints and inspect the generated python code