{
  num: -32170,
  accuracy: 100,
  basePower: 60,
  category: 'Special',
  name: 'Unknown Power',
  pp: 15,
  priority: 0,
  flags: { protect: 1, mirror: 1, metronome: 1 },
  ignoreImmunity: true,
  onEffectiveness(typeMod, target, type) {
    const hpType = this.activePokemon?.hpType;
    switch (hpType) {
      case 'Dragon':
        if (type === 'Dragon') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Grass':
        if (type === 'Grass') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Fire':
        if (type === 'Fire') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Water':
        if (type === 'Water') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Electric':
        if (type === 'Electric') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Ice':
        if (type === 'Ice') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Fighting':
        if (type === 'Fighting') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Poison':
        if (type === 'Poison') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Ground':
        if (type === 'Ground') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Flying':
        if (type === 'Flying') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Psychic':
        if (type === 'Psychic') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Bug':
        if (type === 'Bug') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Rock':
        if (type === 'Rock') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Ghost':
        if (type === 'Ghost') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Dark':
        if (type === 'Dark') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Steel':
        if (type === 'Steel') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
      case 'Fairy':
        if (type === 'Fairy') return 1 - this.dex.getEffectiveness("Psychic", type);
        break;
    }
    return typeMod - this.dex.getEffectiveness("Psychic", type);
  },
  onModifyMove(move, pokemon) {
    if (pokemon.getStat("atk", false, true) > pokemon.getStat("spa", false, true))
      move.category = "Physical";
  },
  secondary: null,
  target: 'normal',
  type: 'Psychic',
  contestType: 'Clever'
}