code: def _should_attempt_to_reuse_artifact(
      execution_options: pipeline_pb2.NodeExecutionOptions,
  ):
      return execution_options.HasField("skip") and (
          execution_options.skip.reuse_artifacts
          or execution_options.skip.reuse_artifacts_mode
          == _REUSE_ARTIFACT_OPTIONAL
          or execution_options.skip.reuse_artifacts_mode
          == _REUSE_ARTIFACT_REQUIRED
      )
  
imports: import collections
  import concurrent.futures
  import enum
  from typing import Collection, Dict, Final, List, Mapping, Optional, OrderedDict, Sequence, Set, Tuple
  import uuid
  from absl import logging
  from tfx.dsl.compiler import compiler_utils
  from tfx.dsl.compiler import constants
  from tfx.orchestration import metadata
  from tfx.orchestration import node_proto_view
  from tfx.orchestration.portable import execution_publish_utils
  from tfx.orchestration.portable.mlmd import context_lib
  from tfx.orchestration.portable.mlmd import execution_lib
  from tfx.proto.orchestration import pipeline_pb2
  from ml_metadata.proto import metadata_store_pb2
label_desc: Use image node_id 19 for calling a global function with example usage: _should_attempt_to_reuse_artifact(execution_options) and returns: unknown