public bool ShouldTrashCard(GameState gameState, Card card) { var saved = gameState.self; gameState.self = this.self; var result = this.playerAction.ShouldTrashCard(gameState, card); gameState.self = saved; return result; }