code: def main(_):
      if _VERSION.value:
          print("DeepTrio version {}".format(DEEP_TRIO_VERSION))
          return
  
      for flag_key in [
          "model_type",
          "ref",
          "reads_child",
          "output_vcf_child",
          "sample_name_child",
      ]:
          if FLAGS.get_flag_value(flag_key, None) is None:
              sys.stderr.write("--{} is required.\n".format(flag_key))
              sys.stderr.write(
                  "Pass --helpshort or --helpfull to see help on flags.\n"
              )
              sys.exit(1)
  
      # Check flags consistency.
      # --reads_parent?, --output_vcf_parent?, --sample_name_parent? flags should
      # either all be set or all be unset.
      parent1_flags = [
          _READS_PARENT1.value,
          _OUTPUT_VCF_PARENT1.value,
          _SAMPLE_NAME_PARENT1.value,
      ]
      if any(parent1_flags) and not all(parent1_flags):
          sys.stderr.write(
              "--reads_parent1, --output_vcf_parent1, --sample_name_parent1 must be"
              " set altogether\n"
          )
          sys.stderr.write(
              "Pass --helpshort or --helpfull to see help on flags.\n"
          )
          sys.exit(1)
  
      parent2_flags = [
          _READS_PARENT2.value,
          _OUTPUT_VCF_PARENT2.value,
          _SAMPLE_NAME_PARENT2.value,
      ]
      if any(parent2_flags) and not all(parent2_flags):
          sys.stderr.write(
              "--reads_parent2, --output_vcf_parent2, --sample_name_parent2 must be"
              " set altogether\n"
          )
          sys.stderr.write(
              "Pass --helpshort or --helpfull to see help on flags.\n"
          )
          sys.exit(1)
  
      intermediate_results_dir = (
          check_or_create_intermediate_results_dir(
              _INTERMEDIATE_RESULTS_DIR.value
          )
      )
  
      (
          commands,
          post_process_commands,
          report_commands,
      ) = create_all_commands(intermediate_results_dir)
      print(
          "\n***** Intermediate results will be written to {} "
          "in docker. ****\n".format(intermediate_results_dir)
      )
      # make_examples and call_variants:
      run_commands(
          commands=commands, sequential=True, dry_run=_DRY_RUN.value
      )
      run_commands(
          commands=post_process_commands,
          sequential=False,
          dry_run=_DRY_RUN.value,
      )
      run_commands(
          commands=report_commands,
          sequential=False,
          dry_run=_DRY_RUN.value,
      )
  
imports: import enum
  import os
  import subprocess
  import sys
  import tempfile
  from typing import List, Optional
  from absl import app
  from absl import flags
  from absl import logging
  import tensorflow
label_desc: Use image node_id 28 for calling a global function with example usage: main(_) without return types