code: def _mode_comment_convert(commands):
          
  
          ret = []
          comment_count = 0
          for idx, element in enumerate(commands):
              # Check first for stringiness, as we may have dicts in the command list already
              if isinstance(element, py23_compat.string_types) and element.startswith(
                  "!!"
              ):
                  comment_count += 1
                  continue
              else:
                  if comment_count > 0:
                      # append the previous comment
                      ret.append(
                          {
                              "cmd": "comment",
                              "input": "\n".join(
                                  map(
                                      lambda s: s.lstrip("! "),
                                      commands[idx - comment_count : idx],
                                  )
                              ),
                          }
                      )
                      comment_count = 0
                  ret.append(element)
  
          return ret
docs: EOS has the concept of multi-line mode comments, shown in the running-config
          as being inside a config stanza (router bgp, ACL definition, etc) and beginning
          with the normal level of spaces and '!!', followed by comments.
  
          Unfortunately, pyeapi does not accept mode comments in this format, and have to be
          converted to a specific type of pyeapi call that accepts multi-line input
  
          Copy the config list into a new return list, converting consecutive lines starting with
          "!!" into a single multiline comment command
  
          :param commands: List of commands to be sent to pyeapi
          :return: Converted list of commands to be sent to pyeapi