code: def cell_source(cell):
      """Return the source of the current cell, as an array of lines"""
      source = cell.source
      if source == "":
          return [""]
      if source.endswith("\n"):
          return source.splitlines() + [""]
      return source.splitlines()
  
imports: import re
  import warnings
  from copy import copy
  from .cell_metadata import _IGNORE_CELL_METADATA, is_active, metadata_to_double_percent_options, metadata_to_rmd_options, metadata_to_text
  from .cell_reader import LightScriptCellReader, MarkdownCellReader, RMarkdownCellReader
  from .doxygen import markdown_to_doxygen
  from .languages import _SCRIPT_EXTENSIONS, cell_language, comment_lines, same_language
  from .magics import comment_magic, escape_code_start, need_explicit_marker
  from .metadata_filter import filter_metadata
  from .pep8 import pep8_lines_between_cells
label_desc: Use image node_id 1 for calling a global function with example usage: cell_source(cell) and returns: source, list, unknown