code: def setup(self):
      # prepare some more or less realistic with a good number of paths
      # and some hierarchy of submodules
      self.nfiles = 40  # per each construct
      self.nsubmod = 30  # at two levels
      self.toplevel_submods = [
          "submod%d" % i for i in range(self.nsubmod)
      ]
      self.posixpaths = ["file%d" % i for i in range(self.nfiles)] + [
          "subdir/anotherfile%d" % i for i in range(self.nfiles)
      ]
      for submod in range(self.nsubmod):
          self.posixpaths += (
              [
                  "submod%d/file%d" % (submod, i)
                  for i in range(self.nfiles)
              ]
              + [
                  "subdir/submod%d/file%d" % (submod, i)
                  for i in range(self.nfiles)
              ]
              + [
                  "submod/sub%d/file%d" % (submod, i)
                  for i in range(self.nfiles)
              ]
          )
  
file_path: datalad/benchmarks/support/path.py
imports: from datalad.support.path import get_parent_paths
  from ..common import SuprocBenchmarks
label_desc: Use image node_id 1 for calling the get_parent_paths obj's underlying member method code with example usage: obj.setup() without return types