{
    num: 693,
    accuracy: 100,
    basePower: 60,
    category: "Physical",
    name: "Brutal Swing",
    pp: 20,
    priority: 0,
    flags: { contact: 1, protect: 1, mirror: 1, metronome: 1 },
    onAfterHit(target, pokemon, move) {
        if (!move.hasSheerForce) {
            if (pokemon.hp && pokemon.removeVolatile("leechseed")) {
                this.add("-end", pokemon, "Leech Seed", "[from] move: Brutal Swing", "[of] " + pokemon);
            }
            const sideConditions = ["spikes", "toxicspikes", "stealthrock", "stickyweb", "gmaxsteelsurge"];
            for (const condition of sideConditions) {
                if (pokemon.hp && pokemon.side.removeSideCondition(condition)) {
                    this.add("-sideend", pokemon.side, this.dex.conditions.get(condition).name, "[from] move: Brutal Swing", "[of] " + pokemon);
                }
            }
            for (const condition of sideConditions) {
                if (target.hp && target.side.removeSideCondition(condition)) {
                    this.add("-sideend", target.side, this.dex.conditions.get(condition).name, "[from] move: Brutal Swing", "[of] " + pokemon);
                }
            }
            if (pokemon.hp && pokemon.volatiles["partiallytrapped"]) {
                pokemon.removeVolatile("partiallytrapped");
            }
        }
    },
    onAfterSubDamage(damage, target, pokemon, move) {
        if (!move.hasSheerForce) {
            if (pokemon.hp && pokemon.removeVolatile("leechseed")) {
                this.add("-end", pokemon, "Leech Seed", "[from] move: Brutal Swing", "[of] " + pokemon);
            }
            const sideConditions = ["spikes", "toxicspikes", "stealthrock", "stickyweb", "gmaxsteelsurge"];
            for (const condition of sideConditions) {
                if (pokemon.hp && pokemon.side.removeSideCondition(condition)) {
                    this.add("-sideend", pokemon.side, this.dex.conditions.get(condition).name, "[from] move: Brutal Swing", "[of] " + pokemon);
                }
            }
            for (const condition of sideConditions) {
                if (target.hp && target.side.removeSideCondition(condition)) {
                    this.add("-sideend", target.side, this.dex.conditions.get(condition).name, "[from] move: Brutal Swing", "[of] " + pokemon);
                }
            }
            if (pokemon.hp && pokemon.volatiles["partiallytrapped"]) {
                pokemon.removeVolatile("partiallytrapped");
            }
        }
    },
    secondary: null,
    target: "allAdjacent",
    type: "Dark",
    contestType: "Tough"
}
