-- Writeup at https://work.njae.me.uk/2022/12/21/advent-of-code-2022-day-20/
import AoC
-import Data.List
+import Data.List hiding (elemIndex)
import Data.Maybe
import Data.CircularList
-import Control.Lens
+import Control.Lens hiding (element)
data IndexedElem = IndexedElem { _idx :: Int, _shift :: Int, _value :: Int}
deriving (Show, Eq, Ord)