code: def commonpath(paths):
      """Given a sequence of path names, returns the longest common sub-path."""
  
      if not paths:
          raise ValueError("commonpath() arg is an empty sequence")
  
      paths = tuple(map(os.fspath, paths))
      if isinstance(paths[0], bytes):
          sep = b"/"
          curdir = b"."
      else:
          sep = "/"
          curdir = "."
  
      try:
          split_paths = [path.split(sep) for path in paths]
  
          try:
              (isabs,) = set(p[:1] == sep for p in paths)
          except ValueError:
              raise ValueError(
                  "Can't mix absolute and relative paths"
              ) from None
  
          split_paths = [
              [c for c in s if c and c != curdir] for s in split_paths
          ]
          s1 = min(split_paths)
          s2 = max(split_paths)
          common = s1
          for i, c in enumerate(s1):
              if c != s2[i]:
                  common = s1[:i]
                  break
  
          prefix = sep if isabs else sep[:0]
          return prefix + sep.join(common)
      except (TypeError, AttributeError):
          genericpath._check_arg_types("commonpath", *paths)
          raise
  
imports: import os
  import sys
  import stat
  import genericpath
  from genericpath import *
label_desc: Use image node_id 20 for calling a global function with example usage: commonpath(paths) and returns: unknown