public bool Equals(SmogonResponse?other)
 {
     if (ReferenceEquals(null, other))
     {
         return(false);
     }
     if (ReferenceEquals(this, other))
     {
         return(true);
     }
     return(GenerationPrefix == other.GenerationPrefix &&
            Generations.SetEquals(other.Generations) &&
            Pokemons.SetEquals(other.Pokemons) &&
            Formats.SetEquals(other.Formats) &&
            Natures.SetEquals(other.Natures) &&
            Abilities.SetEquals(other.Abilities) &&
            Moves.SetEquals(other.Moves) &&
            Types.SetEquals(other.Types) &&
            Items.SetEquals(other.Items));
 }