batch-like todo