private void conductGame() throws IOException, InterruptedException {
for (int handCount = 0;; handCount++) {
// start a new hand
// clear old piles
for (int i = 0; i < 4; i++) {
cardsWon[i] = new PileOfCards();
m_game.getHands()[i] = new PileOfCards();
}
beenPlayed = new PileOfCards();
tableau = new Tableau();
GameProcedure[] order = m_game.getProcedureOrdering();
for (int i = 0; order != null && i < order.length; i++) {
switch (order[i].getProcedure()) {
case GameProcedure.DEALCARDS: