code: def __init__(self, gen, kind):
      self.name = gen.target_name()
      self.dir_path = gen.path()
      self.ninja_file_path = os.path.join(
          "obj", self.dir_path, self.name + ".ninja"
      )
      self.src_obj_pairs = gen.src_obj_pairs(self.dir_path, self.name)
      if kind == LIB:
          self.output = os.path.join("lib" + self.name + ".a")
      elif kind == EXE:
          self.output = os.path.join(self.name)
      self.defines = gen.defines()
      self.deps = []
      self.kind = kind
      self.has_compile_depends = random.random() < 0.4
  
imports: import argparse
  import contextlib
  import os
  import random
  import sys
  import ninja_syntax
label_desc: Use image node_id 1 to create a new Target object from inherited base classes: object with example: obj = Target(gen, kind)