todo
don't unwrap single element list for execute_batch