Giovanni is the Gym Leader of Viridian City and the leader of Team Rocket. He is a Ground-type Gym Leader. Giovanni can also be found at the top floor of Pokemon Tower.
There is also a second battle which he mimics your own Pokemon, so you'll have to fight your Pokemon's duplicates before receiving the badge IF ANY of your Pokemon are level 90+
|Normal, Fire, Poison,
||Ice, Grass, Water
||Fighting, Poison, Rock,
||Fighting, Steel, Ground, Ice,
||Ghost, Dark, Bug