code: def test_std_share_network_shapes(self, output_dim, hidden_sizes):
      # should be 2 * output_dim
      model = GaussianCNNModel(
          input_dim=self.input_dim,
          filters=((3, (3, 3)), (6, (3, 3))),
          strides=[1, 1],
          padding="SAME",
          hidden_sizes=hidden_sizes,
          output_dim=output_dim,
          std_share_network=True,
      )
      model.build(self._input_ph)
      with tf.compat.v1.variable_scope(model.name, reuse=True):
          std_share_output_weights = tf.compat.v1.get_variable(
              "dist_params/mean_std_network/output/kernel"
          )
          std_share_output_bias = tf.compat.v1.get_variable(
              "dist_params/mean_std_network/output/bias"
          )
      assert std_share_output_weights.shape[1] == output_dim * 2
      assert std_share_output_bias.shape == output_dim * 2
  
imports: import pickle
  from unittest import mock
  import numpy
  import pytest
  import tensorflow
  from garage.tf.models import GaussianCNNModel
  from tests.fixtures import TfGraphTestCase
label_desc: Use image node_id 3 for calling the TestGaussianCNNModel obj's underlying member method code with example usage: obj.test_std_share_network_shapes(output_dim, hidden_sizes) without return types