code: def read_data():
      np.random.seed(1)
      feature_value_map = {}
      feature_value_map[BINARY_FEATURE_ID] = stats.bernoulli.rvs(
          0.5, size=10000
      ).astype(np.float32)
      feature_value_map[BINARY_FEATURE_ID_2] = stats.bernoulli.rvs(
          0.5, size=10000
      ).astype(np.float32)
      feature_value_map[CONTINUOUS_FEATURE_ID] = stats.norm.rvs(
          size=10000
      ).astype(np.float32)
      feature_value_map[CONTINUOUS_FEATURE_ID_2] = stats.norm.rvs(
          size=10000
      ).astype(np.float32)
      feature_value_map[BOXCOX_FEATURE_ID] = stats.expon.rvs(
          size=10000
      ).astype(np.float32)
      feature_value_map[ENUM_FEATURE_ID] = (
          stats.randint.rvs(0, 10, size=10000) * 1000
      ).astype(np.float32)
      feature_value_map[QUANTILE_FEATURE_ID] = np.concatenate(
          (stats.norm.rvs(size=5000), stats.expon.rvs(size=5000))
      ).astype(np.float32)
      feature_value_map[PROBABILITY_FEATURE_ID] = np.clip(
          stats.beta.rvs(a=2.0, b=2.0, size=10000).astype(np.float32),
          0.01,
          0.99,
      )
      feature_value_map[CONTINUOUS_ACTION_FEATURE_ID] = stats.norm.rvs(
          size=10000
      ).astype(np.float32)
      feature_value_map[
          CONTINUOUS_ACTION_FEATURE_ID_2
      ] = stats.norm.rvs(size=10000).astype(np.float32)
      feature_value_map[CONTINUOUS_SMALL_FEATURE_ID] = np.clip(
          stats.norm.rvs(scale=1e-6, size=10000).astype(np.float32),
          -1e-5,
          1e-5,
      )
  
      return feature_value_map
  
label_desc: Use image node_id 2 for calling a global function with example usage: read_data() and returns: feature_value_map