code: def run(self, **run_kwargs):
      for work in self.ws:
          if all(w.internal_ip for w in self.ws):
              internal_urls = [(w.internal_ip, w.port) for w in self.ws]
              work.run(internal_urls=internal_urls, **run_kwargs)
              if all(w.has_finished for w in self.ws):
                  for w in self.ws:
                      w.stop()
          else:
              work.run()
  
imports: import os
  from typing import Any, Dict, List, Optional, Tuple, Type, Union
  from lightning.app.components.python import TracerPythonScript
  from lightning.app.core.flow import LightningFlow
  from lightning.app.storage.path import Path
  from lightning.app.structures import List
  from lightning.app.utilities.app_helpers import Logger
  from lightning.app.utilities.packaging.cloud_compute import CloudCompute
label_desc: Use image node_id 2 for calling the LightningTrainerScript obj's underlying member method code with example usage: obj.run() without return types