code: def test_tuples():
      @pipeline_def(
          enable_conditionals=True,
          num_threads=4,
          batch_size=8,
          device_id=0,
      )
      def pipeline():
          pred = fn.external_source(
              source=lambda x: np.array(x.idx_in_batch % 2), batch=False
          )
          data = types.Constant(np.array(42), device="cpu")
          if pred:
              out = (data, data + 10, data + 20)
          else:
              out = (np.array(-10), data, data * 2)
          a, b, c = out
          return a, b, c
  
      pipe = pipeline()
      pipe.build()
      (
          a,
          b,
          c,
      ) = pipe.run()
      check_batch(a, [42 if i % 2 else -10 for i in range(8)])
      check_batch(b, [52 if i % 2 else 42 for i in range(8)])
      check_batch(c, [62 if i % 2 else 84 for i in range(8)])
  
imports: from nvidia.dali import fn, pipeline_def, types
  import numpy
  from test_utils import check_batch
  from nose_utils import assert_raises
label_desc: Use image node_id 3 for calling a global function with example usage: test_tuples() and returns: a,  b,  c