'return a (b, 1) logits'

@auto_reuse_variable_scope
def discriminator(self, imgs):

    nf = 64
    with argscope(Conv2D, nl=tf.identity, kernel_shape=4, stride=2):
        with argscope(LeakyReLU, alpha=0.2):
            l = LinearWrap(imgs).Conv2D('conv0', nf, nl=LeakyReLU).Conv2D('conv1', (nf * 2)).BatchNorm('bn1').LeakyReLU().Conv2D('conv2', (nf * 4)).BatchNorm('bn2').LeakyReLU().Conv2D('conv3', (nf * 8)).BatchNorm('bn3').LeakyReLU().FullyConnected('fct', 1, nl=tf.identity)()
    return l
