code: def list_content(self, paths):
      futures = [
          self._executor.submit(
              self.root_client.list_content_single, path
          )
          for path in paths
      ]
      result = []
      for future in as_completed(futures):
          result.extend(
              self.list_content_result(*x) for x in future.result()
          )
      return result
  
imports: import json
  import os
  import shutil
  import uuid
  from concurrent.futures import as_completed
  from tempfile import mkdtemp
  from metaflow.datastore.datastore_storage import DataStoreStorage, CloseAfterUse
  from metaflow.exception import MetaflowInternalError
  from metaflow.metaflow_config import DATASTORE_SYSROOT_GS, ARTIFACT_LOCALROOT, GS_STORAGE_WORKLOAD_TYPE
  from metaflow.plugins.gcp.gs_storage_client_factory import get_gs_storage_client
  from metaflow.plugins.gcp.gs_utils import check_gs_deps, parse_gs_full_path, process_gs_exception
  from metaflow.plugins.storage_executor import StorageExecutor, handle_executor_exceptions
label_desc: Use image node_id 7 for calling the GSStorage obj's underlying member method code with example usage: obj.list_content(paths) and returns: result