move :: Circle -> Int -> (Int, Circle)
move c p | p `mod` 23 /= 0 = (0, C.insertLeft p $ C.moveN 2 c)
         | otherwise       = (p + C._focus c', fromJust $ C.deleteRight c')
  where c' = C.moveN (-7) c
move :: Circle -> Int -> (Int, Circle)
move c p | p `mod` 23 /= 0 = (0, C.insertLeft p $ C.moveN 2 c)
         | otherwise       = (p + C._focus c', fromJust $ C.deleteRight c')
  where c' = C.moveN (-7) c
move c p | p `mod` 23 /= 0 = (0, C.insertLeft p $ C.moveN 2 c)
         | otherwise       = (p + C._focus c', fromJust $ C.deleteRight c')
  where c' = C.moveN (-7) c