parallellization should not be required