code: def ref_gather_axis0():
      def inner(data, ind):
          if ind.size == 0 or data.shape[0] == 0:
              return [np.zeros((0, 10, 20)).astype(np.float32)]
          output = [data[i] for i in ind]
          return [output]
  
      return inner
  
imports: import numpy
  from caffe2.python import core, workspace
  from hypothesis import given, settings
  import caffe2.python.hypothesis_test_util
  import caffe2.python.serialized_test.serialized_test_util
  import hypothesis.strategies
  import hypothesis.extra.numpy
label_desc: Use image node_id 1 for calling a global function with example usage: ref_gather_axis0() and returns: inner, list, list