revert back to subprocess