code: def add_description(method):
      
  
      @wraps(method)
      def wrapped(self, node, *args):
          return join([node.description, method(self, node, *args)], "\n")
  
      return wrapped
docs: Decorator adding the description to the output of a visitor method.