code: def setUpClass(cls):
      def get_network_2d(inputs, reuse=False):
          with tf.variable_scope("2D_network", reuse=reuse):
              net = tl.layers.InputLayer(inputs)
  
              net1 = tl.layers.Conv2d(net, name="Conv2d")  # 2 params
              net2 = tl.layers.DeConv2d(
                  net1, name="DeConv2d"
              )  # 2 params
              net3 = tl.layers.SeparableConv2d(
                  net2, name="SeparableConv2d"
              )  # 3 params
              net4 = tl.layers.MaxPool2d(
                  net3, (1, 1), name="MaxPool2d"
              )  # 0 params
              net5 = tl.layers.MeanPool2d(
                  net4, (1, 1), name="MeanPool2d"
              )  # 0 params
  
              # HAO Test
              net6 = tl.layers.Conv2d(net5, name="Conv2d1")  # 2 params
              net7 = tl.layers.DeConv2d(
                  net6, name="DeConv2d1"
              )  # 2 params
              net8 = tl.layers.DeConv2d(
                  net7, name="DeConv2d2"
              )  # 2 params
              net9 = tl.layers.SeparableConv2d(
                  net8, name="SeparableConv2d1"
              )  # 3 params
  
          return [
              net,
              net1,
              net2,
              net3,
              net4,
              net5,
              net6,
              net7,
              net8,
              net9,
          ]
  
      input_pl_train = tf.placeholder(tf.float32, [None, 32, 32, 3])
      input_plh_test = tf.placeholder(tf.float32, [None, 32, 32, 3])
  
      cls.network_1 = get_network_2d(input_pl_train, reuse=False)
      cls.network_2 = get_network_2d(input_plh_test, reuse=True)
  
imports: import os
  import unittest
  import tensorflow
  import tensorlayer
  from tests.utils import CustomTestCase
label_desc: Use image node_id 1 for calling the Layer_Convolution_2D_Test obj's underlying member method code with example usage: obj.setUpClass(cls) and returns: list