code: def two_step_pipeline_with_dynamic_exec_properties():
      """Returns a simple 2-step pipeline under test with the second component's execution property depending dynamically on the first one's output."""
  
      input_config_generator = range_config_generator(  # pylint: disable=no-value-for-parameter
          input_date="22-09-26"
      )
      example_gen = (
          tfx.extensions.google_cloud_big_query.BigQueryExampleGen(
              query="SELECT * FROM TABLE",
              range_config=(
                  input_config_generator.outputs["range_config"]
                  .future()[0]
                  .value
              ),
          ).with_beam_pipeline_args(
              [
                  "--runner=DataflowRunner",
              ]
          )
      )
      return tfx.dsl.Pipeline(
          pipeline_name=_TEST_TWO_STEP_PIPELINE_WITH_DYNAMIC_EXEC_PROPERTIES_NAME,
          pipeline_root=_TEST_PIPELINE_ROOT,
          components=[input_config_generator, example_gen],
          beam_pipeline_args=[
              "--project=my-gcp-project",
          ],
      )
  
imports: import datetime
  import os
  from typing import List
  from kfp.pipeline_spec import pipeline_spec_pb2
  import tensorflow_model_analysis
  from tfx import v1
  from tfx.components.example_gen import utils
  from tfx.components.trainer.executor import Executor
  from tfx.dsl.component.experimental import executor_specs
  from tfx.dsl.component.experimental import placeholders
  from tfx.dsl.components.base import base_component
  from tfx.dsl.components.base import base_executor
  from tfx.dsl.components.base import base_node
  from tfx.dsl.components.base import executor_spec
  from tfx.types import channel_utils
  from tfx.types import component_spec
  from tfx.types.experimental import simple_artifacts
  from tfx.utils import proto_utils
  from google.protobuf import message
label_desc: Use image node_id 3 for calling a global function with example usage: two_step_pipeline_with_dynamic_exec_properties() and returns: tfx