Refactoring to run parallel versions