measureBrightnessAfterCommands :: String -> Int
measureBrightnessAfterCommands s = runST $ do
  let cs = parseCommands s
  grid <- createGrid2
  forM_ cs $ \c -> performCommand2 grid c
  gridBrightness grid
measureBrightnessAfterCommands :: String -> Int
measureBrightnessAfterCommands s = runST $ do
  let cs = parseCommands s
  grid <- createGrid2
  forM_ cs $ \c -> performCommand2 grid c
  gridBrightness grid
measureBrightnessAfterCommands s = runST $ do
  let cs = parseCommands s
  grid <- createGrid2
  forM_ cs $ \c -> performCommand2 grid c
  gridBrightness grid