code: def test_imageinput_with_additional_outputs(
      self,
      size_tuple,
      means,
      stds,
      label_type,
      num_labels,
      is_test,
      scale_jitter_type,
      color_jitter,
      color_lighting,
      output1,
      output2_size,
      gc,
      dc,
  ):
      def validator(expected_images, device_option, count_images):
          self.validate_image_and_label(
              expected_images,
              device_option,
              count_images,
              label_type,
              is_test,
              scale_jitter_type,
              color_jitter,
              color_lighting,
          )
  
          output1_result = workspace.FetchBlob("output1")
          output2_result = workspace.FetchBlob("output2")
  
          for i in range(count_images):
              self.assertEqual(output1_result[i], expected_images[i][2])
              self.assertEqual(
                  (output2_result[i] - expected_images[i][3] > 0).sum(),
                  0,
              )
          # End for
  
      # End validator
      run_test(
          size_tuple,
          means,
          stds,
          label_type,
          num_labels,
          is_test,
          scale_jitter_type,
          color_jitter,
          color_lighting,
          dc,
          validator,
          output1,
          output2_size,
      )
  
imports: import unittest
  from PIL import Image
  import numpy
  import shutil
  import io
  import sys
  import tempfile
  from hypothesis import given, settings, Verbosity
  import hypothesis.strategies
  from caffe2.proto import caffe2_pb2
  import caffe2.python.hypothesis_test_util
  from caffe2.python import workspace, core
label_desc: Use image node_id 3 for calling the TestImport obj's underlying member method code with example usage: obj.test_imageinput_with_additional_outputs(size_tuple, means, stds, label_type, num_labels, is_test, scale_jitter_type, color_jitter, color_lighting, output1, output2_size, gc, dc) without return types