code: def get_or_create_startup_scrpit(self, name: str, script: str) -> str:
      scripts = self.client.startup_scripts.get()
      found_scripts = [
          startup_script
          for startup_script in scripts
          if script == startup_script
      ]
      if found_scripts:
          startup_script = found_scripts[0]
          return startup_script.id
  
      startup_script = self.client.startup_scripts.create(name, script)
      return startup_script.id
  
file_path: dstack/src/dstack/_internal/core/backends/datacrunch/api_client.py
imports: import time
  from typing import Optional
  from datacrunch import DataCrunchClient
  from datacrunch.exceptions import APIException
  from datacrunch.instances.instances import Instance
  from dstack._internal.utils.ssh import get_public_key_fingerprint
label_desc: Use image node_id 4 for calling the DataCrunchAPIClient obj's underlying member method code with example usage: obj.get_or_create_startup_scrpit(name, script) and returns: startup_script, startup_script