avoid hitting the shell with system()