code: def _dry_run_result(
      fingerprint_results: Dict[Text, Union[FingerprintStatus, Any]],
      force_full_training: bool,
  ) -> TrainingResult:
      """Returns a dry run result.
  
      Args:
          fingerprint_results: A result of fingerprint run..
          force_full_training: Whether the user used the `--force` flag to enforce a
              full retraining of the model.
  
      Returns:
          Result containing the return code and the fingerprint results.
      """
      if force_full_training:
          rasa.shared.utils.cli.print_warning(
              "The training was forced."
          )
          return TrainingResult(
              code=CODE_FORCED_TRAINING,
              dry_run_results=fingerprint_results,
          )
  
      training_required = any(
          isinstance(result, FingerprintStatus) and not result.is_hit
          for result in fingerprint_results.values()
      )
  
      if training_required:
          rasa.shared.utils.cli.print_warning(
              "The model needs to be retrained."
          )
          return TrainingResult(
              code=CODE_NEEDS_TO_BE_RETRAINED,
              dry_run_results=fingerprint_results,
          )
  
      rasa.shared.utils.cli.print_success(
          "No training of components required "
          "(the responses might still need updating!)."
      )
      return TrainingResult(
          code=CODE_NO_NEED_TO_TRAIN,
          dry_run_results=fingerprint_results,
      )
  
imports: import time
  from pathlib import Path
  from typing import Text, NamedTuple, Optional, List, Union, Dict, Any
  import randomname
  import rasa.engine.validation
  from rasa.engine.caching import LocalTrainingCache
  from rasa.engine.recipes.recipe import Recipe
  from rasa.engine.runner.dask import DaskGraphRunner
  from rasa.engine.storage.local_model_storage import LocalModelStorage
  from rasa.engine.storage.storage import ModelStorage
  from rasa.engine.training.components import FingerprintStatus
  from rasa.engine.training.graph_trainer import GraphTrainer
  from rasa.shared.core.events import SlotSet
  from rasa.shared.core.training_data.structures import StoryGraph
  from rasa.shared.data import TrainingType
  from rasa.shared.importers.importer import TrainingDataImporter
  from rasa import telemetry
  from rasa.shared.core.domain import Domain
  import rasa.utils.common
  import rasa.shared.utils.common
  import rasa.shared.utils.cli
  import rasa.shared.exceptions
  import rasa.shared.utils.io
  import rasa.shared.constants
  import rasa.model
label_desc: Use image node_id 1 for calling a global function with example usage: _dry_run_result(fingerprint_results, force_full_training) and returns: TrainingResult, TrainingResult, TrainingResult