private void TriggerShuffleOfDiscardIntoDeck(GameState gameState)
{
this.gameLog.ReshuffledDiscardIntoDeck(this);
if (!this.deck.IsEmpty)
{
throw new Exception("Can not move discard to deck unless deck is empty");
}
deck.AddAllCardsFromInSomeOrder(this.discard);
this.discard.Clear();
this.deck.Shuffle(this.random);
LetPlayerChooseToArrangeStash(gameState);
}