import tensorflow as tf

                    if reuse:
                        tf.get_variable_scope().reuse_variables()
                    else:
                        assert tf.get_variable_scope().reuse is False


                    u = tf.contrib.layers.conv2d_transpose(layer_input,filters,f_size,stride=stride,padding=padding)
                    
                    if dropout_rate:
                        u = tf.contrib.layers.dropout(u,keep_prob=dropout_rate)
                    u = tf.contrib.layers.batch_norm(u)
                    u = tf.nn.relu(u)
