From e477f4bcf1dbeafe2a0d1a3000a2b4bd50b79c3d Mon Sep 17 00:00:00 2001
From: Shlomi Fish <shlomif@shlomifish.org>
Date: Wed, 27 Dec 2017 13:33:18 +0200
Subject: [PATCH] clean up the board import.

---
 pysollib/hint.py | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/pysollib/hint.py b/pysollib/hint.py
index 33ac557c..e0f3e07e 100644
--- a/pysollib/hint.py
+++ b/pysollib/hint.py
@@ -824,14 +824,16 @@ class FreeCellSolver_Hint(Base_Solver_Hint):
         game = s_game.s
         stack_idx = 0
 
+        def cards():
+            return game.talon.cards
+
         def put(target, suit, rank):
-            ret = [i for i, c in enumerate(game.talon.cards)
+            ret = [i for i, c in enumerate(cards())
                    if c.suit == suit and c.rank == rank]
             assert len(ret) == 1
             ret = ret[0]
             game.talon.cards = \
-                game.talon.cards[0:ret] + game.talon.cards[(ret+1):] +\
-                [game.talon.cards[ret]]
+                cards()[0:ret] + cards()[(ret+1):] + [cards()[ret]]
             s_game.flipMove(game.talon)
             s_game.moveMove(1, game.talon, target, frames=0)
 
@@ -867,7 +869,7 @@ class FreeCellSolver_Hint(Base_Solver_Hint):
                 put_str(game.rows[stack_idx], str_)
 
             stack_idx += 1
-        return
+        assert len(cards()) == 0
 
     def calcBoardString(self):
         game = self.game