code: def execute_macros(self):
          
  
          if self.safe_mode:
              return '', "Safe mode activated. Code not executed."
  
          # Windows exec does not like Windows newline
          self.macros = self.macros.replace('\r\n', '\n')
  
          # Set up environment for evaluation
          globals().update(self._get_updated_environment())
  
          # Create file-like string to capture output
          code_out = cStringIO.StringIO()
          code_err = cStringIO.StringIO()
          err_msg = cStringIO.StringIO()
  
          # Capture output and errors
          sys.stdout = code_out
          sys.stderr = code_err
  
          try:
              import signal
  
              signal.signal(signal.SIGALRM, self.handler)
              signal.alarm(config["timeout"])
  
          except:
              # No POSIX system
              pass
  
          try:
              exec(self.macros, globals())
              try:
                  signal.alarm(0)
              except:
                  # No POSIX system
                  pass
  
          except Exception:
              # Print exception
              # (Because of how the globals are handled during execution
              # we must import modules here)
              from traceback import print_exception
              from src.lib.exception_handling import get_user_codeframe
              exc_info = sys.exc_info()
              user_tb = get_user_codeframe(exc_info[2]) or exc_info[2]
              print_exception(exc_info[0], exc_info[1], user_tb, None, err_msg)
          # Restore stdout and stderr
          sys.stdout = sys.__stdout__
          sys.stderr = sys.__stderr__
  
          results = code_out.getvalue()
          errs = code_err.getvalue() + err_msg.getvalue()
  
          code_out.close()
          code_err.close()
  
          # Reset result cache
          self.result_cache.clear()
  
          # Reset frozen cache
          self.frozen_cache.clear()
  
          return results, errs
docs: Executes all macros and returns result string
  
          Executes macros only when not in safe_mode