arbitrary batch size allowed