nodes: 0, module; 1, function_definition; 2, function_name:_add_comments; 3, parameters; 4, block; 5, identifier:self; 6, identifier:comments; 7, default_parameter; 8, expression_statement; 9, return_statement; 10, identifier:original_string; 11, string:""; 12, comment:"""
              Returns a string with comments added
          """; 13, boolean_operator; 14, boolean_operator; 15, identifier:original_string; 16, identifier:comments; 17, call; 18, attribute; 19, argument_list; 20, string:"{0}  # {1}"; 21, identifier:format; 22, subscript; 23, call; 24, call; 25, integer:0; 26, attribute; 27, argument_list; 28, attribute; 29, argument_list; 30, string:"; "; 31, identifier:join; 32, identifier:comments; 33, identifier:self; 34, identifier:_strip_comments; 35, identifier:original_string
code: def _add_comments(self, comments, original_string=""):
          """
              Returns a string with comments added
          """
          return comments and "{0}  # {1}".format(self._strip_comments(original_string)[0],
                                                  "; ".join(comments)) or original_string