import tensorflow as tf

                # # pyram_3x3_4 = self.conv('_atr_3x3_3', net, depth/2, size=3, stride=1, padding="SAME", dilation=rate[2])
                
                # net = tf.concat((pyram_1x1_0, pyram_3x3_1, pyram_3x3_2, pyram_3x3_3), axis=3, name="concat")

                # net = self.conv('_1x1_output', net, depth, size=1, stride=1, padding="SAME")

                return net
        
        with tf.variable_scope('discriminator') as scope:
            if reuse:
                scope.reuse_variables()

            print('D in:', X.get_shape().as_list())

            rate = [2, 3, 4]
            X = atrous_convs(X, "d_atrous_0", rate = rate, depth=256, reuse=reuse)
