  next res
evalMemoryMonad state (ModifyBitfield mut next) = do
  modifyTVar' (torrentStateBitField state) (force . mut)
  next
evalMemoryMonad state (ReadRequestablePieces next) = do
  res <- readTVar (torrentStateRequestablePieces state)
  next res
evalMemoryMonad state (ModifyRequestablePieces mut next) = do
  modifyTVar' (torrentStateRequestablePieces state) (force . mut)
  next
evalMemoryMonad state (RecordDownloaded s b next) = do