discriminator now returns a generator.