add sigchld handler