import tensorflow as tf

            shortcut = tf.identity(x)

            if pool_first:
                if in_channel == filters:
                    if strides == 1:
                        shortcut = tf.identity(x)
                    else:
                        shortcut= tf.pad(x, tf.constant([[0,0],[1,1],[1,1],[0,0]]), "CONSTANT")
                        shortcut = tf.nn.max_pool(shortcut, [1, strides, strides, 1], [1, strides, strides, 1], 'VALID')
                else:
                    shortcut = self._conv('shortcut_conv', x, padding='VALID',
                                          num_filters=filters, kernel_size=(1, 1), stride=(strides, strides),
                                          bias=self.bias)
            else:
