add signal catch block