doInstruction s (SwapLet x y) = doInstruction s (SwapPos xi yi)
  where
    xi = fromJust $ elemIndex x s
    yi = fromJust $ elemIndex y s
doInstruction s (SwapLet x y) = doInstruction s (SwapPos xi yi)
  where
    xi = fromJust $ elemIndex x s
    yi = fromJust $ elemIndex y s
doInstruction s (SwapLet x y) = doInstruction s (SwapPos xi yi)
  where
    xi = fromJust $ elemIndex x s
    yi = fromJust $ elemIndex y s